Конфигурация application.properties
В данном разделе находится информация о параметрах application.properties
файла.
Конфигурация сервера
Параметр | Обязательный | Значение по умолчанию | Описание |
---|---|---|---|
server.port |
Да | 8080 |
Порт, на котором будет запущено приложение GitFlic. |
server.address |
Да | localhost |
IP-адрес, на котором будет доступно приложение GitFlic |
ssh.server.port |
Да | 22 |
Порт, на котором будет запущен SSH сервер для обращения по remote-url |
ssh.server.host |
Нет | localhost |
Хост, на котором будет запущен SSH сервер для обращения по remote-url |
spring.servlet.multipart.maxFileSize |
Нет | 500MB |
Размер загружаемых файлов в формах и запросах API |
spring.servlet.multipart.maxRequestSize |
Нет | 500MB |
Отвечает за размер запроса |
gitflic.async-task-executor.default-timeout | Нет | 30 | Таймаут при скачивании файлов через веб-интерфейс. Если при скачивании больших файлов вы сталкиваетесь с ошибкой, то необходимо увеличить значение данного параметра. По умолчанию значение учитывается в минутах, но можно указывать и в других единицах (например: 30 = 30 минут, 30s = 30 секунд) |
Конфигурация баз данных
Параметр | Обязательный | Значение по умолчанию | Описание |
---|---|---|---|
spring.datasource.url |
Да | jdbc:postgresql://localhost/gitflic |
URL для подключения к postgres |
spring.datasource.username |
Да | gitflic |
Имя пользователя для аутентификации в postgres |
spring.datasource.password |
Да | gitflic |
Пароль пользователя для аутентификации в postgres |
spring.redis.host |
Да | localhost |
Адрес, на котором запущен redis |
spring.redis.port |
Да | 6379 |
Порт, на котором запущен redis |
spring.redis.username |
Нет | Имя пользователя для аутентификации в redis | |
spring.redis.password |
Нет | Пароль для аутентификации в redis | |
spring.redis.database |
Нет | 0 |
Номер базы данных в redis |
spring.redis.ssl |
Нет | false |
Использование https протокола для обращения к redis |
spring.redis.url |
Нет | Указать полный URL для соединения с Redis. Если указан URL для соединения, то параметры spring.redis.host , spring.redis.port , и spring.redis.password будут перезаписаны из URL.Параметр user будет проигнорирован. |
Настройки директорий, используемых для работы приложения
*Пути к директориям должны заканчиваться на /
Параметр | Обязательный | Значение по умолчанию | Описание |
---|---|---|---|
ssh.server.cert |
Да | /opt/gitflic/cert/key.pem |
Отвечает за путь к сертификату(с указанием имени файла), который используется для SSH транспорта |
repository.dir |
Да | /var/gitflic/repo/ |
Директория, где должны храниться репозитории git |
image.upload.dir |
Да | /var/gitflic/img/ |
Директория, где должны храниться аватары и иные медиафайлы |
releases.upload.dir |
Да | /var/gitflic/releases/ |
Директория, где должны храниться файлы, которые приложены к релизу на основе тегов git |
cicd.pipeline.dir |
Да | /var/gitflic/cicd/ |
Директория, которая используется CI/CD агентом |
gitflic.registry.package.dir |
Да | /var/gitflic/registry/ | Директория, где должны находиться файлы реестра пакетов |
audit.event-log.dir |
Нет | {путь_до_директории_с_gitflic.jar}/audit |
Директория, где должны находиться файлы логов аудита |
gitflic.vault.cert.publicKey |
Нет | Аналогично ssh.server.cert |
Данный ключ записывается на файловую систему автоматически, при наличии прав на запись у пользователя, от имени которого запущен GitFlic. В противном случае необходимо сгенерировать ключ стандарта PKCS #8 и указать путь до этого ключа |
gitflic.vault.cert.privateKey |
Нет | Аналогично ssh.server.cert |
Данный ключ записывается на файловую систему автоматически, при наличии прав на запись у пользователя, от имени которого запущен GitFlic. В противном случае необходимо сгенерировать ключ стандарта PKCS #8 и указать путь до этого ключа |
Настройка SMTP сервера
Параметр | Обязательный | Значение по умолчанию | Описание |
---|---|---|---|
spring.mail.host |
Да | smtp.foo.bar |
Адрес SMTP сервера |
spring.mail.port |
Да | 587 |
Порт SMTP сервера |
spring.mail.username |
Да | foo@bar.net |
Имя пользователя для аутентификации на SMTP сервере |
spring.mail.password |
Да | Superp@\$$word |
Пароль для аутентификации на SMTP сервере |
smtp.sender.name |
Нет | foobar |
Имя отправителя письма |
smtp.sender.email |
Нет | foo@noreply.bar |
Email отправителя письма |
spring.mail.properties.mail.smtp.starttls.enable |
Нет | false |
Использовать TLS |
spring.mail.properties.mail.smtp.ssl.enable |
Нет | false |
Использовать SSL |
spring.mail.properties.mail.smtp.auth |
Нет | false |
Использование аутентификации |
Общие свойства приложения
Параметр | Обязательный | Значение по умолчанию | Описание |
---|---|---|---|
gitflic.system.dashboard.enabled |
Нет | true |
Отключение анализа системы в панели администратораДоступно в версии 3.0.0 и выше |
gitflic.base.url |
Да | http://localhost:8080 |
Отвечает за генерацию ссылок для внешних источников, например для ссылок в письмах. При отсутствии протокола передачи данных по умолчанию будет использоваться https:// |
gitflic.transport.url |
Да | http://localhost:8080 |
Отвечает за генерацию ссылки, которая отображается на странице каждого проекта и приходит в данных из методов API и в данных вебхуков |
gitflic.coordinator.url |
Нет | Совпадает с gitflic.base.url |
Переопределяет протокол, домен и порт которые используются для генерации ссылок на регистрацию для агентов CI/CD, используется если развернут отдельный координатор |
gitflic.defaultPackSize |
Нет | 100MB |
Ограничивает максимальный размер пакета, который гит может отправить во время пуша в репозиторий. Возможны следующие суффиксы KB, MB, GB, TB. |
gitflic.limitPackSize |
Нет | false |
Используется для включения или отключения ограничения размера пакета, отправляемого при выполнении push в проект |
gitflic.limitProjectSize |
Нет | false |
Используется для включения и отключения механизма ограничения максимального размера репозитория |
logging.file.name |
Нет | /var/log/gitflic/server.log |
Директория (с указанием имени файла), где хранится файл с логами |
logging.level.root |
Нет | INFO |
Уровень логирования* |
gitflic.ci-cd.config-processing.max-job-variable-count |
Нет | 1000 |
Максимальное количество переменных для задачи, включая предопределенные |
gitflic.ci-cd.config-processing.job-variables-size-limit-characters |
Нет | 262144 |
Ограничение на общее количество символов переменных (ключ + значение), включая предопределенные |
gitflic.ci-cd.runners.global-properties.enabled |
Нет | false |
Разрешение изменения параметров агента true или false (для нижеследующих свойств) |
gitflic.ci-cd.runners.global-properties.log-limit-kilobytes |
Нет | 100 |
Максимальный размер логов для всех агентов в килобайтах. Возможны значения от 10 до 25600 КБ. Настройка активна только при указании значения true для параметра gitflic.ci-cd.runners.global-properties.enabled |
gitflic.ci-cd.runners.global-properties.job-variables-size-limit-characters |
Нет | Нет | Ограничение на общее количество символов переменных (ключ + значение) для всех агентов. Настройка активна только при указании значения true для параметра gitflic.ci-cd.runners.global-properties.enabled |
*Таблица уровней логирования
Параметр | Значение |
---|---|
OFF |
Логирование выключено |
ERROR |
Показывает ошибки значительной важности, которые мешают нормальному выполнению программы |
WARN |
Показывает предупреждения |
INFO |
Показывает информационные сообщения, которые могут иметь смысл для конечных пользователей и системных администраторов, сопровождая ход работы приложения |
DEBUG |
Показывает детальное отслеживание, используемое разработчиками приложений |
ALL |
Вывод всех сообщений |
Конфигурация RabbitMQ
Используется в enterprise сборке.
Параметр | Обязательный | Значение по умолчанию | Описание |
---|---|---|---|
spring.rabbitmq.host |
Нет | localhost | Адрес RabbitMQ сервера |
spring.rabbitmq.port |
Нет | 5672 | Порт RabbitMQ сервера |
spring.rabbitmq.username |
Нет | Имя пользователя для аутентификации в RabbitMQ | |
spring.rabbitmq.password |
Нет | Пароль пользователя для аутентификации в RabbitMQ |
*Дополнительные настройки для соединения с RabbitMQ можно посмотреть по данной ссылке
Конфигурация Elasticsearch
Параметр | Обязательный | Значение по умолчанию | Описание | |
---|---|---|---|---|
gitflic.elasticsearch.enabled |
Нет | false | Включение Elasticsearch в сборке | |
elasticsearch.rest |
Нет | localhost:9200 | Адрес соединения с Elasticsearch | |
elasticsearch.useSsl |
Нет | false | Использование протоколом SSL сертификата | |
elasticsearch.username |
Нет | Имя пользователя для аутентификации в Elasticsearch | ||
elasticsearch.password |
Нет | Пароль пользователя для аутентификации в Elasticsearch | ||
elasticsearch.connection-timeout |
Нет | 1 | Установка времени таймаута на соединение | |
elasticsearch.read-timeout |
Нет | 30 | Установка времени таймаута на чтение | |
gitflic.schedule.elastic-index |
Нет | false | Включение автоматической индексации сущностей - проектов, пользователей, компаний, пакетов. Период индексации указывается с помощью параметра gitflic.elastic.indexation.period | |
gitflic.schedule.elastic-index.code |
Нет | false | Включение автоматической индексации кода. Период индексации указывается с помощью параметра gitflic.elastic.indexation.period | |
gitflic.elastic.indexation.period |
Нет | 168 | Период индексации сущностей. Указывается в часах | |
elasticsearch.index.highlight.max_analyzed_offset |
Нет | 1000000 | Максимальное число символов в файле с кодом, который может попасть в индекс |
Конфигурация Telegram интеграции
Параметр | Обязательный | Значение по умолчанию | Описание |
---|---|---|---|
telegram.webhook.host |
Нет | URL-адрес для Telegram webhook, используемый при регистрации бота | |
telegram.bot.token |
Нет | Токен доступа Telegram бота | |
secret.telegram.token |
Нет | Токен обеспечивающий безопасный доступ к вашему Telegram боту |
Конфигурация GitFlic Kubernetes proxy
Параметр | Обязательный | Значение по умолчанию | Описание |
---|---|---|---|
gitflic.kubernetes-agent.server.url |
Нет | URL-адрес для GitFlic Kubernetes proxy | |
gitflic.kubernetes-agent.server.grpc.port |
Нет | GRPC порт GitFlic Kubernetes proxy |
С дополнительной информацией по GitFlic Kubernetes proxy можно ознакомиться в документации.