Skip to content

post-commit of git hook. Automatic release IPF files.

Notifications You must be signed in to change notification settings

JTosAddon/ipf-auto-release

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IPF-Auto-Relase

ToS アドオン開発者用

Travis CIのサービスを利用した方法です 環境などによる制限はありません
フォルダ構造による制限がほぼありません
commitをGithubにpushしたときにビルドが走り、問題なければGithub ReleaseにPushされます
ファイルがローカルに生成されないため、確認のためにリリースからダウンロード又はアドオンマネージャーからインストールする必要があります
また、Pushした段階でアドオンマネージャーに登録されるため注意してください

許容可能なフォルダ構造

Tos-Addonというリポジトリで管理していて、AutoReleaseというアドオン作っている場合は

Tos-Addon
  └AutoRelease
     │─README.md
     └─autorelease (or anything)
        └─autorelase.lua
        └─autorelase.xml
Tos-Addon
  └AutoRelease
     │─README.md
     └─src
        └─autorelase
        │ └─autorelase.lua
        │ └─autorelase.xml
        │
        └─autorelase2
          └─autorelase2.lua
          └─autorelase2.xml
Tos-Addon
  └AutoRelease
   |─README.md
   └─src 
     └─addon_d.ipf
     │  └─autorelase
     │  │ └─autorelase.lua
     │  │ └─autorelase.xml
     │  │
     │  └─autorelase2
     │    └─autorelase2.lua
     │    └─autorelase2.xml
     └─ui.ipf
      └─skin
          └─autorelase.tga
  1. 基本となる構造. luaファイルを格納するフォルダ名は何でもよい
  2. 複数のアドオンを含む構造. srcフォルダにそれぞれのアドオンフォルダをを格納してください.必ずsrcフォルダに格納してください.
  3. addon_d.ipfとui.ipfなど複数のコンテナを含む構造. srcなどのフォルダに格納し、REMADEなどがaddon_d.ipfと同じディレクト上に含まれないように気をつけてください

使い方

  1. .travis.ymlを自分のリポジトリに保存してください
  2. https://travis-ci.org/ へアクセスしGithubのアカウントでログインしてください
  3. アドオンを管理しているリポジトリを登録してください
  4. https://github.com/settings/tokens から新しいトークンを生成してください
  5. Travisで登録したリポジトリの設定画面を開き、Environment VariablesのNameにGITHUB_TOKEN,valueに先ほど生成したトークンを貼り付けてください
  6. addons.jsonを更新し、GithubにPushした段階でビルドが走り、1分ほどでReleaseにファイルが登録されます

トークンはrepoにチェックを入れておいてください

※ 初回ビルドは動作が不安定な場合があります。キャンセルした方がいいかもしれません。

gitのHook機能を使い、addons.jsonが更新されたときに自動でフォルダをIPF化しGithub Releasにアップロードするものです
いくつか依存関係があります
コミット時生成されるため、Pushするまではアドオンマネージャーに登録されません

フォルダ構造

Tos-Addonというリポジトリで管理していて、AutoReleaseというアドオン作っている場合は

Tos-Addon
  └AutoRelease
     │─README.md
     └─autorelease (or anything)
        └─autorelase.lua
        └─autorelase.xml
Tos-Addon
  └AutoRelease
     │─README.md
     └─src
        └─autorelase
        │ └─autorelase.lua
        │ └─autorelase.xml
        │
        └─autorelase2
          └─autorelase2.lua
          └─autorelase2.xml
Tos-Addon
  └AutoRelease
   |─README.md
   └─src 
     └─addon_d.ipf
     │  └─autorelase
     │  │ └─autorelase.lua
     │  │ └─autorelase.xml
     │  │
     │  └─autorelase2
     │    └─autorelase2.lua
     │    └─autorelase2.xml
     └─ui.ipf
      └─skin
          └─autorelase.tga

依存関係

  • tpIpfTool v2.2
  • ghr
  • git bash(他bashが動くもの) が必要になります tpIpfToolおよびghrに関しては上記リンクにバイナリが公開されているので、環境変数のパスが通っているフォルダに放り込んでください
    また、git pushはgit bashで実行してください(cmd.exe,powershellでは動きません)

使い方

まずはGithub Releaseに放り込むために、トークンを取得します
このリンクから新しいトークンを作成します
適当な名前とrepoにチェックを入れて作成してください

この後トークンが生成されるのでコピーし、git configのgithub.tokenにセットします
git config --global github.token "....."

あとは、このリポジトリのpost-commitをダウンロードし、アドオンを管理しているフォルダに
.git/hook/post-commit
となるようにpost-commitを移動させてください

addons.jsonを更新し、コミットした時に処理が走り、自動でRelease生成とファイルのアップロードが始まります
作成したipfファイルはReleaseIPFというフォルダに移動されます
必要に応じて.gitignoreに追加して下さい。

About

post-commit of git hook. Automatic release IPF files.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 80.0%
  • JavaScript 20.0%