Go Release Binary GitHub Action
長瀬 敦史
GitHub Marketplace に Go Release Binary Action を公開しました。
Go Release Binary Action on GitHub Marketplace
この GitHub Action は Go 言語で実装されたコマンドラインツールのバイナリを GitHub のリリースが作成されたら、自動的にビルドを行い、リリース資材に tarball を追加します。
GitHub Actions
GitHub Actions は 2019/02/08 時点では限定公開ベータとして提供されており、以下のページより Beta にサインアップすることで利用できます。
https://github.com/features/actions
利用例
以下のように .workflow ファイルを設置し、GitHub の Releases 機能を使って新しく Release を作成すると、対象のコミットのビルド成果物を自動的にビルドし、リリース資材として追加します。
# .github/main.workflow
workflow "Build" {
on = "release"
resolves = [
"release darwin/amd64",
"release windows/amd64",
"release linux/amd64",
]
}
action "release darwin/amd64" {
uses = "ngs/go-release.action@v1.0.0"
env = {
GOOS = "darwin"
GOARCH = "amd64"
}
secrets = ["GITHUB_TOKEN"]
}
action "release windows/amd64" {
uses = "ngs/go-release.action@v1.0.0"
env = {
GOOS = "windows"
GOARCH = "amd64"
}
secrets = ["GITHUB_TOKEN"]
}
action "release linux/amd64" {
uses = "ngs/go-release.action@v1.0.0"
env = {
GOOS = "linux"
GOARCH = "amd64"
}
secrets = ["GITHUB_TOKEN"]
}