Merge pull request #319 from cfergeau/ghactions-if #695
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
name: Go | |
on: | |
push: | |
branches: [ main ] | |
pull_request: | |
branches: [ main ] | |
jobs: | |
build: | |
runs-on: ubuntu-20.04 # explicitly use 20.04, see commit 428c40018a | |
timeout-minutes: 30 | |
strategy: | |
fail-fast: false | |
matrix: | |
go-version: ["1.20.x", "1.21.x", "1.22.0-rc.1"] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: ${{ matrix.go-version }} | |
- name: Build | |
run: | | |
make cross qemu-wrapper vm win-gvproxy win-sshproxy | |
mv bin/gvproxy.exe bin/gvproxy-windowsgui.exe | |
- uses: actions/upload-artifact@v3 | |
if: ${{ matrix.go-version }} == '1.21.x' | |
with: | |
name: gvisor-tap-vsock-binaries | |
path: bin/* | |
tests: | |
runs-on: macos-latest # Only Mac runners support nested virt | |
needs: build # Don't bother testing if cross arch build fails | |
timeout-minutes: 30 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install | |
run: | | |
brew install qemu | |
touch continue | |
- name: Set up Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: 1.20.x | |
- name: Test | |
run: make test | |
- uses: actions/upload-artifact@v3 | |
if: always() | |
with: | |
name: qcon | |
path: test/qcon.log | |
win-sshproxy-tests: | |
runs-on: windows-latest # Only builds/runs on windows | |
timeout-minutes: 30 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: 1.20.x | |
- name: Build | |
run: make win-sshproxy | |
- name: Test | |
run: go test -v .\test-win-sshproxy | |