name: release on: push: branches: - master paths: - .github/workflows/release.yaml - pkg/** - go.* tags: - v* pull_request: branches: - master paths: - .github/workflows/release.yaml - pkg/** - go.* jobs: build: strategy: matrix: platform: - runs-on: ubuntu-latest GOOS: linux GOARCH: amd64 CGO_ENABLED: 0 # https://github.com/int128/kubelogin/issues/567 - runs-on: ubuntu-latest GOOS: linux GOARCH: arm64 - runs-on: ubuntu-latest GOOS: linux GOARCH: arm - runs-on: ubuntu-latest GOOS: linux GOARCH: ppc64le - runs-on: macos-latest GOOS: darwin GOARCH: amd64 CGO_ENABLED: 1 # https://github.com/int128/kubelogin/issues/249 - runs-on: macos-latest GOOS: darwin GOARCH: arm64 CGO_ENABLED: 1 # https://github.com/int128/kubelogin/issues/762 - runs-on: windows-latest GOOS: windows GOARCH: amd64 - runs-on: windows-latest GOOS: windows GOARCH: arm64 runs-on: ${{ matrix.platform.runs-on }} env: GOOS: ${{ matrix.platform.GOOS }} GOARCH: ${{ matrix.platform.GOARCH }} CGO_ENABLED: ${{ matrix.platform.CGO_ENABLED }} timeout-minutes: 10 steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0 with: go-version-file: go.mod cache-dependency-path: go.sum - run: go build -ldflags '-X main.version=${{ github.ref_name }}' - uses: int128/go-release-action@2979cc5b15ceb7ae458e95b0a9467afc7ae25259 # v2.0.0 with: binary: kubelogin publish: if: github.ref_type == 'tag' needs: - build runs-on: ubuntu-latest timeout-minutes: 10 steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: rajatjindal/krew-release-bot@3d9faef30a82761d610544f62afddca00993eef9 # v0.0.47