mirror of https://github.com/bjdgyc/anylink.git
50 lines
1.1 KiB
YAML
50 lines
1.1 KiB
YAML
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
|