Files
scrutiny/.github/workflows/build.yaml
T
2020-10-14 21:17:03 -06:00

60 lines
2.1 KiB
YAML

name: CI
# This workflow is triggered on pushes & pull requests
on: [push, pull_request]
jobs:
build:
name: Build
runs-on: ubuntu-latest
container: karalabe/xgo-1.13.x
env:
PROJECT_PATH: /go/src/github.com/analogj/scrutiny
CGO_ENABLED: 1
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Test
env:
GOOS: linux
GOARCH: amd64
run: |
mkdir -p $PROJECT_PATH
cp -a $GITHUB_WORKSPACE/* $PROJECT_PATH/
cd $PROJECT_PATH
go mod vendor
go test -race -coverprofile=coverage.txt -covermode=atomic -v -tags "static" $(go list ./... | grep -v /vendor/)
- name: Build amd64
env:
GOOS: linux
GOARCH: amd64
run: |
cd $PROJECT_PATH
make all
- name: Archive
uses: actions/upload-artifact@v2
with:
name: binaries.zip
path: |
${{ env.PROJECT_PATH }}/scrutiny-web-linux-amd64
${{ env.PROJECT_PATH }}/scrutiny-collector-metrics-linux-amd64
${{ env.PROJECT_PATH }}/scrutiny-web-linux-arm64
${{ env.PROJECT_PATH }}/scrutiny-collector-metrics-linux-arm64
${{ env.PROJECT_PATH }}/scrutiny-web-linux-arm-5
${{ env.PROJECT_PATH }}/scrutiny-collector-metrics-linux-arm-5
${{ env.PROJECT_PATH }}/scrutiny-web-linux-arm-6
${{ env.PROJECT_PATH }}/scrutiny-collector-metrics-linux-arm-6
${{ env.PROJECT_PATH }}/scrutiny-web-linux-arm-7
${{ env.PROJECT_PATH }}/scrutiny-collector-metrics-linux-arm-7
${{ env.PROJECT_PATH }}/scrutiny-web-windows-4.0-amd64.exe
${{ env.PROJECT_PATH }}/scrutiny-collector-metrics-windows-4.0-amd64.exe
${{ env.PROJECT_PATH }}/scrutiny-web-freebsd-amd64
${{ env.PROJECT_PATH }}/scrutiny-collector-metrics-freebsd-amd64
- uses: codecov/codecov-action@v1
with:
file: ${{ env.PROJECT_PATH }}/coverage.txt
flags: unittests
fail_ci_if_error: true