Readme instructions for cross platform build #93
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow will build a golang project | |
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-go | |
name: Go | |
on: | |
push: | |
branches: [ "main" ] | |
pull_request: | |
branches: [ "main" ] | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Go | |
uses: actions/setup-go@v4 | |
with: | |
go-version-file: 'go.mod' | |
- name: Install goveralls | |
if: ${{ github.ref == 'refs/heads/main' }} | |
run: go install github.com/mattn/goveralls@latest | |
- name: Install dependencies | |
run: sudo apt install xorg-dev xvfb | |
- name: Build | |
run: go build -v ./... | |
- name: Test | |
# Run the test suite using the "virtual framebuffer X server for X Version 11" (xvfb) | |
# to allow tests to make windows within the server environment of GitHub Actions. | |
run: xvfb-run go test -v -covermode atomic -coverprofile=covprofile ./... | |
- name: Gofmt | |
# Run gofmt, print the output and exit with status code 1 if it isn't empty. | |
run: | | |
OUTPUT=$(gofmt -d ./) | |
echo "$OUTPUT" | |
test -z "$OUTPUT" | |
- name: Send coverage | |
if: ${{ github.ref == 'refs/heads/main' }} | |
env: | |
COVERALLS_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }} | |
run: goveralls -coverprofile=covprofile -service=github |