ansible роль gitea/forgejo
Эта роль устанавливает и управляет gitea или forgejo. Это удобный и безболезненный самохостинг Git-сервис. Gitea - это управляемое сообществом легковесное решение для хостинга кода, написанное на Go. Forgejo - это его форк.
Исходный код и скриншоты gitea.
Исходный код forgejo.
Эта роль также является частью Ansible-коллекции l3d.git. .
Зеркала
Роль доступна на следующих ресурсах:
Пример использования в плейбуке
Следующий код был протестирован с последней стабильной версией Debian и должен работать и на Ubuntu, и на RedHat.
# ansible-galaxy role install l3d.gitea
- name: "Установить gitea"
hosts: git.example.com
roles:
- {role: l3d.gitea, tags: gitea}
vars:
# Предполагаем, что мы находимся за обратным прокси, который
# будет обрабатывать HTTPS для нас, поэтому мы подключаемся к localhost:3000 по HTTP
# см. https://docs.gitea.io/en-us/reverse-proxies/#nginx
gitea_fqdn: 'git.example.com'
gitea_root_url: 'https://git.example.com'
gitea_protocol: http
gitea_start_ssh: true
Выбор между встроенным SSH Gitea и SSH-сервером хоста
Gitea имеет встроенный SSH-сервер, который работает на порту 2222 (чтобы не конфликтовать с сервером SSH хоста, который обычно работает на порту 22).
Этот сервер используется по умолчанию в этой роли и приводит к SSH URL клонирования вида gitea@<fqdn>:2222:<user>/<repo>.git
, где gitea
- это пользователь по умолчанию.
Часто возникает желание иметь "чистый" SSH URL, например, git@<fqdn>:<user>/<repo>.git
.
Это возможно, если использовать сервер SSH хоста с помощью следующей конфигурации переменных:
gitea_ssh_port: 22 # предполагаем, что сервер SSH хоста работает на порту 22
gitea_user: git # иначе будут проблемы с правами доступа
gitea_start_ssh: false # чтобы не запускать встроенный SSH сервер
Вышеуказанная конфигурация работает из коробки для новых установок.
При миграции с работающей инстанции с уже существующими SSH-ключами от встроенного SSH-сервера к SSH-серверу хоста, необходимо убедиться, что сервер SSH хоста работает и что gitea_user
имеет необходимые права доступа к данным репозитория и ключам (хранятся в <gitea_home>/.ssh/
)
Примечание: Чтобы использовать git@
, как описано выше, gitea_user
должен быть установлен в git
, и недостаточно установить gitea_ssh_user: git
.
Смотрите эту проблему для получения дополнительной информации.
Переменные
Вот более подробный взгляд на переменные этой роли gitea. Для точного функционала некоторых переменных и возможности добавления дополнительных параметров мы рекомендуем ознакомиться с этим cheat sheet.
Выбор между gitea и forgejo
Существует форк gitea, который называется forgejo. Почему? Читайте вопросы и ответы forgejo.
У вас есть возможность выбирать между gitea и forgejo, изменяя переменную gitea_fork
.
имя переменной |
значение по умолчанию |
описание |
gitea_fork |
gitea |
опционально выберите установку forgejo вместо gitea, установив это значение в forgejo . |
Механизм обновления gitea
Чтобы определить, какую версию gitea установить, вы можете выбрать между двумя вариантами.
Либо вы точно указываете, какое обновление хотите установить. Либо вы используете опцию latest
, чтобы всегда устанавливать последнюю версию из релизов gitea.
Механизм обновления Forgejo
Рекомендуется точно определить, какую версию Forgejo вы хотите установить. Смотрите релизы Forgejo для правильного значения, которое нужно использовать в gitea_version
, например, v1.21.5
.
Это связано с тем, что проект Forgejo поддерживает как stable
, так и old stable
релизы, а тег latest
будет относиться к самой недавней версии независимо от того, является ли она stable
или old stable
. Это может привести к ситуации, когда latest
будет ссылаться на более старую версию, чем версия, которую вы установили.
Обновление gitea
имя переменной |
значение по умолчанию |
описание |
gitea_version |
latest |
Укажите либо точное обновление для установки (например, 1.16.0 ) либо используйте latest (по умолчанию) для установки последнего обновления. |
gitea_version_check |
true |
Проверьте, отличается ли установленная версия от gitea_version перед началом загрузки бинарника |
gitea_gpg_key |
7C9E68152594688862D62AF62D9AE806EC1592E2 |
gpg ключ, с которым подписан бинарник gitea |
gitea_forgejo_gpg_key |
EB114F5E6C0DC2BCDD183550A4B61A2DC5923710 |
gpg ключ, с которым подписан бинарник forgejo |
gitea_gpg_server |
hkps://keys.openpgp.org |
Сервер gpg ключей, с которого эта роль может загружать gpg ключ |
gitea_backup_on_upgrade |
false |
Опционально можно создать резервную копию с каждым обновлением gitea. |
gitea_backup_location |
{{ gitea_home }}/backups/ |
Куда хранить резервную копию gitea, если она будет создана этой ролью. |
submodules_versioncheck |
false |
простой вариант проверки, который может предотвратить случайный запуск более старой версии этой роли. (рекомендуется) |
gitea в мире linux
имя переменной |
значение по умолчанию |
описание |
gitea_group |
gitea |
Основная группа UNIX, используемая Gitea |
gitea_groups |
null |
Опционально список второстепенных групп UNIX, используемых Gitea |
gitea_home |
/var/lib/gitea |
Основной каталог для работы |
gitea_user_home |
{{ gitea_home }} |
домашний каталог пользователя gitea |
gitea_executable_path |
/usr/local/bin/gitea |
Путь к исполняемому файлу gitea |
gitea_forgejo_executable_path |
/usr/local/bin/forgejo |
Путь к исполняемому файлу forgejo |
gitea_configuration_path |
/etc/gitea |
Где разместить файл конфигурации gitea.ini |
gitea_shell |
/bin/false |
UNIX оболочка, используемая gitea. Установите ее в /bin/bash , если вы не используете встроенный ssh-сервер gitea. |
gitea_systemd_cap_net_bind_service |
false |
Добавляет AmbientCapabilities=CAP_NET_BIND_SERVICE в файл службы systemd |
имя переменной |
значение по умолчанию |
описание |
gitea_app_name |
Gitea |
Имя приложения, отображаемое в интерфейсе |
gitea_user |
gitea |
UNIX пользователь, используемый Gitea |
gitea_run_mode |
prod |
Режим запуска приложения, влияет на производительность и отладку. Либо "dev", "prod" или "test". |
gitea_fqdn |
localhost |
Основной FQDN для установки, используемый в качестве значения по умолчанию для других переменных. Установите его на FQDN, по которому вы можете обратиться к серверу gitea. |
имя переменной |
значение по умолчанию |
описание |
gitea_default_branch |
main |
Имя главной ветки всех репозиториев. |
gitea_default_private |
last |
Default private при создании нового репозитория. [last , private , public ] |
gitea_default_repo_units |
(см. по умолчанию) |
Запятая, разделенный список единиц по умолчанию repo. Смотрите официальную документацию для получения дополнительной информации |
gitea_disabled_repo_units |
|
Запятая, разделенный список глобально отключенных единиц repo. |
gitea_disable_http_git |
false |
Отключить возможность взаимодействия с репозиториями по протоколу HTTP. (true/false) |
gitea_disable_stars |
false |
Отключить функцию звезд. |
gitea_enable_push_create_org |
false |
Разрешить пользователям отправлять локальные репозитории в Gitea и автоматически создавать их для организации. |
gitea_enable_push_create_user |
false |
Разрешить пользователям отправлять локальные репозитории в Gitea и автоматически создавать их для пользователя. |
gitea_force_private |
false |
Принудительно сделать каждый новый репозиторий частным. |
gitea_user_repo_limit |
-1 |
Ограничить число репозиториев, которые может иметь пользователь (-1 для неограниченного) |
gitea_repository_root |
{{ gitea_home }}/repos |
Корневой путь для хранения всех данных репозитория. Он должен быть абсолютным путем. |
gitea_repository_extra_config |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [repository] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_repository_upload_enabled |
true |
Включить ли загрузку файлов в репозиторий |
gitea_repository_upload_max_size |
4 |
Максимальный размер каждого файла в мегабайтах. |
gitea_repository_upload_extra_config |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [repository.upload] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_enable_repo_signing_options |
false |
Разрешить настройку параметров подписи репозитория |
gitea_repo_signing_key |
default |
Ключ для подписи. |
gitea_repo_signing_name |
|
Если предоставлен KEYID в качестве gitea_repo_signing_key , используйте это как имя и адрес электронной почты подписанта. |
gitea_repo_signing_email |
|
Если предоставлен KEYID в качестве gitea_repo_signing_key , используйте это как имя и адрес электронной почты подписанта. |
gitea_repo_initial_commit |
always |
Подписать начальный коммит. |
gitea_repo_default_trust_model |
collaborator |
Модель доверия по умолчанию, используемая для проверки коммитов. |
gitea_repo_wiki |
never |
Подписывать коммиты в вики. |
gitea_repo_crud_actions |
(см. по умолчанию) |
Подписывать действия CRUD. |
gitea_repo_merges |
(см. по умолчанию) |
Подписывать слияния. |
gitea_enable_repo_signing_extra |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [repository.signing] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_enable_cors |
false |
включить cors заголовки (по умолчанию отключено) |
gitea_cors_scheme |
http |
схема разрешенных запросов |
gitea_cors_allow_domain |
* |
список доменов, разрешенных для запросов |
gitea_cors_allow_subdomain |
false |
разрешить поддомены перечисленных выше заголовков для запросов |
gitea_cors_methods |
(см. по умолчанию) |
список методов, разрешенных для запросов |
gitea_cors_max_age |
10m |
максимальное время кэширования ответа |
gitea_cors_allow_credentials |
false |
разрешить запросы с учетными данными |
gitea_cors_headers |
Content-Type,User-Agent |
дополнительные заголовки, которые разрешены в запросах |
gitea_cors_x_frame_options |
SAMEORIGIN |
Установить значение заголовка X-Frame-Options . |
gitea_cors_extra |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [cors] файла конфигурации. |
UI (ui)
имя переменной |
значение по умолчанию |
описание |
gitea_show_user_email |
false |
Хотите ли вы показывать адреса электронной почты? (true/false) |
gitea_theme_default |
gitea-auto или forgejo-auto |
Тема по умолчанию |
gitea_themes |
(См. defaults/gitea.yml или defaults/forgejo.yml ) |
Список включенных тем |
gitea_ui_extra_config |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [ui] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_ui_author |
(см. по умолчанию) |
Авторский мета-тег главной страницы. |
gitea_ui_description |
(см. по умолчанию) |
Описание мета-тега главной страницы. |
gitea_ui_keywords |
(см. по умолчанию) |
Ключевые слова мета-тега главной страницы |
gitea_ui_meta_extra_config |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [ui.meta] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_protocol |
http |
Протокол слушателя [http, https, fcgi, unix, fcgi+unix] |
gitea_http_domain |
{{ gitea_fqdn }} , который равен localhost |
Доменное имя этого сервера. |
gitea_root_url |
http://{{ gitea_fqdn }}:3000 |
Корневой URL, используемый для доступа к вашему веб-приложению (полный URL) |
gitea_http_listen |
127.0.0.1 |
HTTP адрес прослушивания |
gitea_http_port |
3000 |
Привязан порт (перенаправление с 80 будет активировано, если значение 443 ) |
gitea_start_ssh |
true |
При включении используется встроенный SSH сервер. |
gitea_ssh_domain |
{{ gitea_fqdn }} |
Доменное имя этого сервера, используемое для отображаемого URL клонирования |
gitea_ssh_port |
2222 |
SSH порт, отображаемый в URL клонирования. |
gitea_ssh_listen |
0.0.0.0 |
Адрес прослушивания для встроенного SSH сервера. |
gitea_offline_mode |
true |
Отключает использование CDN для статических файлов и Gravatar для аватарок. (true/false) |
gitea_landing_page |
home |
Страница входа для неаутентифицированных пользователей |
gitea_lfs_server_enabled |
false |
Включить поддержку GIT-LFS (git large file storage: git-lfs). |
gitea_lfs_jwt_secret |
|
Секрет аутентификации для LFS. Можно сгенерировать с помощью gitea generate secret JWT_SECRET . Будет сгенерирован автоматически, если не задан |
gitea_redirect_other_port |
false |
Если true и gitea_protocol равно https, позволяет перенаправлять http-запросы на gitea_port_to_redirect на порт https, на котором слушает Gitea. |
gitea_port_to_redirect |
80 |
Порт для прослушивания службы перенаправления http, если она включена |
gitea_enable_tls_certs |
false |
Записать путь к сертификату TLS и ключу в файл конфигурации |
gitea_tls_cert_file |
https/cert.pem |
Путь к файлу сертификата, используемого для HTTPS. |
gitea_tls_key_file |
https/key.pem |
Путь к файлу ключа, используемого для HTTPS. |
gitea_enable_acme |
false |
Флаг для включения автоматического управления сертификатами через ACME-совместимый CA сервер. (по умолчанию letsencrypt) |
gitea_acme_url |
|
URL директории ACME CA |
gitea_acme_accepttos |
false |
Это явная проверка того, что вы принимаете условия обслуживания провайдера ACME. |
gitea_acme_directory |
https |
Директория, которую менеджер сертификатов будет использовать для кэширования информации, такой как сертификаты и закрытые ключи. |
gitea_acme_email |
|
Электронная почта, используемая для регистрации в ACME |
gitea_acme_ca_root |
|
Корневой сертификат CA. Если оставить пустым, по умолчанию используется цепочка доверия системы. |
gitea_server_extra_config |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [server] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_db_type |
sqlite3 |
Вид базы данных в использовании [mysql, postgres, mssql, sqlite3] . |
gitea_db_host |
127.0.0.0:3306 |
Адрес хоста базы данных и порт или абсолютный путь для unix-сокета [mysql, postgres] (например, /var/run/mysqld/mysqld.sock ). |
gitea_db_name |
root |
Имя базы данных |
gitea_db_user |
gitea |
Имя пользователя базы данных |
gitea_db_password |
lel |
Пароль базы данных. ПОЖАЛУЙСТА, ИЗМЕНИТЕ |
gitea_db_ssl |
disable |
Настройка SSL только в том случае, если ваш тип базы данных поддерживает его. Ознакомьтесь с cheat sheet для получения более подробной информации |
gitea_db_path |
{{ gitea_home }}/data/gitea.db |
Путь к базе данных, если вы используете sqlite3 . |
gitea_db_log_sql |
false |
Записывать выполненный SQL. |
gitea_database_extra_config |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [database] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_repo_indexer_enabled |
false |
Включает поиск по коду (использует много места на диске, примерно в 6 раз больше, чем размер репозитория). |
gitea_repo_indexer_include |
|
Шаблоны глоба для включения в индекс (разделенный запятыми список). Пустой список означает включение всех файлов. |
gitea_repo_indexer_exclude |
|
Шаблоны глоба для исключения из индекса (разделенный запятыми список). |
gitea_repo_exclude_vendored |
true |
Исключить вендорные файлы из индекса. |
gitea_repo_indexer_max_file_size |
1048576 |
Максимальный размер в байтах файлов для индексации. |
gitea_indexer_extra_config |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [indexer] файла конфигурации. |
gitea_queue_issue_indexer_extra_config |
|
|
имя переменной |
значение по умолчанию |
описание |
gitea_secret_key |
|
Глобальный секретный ключ. Будет автоматически сгенерирован, если не задан. Должен быть уникальным. |
gitea_disable_git_hooks |
true |
Установите в false, чтобы разрешить пользователям с правами git hook создавать пользовательские git хуки. Может быть опасным. |
gitea_disable_webhooks |
false |
Установите в true, чтобы отключить функцию вебхуков. |
gitea_internal_token |
|
Внутренний токен API. Будет автоматически сгенерирован, если не задан. Должен быть уникальным. |
gitea_password_check_pwn |
false |
Проверьте HaveIBeenPwned, чтобы увидеть, был ли пароль скомпрометирован. |
gitea_security_extra_config |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [security] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_disable_registration |
false |
Хотите ли вы отключить регистрацию пользователей? (true/false) |
gitea_register_email_confirm |
false |
Включите это, чтобы запросить подтверждение по электронной почте при регистрации. Требует включения gitea_mailer_enabled . |
gitea_require_signin |
true |
Требуется ли вход в систему для просмотра репозиториев (даже публичных)? (true/false) |
gitea_default_keep_mail_private |
true |
По умолчанию установить пользователям, чтобы их адреса электронной почты оставались частными |
gitea_enable_captcha |
true |
Хотите ли вы включить капчи? (true/false) |
gitea_show_registration_button |
true |
Здесь вы можете скрыть кнопку регистрации. Это не отключит регистрацию! (true/false) |
gitea_only_allow_external_registration |
false |
Установите в true, чтобы запретить регистрацию только с использованием сторонних сервисов (true/false) |
gitea_enable_notify_mail |
false |
Включите это, чтобы отправлять электронные письма наблюдателям репозитория, когда что-то происходит, например, при создании проблем (true/false) |
gitea_auto_watch_new_repos |
true |
Включите это, чтобы дать всем пользователям организации следить за новыми репозиториями, когда они создаются (true/false) |
gitea_autowatch_on_change |
true |
Включите это, чтобы пользователи следили за репозиторием после своего первого коммита в него (true/false) |
gitea_register_manual_confirm |
false |
Включите это для ручного подтверждения новых регистраций. Требует отключения REGISTER_EMAIL_CONFIRM. |
gitea_default_allow_create_organization |
false |
Разрешить новым пользователям создавать организации по умолчанию (true/false) |
gitea_email_domain_allowlist |
|
Если не пусто, запятая, разделенный список доменных имен, которые могут быть использованы только для регистрации на этом экземпляре, поддерживается подстановочный знак. |
gitea_default_user_visibility |
public |
Установите режим видимости по умолчанию для пользователей, "public", "limited" или "private". |
gitea_default_org_visibility |
public |
Установите режим видимости по умолчанию для организаций, "public", "limited" или "private". |
gitea_allow_only_internal_registration |
false |
Установите в true, чтобы заставить регистрацию происходить только через Gitea. |
gitea_allow_only_external_registration |
false |
Установите в true, чтобы заставить регистрацию происходить только с использованием сторонних сервисов. |
gitea_show_milestones_dashboard_page |
true |
Включить это, чтобы показать панель управления вехами - представление всех вех пользователя |
gitea_default_user_is_restricted |
false |
Дать новым пользователям ограниченные права по умолчанию (true/false) |
gitea_service_extra_config |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [service] файла конфигурации. |
Отправка почты (mailer)
имя переменной |
значение по умолчанию |
описание |
gitea_mailer_enabled |
false |
Включить ли почтовую службу. |
gitea_mailer_protocol |
dummy |
Протокол почтового сервера. Один из "smtp", "smtps", "smtp+starttls", "smtp+unix", "sendmail", "dummy". |
gitea_mailer_smtp_addr |
|
Адрес почтового сервера. например, smtp.gmail.com. Для smtp+unix должно быть указано путь к unix-сокету. |
gitea_mailer_smtp_port |
|
Порт почтового сервера |
gitea_mailer_use_client_cert |
false |
Использовать клиентский сертификат для TLS/SSL. |
gitea_mailer_client_cert_file |
|
Файл клиентского сертификата. |
gitea_mailer_client_key_file |
|
Файл клиентского ключа. |
gitea_mailer_force_trust_server_cert |
false |
полностью игнорирует ошибки проверки сертификата сервера. Этот параметр небезопасен. Рассмотрите возможность добавления сертификата в хранилище доверенных систем. |
gitea_mailer_user |
|
Имя пользователя почтового отправителя (обычно адрес электронной почты отправителя). |
gitea_mailer_password |
|
Пароль почтового пользователя. Используйте your password для цитирования, если в пароле есть специальные символы. |
gitea_mailer_enable_helo |
true |
Включить операцию HELO. |
gitea_mailer_from |
noreply@{{ gitea_http_domain }} |
Адрес отправителя, RFC 5322. |
gitea_subject_prefix |
|
Префикс, который будет добавлен перед темами электронных писем. |
gitea_mailer_send_as_plaintext |
false |
Отправлять электронные письма только в простом тексте, без HTML альтернативы. |
gitea_mailer_extra_config |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [mailer] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_session_provider |
file |
Провайдер движка сеансов |
gitea_session_extra_config |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [session] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_picture_extra_config |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [picture] файла конфигурации. |
Вложения к проблемам и запросам на объединение (attachment)
имя переменной |
значение по умолчанию |
описание |
attachment_enabled |
true |
Включены ли вложения к запросам на объединение и проблемам. |
gitea_attachment_types |
См. Документация |
Комма, разделенный список разрешенных расширений файлов (.zip,.txt ), mime типов (text/plain ) или шаблон типа (image/* , audio/* , video/* ). Пустое значение или */* разрешает все типы. |
gitea_attachment_max_size |
4 |
Максимальный размер (МБ). |
gitea_attachment_extra_config |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [attachment] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_log_systemd |
false |
Отключить ведение журнала в файл , использовать systemd-journald |
gitea_log_level |
Warn |
Общий уровень журнала. [Trace, Debug, Info, Warn, Error, Critical, Fatal, None] |
gitea_log_extra_config |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [log] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_metrics_enabled |
false |
Включить конечную точку метрик |
gitea_metrics_token |
|
Токен Bearer для задания сбора Prometheus |
gitea_metrics_extra |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [metrics] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_oauth2_enabled |
true |
Включить провайдер Oauth2 (true/false) |
gitea_oauth2_jwt_secret |
|
Секрет для Oauth2 JWT. Может быть сгенерирован с помощью gitea generate secret JWT_SECRET . Будет сгенерирован автоматически, если не задан. |
gitea_oauth2_extra_config |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [oauth2] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_federation_enabled |
false |
Включить/выключить возможности федерации |
gitea_federation_share_user_stats |
false |
Включить/выключить статистику пользователей для nodeinfo, если федерация включена |
gitea_federation_extra |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [federation] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_packages_enabled |
true |
Включить/выключить возможности реестра пакетов |
gitea_packages_extra |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [packages] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_lfs_storage_type |
local |
Тип хранения для lfs |
gitea_lfs_serve_direct |
false |
Позволяет драйверу хранения перенаправлять аутентифицированные URL для обслуживания файлов напрямую. (только Minio/S3) |
gitea_lfs_content_path |
{{ gitea_home }}/data/lfs |
Где хранить LFS файлы |
gitea_lfs_extra |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [lfs] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_actions_enabled |
false |
Включить/выключить возможности действий в глобальном масштабе. Вы можете добавить repo.actions в gitea_default_repo_units , чтобы включить действия для всех новых репозиториев |
gitea_actions_default_actions_url |
github |
Адрес по умолчанию для получения плагинов действий, например, значение по умолчанию означает загрузку с https://github.com/actions/checkout для uses: actions/checkout@v3 |
gitea_actions_extra |
|
вы можете использовать эту переменную для передачи дополнительных параметров конфигурации в разделе [actions] файла конфигурации. |
имя переменной |
значение по умолчанию |
описание |
gitea_other_show_footer_version |
true |
Показывать информацию о версиях Gitea и Go в нижнем колонтитуле. |
gitea_other_show_footer_template_load_time |
true |
Показывать время выполнения шаблона в нижнем колонтитуле. |
gitea_other_enable_sitemap |
true |
Генерация карты сайта. |
gitea_other_enable_feed |
true |
Включить/выключить RSS/Atom-ленту. |
дополнительная конфигурация gitea
имя переменной |
значение по умолчанию |
описание |
gitea_extra_config |
|
Дополнительная конфигурация gitea. Ознакомьтесь с cheat sheet перед использованием! |
Конфигурация Fail2Ban
Если включено, это развернет фильтр fail2ban и конфигурацию заключения для Gitea, как описано в Документации Gitea.
Так как это будет только развертывание файлов конфигурации, fail2ban уже должен быть установлен, иначе роль завершится с ошибкой.
имя переменной |
значение по умолчанию |
описание |
gitea_fail2ban_enabled |
false |
Разрешить ли конфигурацию fail2ban или нет |
gitea_fail2ban_jail_maxretry |
10 |
Настройка maxretry тюремного заключения fail2ban. |
gitea_fail2ban_jail_findtime |
3600 |
Настройка findtime тюремного заключения fail2ban. |
gitea_fail2ban_jail_bantime |
900 |
Настройка bantime тюремного заключения fail2ban. |
gitea_fail2ban_jail_action |
iptables-allports |
Настройка action тюремного заключения fail2ban. |
Локальные пользователи gitea
переменная |
опция |
описание |
gitea_users |
|
словарь для создания локальных пользователей gitea или forgejo |
|
name |
имя для локального пользователя gitea/forgejo |
|
password |
пароль для локального пользователя git |
|
email |
электронная почта для локального пользователя git |
|
admin |
предоставьте пользователю права администратора |
|
must_change_password |
пользователь должен изменить пароль после первой авторизации |
|
state |
установите в absent , чтобы удалить пользователя |
Опциональные настройки
Вы можете опционально настроить свой gitea, используя эту ansible роль. Мы получили информацию о настройках с docs.gitea.io/en-us/customizing-gitea.
Чтобы развернуть несколько файлов, мы создали переменную gitea_custom_search
, которая может ссылаться на путь, где вы разместили пользовательские файлы gitea (по умолчанию"files/host_files/{{ inventory_hostname }}/gitea"
).
- ЛОГОТИП:
- Установите
gitea_customize_logo
в true
- Мы ищем:
logo.svg
- Используется для фавикона, значка сайта, значка приложения
logo.png
- Используется для Open Graph
favicon.png
- Используется в качестве резервного варианта для браузеров, которые не поддерживают SVG фавиконы
apple-touch-icon.png
- Используется на устройствах iOS для закладок
- Мы ищем в (с использованием first_found):
{{ gitea_custom_search }}/gitea_logo/
files/{{ inventory_hostname }}/gitea_logo/
files/{{ gitea_http_domain }}/gitea_logo/
files/gitea_logo/
- НИЖНИЙ КОЛОНТИТУЛ:
- Установите
gitea_customize_footer
в true
- Мы ищем, используя first_found в:
- "{{ gitea_custom_search }}/gitea_footer/extra_links_footer.tmpl"
- "files/{{ inventory_hostname }}/gitea_footer/extra_links_footer.tmpl"
- "files/{{ gitea_http_domain }}/gitea_footer/extra_links_footer.tmpl"
- 'files/gitea_footer/extra_links_footer.tmpl'
- 'files/extra_links_footer.tmpl'
- ПОЛЬЗОВАТЕЛЬСКИЕ ФАЙЛЫ:
- Установите
gitea_customize_files
в true
- Создайте каталог с файлами, которые вы хотите развернуть.
- Укажите
gitea_customize_files_path
на этот каталог. (По умолчанию {{ gitea_custom_search }}/gitea_files/
)
- ПОЛЬЗОВАТЕЛЬСКИЕ ТЕМЫ:
Требования
Эта роль использует сборки ansible.builtin
и community.general
ansible. Для загрузки последнего релиза forgejo/gitea мы используем json_query. Это требует наличия jmespath
.
Python пакеты
Galaxy Collections
Пример установки требований
ansible-galaxy collection install --update --role-file requirements.yml
pip3 install --update jmespath
Вклад
Не стесняйтесь создавать запрос на изменение, и если у вас есть сомнения, вы можете связаться со мной на
Mastodon @[email protected].
Я с радостью исправлю любые проблемы, которые вы поднимете, или, что еще лучше, рассмотрю ваши запросы на изменения :)
История этой роли
эта ansible роль изначально разрабатывалась на github.com/thomas-maurice/ansible-role-gitea. Поскольку там есть некоторые проблемы, такие как значения по умолчанию для расположения репозиториев gitea, а слияние запросов на слияние обычно занимает несколько месяцев, был создан форк роли, который предлагает то же самое. Только аккуратнее и с намерением быстрее реагировать на проблемы и запросы на слияние. Это теперь также является частью коллекции l3d.git.