Хранение проектов и git¶
Платформа хранит файлы проектов в своей базе PostgreSQL. Git-репозиторий служит источником при запуске и местом, куда пользователи отправляют изменения кнопкой «Push».
Как синхронизируются проекты¶
- При запуске платформа читает ветку из ключа
git-branchи загружает проекты в базу. Файл из git заменяет версию в базе, только если его коммит новее. - Изменения из интерфейса сначала сохраняются в базе (колонка «Сохранено»). В git они попадают по кнопке «Push» (колонка «Закоммичено»).
- Кнопка «Pull» загружает в проект изменения из git.
Правки в git напрямую¶
Изменение, которое отправили в git в обход интерфейса, платформа увидит только после «Pull» или перезапуска. Поэтому:
- после прямого push в git выполните «Pull» в проекте или перезапустите платформу и проверьте файл в интерфейсе;
- не отправляйте из интерфейса проект, который меняли в git, пока интерфейс не показывает новую версию. Иначе платформа закоммитит свою старую копию поверх ваших правок.
Служебные проекты¶
| Проект | Что хранит |
|---|---|
configuration |
Скрипт сборки build.sh и фрагмент пода сборщика builder.pod.jkube.yaml |
templates |
Шаблоны новых проектов: application.properties, deployment.jkube.yaml, configmap.jkube.yaml, ingress.jkube.yaml, docker-compose.yaml, заготовки Java-классов и маршрутов |
Служебные проекты открываются в разделе «Настройки». Новый проект получает файлы из templates при создании. Файл log4j2.properties из шаблона в новый проект не переносится, его нужно скопировать вручную.
Во фрагменте пода сборщика не указывайте serviceAccount. Вместе с параметром jkube.recreate=true это приводит к тому, что сборка удаляет сервисную учётную запись платформы.