From 36b975a1ffd2349d019a45d28b503d79d49891ab Mon Sep 17 00:00:00 2001 From: Nicolai Ort Date: Mon, 6 Nov 2023 20:47:31 +0100 Subject: [PATCH] feat(ci)!: Switched to woodpecker --- .drone.yml | 133 ---------------------------------------- .woodpecker/build.yml | 39 ++++++++++++ .woodpecker/release.yml | 20 ++++++ .woodpecker/testpr.yml | 13 ++++ Dockerfile | 2 +- 5 files changed, 73 insertions(+), 134 deletions(-) delete mode 100644 .drone.yml create mode 100644 .woodpecker/build.yml create mode 100644 .woodpecker/release.yml create mode 100644 .woodpecker/testpr.yml diff --git a/.drone.yml b/.drone.yml deleted file mode 100644 index 740b085..0000000 --- a/.drone.yml +++ /dev/null @@ -1,133 +0,0 @@ ---- -kind: secret -name: docker_username -get: - path: odit-registry-builder - name: username - ---- -kind: secret -name: docker_password -get: - path: odit-registry-builder - name: password - ---- -kind: secret -name: npm_url -get: - path: odit-npm-cache - name: url - ---- -kind: pipeline -type: kubernetes -name: tests:node -clone: - disable: true -steps: - - name: checkout pr - image: alpine/git - commands: - - git clone $DRONE_REMOTE_URL . - - git checkout $DRONE_SOURCE_BRANCH - - name: run tests - image: registry.odit.services/hub/library/node:19.0.1-alpine3.16 - commands: - - npm config set registry $NPM_REGISTRY_URL && npm i -g pnpm@8 - - pnpm i - - pnpm test:ci - environment: - NPM_REGISTRY_URL: - from_secret: npm_url -trigger: - event: - - pull_request - ---- -kind: pipeline -type: kubernetes -name: build:dev -clone: - disable: true - -steps: - - name: clone - image: alpine/git - commands: - - git clone $DRONE_REMOTE_URL . - - git checkout dev - - name: build dev - image: registry.odit.services/library/drone-kaniko - settings: - username: - from_secret: docker_username - password: - from_secret: docker_password - build_args: - - NPM_REGISTRY_URL: - from_secret: npm_url - repo: lfk/mailer - tags: - - dev - cache: true - registry: registry.odit.services -trigger: - branch: - - dev - event: - - push - ---- -kind: pipeline -type: kubernetes -name: build:latest -clone: - disable: true - -steps: - - name: build latest - image: registry.odit.services/library/drone-kaniko - settings: - username: - from_secret: docker_username - password: - from_secret: docker_password - build_args: - - NPM_REGISTRY_URL: - from_secret: npm_url - repo: lfk/mailer - tags: - - latest - cache: true - registry: registry.odit.services -trigger: - branch: - - main - event: - - push - ---- -kind: pipeline -type: kubernetes -name: build:tags - -steps: - - name: build $DRONE_TAG - image: registry.odit.services/library/drone-kaniko - settings: - username: - from_secret: docker_username - password: - from_secret: docker_password - build_args: - - NPM_REGISTRY_URL: - from_secret: npm_url - repo: lfk/mailer - tags: - - "${DRONE_TAG}" - cache: true - registry: registry.odit.services -trigger: - event: - - tag diff --git a/.woodpecker/build.yml b/.woodpecker/build.yml new file mode 100644 index 0000000..f6e9071 --- /dev/null +++ b/.woodpecker/build.yml @@ -0,0 +1,39 @@ +steps: + - name: build latest + image: woodpeckerci/plugin-docker-buildx + settings: + repo: registry.odit.services/lfk/mailer + tags: + - latest + registry: registry.odit.services + platforms: linux/amd64,linux/arm64 + cache_from: registry.odit.services/lfk/mailer:latest + username: + from_secret: odit-registry-builder-username + password: + from_secret: odit-registry-builder-password + secrets: + - source: odit-npm-cache-url + target: NPM_REGISTRY_URL + when: + branch: main + - name: build dev + image: woodpeckerci/plugin-docker-buildx + settings: + repo: registry.odit.services/lfk/mailer + tags: + - dev + registry: registry.odit.services + platforms: linux/amd64,linux/arm64 + cache_from: registry.odit.services/lfk/mailer:dev + username: + from_secret: odit-registry-builder-username + password: + from_secret: odit-registry-builder-password + secrets: + - source: odit-npm-cache-url + target: NPM_REGISTRY_URL + when: + branch: dev +when: + event: push diff --git a/.woodpecker/release.yml b/.woodpecker/release.yml new file mode 100644 index 0000000..052c358 --- /dev/null +++ b/.woodpecker/release.yml @@ -0,0 +1,20 @@ +steps: + - name: build tag + image: woodpeckerci/plugin-docker-buildx + settings: + repo: registry.odit.services/lfk/mailer + tags: + - "${CI_COMMIT_TAG}" + registry: registry.odit.services + platforms: linux/amd64,linux/arm64 + cache_from: registry.odit.services/lfk/mailer:latest + username: + from_secret: odit-registry-builder-username + password: + from_secret: odit-registry-builder-password + secrets: + - source: odit-npm-cache-url + target: NPM_REGISTRY_URL + +when: + event: tag diff --git a/.woodpecker/testpr.yml b/.woodpecker/testpr.yml new file mode 100644 index 0000000..f6e6495 --- /dev/null +++ b/.woodpecker/testpr.yml @@ -0,0 +1,13 @@ +steps: + - name: playwright tests + image: registry.odit.services/hub/library/node:19.5.0-alpine3.16 + commands: + - npm config set registry $NPM_REGISTRY_URL && npm i -g pnpm@8.0.0 + - pnpm i + - pnpm test:ci + secrets: + - source: odit-npm-cache-url + target: NPM_REGISTRY_URL +when: + event: + - pull_request diff --git a/Dockerfile b/Dockerfile index 3c9c91c..805a08a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,7 +4,7 @@ ARG NPM_REGISTRY_URL=https://registry.npmjs.org WORKDIR /app COPY package.json ./ -RUN npm config set registry $NPM_REGISTRY_URL && npm i -g pnpm@8 +RUN npm config set registry $NPM_REGISTRY_URL && npm i -g pnpm@8.0.0 RUN mkdir /pnpm && pnpm config set store-dir /pnpm && pnpm i COPY tsconfig.json ./