cli/.github/workflows/build.yml

55 lines
1.4 KiB
YAML
Raw Normal View History

2021-02-22 00:14:53 +08:00
name: Build
on:
push:
branches: [ master ]
paths:
- "**/*.go"
- "go.mod"
- "go.sum"
pull_request:
branches: [ master ]
types: [ opened, synchronize, reopened ]
paths:
- "**/*.go"
- "go.mod"
- "go.sum"
jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ windows-latest, ubuntu-latest, macos-latest ]
include:
- os: ubuntu-latest
2021-05-16 12:30:48 +08:00
BIN_SUFFIX: ""
2021-02-22 00:14:53 +08:00
- os: macos-latest
2021-05-16 12:30:48 +08:00
BIN_SUFFIX: ""
2021-02-22 00:14:53 +08:00
- os: windows-latest
2021-05-16 12:30:48 +08:00
BIN_SUFFIX: ".exe"
2021-02-22 00:14:53 +08:00
steps:
- name: Checkout codebase
uses: actions/checkout@v2
- name: Set up Go 1.x
uses: actions/setup-go@v2
with:
go-version: ^1.16
- name: Setup vars
id: vars
2021-05-16 12:30:48 +08:00
run: |
echo "::set-output name=short_sha::$(git rev-parse --short HEAD)"
2021-05-16 13:41:13 +08:00
echo "::set-output name=git_tag::$(git describe --tags --always)"
2021-02-22 00:14:53 +08:00
- name: Build
env:
CGO_ENABLED: 0
2021-05-16 12:30:48 +08:00
run: go build -trimpath -ldflags="-w -s -X main.AppVersion=${{ steps.vars.outputs.git_tag }}" -v -o um-${{ runner.os }}${{ matrix.BIN_SUFFIX }} ./cmd/um
2021-02-22 00:14:53 +08:00
- name: Publish artifact
uses: actions/upload-artifact@v2
with:
name: um-${{ runner.os }}${{ matrix.BIN_SUFFIX }}
path: ./um-${{ runner.os }}${{ matrix.BIN_SUFFIX }}