From cf21ec6418dc0bfbc72ed7d19059430af366f5b3 Mon Sep 17 00:00:00 2001 From: zima Date: Wed, 2 Jul 2025 21:16:15 -0700 Subject: [PATCH 01/13] feat: add experimental workflow for woodpecker --- .woodpecker/experimental.yaml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .woodpecker/experimental.yaml diff --git a/.woodpecker/experimental.yaml b/.woodpecker/experimental.yaml new file mode 100644 index 0000000000..ed451b482a --- /dev/null +++ b/.woodpecker/experimental.yaml @@ -0,0 +1,5 @@ +steps: + - name: test + image: alpine + commands: + - ls -al From 74fb111daef93622731afdc813dd8b31f34005ce Mon Sep 17 00:00:00 2001 From: zima Date: Wed, 2 Jul 2025 21:19:07 -0700 Subject: [PATCH 02/13] chore(woodpecker): use manual trigger --- .woodpecker/experimental.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.woodpecker/experimental.yaml b/.woodpecker/experimental.yaml index ed451b482a..468d051f2a 100644 --- a/.woodpecker/experimental.yaml +++ b/.woodpecker/experimental.yaml @@ -1,3 +1,6 @@ +when: + - event: manual + steps: - name: test image: alpine From 43a3b0e9bd7b1e8fbff27c11b0ce506bb46f19c0 Mon Sep 17 00:00:00 2001 From: zima Date: Wed, 2 Jul 2025 21:31:31 -0700 Subject: [PATCH 03/13] feat(ci): update experimental workflow with proposed test flow --- .woodpecker/experimental.yaml | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/.woodpecker/experimental.yaml b/.woodpecker/experimental.yaml index 468d051f2a..1f7fc8765e 100644 --- a/.woodpecker/experimental.yaml +++ b/.woodpecker/experimental.yaml @@ -1,8 +1,27 @@ when: - event: manual +services: + - name: database + image: postgres:15 + environment: + - POSTGRES_PASSWORD=ci + - name: redis + image: redis:latest + steps: - - name: test - image: alpine + - name: Tests + image: node:jod commands: - - ls -al + - apt-get update && apt-get install -y git wget curl build-essential python3 ffmpeg + - cp .config/ci.yml .config/default.yml + - cp .config/ci.yml .config/test.yml + - corepack enable + - corepack prepare pnpm@latest --activate + - git submodule update --init + - pnpm install --frozen-lockfile + - pnpm run build + - pnpm run migrate + - pnpm run --filter='!megalodon' test + - pnpm run --filter=backend --filter=misskey-js lint + - pnpm run --filter=frontend --filter=frontend-embed eslint From 5075d8feec7e7704bf0fee7adc78b34548f2602f Mon Sep 17 00:00:00 2001 From: zima Date: Wed, 2 Jul 2025 21:33:06 -0700 Subject: [PATCH 04/13] fix(ci): bad documentation!!! --- .woodpecker/experimental.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.woodpecker/experimental.yaml b/.woodpecker/experimental.yaml index 1f7fc8765e..c7ae52c81d 100644 --- a/.woodpecker/experimental.yaml +++ b/.woodpecker/experimental.yaml @@ -5,7 +5,7 @@ services: - name: database image: postgres:15 environment: - - POSTGRES_PASSWORD=ci + POSTGRES_PASSWORD: ci - name: redis image: redis:latest From 900bf8dd3c7210c071771930b9c3afa4daca0740 Mon Sep 17 00:00:00 2001 From: zima Date: Wed, 2 Jul 2025 21:36:49 -0700 Subject: [PATCH 05/13] chore(ci): service name may need to match accessed hostname to work --- .woodpecker/experimental.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.woodpecker/experimental.yaml b/.woodpecker/experimental.yaml index c7ae52c81d..80c3ede16e 100644 --- a/.woodpecker/experimental.yaml +++ b/.woodpecker/experimental.yaml @@ -2,7 +2,7 @@ when: - event: manual services: - - name: database + - name: postgres image: postgres:15 environment: POSTGRES_PASSWORD: ci From 6ea0abbc1996bcdb8a1f5567c802b8ab5354b4d6 Mon Sep 17 00:00:00 2001 From: zima Date: Wed, 2 Jul 2025 22:15:02 -0700 Subject: [PATCH 06/13] chore(ci): add manual build and deploy step --- .woodpecker/experimental.yaml | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/.woodpecker/experimental.yaml b/.woodpecker/experimental.yaml index 80c3ede16e..d208ce7224 100644 --- a/.woodpecker/experimental.yaml +++ b/.woodpecker/experimental.yaml @@ -1,6 +1,3 @@ -when: - - event: manual - services: - name: postgres image: postgres:15 @@ -12,6 +9,8 @@ services: steps: - name: Tests image: node:jod + when: + - event: pull_request commands: - apt-get update && apt-get install -y git wget curl build-essential python3 ffmpeg - cp .config/ci.yml .config/default.yml @@ -25,3 +24,16 @@ steps: - pnpm run --filter='!megalodon' test - pnpm run --filter=backend --filter=misskey-js lint - pnpm run --filter=frontend --filter=frontend-embed eslint + - name: Build and Deploy + when: + - event: manual + image: woodpeckerci/plugin-docker-buildx + settings: + repo: codeberg.org/yeentown/barkey + dockerfile: Dockerfile + platforms: linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8,linux/ppc64le,linux/s390x + tag: dev + username: + from_secret: docker_username + password: + from_secret: docker_password From 691a925275e7400a86a47d81631e3cfb52c569a0 Mon Sep 17 00:00:00 2001 From: zima Date: Wed, 2 Jul 2025 22:17:06 -0700 Subject: [PATCH 07/13] fix(ci): remove secrets from config (plugin not privileged) --- .woodpecker/experimental.yaml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.woodpecker/experimental.yaml b/.woodpecker/experimental.yaml index d208ce7224..60122ea72d 100644 --- a/.woodpecker/experimental.yaml +++ b/.woodpecker/experimental.yaml @@ -33,7 +33,3 @@ steps: dockerfile: Dockerfile platforms: linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8,linux/ppc64le,linux/s390x tag: dev - username: - from_secret: docker_username - password: - from_secret: docker_password From eba0aa9f2aac2f6c369a07db2a8ca43b8509312a Mon Sep 17 00:00:00 2001 From: zima Date: Wed, 2 Jul 2025 22:25:26 -0700 Subject: [PATCH 08/13] fix(ci): reintroduce secrets (idk wtf im doin) --- .woodpecker/experimental.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.woodpecker/experimental.yaml b/.woodpecker/experimental.yaml index 60122ea72d..d208ce7224 100644 --- a/.woodpecker/experimental.yaml +++ b/.woodpecker/experimental.yaml @@ -33,3 +33,7 @@ steps: dockerfile: Dockerfile platforms: linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8,linux/ppc64le,linux/s390x tag: dev + username: + from_secret: docker_username + password: + from_secret: docker_password From 31c64f0b501e8cf30083b5272f39a4dbdf9c86f0 Mon Sep 17 00:00:00 2001 From: zima Date: Wed, 2 Jul 2025 22:26:51 -0700 Subject: [PATCH 09/13] fix(ci): define registry maybe thatll work --- .woodpecker/experimental.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.woodpecker/experimental.yaml b/.woodpecker/experimental.yaml index d208ce7224..83a78824d4 100644 --- a/.woodpecker/experimental.yaml +++ b/.woodpecker/experimental.yaml @@ -30,6 +30,7 @@ steps: image: woodpeckerci/plugin-docker-buildx settings: repo: codeberg.org/yeentown/barkey + registry: codeberg.org dockerfile: Dockerfile platforms: linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8,linux/ppc64le,linux/s390x tag: dev From 3e56bfa38d13bd4b14b3beb5fabe54555c02da07 Mon Sep 17 00:00:00 2001 From: zima Date: Wed, 2 Jul 2025 22:54:08 -0700 Subject: [PATCH 10/13] fix(ci): debugging ci; reducing to one platform target --- .woodpecker/experimental.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.woodpecker/experimental.yaml b/.woodpecker/experimental.yaml index 83a78824d4..6ce4df615e 100644 --- a/.woodpecker/experimental.yaml +++ b/.woodpecker/experimental.yaml @@ -32,7 +32,7 @@ steps: repo: codeberg.org/yeentown/barkey registry: codeberg.org dockerfile: Dockerfile - platforms: linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8,linux/ppc64le,linux/s390x + platforms: linux/amd64 tag: dev username: from_secret: docker_username From 8e9c880e29ea41873d00991a02c8206c07009c6f Mon Sep 17 00:00:00 2001 From: zima Date: Wed, 2 Jul 2025 23:04:16 -0700 Subject: [PATCH 11/13] chore(ci): enable automated dev image push, and add release image gen --- .woodpecker/experimental.yaml | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/.woodpecker/experimental.yaml b/.woodpecker/experimental.yaml index 6ce4df615e..639616fe23 100644 --- a/.woodpecker/experimental.yaml +++ b/.woodpecker/experimental.yaml @@ -24,9 +24,10 @@ steps: - pnpm run --filter='!megalodon' test - pnpm run --filter=backend --filter=misskey-js lint - pnpm run --filter=frontend --filter=frontend-embed eslint - - name: Build and Deploy + - name: Build and Push Dev Image when: - - event: manual + - branch: dev + - event: push image: woodpeckerci/plugin-docker-buildx settings: repo: codeberg.org/yeentown/barkey @@ -38,3 +39,18 @@ steps: from_secret: docker_username password: from_secret: docker_password + - name: Build and Push Release + when: + - event: release + image: woodpeckerci/plugin-docker-buildx + settings: + repo: codeberg.org/yeentown/barkey + registry: codeberg.org + dockerfile: Dockerfile + platforms: linux/amd64 + tag: latest + auto_tag: true + username: + from_secret: docker_username + password: + from_secret: docker_password From 59067a0e16c81b2213e82c5c2cde125df0729104 Mon Sep 17 00:00:00 2001 From: zima Date: Wed, 2 Jul 2025 23:06:31 -0700 Subject: [PATCH 12/13] fix(ci): event trigger for dev --- .woodpecker/experimental.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.woodpecker/experimental.yaml b/.woodpecker/experimental.yaml index 639616fe23..90a67c12f5 100644 --- a/.woodpecker/experimental.yaml +++ b/.woodpecker/experimental.yaml @@ -26,8 +26,8 @@ steps: - pnpm run --filter=frontend --filter=frontend-embed eslint - name: Build and Push Dev Image when: - - branch: dev - event: push + branch: dev image: woodpeckerci/plugin-docker-buildx settings: repo: codeberg.org/yeentown/barkey From fc33d289a0946e3e5c21c23e3275404513b5a0b9 Mon Sep 17 00:00:00 2001 From: zima Date: Wed, 2 Jul 2025 23:08:14 -0700 Subject: [PATCH 13/13] chore(readme): lazy add ci badge --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index f9198c06c0..85ee793a82 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ +[![status-badge](https://ci.zima.ong/api/badges/1/status.svg?branch=stable)](https://ci.zima.ong/repos/1/branches/stable) +