Процесс обновления GitFlic
Скачайте последнюю версию GitFlic self-hosted.
Ниже описано, какие дополнительные настройки на сервере надо произвести при переходе на новую версию. Все настройки расписаны под версией продукта. Если для новой версии gitflic нет дополнительной информации, то для обновления достаточно заменить старый gitflic.jar на новый.
Обновление сервиса настроенного через systemctl
Пример обновления, если запуск приложения настроен через systemctl:
sudo systemctl stop gitflic
# Меняем старый jar файл на новый.
cp gitflic.jar /opt/gitflic/
sudo systemctl restart gitflic
# Следим за логом запуска.
tail -f /opt/gitflic/logs/server.log
Обновление сервиса запущенного через docker compose
Вам необходимо собрать новый docker-gitflic
image. Для этого разместите файл gitflic.jar
рядом с папкой docker в которой размещён docker-compose.yml
├── docker
│ ├── default-config
│ ├── docker-compose.yml
│ ├── gitflic
│ ├── postgres
│ └── redis
│
│# Файл gitflic.jar с новой версией gitflic
│
├── gitflic.jar
Остановите запущенный docker compose
. Для этого в папке с файлом docker-compose.yml
выполните команду:
# В windows и macOS не нужно использовать sudo
sudo docker compose down
В паке с файлом docker-compose.yml
запустите docker compose
с ключом --build
для обновления сборки:
# В windows и macOS не нужно использовать sudo
sudo docker compose up --build
v 2.14.0
Общее обновление для всех версий
Добавился новый функционал “Реестр пакетов”. Для его работы необходимо добавить новый параметр в application.properties
и создать папку для хранения пакетов.
mkdir -p /opt/gitflic/var/registry
echo "#Параметр gitflic.registry.package.dir отвечает за путь для файлов реестра пакетов" >> /opt/gitflic/default-config/application.properties
echo "gitflic.registry.package.dir=/opt/gitflic/var/registry/" >> /opt/gitflic/default-config/application.properties
Дополнительное обновление для платной версии self-hosted enterprise
Для платной версии так же необходимо установить сервис RabbitMQ. Инструкцию по установке можно посмотреть здесь. Для дополнительных настроек RabbitMQ необходимо добавить дополнительные параметры в application.properties
# ======= Конфигурация RabbitMQ =======
#spring.rabbitmq.host=localhost
#spring.rabbitmq.port=5672
#spring.rabbitmq.username=
#spring.rabbitmq.password=
#Дополнительные настройки для соединения с RabbitMq можно посмотреть по ссылке
# https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#application-properties.integration.spring.rabbitmq.addresses
Перенос данных GitFlic на другой сервер.
Общая информация
После настройки GitFlic на новом месте вам необходимо перенести следующие данные:
- База данных из postgresql
- Все папки со статичными файлами. Со списком папок можно ознакомиться здесь. Обратите внимание на то, что у вас на сервере могут быть другие пути, актуальные пути можно посмотреть в application.properties.
- База данных из Redis. У нас происходит сохранение следующих данных на диск: вебхуки, токены, адреса email для оповещений, данные для оповещению в telegram.
Данные Docker compose
Если вы запустили приложение в docker compose по данной инструкции. То для переноса данных на новое место вам необходимо скопировать следующие файлы.
│
│# Если вы производили дополнительные настройки в файле default-config, то при переезде рекомендую заполнить данный файл заново, так как в новой версии могли появиться новые поля.
│Обратите внимание, что application.properties копируется в image и для его изменения нужно при запуске добавить параметр --build.
│
├── default-config
│ └── application.properties
├── docker-compose.yml
│
│# Если вы производили дополнительные настройки в файле ENV, то при переезде рекомендую заполнить данный файл заново, так как в новой версии могли появиться новые поля.
│
├── ENV
├── gitflic
│ │
│ │ # Перенесите папку data
│ │
│ ├── data
│ │ ├── cert
│ │ │ └── key.pem
│ │ ├── cicd
│ │ ├── img
│ │ ├── log
│ │ ├── registry
│ │ ├── releases
│ │ └── repo
│ └── Dockerfile
├── postgres
│ │
│ │# Перенесите папку data
│ │
│ ├── data
│ ├── Dockerfile
│ └── pgcrypto.sh
│
│# Перенесите папку redis
│
└── redis
└── data