From 3192365793fae59f2b89e3231db298654f0a28e9 Mon Sep 17 00:00:00 2001 From: Nicolai Ort Date: Mon, 6 Nov 2023 20:15:44 +0100 Subject: [PATCH] feat(ci)!: Switch to woodpecker --- .drone.yml | 174 ---------------------------------------- .woodpecker/build.yml | 39 +++++++++ .woodpecker/release.yml | 29 +++++++ .woodpecker/testpr.yml | 13 +++ 4 files changed, 81 insertions(+), 174 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 8c1cb37..0000000 --- a/.drone.yml +++ /dev/null @@ -1,174 +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: git_ssh -get: - path: odit-git-bot - name: sshkey - ---- -kind: secret -name: ci_token -get: - path: odit-ci-bot - name: apikey - ---- -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.5.0-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 - depends_on: ["clone"] - 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/backend - 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: clone - image: alpine/git - commands: - - git clone $DRONE_REMOTE_URL . - - git checkout dev - - git merge main - - git checkout main - - name: build latest - depends_on: ["clone"] - 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/backend - tags: - - latest - cache: true - registry: registry.odit.services - - name: push merge to repo - depends_on: ["clone"] - image: appleboy/drone-git-push - settings: - branch: dev - commit: false - remote: git@git.odit.services:lfk/backend.git - ssh_key: - from_secret: git_ssh - -trigger: - branch: - - main - event: - - push - ---- -kind: pipeline -type: kubernetes -name: build:tags - -steps: - - name: build $DRONE_TAG - depends_on: ["clone"] - 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/backend - tags: - - "${DRONE_TAG}" - cache: true - registry: registry.odit.services - - name: trigger js lib build - image: idcooldi/drone-webhook - settings: - urls: https://ci.odit.services/api/repos/lfk/lfk-client-js/builds?SOURCE_TAG=${DRONE_TAG} - bearer: - from_secret: ci_token -trigger: - event: - - tag diff --git a/.woodpecker/build.yml b/.woodpecker/build.yml new file mode 100644 index 0000000..8114d9a --- /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/backend + tags: + - latest + registry: registry.odit.services + platforms: linux/amd64,linux/arm64 + cache_from: registry.odit.services/lfk/backend: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/backend + tags: + - dev + registry: registry.odit.services + platforms: linux/amd64,linux/arm64 + cache_from: registry.odit.services/lfk/backend: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..9a55be3 --- /dev/null +++ b/.woodpecker/release.yml @@ -0,0 +1,29 @@ +steps: + - name: build tag + image: woodpeckerci/plugin-docker-buildx + settings: + repo: registry.odit.services/lfk/backend + tags: + - "${CI_COMMIT_TAG}" + registry: registry.odit.services + platforms: linux/amd64,linux/arm64 + cache_from: registry.odit.services/lfk/backend: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 + - name: trigger js lib build + image: woodpeckerci/plugin-trigger + settings: + repositories: + - lfk/lfk-client-js + params: + - "SOURCE_TAG=${CI_COMMIT_TAG}" + token: + from_secret: odit-ci-bot-apikey + +when: + event: tag diff --git a/.woodpecker/testpr.yml b/.woodpecker/testpr.yml new file mode 100644 index 0000000..39cf359 --- /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 + - pnpm i + - pnpm test:ci + secrets: + - source: odit-npm-cache-url + target: NPM_REGISTRY_URL +when: + event: + - pull_request