From caf15aadcb250cd20f78a468f210fe5ced56c385 Mon Sep 17 00:00:00 2001 From: DutchEllie Date: Sat, 14 May 2022 21:09:48 +0200 Subject: [PATCH] CI update --- .drone.yml | 40 ++++++++++++++++++++++++++++++++++------ Dockerfile | 25 +++++++++++++------------ 2 files changed, 47 insertions(+), 18 deletions(-) diff --git a/.drone.yml b/.drone.yml index 72c6f2d..6f314ef 100644 --- a/.drone.yml +++ b/.drone.yml @@ -1,24 +1,53 @@ kind: pipeline type: kubernetes -name: default +name: staging trigger: event: - push -# STAGING!!!!!!!!!!!!! +# STAGING!!!! steps: -- name: docker +- name: build-wasm + image: golang:1.17.8-alpine + volumes: + - name: build + path: /drone/src/build + environment: + APIURL: https://api.quenten.nl/api/testing + commands: + - mkdir ./build/web + - GOARCH=wasm GOOS=js go build -o ./build/web/app.wasm -ldflags="-X 'main.ApiURL=$APIURL'" ./src +- name: build-server + image: golang:1.17.8-alpine + volumes: + - name: build + path: /drone/src/build + environment: + APIURL: https://api.quenten.nl/api/testing + commands: + - go build -o ./build/app -ldflags="-X 'main.ApiURL=$APIURL'" ./src +- name: build-publish-image image: plugins/docker + privileged: true + volumes: + - name: build + path: /drone/src/build settings: - username: + cache_from: + - "dutchellie/proper-website-2:dev" + username: from_secret: docker_username password: from_secret: docker_password + dockerfile: Dockerfile repo: dutchellie/proper-website-2 - tags: + tags: - dev - ${DRONE_COMMIT_SHA:0:8} + depends_on: + - build-wasm + - build-server - name: deploy-staging image: pelotech/drone-helm3 settings: @@ -28,7 +57,6 @@ steps: release: newsite-staging skip_tls_verify: true values_files: -# - .drone/helm/values.yaml - .drone/helm/staging-val.yaml values: - "image=dutchellie/proper-website-2:${DRONE_COMMIT_SHA:0:8}" diff --git a/Dockerfile b/Dockerfile index 9f9281a..1250550 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,16 +1,17 @@ -FROM golang:1.17.8-alpine AS builder -ARG APIURL -WORKDIR /project -ADD . /project/ -RUN go mod tidy -RUN GOARCH=wasm GOOS=js go build -o web/app.wasm -ldflags="-X 'main.ApiURL=$APIURL'" ./src -RUN go build -o app -ldflags="-X 'main.ApiURL=$APIURL'" ./src +#FROM golang:1.17.8-alpine AS builder +#ARG APIURL +#WORKDIR /project +#ADD . /project/ +#RUN go mod tidy +#RUN GOARCH=wasm GOOS=js go build -o web/app.wasm -ldflags="-X 'main.ApiURL=$APIURL'" ./src +#RUN go build -o app -ldflags="-X 'main.ApiURL=$APIURL'" ./src -FROM alpine:latest AS staging +FROM alpine:latest RUN apk --no-cache add ca-certificates -WORKDIR /root/ -COPY --from=builder /project/web ./web/ -COPY --from=builder /project/app ./ +WORKDIR /root +RUN mkdir ./web +COPY ./web ./web +COPY ./build/web/app.wasm ./web/ +COPY ./build/app ./ EXPOSE 8000 -ENV TESTING true CMD ["./app"] \ No newline at end of file