Appearance
Project Lifecycle Standard
Единый стандарт для всех новых проектов DesignCorp.
Обязательная структура окружений
- Dev workspace (без обязательной сборки):
/home/admin/workspace/<project> - Prod runtime (рабочая версия):
/opt/designcorp/<project>/prod
Правило:
- В
workspaceведется активная разработка. - В
/opt/designcorp/<project>/prodнаходится только рабочая прод-версия, которую обслуживают runtime/services.
Доменная схема
- Прод:
https://<project-domain> - Дев:
https://dev.<project-domain>
Пример:
- Прод:
https://myproject.com - Дев:
https://dev.myproject.com
CI/CD и сборка
- Канонический pipeline каждого проекта:
https://github.com/DesignCorporation/<project>/actions - Сборка/релиз в прод выполняются только через CI/CD pipeline.
- Ручной прод-деплой допустим только как rollback-процедура из runbook.
Минимальные этапы pipeline:
- Install dependencies (
pnpm, если не указано иначе в проекте). - Lint/Test.
- Build artifact.
- Deploy в
/opt/designcorp/<project>/prod. - Smoke-check прод домена.
Workflow задач
- Все рабочие процессы ведутся через Issues:
https://github.com/DesignCorporation/<project>/issues
- Для каждого проекта обязательно ведется GitHub Project board:
https://github.com/users/DesignCorporation/projects/<id>
- Issue обязателен для:
- новых фич,
- багфиксов,
- инфраструктурных изменений,
- изменений документации.
Минимум для issue:
- Цель и контекст.
- Критерии приемки.
- Список файлов/контуров, которые затрагиваются.
- План проверки (smoke/regression).
Обязательный формат управления задачами:
- Перед стартом работ создать/обновить labels:
- приоритеты:
p0,p1,p2; - области:
area:*(напримерarea:deploy,area:nginx,area:security); - стратегические:
roadmap.
- приоритеты:
- Создать milestone для этапа (например квартал/релиз).
- Каждую задачу привязать к milestone и добавить на Project board.
- Статусы board использовать единообразно:
Todo->In Progress->Done.
- По окончании задачи:
- оставить комментарий в issue с ссылкой на commit/PR и списком проверок;
- закрыть issue;
- перевести карточку board в
Done.
- Запрещено выполнять значимые изменения «мимо issue» и «мимо board».
Рекомендуемый шаблон комментария при закрытии issue:
- Что реализовано.
- Какие файлы/модули изменены.
- Какие проверки выполнены.
- Ссылка на workflow run (если есть CI/CD).
Референс (образец корректной постановки):
- ServerAdmin issues:
https://github.com/DesignCorporation/serveradmin/issues - ServerAdmin milestone:
https://github.com/DesignCorporation/serveradmin/milestone/3 - ServerAdmin board:
https://github.com/users/DesignCorporation/projects/6
Definition of Done
Задача считается завершенной, когда:
- Изменения в коде и документации синхронизированы.
- CI/CD pipeline успешен.
- Прод и дев URL проходят smoke-check.
- Issue закрыт с отчетом о результате.
Требования к документации проекта
Для каждого проекта в docs должны существовать:
- Карточка проекта в
/docs/projects/<project>.md. - Описание доменов/портов в
/docs/control-plane/topology.md. - Runbook deploy/rollback (или ссылка на единый runbook, если процесс общий).
- Owner (агент/ответственный) в
/docs/control-plane/owners.md.