This commit is contained in:
Zuev
2026-07-30 03:18:43 +03:00
parent a759155b15
commit 87f3d98621
9 changed files with 177 additions and 95 deletions

View File

@@ -380,16 +380,17 @@ Deployment-файлов запрещено.
домашнего каталога job-контейнера не используется. Для каждого scan задан таймаут `15m`,
чтобы загрузка vulnerability/Java DB и анализ Java-слоёв не прерывались стандартным
пятиминутным лимитом Trivy; общий лимит job составляет 35 минут.
5. Push в `main` выполняет проверки, сборку, публикацию и scan, но не меняет production.
Deploy job запускается только вручную через `workflow_dispatch` и устанавливает
фиксированный `kubectl v1.33.12` после SHA-256 проверки. Java Agent также имеет точную
версию и checksum.
5. Push в `main` после успешных проверок, сборки, публикации и scan автоматически запускает
deploy проверенных digest в production. Job устанавливает фиксированный
`kubectl v1.33.12` после SHA-256 проверки. `workflow_dispatch` доступен как
дополнительный повторный запуск, но для обычной поставки не требуется. Java Agent
также имеет точную версию и checksum.
6. `scripts/deploy-images.sh` принимает только `image@sha256:...`, сохраняет предыдущие
ссылки, применяет оба digest и ждёт rollout. При отказе автоматически возвращает оба
предыдущих образа и повторно проверяет их готовность.
7. Gitea 1.25 игнорирует `environment` и `concurrency`, поэтому workflow не полагается на
них как на защиту production. Оператор не должен запускать второй ручной deploy, пока
первый не завершён.
них как на защиту production. Не запускайте дополнительный `workflow_dispatch`, пока
автоматический deploy того же commit не завершён.
`scripts/check-artifact-pinning.sh` проверяет Dockerfile, Compose, Actions, checksum и CI
gates. При передаче `K8S_DIR=../k8s` он дополнительно требует digest у каждого production