diff --git a/.github/workflows/cicd.yml b/.github/workflows/cicd.yml index 337bf68..989e68c 100644 --- a/.github/workflows/cicd.yml +++ b/.github/workflows/cicd.yml @@ -586,28 +586,28 @@ jobs: # sarif_file: trivy-ghcr.sarif # category: Image Vulnerability Scan - # - name: Build binaries - # env: - # CGO_ENABLED: "0" - # GOFLAGS: "-trimpath" - # run: | - # set -euo pipefail - # TAG_VAR="${TAG}" - # make go-build-release tag=$TAG_VAR - # shell: bash + - name: Build binaries + env: + CGO_ENABLED: "0" + GOFLAGS: "-trimpath" + run: | + set -euo pipefail + TAG_VAR="${TAG}" + make go-build-release tag=$TAG_VAR + shell: bash - # - name: Create GitHub Release - # uses: softprops/action-gh-release@5be0e66d93ac7ed76da52eca8bb058f665c3a5fe # v2.4.2 - # with: - # tag_name: ${{ env.TAG }} - # generate_release_notes: true - # prerelease: ${{ env.IS_RC == 'true' }} - # files: | - # bin/* - # fail_on_unmatched_files: true - # draft: true - # body: | - # ## Container Images - # - GHCR: `${{ env.GHCR_REF }}` - # - Docker Hub: `${{ env.DH_REF || 'N/A' }}` - # **Digest:** `${{ steps.build.outputs.digest }}` + - name: Create GitHub Release + uses: softprops/action-gh-release@5be0e66d93ac7ed76da52eca8bb058f665c3a5fe # v2.4.2 + with: + tag_name: ${{ env.TAG }} + generate_release_notes: true + prerelease: ${{ env.IS_RC == 'true' }} + files: | + bin/* + fail_on_unmatched_files: true + draft: true + body: | + ## Container Images + - GHCR: `${{ env.GHCR_REF }}` + - Docker Hub: `${{ env.DH_REF || 'N/A' }}` + **Digest:** `${{ steps.build.outputs.digest }}` diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 50f6191..2349f3a 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -18,11 +18,8 @@ jobs: with: go-version: 1.25 - - name: Build go - run: go build + - name: Build binaries + run: make go-build-release - name: Build Docker image run: make docker-build-release - - - name: Build binaries - run: make go-build-release diff --git a/Makefile b/Makefile index e2cb690..8eed5c2 100644 --- a/Makefile +++ b/Makefile @@ -1,20 +1,58 @@ +.PHONY: all local docker-build-release -all: local +all: local + +local: + CGO_ENABLED=0 go build -o ./bin/olm docker-build-release: @if [ -z "$(tag)" ]; then \ echo "Error: tag is required. Usage: make docker-build-release tag="; \ exit 1; \ fi - docker buildx build --platform linux/arm/v7,linux/arm64,linux/amd64 -t fosrl/olm:latest -f Dockerfile --push . - docker buildx build --platform linux/arm/v7,linux/arm64,linux/amd64 -t fosrl/olm:$(tag) -f Dockerfile --push . + docker buildx build . \ + --platform linux/arm/v7,linux/arm64,linux/amd64 \ + -t fosrl/olm:latest \ + -t fosrl/olm:$(tag) \ + -f Dockerfile \ + --push -local: - CGO_ENABLED=0 go build -o bin/olm +.PHONY: go-build-release \ + go-build-release-linux-arm64 go-build-release-linux-arm32-v7 \ + go-build-release-linux-arm32-v6 go-build-release-linux-amd64 \ + go-build-release-linux-riscv64 go-build-release-darwin-arm64 \ + go-build-release-darwin-amd64 go-build-release-windows-amd64 -go-build-release: +go-build-release: \ + go-build-release-linux-arm64 \ + go-build-release-linux-arm32-v7 \ + go-build-release-linux-arm32-v6 \ + go-build-release-linux-amd64 \ + go-build-release-linux-riscv64 \ + go-build-release-darwin-arm64 \ + go-build-release-darwin-amd64 \ + go-build-release-windows-amd64 \ + +go-build-release-linux-arm64: CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -o bin/olm_linux_arm64 + +go-build-release-linux-arm32-v7: + CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=7 go build -o bin/olm_linux_arm32 + +go-build-release-linux-arm32-v6: + CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=6 go build -o bin/olm_linux_arm32v6 + +go-build-release-linux-amd64: CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o bin/olm_linux_amd64 + +go-build-release-linux-riscv64: + CGO_ENABLED=0 GOOS=linux GOARCH=riscv64 go build -o bin/olm_linux_riscv64 + +go-build-release-darwin-arm64: CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 go build -o bin/olm_darwin_arm64 + +go-build-release-darwin-amd64: CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -o bin/olm_darwin_amd64 - CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o bin/olm_windows_amd64.exe \ No newline at end of file + +go-build-release-windows-amd64: + CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o bin/olm_windows_amd64.exe diff --git a/go.mod b/go.mod index 59992a3..4844592 100644 --- a/go.mod +++ b/go.mod @@ -4,7 +4,7 @@ go 1.25 require ( github.com/Microsoft/go-winio v0.6.2 - github.com/fosrl/newt v0.0.0-20251216233525-ff7fe1275b26 + github.com/fosrl/newt v0.0.0-20251222020104-a21a8e90fa01 github.com/godbus/dbus/v5 v5.2.0 github.com/gorilla/websocket v1.5.3 github.com/miekg/dns v1.1.68 @@ -30,5 +30,3 @@ require ( golang.zx2c4.com/wintun v0.0.0-20230126152724-0fa3db229ce2 // indirect golang.zx2c4.com/wireguard/windows v0.5.3 // indirect ) - -replace github.com/fosrl/newt => ../newt diff --git a/go.sum b/go.sum index f6ca61a..7e94e2a 100644 --- a/go.sum +++ b/go.sum @@ -1,5 +1,10 @@ github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERoyfY= github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU= +<<<<<<< HEAD +======= +github.com/fosrl/newt v0.0.0-20251222020104-a21a8e90fa01 h1:VpuI42l4enih//6IFFQDln/B7WukfMePxIRIpXsNe/0= +github.com/fosrl/newt v0.0.0-20251222020104-a21a8e90fa01/go.mod h1:pol958CEs0nQmo/35Ltv0CGksheIKCS2hoNvdTVLEcI= +>>>>>>> dev github.com/godbus/dbus/v5 v5.2.0 h1:3WexO+U+yg9T70v9FdHr9kCxYlazaAXUhx2VMkbfax8= github.com/godbus/dbus/v5 v5.2.0/go.mod h1:3AAv2+hPq5rdnr5txxxRwiGjPXamgoIHgz9FPBfOp3c= github.com/google/btree v1.1.3 h1:CVpQJjYgC4VbzxeGVHfvZrv1ctoYCAI8vbl07Fcxlyg=