name: Go on: workflow_dispatch: push: branches: [ "main", "dev" ] pull_request: branches: [ "main", "dev" ] jobs: build: name: Build runs-on: ubuntu-latest steps: - name: Check out code into the Go module directory uses: actions/checkout@v4 - name: Set up Go 1.x uses: actions/setup-go@v4 with: go-version: '1.20' go-version-file: 'server/go.mod' cache-dependency-path: 'server/go.sum' - name: Get dependencies run: | cd server go get -v -t -d ./... - name: Build run: | cd server mkdir ui touch ui/index.html go build -v -o anylink -trimpath -ldflags "-X main.CommitId=`git rev-parse HEAD`" ./anylink tool -v - name: Test coverage run: | cd server go test ./... go test -race -coverprofile=coverage.txt -covermode=atomic -v ./... - name: Upload coverage reports to Codecov uses: codecov/codecov-action@v3 env: CODECOV_TOKEN: 28d52fb0-8fc9-460f-95b9-fb84f9138e58