From 9b60d77a61d4cd7e28692678c28e70bd6c91f579 Mon Sep 17 00:00:00 2001 From: Nicolas Paton Date: Sun, 10 Dec 2023 16:12:16 +0800 Subject: [PATCH] ci: upgrade go build version (#459) --- .github/workflows/build_and_release.yaml | 7 +++++++ build/Containerfile | 4 ++-- go.mod | 2 +- go.sum | 8 ++++++++ 4 files changed, 18 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build_and_release.yaml b/.github/workflows/build_and_release.yaml index 2a803836..27ad76e2 100644 --- a/.github/workflows/build_and_release.yaml +++ b/.github/workflows/build_and_release.yaml @@ -80,11 +80,16 @@ jobs: token: ${{ secrets.GITHUB_TOKEN }} version: ${{ needs.npm.outputs.version }} + - name: Get branch name + id: branch-name + uses: tj-actions/branch-names@v5.4 + - name: Set GITHUB_ENV run: | echo "BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" >> $GITHUB_ENV echo "BUILD_SHA=$(git rev-list -1 HEAD)" >> $GITHUB_ENV echo "BUILD_SHA_SHORT=$(git rev-parse --short=7 ${{ github.sha }})" >> $GITHUB_ENV + echo "BUILD_NUM=${{ github.run_number }}" >> $GITHUB_ENV # If tag has been created, we assume we need to release a version - name: Check if tag has been created @@ -113,6 +118,7 @@ jobs: echo BUILD_BRANCH=${{ env.BUILD_BRANCH }} echo BUILD_TAG=${{ env.BUILD_TAG }} echo EMPIRICA_CORE_VERSION=${{ needs.npm.outputs.version }} + echo BUILD_NUM=${{ env.BUILD_NUM }} - name: Cache Go build uses: actions/cache@v3 @@ -145,6 +151,7 @@ jobs: BUILD_SHA=${{ env.BUILD_SHA_SHORT }} BUILD_BRANCH=${{ env.BUILD_BRANCH }} BUILD_TAG=${{ env.BUILD_TAG }} + BUILD_NUM=${{ env.BUILD_NUM }} - name: Smoke test run: /home/runner/out/empirica-linux-amd64 --help diff --git a/build/Containerfile b/build/Containerfile index 48445012..ed41e90b 100644 --- a/build/Containerfile +++ b/build/Containerfile @@ -1,4 +1,4 @@ -FROM ghcr.io/gythialy/golang-cross:v1.20.4 +FROM ghcr.io/gythialy/golang-cross:1.21 ARG BUILD_DATE ARG BUILD_SHA @@ -45,7 +45,7 @@ RUN cd /build/internal/templates && go-bindata -ignore="node_modules|trigger|yar # Build RUN CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -tags "static_build" -ldflags "-extldflags=-static -s -w -X 'github.com/empiricaly/empirica/internal/build.SHA=$BUILD_SHA' -X 'github.com/empiricaly/empirica/internal/build.Tag=$BUILD_TAG' -X 'github.com/empiricaly/empirica/internal/build.Branch=$BUILD_BRANCH' -X 'github.com/empiricaly/empirica/internal/build.BuildNum=$BUILD_NUM' -X 'github.com/empiricaly/empirica/internal/build.Time=$BUILD_DATE'" -o /out/empirica-linux-amd64 ./cmds/empirica RUN if [[ -z "$BUILD_ONLY_AMD64" ]] ; then CC=o64-clang CXX=o64-clang++ CGO_ENABLED=1 GOOS=darwin GOARCH=amd64 go build -ldflags "-s -w -X 'github.com/empiricaly/empirica/internal/build.SHA=$BUILD_SHA' -X 'github.com/empiricaly/empirica/internal/build.Tag=$BUILD_TAG' -X 'github.com/empiricaly/empirica/internal/build.Branch=$BUILD_BRANCH' -X 'github.com/empiricaly/empirica/internal/build.BuildNum=$BUILD_NUM' -X 'github.com/empiricaly/empirica/internal/build.Time=$BUILD_DATE'" -o /out/empirica-darwin-amd64 ./cmds/empirica ; else echo Building only AMD64 ; fi -RUN if [[ -z "$BUILD_ONLY_AMD64" ]] ; then CC=aarch64-apple-darwin21.4-clang CXX=aarch64-apple-darwin21.4-clang++ CGO_ENABLED=1 GOOS=darwin GOARCH=arm64 go build -ldflags "-s -w -X 'github.com/empiricaly/empirica/internal/build.SHA=$BUILD_SHA' -X 'github.com/empiricaly/empirica/internal/build.Tag=$BUILD_TAG' -X 'github.com/empiricaly/empirica/internal/build.Branch=$BUILD_BRANCH' -X 'github.com/empiricaly/empirica/internal/build.BuildNum=$BUILD_NUM' -X 'github.com/empiricaly/empirica/internal/build.Time=$BUILD_DATE'" -o /out/empirica-darwin-arm64 ./cmds/empirica ; else echo Building only AMD64 ; fi +RUN if [[ -z "$BUILD_ONLY_AMD64" ]] ; then CC=oa64-clang CXX=oa64-clang++ CGO_ENABLED=1 GOOS=darwin GOARCH=arm64 go build -ldflags "-s -w -X 'github.com/empiricaly/empirica/internal/build.SHA=$BUILD_SHA' -X 'github.com/empiricaly/empirica/internal/build.Tag=$BUILD_TAG' -X 'github.com/empiricaly/empirica/internal/build.Branch=$BUILD_BRANCH' -X 'github.com/empiricaly/empirica/internal/build.BuildNum=$BUILD_NUM' -X 'github.com/empiricaly/empirica/internal/build.Time=$BUILD_DATE'" -o /out/empirica-darwin-arm64 ./cmds/empirica ; else echo Building only AMD64 ; fi # RUN CC=CC=x86_64-w64-mingw32-gcc CXX=x86_64-w64-mingw32-g++ CGO_ENABLED=1 GOOS=windows GOARCH=amd64 go build -tags "static_build" -ldflags "-extldflags=-static -buildmode=exe -s -w -X 'github.com/empiricaly/empirica/internal/build.SHA=$BUILD_SHA' -X 'github.com/empiricaly/empirica/internal/build.Tag=$BUILD_TAG' -X 'github.com/empiricaly/empirica/internal/build.Branch=$BUILD_BRANCH' -X 'github.com/empiricaly/empirica/internal/build.BuildNum=$BUILD_NUM' -X 'github.com/empiricaly/empirica/internal/build.Time=$BUILD_DATE'" -o /out/empirica-windows-amd64.exe ./cmds/empirica # Clear inherited entrypoint diff --git a/go.mod b/go.mod index 81444a77..17e60cad 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/empiricaly/empirica -go 1.18 +go 1.21 require ( github.com/99designs/gqlgen v0.17.36 diff --git a/go.sum b/go.sum index caba1c09..9f2fbee4 100644 --- a/go.sum +++ b/go.sum @@ -103,6 +103,7 @@ github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5Kwzbycv github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= github.com/frankban/quicktest v1.14.3 h1:FJKSZTDHjyhriyC81FLQ0LY93eSai0ZyR/ZIkd3ZUKE= +github.com/frankban/quicktest v1.14.3/go.mod h1:mgiwOwqx65TmIk1wJ6Q7wvnVMocbUorkibMOrVTHZps= github.com/fsnotify/fsnotify v1.5.4 h1:jRbGcIw6P2Meqdwuo0H1p6JVLbL5DHKAKlYndzMwVZI= github.com/fsnotify/fsnotify v1.5.4/go.mod h1:OVB6XrOHzAwXMpEM7uPOzcehqUV2UqJxmVXmkdnm1bU= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= @@ -147,6 +148,7 @@ github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QD github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= +github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= @@ -305,6 +307,7 @@ github.com/sasha-s/go-deadlock v0.3.1/go.mod h1:F73l+cr82YSh10GxyRI6qZiCgK64VaZj github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8= github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I= github.com/sourcegraph/conc v0.3.0 h1:OQTbbt6P72L20UqAkXXuLOj79LfEanQ+YQFNpLA9ySo= +github.com/sourcegraph/conc v0.3.0/go.mod h1:Sdozi7LEKbFPqYX2/J+iBAM6HpqSLTASQIKqDmF7Mt0= github.com/spf13/afero v1.9.2 h1:j49Hj62F0n+DaZ1dDCvhABaPNSGNkt32oRFxI33IEMw= github.com/spf13/afero v1.9.2/go.mod h1:iUV7ddyEEZPO5gA3zD4fJt6iStLlL+Lg4m2cihcDf8Y= github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w= @@ -326,6 +329,7 @@ github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals= github.com/stretchr/testify v1.8.2 h1:+h33VjcLVPDHtOdpUCuF+7gSuG3yGIftsP1YvFihtJ8= +github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/subosito/gotenv v1.4.0 h1:yAzM1+SmVcz5R4tXGsNMu1jUl2aOJXoiWUCEwwnGrvs= github.com/subosito/gotenv v1.4.0/go.mod h1:mZd6rFysKEcUhUHXJk0C/08wAgyDBFuwEYL7vWWGaGo= github.com/twmb/murmur3 v1.1.6 h1:mqrRot1BRxm+Yct+vavLMou2/iJt0tNVTTC0QoIjaZg= @@ -347,7 +351,9 @@ go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= go.uber.org/atomic v1.7.0 h1:ADUqmZGgLDDfbSL9ZmPxKTybcoEYHgpYfELNoN+7hsw= +go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/multierr v1.9.0 h1:7fIwc/ZtS0q++VgcfqFDxSBZVv/Xo49/SYnDFupUwlI= +go.uber.org/multierr v1.9.0/go.mod h1:X2jQV1h+kxSjClGpnseKVIxpmcjrj7MNnI0bnlfKTVQ= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= @@ -449,6 +455,7 @@ golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.3.0 h1:ftCYgMx6zT/asHUrPw8BLLscYtGznsLAnjq5RH9P66E= +golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180926160741-c2ed4eda69e7/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -659,6 +666,7 @@ google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpAD google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGjtUeSXeh4= google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= google.golang.org/protobuf v1.30.0 h1:kPPoIgf3TsEvrm0PFe15JQ+570QVxYzEvvHqChK+cng= +google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=