昔作った Go のリポジトリに go.mod を追加して goreleaser を導入したメモ
at 2022-03-02 03:01 (UTC)
pinzolo/spwd: Secret file based password management tool. という昔作った command line tool がある。
自分では便利に利用しているのだが、Go のバージョンアップなどの対応を放置していた。
なので、ローカルの Go を最新に挙げたと同時に go.mod の対応を行うことにした。
すでに go.mod
作ってあるリポジトリも持ってるけど、Go 1.17 になってからは多分初めての作業なのでメモしておく。
まずは go.mod
を作る。
$ go mod init
現在使用されている依存関係を go.mod
に追加する。これで go.sum
が作られる。
$ go mod tidy
はい、とても簡単。Support go.mod · pinzolo/spwd@4d2e091
次に goreleaser をインストール
$ brew goreleaser/tap/goreleaser
結構時間がかかったが特に問題なくインストール
.goreleaser.yml
を作成する
$ goreleaser init
中身をざっと見るとよく使用される基本的な設定がされているので変更の必要は無かった。
Github でアクセストークンを作成して GITHUB_TOKEN
としてローカルに環境変数を設定
$ git tag v1.3.0
$ git push origin v1.3.0
$ goreleaser --rm-dist
これで Github に release された。Release v1.3.0 · pinzolo/spwd
うーむ楽だ
次は Travis CI から Github Actions への移行だな