GitHub Actions でクロス・コンパイル(GoReleaser 編)

以前(3年前だ!)に Travis CI と GoReleaser でクロス・コンパイル&デプロイを行う方法を紹介したが,今回は GitHub Actions を使う方法を紹介する。 なお GoReleaser 自体の説明については(だいぶ内容が古いが)以下の記事を参考にどうぞ。

紹介と言っても公式の GitHub Action があるので,それを使えばよい。

リポジトリの .github/workflows/ ディレクトリに YAML ファイル(例えば build.yml)を置き,以下のように記述する。

name: build

on:
  push:
    tags:
      - v*
jobs:
  goreleaser:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v2
        with:
          fetch-depth: 0
      - name: Set up Go
        uses: actions/setup-go@v2
        with:
          go-version: 1.15
      - name: Run GoReleaser
        uses: goreleaser/goreleaser-action@v2
        with:
          version: latest
          args: release --rm-dist
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

これでバージョンタグを打った際に GoReleaser によるクロス・コンパイルとデプロイが走る。 簡単!

ブックマーク

参考図書

photo
プログラミング言語Go
アラン・ドノバン (著), ブライアン・カーニハン (著), 柴田芳樹 (著)
丸善出版 2016-06-20 (Release 2021-07-13)
Kindle版
B099928SJD (ASIN)
評価     

Kindle 版出た! 一部内容が古びてしまったが,この本は Go 言語の教科書と言ってもいいだろう。感想はこちら

reviewed by Spiegel on 2021-05-22 (powered by PA-APIv5)