From 2b338d671e734b1ca90d069464037f1e323ebdc8 Mon Sep 17 00:00:00 2001 From: Christophe Fergeau Date: Wed, 6 Sep 2023 17:17:23 +0200 Subject: [PATCH 1/4] ghactions: build: Add win-gvproxy and win-sshproxy This will ensure they get into our release assets, and may eventually help removing manual builds from podman Makefile: https://github.com/containers/podman/blob/2806378c1a21f3ed55dfff2f32ef98ab0d9eec23/Makefile#L775-L787 After this commit, we'll build both gvproxy-windows.exe and gvproxy-windowsgui.exe, the former can be started from a console, and the latter will run in the background. Signed-off-by: Christophe Fergeau --- .github/workflows/go.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index ce77d0d91..d883e76e2 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -20,7 +20,9 @@ jobs: go-version: 1.20.x - name: Build - run: make cross qemu-wrapper vm + run: | + make cross qemu-wrapper vm win-gvproxy win-sshproxy + mv bin/gvproxy.exe bin/gvproxy-windowsgui.exe - uses: actions/upload-artifact@v3 with: From 395e2342c4883aace3ccee68ace431d77accf9ce Mon Sep 17 00:00:00 2001 From: Christophe Fergeau Date: Wed, 6 Sep 2023 17:19:17 +0200 Subject: [PATCH 2/4] ghactions: Use `make win-sshproxy` The manual `go build` invocation is duplicating what is already being done in the Makefile Signed-off-by: Christophe Fergeau --- .github/workflows/go.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index d883e76e2..208b27082 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -67,7 +67,7 @@ jobs: go-version: 1.20.x - name: Build - run: go build -ldflags -H=windowsgui -o bin/win-sshproxy.exe ./cmd/win-sshproxy + run: make win-sshproxy - name: Test run: go test -v .\test-win-sshproxy From 2f260144ab19aeb099ec8f445f7824f0b2af80e0 Mon Sep 17 00:00:00 2001 From: Christophe Fergeau Date: Wed, 6 Sep 2023 17:19:57 +0200 Subject: [PATCH 3/4] ghactions: Use macos-latest instead of macos-11 The macOS version should not matter for our tests. If we don't hardcode a version, we don't need to update it ourselves when it's obsoleted. Signed-off-by: Christophe Fergeau --- .github/workflows/go.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 208b27082..274e5754e 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -30,7 +30,7 @@ jobs: path: bin/* tests: - runs-on: macos-11 # Only Mac runners support nested virt + 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: From b1731b14b7155c1633c2d4560bf28fa2e0f5cac5 Mon Sep 17 00:00:00 2001 From: Christophe Fergeau Date: Wed, 6 Sep 2023 17:47:03 +0200 Subject: [PATCH 4/4] ghactions: Add comment explaining why we stay on ubuntu-20.04 It's used on purpose, see commit 428c40018 and https://github.com/containers/gvisor-tap-vsock/issues/256 Signed-off-by: Christophe Fergeau --- .github/workflows/go.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 274e5754e..4c69d714b 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -9,7 +9,7 @@ on: jobs: build: - runs-on: ubuntu-20.04 + runs-on: ubuntu-20.04 # explicitly use 20.04, see commit 428c40018a timeout-minutes: 30 steps: - uses: actions/checkout@v3