nyagos にはビルドスクリプト: make.cmd というものがあります。
これ、中身は PowerShell で、機能過多なので普通のバッチファイルか Makefile などに変えてスリムなものに戻したいと思っているのですが、まだちょっと無理な状況です。
というわけで、まだしばらくお世話になるので、万が一に備えて、使い方を書いておこうと思いました。
普通のビルド
make
だけで、デフォルトの GOOS 、デフォルトの GOARCH でビルドする。
この時、表記バージョンは 4.4.6_0-8-ge5e89d3-windows-amd64
といったコミットIDまで含んだものになる。
先頭のバージョン部分(4.4.6_0
)は Etc\version.txt から読む。
アーキテクチャ・OSを変えてビルド
make 386
… GOARCH=386 でビルドするmake amd64
… GOARCH=amd64 でビルドするmake linux
… GOOS=linux でビルドする。こちらだけはコミット ID が含まれない
なお make linux 386
のようなものはない(linux 指定の時はかならずデフォルト GOARCH のまま)。特にニーズがないので…
リリースパッケージ向けにビルドする
make release
… デフォルトの GOOS、デフォルトの GOARCH でリリース向けビルドを作成する。表記バージョンは4.4.6_1-windows-amd64
などのようにコミットIDが入らなくなるmake release 386
… アーキテクチャを変えて、リリース向けにビルドする。なお、make release linux
はなくて、make linux
をそのまま使う
など、実行ファイルは以下2箇所に同じもの作られる
パッケージを作る
リリース向けビルドをすでに行っていることが前提。これで nyagos-4.4.6_1-windows-amd64.zip 、nyagos-4.4.6_1-linux-amd64.tar.gz みたいなパッケージを作る。
make package
make package 386
make package linux
(余談)バージョンアップの時にすること
Doc\release_note_en.md
,Doc\release_note_ja.md
に、新しいバージョンの見出しをつけるEtc\version.txt
のバージョンを更新するgit commit && git push
。bump to バージョンナンバー
としているコミットはたいていこれmake release
&&make package
(Windows/amd64)make release 386
&&make package 386
(Windows/386)make linux
&&make package linux
(Linux/amd64)- GitHub の Release タブで Draft a new relese をたたく
- タグ・リリースタイトルともに
4.4.6_1
といったバージョンナンバーをそのまま付ける。リリース内容は Doc\release_note_en.txt と Doc\release_note_ja.txt の両方から引用するだけ - 作成したバイナリパッケージ3点をドロップして
Publish New Release
git pull
して、GitHub 側が作成した新タグをローカルに取り込む- アナウンス用の twitter アカウントから、リリースしたとの告知を行う
- 個人の twitter アカウントからリリース告知を RT する
- はてなブログにリリースの内容を解説する記事を書く
- 最近は予告記事に修正内容を書いて、リリース記事はシンプルにしてたりしますが。
- その記事も twitter で告知だして、RT(しつこい)
というようなことをして、今、4.4.6_1 をリリースしました。だいぶと自動化はしたんですが、まだまだ手間かかりますね…
以上です。