diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 1bd0a1f..fdbc472 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -18,8 +18,29 @@ jobs: with: go-version: 1.15 - - name: Build - run: go build -v ./... - - name: Test run: go test -v ./... + + - name: Build with xgo + uses: crazy-max/ghaction-xgo@v1 + with: + xgo_version: latest + go_version: ${{ matrix.go_version }} + dest: build + prefix: kubecm + targets: windows/386,windows/amd64,linux/386,linux/amd64,darwin/386,darwin/amd64 + v: true + x: false + race: false + ldflags: -s -w + buildmode: default + + - uses: "marvinpinto/action-automatic-releases@latest" + with: + repo_token: "${{ secrets.GITHUB_TOKEN }}" + automatic_release_tag: "latest" + prerelease: true + title: "Development Build" + files: | + build/kubecm* + diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..099f733 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,43 @@ +name: "tagged-release" + +on: + push: + tags: + - "v*" + +jobs: + tagged-release: + name: "Tagged Release" + runs-on: "ubuntu-latest" + + steps: + - uses: actions/checkout@v2 + + - name: Set up Go + uses: actions/setup-go@v2 + with: + go-version: 1.15 + + - name: Test + run: go test -v ./... + + - name: Build with xgo + uses: crazy-max/ghaction-xgo@v1 + with: + xgo_version: latest + go_version: ${{ matrix.go_version }} + dest: build + prefix: kubecm + targets: windows/386,windows/amd64,linux/386,linux/amd64,darwin/386,darwin/amd64 + v: true + x: false + race: false + ldflags: -s -w + buildmode: default + + - uses: "marvinpinto/action-automatic-releases@latest" + with: + repo_token: "${{ secrets.GITHUB_TOKEN }}" + prerelease: false + files: | + build/kubecm*