mirror of
https://github.com/screego/server.git
synced 2026-04-22 23:47:03 +08:00
51 lines
1.6 KiB
YAML
51 lines
1.6 KiB
YAML
name: build
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
screego:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/setup-go@v2
|
|
with:
|
|
go-version: 1.15.x
|
|
- uses: actions/setup-node@v1
|
|
- uses: actions/cache@v2
|
|
with:
|
|
path: ~/go/pkg/mod
|
|
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-go-
|
|
- uses: actions/cache@v2
|
|
with:
|
|
path: |
|
|
ui/node_modules
|
|
key: ${{ runner.os }}-node_modules-${{ hashFiles('**/yarn.lock') }}
|
|
restore-keys: ${{ runner.os }}-node_modules-
|
|
- uses: actions/checkout@v2
|
|
- run: go mod download
|
|
- run: (cd ui && yarn)
|
|
- run: (cd ui && yarn build)
|
|
- run: (cd ui && yarn testformat)
|
|
- uses: golangci/golangci-lint-action@v2
|
|
with:
|
|
version: v1.31
|
|
- run: go build ./...
|
|
- run: go test -race ./...
|
|
- if: startsWith(github.ref, 'refs/tags/v')
|
|
run: echo "$DOCKER_PASS" | docker login --username "$DOCKER_USER" --password-stdin
|
|
env:
|
|
DOCKER_USER: ${{ secrets.DOCKER_USER }}
|
|
DOCKER_PASS: ${{ secrets.DOCKER_PASS }}
|
|
- if: startsWith(github.ref, 'refs/tags/v')
|
|
uses: goreleaser/goreleaser-action@v2
|
|
with:
|
|
version: latest
|
|
args: release
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
- if: startsWith(github.ref, 'refs/tags/v')
|
|
run: make VERSION=${GITHUB_REF/refs\/tags\/v/} docker-manifest-annotate docker-manifest-push
|
|
env:
|
|
DOCKER_USER: ${{ secrets.DOCKER_USER }}
|
|
DOCKER_PASS: ${{ secrets.DOCKER_PASS }}
|