diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 7cd3e2f..8a01fbd 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -70,14 +70,3 @@ jobs: - name: Go Report update if: ${{ github.repository == 'jonasvinther/medusa' }} run: "curl -X POST -F \"repo=github.com/$GITHUB_REPOSITORY\" https://goreportcard.com/checks" - - - name: Run codecov - run: go test -race -covermode=atomic -v ./... -coverprofile=coverage.txt - - - name: Upload coverage to Codecov - if: success() && ${{ github.repository == 'jonasvinther/medusa' }} - uses: codecov/codecov-action@v1 - with: - file: ./coverage.txt - token: ${{secrets.CODECOV}} - fail_ci_if_error: true diff --git a/.github/workflows/release-docker.yml b/.github/workflows/release-docker.yml index 81caa50..0f8f0dc 100644 --- a/.github/workflows/release-docker.yml +++ b/.github/workflows/release-docker.yml @@ -26,13 +26,21 @@ jobs: registry: ${{ env.REGISTRY }} username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} + + - name: Set up QEMU + uses: docker/setup-qemu-action@v2 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 - name: Build and push Docker image - id: docker_build - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v3 with: context: . push: true + platforms: linux/amd64,linux/arm64 + build-args: | + VERSION=${{ env.TAG }} tags: | ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest - ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ env.TAG }} \ No newline at end of file + ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ env.TAG }} diff --git a/Dockerfile b/Dockerfile index 19f63cf..0b321d3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,6 @@ -FROM golang:alpine AS builder +FROM --platform=$BUILDPLATFORM golang:alpine AS builder +ARG VERSION +ARG TARGETARCH RUN apk update && apk add --no-cache git @@ -10,7 +12,9 @@ ADD . . RUN go mod download RUN go get -d -v -RUN CGO_ENABLED=0 GOOS=linux go build -o /go/bin/medusa +RUN CGO_ENABLED=0 GOOS=linux GOARCH=${TARGETARCH} go build \ + -ldflags="-X 'github.com/jonasvinther/medusa/cmd.Version=${VERSION}'" \ + -o /go/bin/medusa RUN adduser -S scratchuser RUN chown scratchuser /go/bin/medusa @@ -19,4 +23,4 @@ FROM scratch COPY --from=builder /go/bin/medusa /medusa COPY --from=builder /etc/passwd /etc/passwd USER scratchuser -ENTRYPOINT ["/medusa"] \ No newline at end of file +ENTRYPOINT ["/medusa"] diff --git a/pkg/vaultengine/vaultclient.go b/pkg/vaultengine/vaultclient.go index d0fe6b9..32f8e32 100644 --- a/pkg/vaultengine/vaultclient.go +++ b/pkg/vaultengine/vaultclient.go @@ -35,7 +35,9 @@ func NewClient(addr, token string, insecure bool, namespace string, role string, authPath: authPath, } - client.newVaultClient() + if err := client.newVaultClient(); err != nil { + panic(err) + } return client }