797a6b0429
empty commit. fix checkout. fix checkout. fix zig. fix zig. fix zig. fix zig. fix zig. fix zig. fix zig. fix zig. fix zig. fix zig.
87 lines
3.2 KiB
YAML
87 lines
3.2 KiB
YAML
name: CI
|
|
# This workflow is triggered on pushes & pull requests
|
|
on: [pull_request]
|
|
|
|
jobs:
|
|
test:
|
|
name: Test
|
|
runs-on: ubuntu-latest
|
|
container: ghcr.io/packagrio/packagr:latest-golang
|
|
|
|
# Service containers to run with `build` (Required for end-to-end testing)
|
|
services:
|
|
influxdb:
|
|
image: influxdb:2.2
|
|
env:
|
|
DOCKER_INFLUXDB_INIT_MODE: setup
|
|
DOCKER_INFLUXDB_INIT_USERNAME: admin
|
|
DOCKER_INFLUXDB_INIT_PASSWORD: password12345
|
|
DOCKER_INFLUXDB_INIT_ORG: scrutiny
|
|
DOCKER_INFLUXDB_INIT_BUCKET: metrics
|
|
DOCKER_INFLUXDB_INIT_ADMIN_TOKEN: my-super-secret-auth-token
|
|
ports:
|
|
- 8086:8086
|
|
env:
|
|
PROJECT_PATH: /go/src/github.com/analogj/scrutiny
|
|
STATIC: true
|
|
steps:
|
|
- name: Git
|
|
run: |
|
|
apt-get update && apt-get install -y software-properties-common
|
|
add-apt-repository ppa:git-core/ppa && apt-get update && apt-get install -y git
|
|
git --version
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
- name: Test
|
|
run: |
|
|
make binary-clean binary-test-coverage
|
|
- name: Generate coverage report
|
|
uses: codecov/codecov-action@v2
|
|
with:
|
|
files: ${{ github.workspace }}/coverage.txt
|
|
flags: unittests
|
|
fail_ci_if_error: true
|
|
verbose: true
|
|
build:
|
|
name: Build ${{ matrix.cfg.goos }}/${{ matrix.cfg.goarch }}
|
|
runs-on: ${{ matrix.cfg.on }}
|
|
env:
|
|
GOOS: ${{ matrix.cfg.goos }}
|
|
GOARCH: ${{ matrix.cfg.goarch }}
|
|
GOARM: ${{ matrix.cfg.goarm }}
|
|
ZIG_CROSS_COMPILE_TARGET: ${{ matrix.cfg.zig_cc_target }}
|
|
STATIC: true
|
|
strategy:
|
|
matrix:
|
|
cfg:
|
|
- { on: ubuntu-latest, goos: linux, goarch: amd64 }
|
|
- { on: ubuntu-latest, goos: linux, goarch: arm, goarm: 5, zig_cc_target: armv5-linux }
|
|
- { on: ubuntu-latest, goos: linux, goarch: arm, goarm: 6, zig_cc_target: armv6-linux }
|
|
- { on: ubuntu-latest, goos: linux, goarch: arm, goarm: 7, zig_cc_target: armv7-linux }
|
|
- { on: ubuntu-latest, goos: linux, goarch: arm64, zig_cc_target: aarch64v8-linux }
|
|
- { on: macos-latest, goos: darwin, goarch: amd64 }
|
|
- { on: macos-latest, goos: darwin, goarch: arm64, zig_cc_target: aarch64v8-macos }
|
|
- { on: macos-latest, goos: freebsd, goarch: amd64, zig_cc_target: x86_64-freebsd }
|
|
- { on: macos-latest, goos: freebsd, goarch: arm64, zig_cc_target: aarch64v8-freebsd }
|
|
- { on: windows-latest, goos: windows, goarch: amd64, zig_cc_target: x86_64-windows-gnu }
|
|
- { on: windows-latest, goos: windows, goarch: arm64, zig_cc_target: aarch64v8-windows-gnu }
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
- uses: goto-bus-stop/setup-zig@v1
|
|
with:
|
|
version: v0.9
|
|
- name: Build Binaries
|
|
run: |
|
|
|
|
zig version
|
|
which zig
|
|
echo $PATH
|
|
make binary-clean binary-all
|
|
- name: Archive
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: binaries.zip
|
|
path: |
|
|
scrutiny-web-*
|
|
scrutiny-collector-metrics-* |