diff --git a/Dockerfile b/Dockerfile index bf358e0..cd8ea22 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,2 +1,16 @@ -FROM ubuntu:latest -RUN apt update +FROM golang:latest AS builder +WORKDIR /shared-data/app + +COPY ./ ./ + +# RUN go mod download + +RUN CGO_ENABLED=0 GOOS=linux go build -o fibonacci_go . + +FROM alpine:latest +WORKDIR /shared-data/app + +COPY --from=builder /shared-data/app/fibonacci_go . + +ENTRYPOINT [ "/shared-data/app/fibonacci_go" ] + diff --git a/Dockerfile_better b/Dockerfile_better deleted file mode 100644 index cd8ea22..0000000 --- a/Dockerfile_better +++ /dev/null @@ -1,16 +0,0 @@ -FROM golang:latest AS builder -WORKDIR /shared-data/app - -COPY ./ ./ - -# RUN go mod download - -RUN CGO_ENABLED=0 GOOS=linux go build -o fibonacci_go . - -FROM alpine:latest -WORKDIR /shared-data/app - -COPY --from=builder /shared-data/app/fibonacci_go . - -ENTRYPOINT [ "/shared-data/app/fibonacci_go" ] - diff --git a/argo-workflows/example-ci-workflow.yaml b/argo-workflows/example-ci-workflow.yaml index 05fb504..8141dc6 100644 --- a/argo-workflows/example-ci-workflow.yaml +++ b/argo-workflows/example-ci-workflow.yaml @@ -111,15 +111,16 @@ spec: image: gcr.io/kaniko-project/executor:v1.23.2 args: [ - "--dockerfile=/shared-data/repo/Dockerfile", + "--dockerfile=Dockerfile", "--context=/shared-data/repo/", - "--destination=forgejo.edf-bootstrap.cx.fg1.ffm.osc.live/franz.germann/fibonacci_go:latest", + "--destination=gitea.cnoe.localtest.me/giteaadmin/fibonacci_go:latest", + "--skip-tls-verify" ] volumeMounts: - name: shared-data mountPath: /shared-data - name: docker-config - mountPath: /kaniko/.docker + mountPath: /kaniko/.docker/ - name: unit-tests container: @@ -128,8 +129,7 @@ spec: args: - | cd /shared-data/repo - go test ./... -v > test-results.txt - cat test-results.txt + go test ./... -v volumeMounts: - name: shared-data mountPath: /shared-data @@ -144,7 +144,7 @@ spec: args: - | cd /shared-data/repo - golangci-lint run ./... --out-format=json --timeout 5m --issues-exit-code 1 + golangci-lint run ./... --out-format=json --timeout 5m --issues-exit-code 1 volumeMounts: - name: shared-data mountPath: /shared-data