4c65147009
* Use ooni/probe-engine 0.16.0 * Update all the other dependencies * Use GitHub Actions rather than Travis CI * Automatically build and test binaries on the target OS (for Windows, macOS, Linux on amd64) * Make sure we correctly measure coverage * Make sure we use `-race` when running tests * Remove unnecessary scripts * Make sure the README is up-to-date * Write small script to update binary data and add GitHub Actions checks for it * Notice that we needed to run ./updatebindata.sh and run it * Self documenting instructions regarding cross compiling * Set version number to v3.0.7-beta Part of https://github.com/ooni/probe-engine/issues/748
58 lines
1.6 KiB
YAML
58 lines
1.6 KiB
YAML
# Shows how to cross compile ooniprobe
|
|
name: cross
|
|
on:
|
|
push:
|
|
schedule:
|
|
- cron: "14 17 * * 3"
|
|
jobs:
|
|
|
|
windows_from_linux_build:
|
|
runs-on: "ubuntu-latest"
|
|
steps:
|
|
- uses: actions/setup-go@v1
|
|
with:
|
|
go-version: "1.14"
|
|
- uses: actions/checkout@v2
|
|
- run: sudo apt update
|
|
- run: sudo apt install --yes mingw-w64
|
|
- run: ./build.sh windows
|
|
- uses: actions/upload-artifact@v1
|
|
with:
|
|
name: ooniprobe-windows-amd64-compiled-from-linux
|
|
path: ./CLI/windows/amd64/ooniprobe.exe
|
|
|
|
test_build_from_linux:
|
|
needs: windows_from_linux_build
|
|
runs-on: "windows-latest"
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions/download-artifact@v2
|
|
with:
|
|
name: ooniprobe-windows-amd64-compiled-from-linux
|
|
- run: bash.exe ./smoketest.sh ./ooniprobe.exe
|
|
|
|
windows_from_macos_build:
|
|
runs-on: "macos-latest"
|
|
steps:
|
|
- uses: actions/setup-go@v1
|
|
with:
|
|
go-version: "1.14"
|
|
- uses: actions/checkout@v2
|
|
- run: brew update
|
|
- run: brew install mingw-w64
|
|
- run: ./build.sh windows
|
|
- uses: actions/upload-artifact@v1
|
|
with:
|
|
name: ooniprobe-windows-amd64-compiled-from-macos
|
|
path: ./CLI/windows/amd64/ooniprobe.exe
|
|
|
|
test_build_from_macos:
|
|
needs: windows_from_macos_build
|
|
runs-on: "windows-latest"
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions/download-artifact@v2
|
|
with:
|
|
name: ooniprobe-windows-amd64-compiled-from-macos
|
|
- run: bash.exe ./smoketest.sh ./ooniprobe.exe
|