.github/workflows/ugodev-test.yml
name: ugodev-test
on:
push:
branches:
- main
- development
pull_request:
branches:
- main
- development
env:
GO_VERSION: '1.20.3'
jobs:
govulncheck:
runs-on: ubuntu-latest
name: Security - govulncheck
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Go
uses: actions/setup-go@v3
with:
go-version: ${{ env.GO_VERSION }}
- name: Install govulncheck
run: go install golang.org/x/vuln/cmd/govulncheck@latest
- name: Run govulncheck
run: govulncheck -v ./...
build:
needs: govulncheck
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: 14
- name: Setup Go
uses: actions/setup-go@v3
with:
go-version: ${{ env.GO_VERSION }}
- name: Check out
uses: actions/checkout@v3
- name: Install Staticcheck
run: go install honnef.co/go/tools/cmd/staticcheck@2023.1.2
- name: Run Linter
run: staticcheck ./...
- name: Test patcher
working-directory: ./patcher
run: go test -race -cover ./...
- name: Build Playground
working-directory: ./playground
run: |
set -e
npm install --global yarn
yarn install
make production
yarn run lint
yarn run build
env:
CI: true
- name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: playground
path: ./playground/dist
if-no-files-found: error
- name: Test Playground
working-directory: ./playground
run: |
set -e
make test
yarn run test
env:
CI: true