Clone
6
Home
Oleks edited this page 2026-05-20 13:28:43 +03:00
This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Що це

Каталог CMS-плагінів, побудований на Emdash (Astro 6 + TypeScript + SQLite). Початкові дані — матриця сумісності плагінів WordPress → Emdash з проєкту kotkanagrilli.fi. Нові записи додаються через адмін-панель Emdash (/_emdash/admin).

Репозиторії

  • oleks/cms-plugins (git.oleks.space) — Цей репозиторій: вихідний код, Dockerfile, Helm-чарт, пайплайн Woodpecker
  • oleks/emdash-kotkanagrilli — Референсний Emdash-деплой, структуру якого копіює цей репозиторій
  • oleks/kotkanagrilli.fi — Оригінальний WordPress-сайт, звідки взяті початкові дані плагінів
  • anton/helm-workloads — FluxCD HelmRelease-и для обох середовищ

Середовища

CI/CD

Woodpecker (ci.oleks.space), репо oleks/cms-plugins, пайплайн .woodpecker/container.yaml.

Кожен push до staging або production збирає Docker-образ (arm64) і публікує три теги до реєстру git.oleks.space/oleks/cms-plugins:

  • 0.1.<номер> — незмінний тег версії
  • <гілка> — плаваючий тег гілки
  • <гілка>-latest — плаваючий тег latest для гілки

Кластер

Усі ресурси (HelmRelease, GitRepository, ImagePolicy, Secret, поди) розміщені в namespace kotkan на кластері armer/kotkan.

Flux-маніфести знаходяться в anton/helm-workloads у директоріях:

  • cms-plugins-staging/
  • cms-plugins-production/

Секрети

Зашифровані через sops (age) у anton/helm-workloads.

Кожне середовище має:

  • cms-plugins-deploy-key — SSH-ключ для Flux
  • cms-plugins-<env>-secrets — містить EMDASH_ENCRYPTION_KEY

Локальна розробка

Запуск з DDEV:

cd ~/projects/cms-plugins
ddev start
# → https://cms-plugins.ddev.site/

Або без DDEV:

cd app && npm install && npm run bootstrap && npx emdash dev

Просування між гілками

Fast-forward only:

# develop → staging
git switch staging && git merge --ff-only develop && \
  git push origin staging

# staging → production
git switch production && git merge --ff-only staging && \
  git push origin production

Детальніша документація

Див. також:

  • DEPLOYMENT.md — повне описання пайплайну
  • ARCHITECTURE.md — контракти чарту, образу, Flux

Посилання

Сайти

Середовище URL
cms-plugins staging https://cms-plugins-staging.kotkanagrilli.fi/
cms-plugins production https://cms-plugins-production.kotkanagrilli.fi/
emdash staging https://emdash-staging.kotkanagrilli.fi/
emdash production https://emdash-production.kotkanagrilli.fi/

Інфраструктура

Ресурс URL
Gitea репозиторій https://git.oleks.space/oleks/cms-plugins
Gitea реєстр https://git.oleks.space/oleks/cms-plugins/packages
Вікі https://git.oleks.space/oleks/cms-plugins/wiki/Home
Woodpecker CI https://ci.oleks.space/oleks/cms-plugins