Rola Ansible gitea/forgejo
Ta rola instaluje i zarządza gitea lub forgejo. Jest to prosta, samodzielnie hostowana usługa Git. Gitea to rozwiązanie do hostingu kodu, zarządzane przez wspólnotę, napisane w Go. Forgejo to jego fork.
Źródło kodu i zrzuty ekranu gitea.
Źródło kodu forgejo.
Ta rola jest częścią kolekcji Ansible l3d.git.
Lustra
Rola jest lustrzana w:
Przykładowe użycie w playbooku
Poniższy kod został przetestowany na najnowszym Debian Stable i powinien działać również na Ubuntu i RedHat.
- name: "Zainstaluj gitea"
hosts: git.example.com
roles:
- {role: l3d.gitea, tags: gitea}
vars:
gitea_fqdn: 'git.example.com'
gitea_root_url: 'https://git.example.com'
gitea_protocol: http
gitea_start_ssh: true
Wybór między wbudowanym SSH Gitea a serwerem SSH gospodarza
Gitea ma wbudowany serwer SSH, który działa na porcie 2222 (aby nie kolidował z serwerem SSH gospodarza, który zwykle działa na porcie 22). Domyślnie jest on używany w tej roli, co skutkuje SSH URL klonowania w postaci gitea@<fqdn>:2222:<user>/<repo>.git
, ponieważ gitea
jest domyślnym użytkownikiem RUN_AS
.
Często jednak chcemy mieć „czysty” adres URL SSH, np. git@<fqdn>:<user>/<repo>.git
. Można to osiągnąć, używając serwera SSH gospodarza z następującą konfiguracją zmiennych:
gitea_ssh_port: 22
gitea_user: git
gitea_start_ssh: false
Powyższa konfiguracja działa od razu w nowych instalacjach. Podczas migracji z działającego serwera z istniejącymi kluczami SSH z wbudowanego serwera SSH do serwera SSH gospodarza, musisz upewnić się, że serwer SSH gospodarza działa oraz że gitea_user
ma odpowiednie uprawnienia do dostępu do danych repozytoriów i kluczy (przechowywanych w <gitea_home>/.ssh/
).
Zwróć uwagę: Aby używać git@
jak opisano powyżej, gitea_user
musi być git
i nie wystarczy ustawić gitea_ssh_user: git
. Zobacz ten problem po więcej informacji.
Zmienne
Oto bliższe spojrzenie na zmienne tej roli gitea. Aby poznać dokładne funkcje niektórych zmiennych oraz możliwość dodania większej ilości opcji, zalecamy zapoznanie się z tym arkuszem oszustw.
Wybór między gitea a forgejo
Istnieje fork gitea nazwany forgejo. Dlaczego? Przeczytaj FAQ forgejo.
Możesz wybrać między gitea a forgejo, modyfikując zmienną gitea_fork
.
nazwa zmiennej |
wartość domyślna |
opis |
gitea_fork |
gitea |
opcjonalnie wybierz instalację forgejo zamiast gitea, ustawiając tę wartość na forgejo . |
mechanizm aktualizacji gitea
Aby określić, którą wersję gitea zainstalować, możesz wybierać między dwiema wersjami.
Możesz dokładnie określić, którą wersję zainstalować lub użyć opcji latest
, aby zainstalować najnowszą wersję z wydań gitea.
mechanizm aktualizacji Forgejo
Zaleca się dokładne określenie, którą wersję Forgejo chcesz zainstalować. Zobacz Wydania Forgejo po poprawną wartość do użycia w gitea_version
, np. v1.21.5
.
Dzieje się tak, ponieważ projekt Forgejo utrzymuje zarówno wersje stable
, jak i old stable
, a znacznik latest
będzie odnosił się do najnowszego wydania bez względu na to, czy jest to stable
, czy old stable
. Może to prowadzić do sytuacji, w której latest
odnosi się do starszego wydania niż wersja, którą masz zainstalowaną.
aktualizacja gitea
nazwa zmiennej |
wartość domyślna |
opis |
gitea_version |
latest |
Określ dokładnie wydanie do zainstalowania (np. 1.16.0 ) lub użyj latest (domyślnie), aby zainstalować najnowsze wydanie. |
gitea_version_check |
true |
Sprawdź, czy zainstalowana wersja != gitea_version przed rozpoczęciem pobierania binarnego |
gitea_gpg_key |
7C9E68152594688862D62AF62D9AE806EC1592E2 |
klucz gpg, którym podpisany jest binarny plik gitea |
gitea_forgejo_gpg_key |
EB114F5E6C0DC2BCDD183550A4B61A2DC5923710 |
klucz gpg, którym podpisany jest binarny plik forgejo |
gitea_gpg_server |
hkps://keys.openpgp.org |
serwer kluczy gpg, z którego ta rola może pobrać klucz gpg |
gitea_backup_on_upgrade |
false |
Opcjonalnie można utworzyć kopię zapasową przy każdej aktualizacji gitea. |
gitea_backup_location |
{{ gitea_home }}/backups/ |
Gdzie przechować kopię zapasową gitea, jeśli zostanie utworzona za pomocą tej roli. |
submodules_versioncheck |
false |
prosta kontrola wersji, która może zapobiec przypadkowemu uruchomieniu starszej wersji tej roli. (zalecane) |
gitea w światzie linuxa
nazwa zmiennej |
wartość domyślna |
opis |
gitea_group |
gitea |
Główna grupa UNIX używana przez Gitea |
gitea_groups |
null |
Opcjonalnie lista dodatkowych grup UNIX używanych przez Gitea |
gitea_home |
/var/lib/gitea |
Katalog roboczy |
gitea_user_home |
{{ gitea_home }} |
katalog domowy użytkownika gitea |
gitea_executable_path |
/usr/local/bin/gitea |
Ścieżka do pliku wykonywalnego gitea |
gitea_forgejo_executable_path |
/usr/local/bin/forgejo |
Ścieżka do pliku wykonywalnego forgejo |
gitea_configuration_path |
/etc/gitea |
Gdzie umieścić plik konfiguracyjny gitea.ini |
gitea_shell |
/bin/false |
powłoka UNIX używana przez gitea. Ustaw ją na /bin/bash , jeśli nie używasz wbudowanego serwera ssh gitea. |
gitea_systemd_cap_net_bind_service |
false |
Dodaje AmbientCapabilities=CAP_NET_BIND_SERVICE do pliku usługi systemd |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_app_name |
Gitea |
Nazwa aplikacji wyświetlana |
gitea_user |
gitea |
Użytkownik UNIX używany przez Gitea |
gitea_run_mode |
prod |
Tryb pracy aplikacji, wpływa na wydajność i debugowanie. Może być “dev”, “prod” lub “test”. |
gitea_fqdn |
localhost |
Podstawowy FQDN dla instalacji, używany jako domyślny dla innych zmiennych. Ustaw go na FQDN, pod którym możesz dotrzeć do swojego serwera gitea. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_default_branch |
main |
Domyślna nazwa gałęzi wszystkich repozytoriów. |
gitea_default_private |
last |
Domyślnie prywatne podczas tworzenia nowego repozytorium. [last , private , public ] |
gitea_default_repo_units |
(zobacz domyślnie) |
Lista jednostek repozytoriów, rozdzielonych przecinkami. Zobacz oficjalną dokumentację po więcej. |
gitea_disabled_repo_units |
|
Lista zglobalizowanych, wyłączonych jednostek repozytoriów. |
gitea_disable_http_git |
false |
Wyłącz możliwość interakcji z repozytoriami za pomocą protokołu HTTP. (true/false) |
gitea_disable_stars |
false |
Wyłącz funkcję gwiazdek. |
gitea_enable_push_create_org |
false |
Zezwól użytkownikom na przesyłanie lokalnych repozytoriów do Gitea i automatyczne ich tworzenie dla organizacji. |
gitea_enable_push_create_user |
false |
Zezwól użytkownikom na przesyłanie lokalnych repozytoriów do Gitea i automatyczne ich tworzenie dla użytkownika. |
gitea_force_private |
false |
Wymuś, aby każde nowe repozytorium było prywatne. |
gitea_user_repo_limit |
-1 |
Ograniczenie liczby repozytoriów, które użytkownik może mieć (-1 dla nieograniczonej liczby) |
gitea_repository_root |
{{ gitea_home }}/repos |
Główna ścieżka do przechowywania wszystkich danych repozytoriów. Musi to być ścieżka absolutna. |
gitea_repository_extra_config |
|
Możesz użyć tej zmiennej, aby przekazać dodatkowe parametry konfiguracyjne w sekcji [repozytorium] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_repository_upload_enabled |
true |
Czy przesyłanie plików do repozytoriów jest włączone? |
gitea_repository_upload_max_size |
4 |
Maksymalny rozmiar każdego pliku w megabajtach. |
gitea_repository_upload_extra_config |
|
możesz użyć tej zmiennej, aby przekazać dodatkowe parametry konfiguracyjne w sekcji [repository.upload] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_enable_repo_signing_options |
false |
Pozwól skonfigurować opcje podpisywania repozytoriów. |
gitea_repo_signing_key |
default |
Klucz używany do podpisywania. |
gitea_repo_signing_name |
|
jeśli podano KEYID jako gitea_repo_signing_key , użyj tego jako Nazwy i adresu e-mail podpisującego. |
gitea_repo_signing_email |
|
jeśli podano KEYID jako gitea_repo_signing_key , użyj tego jako Nazwy i adresu e-mail podpisującego. |
gitea_repo_initial_commit |
always |
Podpisz początkowy commit. |
gitea_repo_default_trust_model |
collaborator |
Domyślny model zaufania używany do weryfikacji commitów. |
gitea_repo_wiki |
never |
Podpisz commity w wiki. |
gitea_repo_crud_actions |
(zobacz domyślnie) |
Podpisz akcje CRUD. |
gitea_repo_merges |
(zobacz domyślnie) |
Podpisz scalania. |
gitea_enable_repo_signing_extra |
|
Możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [repository.signing] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_enable_cors |
false |
włącz nagłówki cors (domyślnie wyłączone) |
gitea_cors_scheme |
http |
schemat dozwolonych żądań |
gitea_cors_allow_domain |
* |
lista dozwolonych domen zapytań |
gitea_cors_allow_subdomain |
false |
zezwól subdomenom wymienionym powyżej na wysyłanie żądań |
gitea_cors_methods |
(zobacz domyślnie) |
lista metod dozwolonych do wykonywania zapytań |
gitea_cors_max_age |
10m |
maksymalny czas przechowywania odpowiedzi |
gitea_cors_allow_credentials |
false |
zezwól na żądanie z danymi uwierzytelniającymi |
gitea_cors_headers |
Content-Type,User-Agent |
dodatkowe nagłówki dozwolone w zapytaniach |
gitea_cors_x_frame_options |
SAMEORIGIN |
Ustaw wartość nagłówka X-Frame-Options . |
gitea_cors_extra |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [cors] pliku konfiguracyjnego. |
UI (ui)
nazwa zmiennej |
wartość domyślna |
opis |
gitea_show_user_email |
false |
Czy chcesz wyświetlać adresy e-mail? (true/false) |
gitea_theme_default |
gitea-auto lub forgejo-auto |
Domyślny motyw |
gitea_themes |
(Zobacz defaults/gitea.yml lub defaults/forgejo.yml ) |
Lista włączonych motywów |
gitea_ui_extra_config |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [ui] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_ui_author |
(zobacz domyślnie) |
Tag meta autora na stronie głównej. |
gitea_ui_description |
(zobacz domyślnie) |
Tag meta opisu na stronie głównej. |
gitea_ui_keywords |
(zobacz domyślnie) |
Tag meta słów kluczowych na stronie głównej |
gitea_ui_meta_extra_config |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [ui.meta] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_protocol |
http |
Protokół nasłuchujący [http, https, fcgi, unix, fcgi+unix] |
gitea_http_domain |
{{ gitea_fqdn }} , który wynosi localhost |
Nazwa domeny tego serwera. |
gitea_root_url |
http://{{ gitea_fqdn }}:3000 |
Główny adres URL używany do uzyskiwania dostępu do aplikacji webowej (pełny URL) |
gitea_http_listen |
127.0.0.1 |
Adres nasłuchujący HTTP |
gitea_http_port |
3000 |
Port wiązania (przekierowanie z 80 zostanie aktywowane, jeśli wartość wynosi 443 ) |
gitea_start_ssh |
true |
Gdy jest włączone, użyj wbudowanego serwera SSH. |
gitea_ssh_domain |
{{ gitea_fqdn }} |
Nazwa domeny tego serwera, używana do wyświetlanego adresu URL klonowania |
gitea_ssh_port |
2222 |
Port SSH wyświetlany w adresie URL klonowania. |
gitea_ssh_listen |
0.0.0.0 |
Adres nasłuchujący dla wbudowanego serwera SSH. |
gitea_offline_mode |
true |
Wyłącza użycie CDN dla plików statycznych oraz Gravatar dla zdjęć profilowych. (true/false) |
gitea_landing_page |
home |
Strona startowa dla nieautoryzowanych użytkowników |
gitea_lfs_server_enabled |
false |
Włącz wsparcie GIT-LFS (git large file storage: git-lfs). |
gitea_lfs_jwt_secret |
|
Sekret uwierzytelniania LFS. Można go wygenerować za pomocą gitea generate secret JWT_SECRET . Zostanie automatycznie wygenerowany, jeśli nie jest zdefiniowany |
gitea_redirect_other_port |
false |
Jeśli prawda i gitea_protocol to https, pozwala na przekierowanie żądań http na gitea_port_to_redirect do portu https, na którym nasłuchuje Gitea. |
gitea_port_to_redirect |
80 |
Port, na którym nasłuchuje usługa przekierowania http, jeśli jest włączona |
gitea_enable_tls_certs |
false |
Zapisz ścieżkę do certyfikatów TLS i klucza w pliku konfiguracyjnym |
gitea_tls_cert_file |
https/cert.pem |
Ścieżka do pliku certyfikatu używanego do HTTPS. |
gitea_tls_key_file |
https/key.pem |
Ścieżka do pliku klucza używanego do HTTPS. |
gitea_enable_acme |
false |
Flaga do włączenia automatycznego zarządzania certyfikatami za pomocą ACME zdolnego serwera CA. (domyślnie letsencrypt) |
gitea_acme_url |
|
Adres URL katalogu ACME serwera CA |
gitea_acme_accepttos |
false |
To jest wyraźne potwierdzenie akceptacji warunków korzystania z serwisu dostawcy ACME. |
gitea_acme_directory |
https |
Katalog, którego menedżer certyfikatów użyje do magazynowania informacji, takich jak certyfikaty i klucze prywatne. |
gitea_acme_email |
|
E-mail używany do rejestracji ACME |
gitea_acme_ca_root |
|
Główny certyfikat CA. Jeśli pozostawiony pusty, domyślnie używa łańcucha zaufania systemu. |
gitea_server_extra_config |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [server] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_db_type |
sqlite3 |
Typ bazy danych w użyciu [mysql, postgres, mssql, sqlite3] . |
gitea_db_host |
127.0.0.0:3306 |
Adres hosta bazy danych i port lub absolutna ścieżka dla gniazda unix [mysql, postgres] (np.: /var/run/mysqld/mysqld.sock ). |
gitea_db_name |
root |
Nazwa bazy danych |
gitea_db_user |
gitea |
Nazwa użytkownika bazy danych |
gitea_db_password |
lel |
Hasło bazy danych. PROSZĘ ZMIENIĆ |
gitea_db_ssl |
disable |
Konfiguruj SSL tylko wtedy, gdy twój typ bazy danych to wspiera. Zobacz arkusz konfiguracyjny po bardziej szczegółowe informacje |
gitea_db_path |
{{ gitea_home }}/data/gitea.db |
Ścieżka DB, jeśli używasz sqlite3 . |
gitea_db_log_sql |
false |
Zapisuj wykonywane SQL. |
gitea_database_extra_config |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [database] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_repo_indexer_enabled |
false |
Włącz mechanizm wyszukiwania kodu (używa wiele miejsca na dysku, około 6 razy więcej niż rozmiar repozytorium). |
gitea_repo_indexer_include |
|
Wzorce glob do włączenia w indeks (lista rozdzielona przecinkami). Pusta lista oznacza włączenie wszystkich plików. |
gitea_repo_indexer_exclude |
|
Wzorce glob do wykluczenia z indeksu (lista rozdzielona przecinkami). |
gitea_repo_exclude_vendored |
true |
Wyklucz pliki vended z indeksu. |
gitea_repo_indexer_max_file_size |
1048576 |
Maksymalny rozmiar plików, które będą indeksowane w bajtach. |
gitea_indexer_extra_config |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [indexer] pliku konfiguracyjnego. |
gitea_queue_issue_indexer_extra_config |
|
|
Bezpieczeństwo (security)
nazwa zmiennej |
wartość domyślna |
opis |
gitea_secret_key |
|
Globalny klucz sekretu. Zostanie automatycznie wygenerowany, jeśli nie jest zdefiniowany. Powinien być unikalny. |
gitea_disable_git_hooks |
true |
Ustaw na fałsz, aby umożliwić użytkownikom z uprawnieniami do hooków git tworzenie własnych hooków. Może być niebezpieczne. |
gitea_disable_webhooks |
false |
Ustaw na prawda, aby wyłączyć funkcję webhooków. |
gitea_internal_token |
|
Wewnętrzny token API. Zostanie automatycznie wygenerowany, jeśli nie jest zdefiniowany. Powinien być unikalny. |
gitea_password_check_pwn |
false |
Sprawdź HaveIBeenPwned, aby zobaczyć, czy hasło zostało ujawnione. |
gitea_security_extra_config |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [security] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_disable_registration |
false |
Czy chcesz wyłączyć rejestrację użytkowników? (true/false) |
gitea_register_email_confirm |
false |
Włącz to, aby poprosić o potwierdzenie poczty w rejestracji. Wymaga włączenia gitea_mailer_enabled . |
gitea_require_signin |
true |
Czy wymagasz zalogowania się, aby zobaczyć repozytoria (nawet publiczne)? (true/false) |
gitea_default_keep_mail_private |
true |
Domyślnie ustaw użytkowników na utrzymanie swojego adresu e-mail prywatnym |
gitea_enable_captcha |
true |
Czy chcesz włączyć captcha? (true/false) |
gitea_show_registration_button |
true |
Możesz tu ukryć przycisk rejestracji. To nie wyłączy rejestracji! (true/false) |
gitea_only_allow_external_registration |
false |
Ustaw na prawda, aby wymusić rejestrację tylko za pomocą usług zewnętrznych (true/false) |
gitea_enable_notify_mail |
false |
Włącz to, aby wysyłać e-maile do obserwatorów repozytorium, gdy coś się wydarzy, jak na przykład tworzenie zgłoszeń (true/false) |
gitea_auto_watch_new_repos |
true |
Włącz to, aby wszyscy użytkownicy organizacji obserwowali nowe repozytoria, gdy są tworzone (true/false) |
gitea_autowatch_on_change |
true |
Włącz to, aby użytkownicy obserwowali repo zy torium po swoim pierwszym commit do niego (true/false) |
gitea_register_manual_confirm |
false |
Włącz to, aby ręcznie potwierdzać nowe rejestracje. Wymaga wyłączenia REGISTER_EMAIL_CONFIRM. |
gitea_default_allow_create_organization |
false |
Pozwól nowym użytkownikom na tworzenie organizacji domyślnie (true/false) |
gitea_email_domain_allowlist |
|
Jeśli nie jest pusty, lista domen, które mogą być używane do rejestracji na tej instancji, wspierany jest znak wieloznaczny. |
gitea_default_user_visibility |
public |
Ustaw domyślny tryb widoczności dla użytkowników, może być „public”, „limited” lub „private”. |
gitea_default_org_visibility |
public |
Ustaw domyślny tryb widoczności dla organizacji, może być „public”, „limited” lub „private”. |
gitea_allow_only_internal_registration |
false |
Ustaw na prawda, aby wymusić rejestrację tylko za pomocą Gitea. |
gitea_allow_only_external_registration |
false |
Ustaw na prawda, aby wymusić rejestrację tylko przy użyciu usług zewnętrznych. |
gitea_show_milestones_dashboard_page |
true |
Włącz to, aby pokazać stronę kokpitu kamieni milowych - widok wszystkich kamieni milowych użytkownika |
gitea_default_user_is_restricted |
false |
Domyślnie daj nowym użytkownikom ograniczone uprawnienia (true/false) |
gitea_service_extra_config |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [service] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_mailer_enabled |
false |
Czy włączyć mailera? |
gitea_mailer_protocol |
dummy |
Protokół serwera pocztowego. Jeden z „smtp”, „smtps”, „smtp+starttls”, „smtp+unix”, „sendmail”, „dummy”. |
gitea_mailer_smtp_addr |
|
Adres serwera pocztowego. np. smtp.gmail.com. Dla smtp+unix, powinno to być ścieżka do gniazda unix. |
gitea_mailer_smtp_port |
|
Port serwera pocztowego |
gitea_mailer_use_client_cert |
false |
Użyj certyfikatu klienta dla TLS/SSL. |
gitea_mailer_client_cert_file |
|
Plik certyfikatu klienta. |
gitea_mailer_client_key_file |
|
Plik klucza klienta. |
gitea_mailer_force_trust_server_cert |
false |
Całkowicie ignoruje błędy walidacji certyfikatu serwera. Ta opcja jest niebezpieczna. Rozważ dodanie certyfikatu do magazynu zaufania systemu. |
gitea_mailer_user |
|
Nazwa użytkownika do mailowania (zwykle adres e-mail nadawcy). |
gitea_mailer_password |
|
Hasło użytkownika poczty. Użyj twojego hasła do cytowania, jeśli używasz znaków specjalnych w haśle. |
gitea_mailer_enable_helo |
true |
Włącz operację HELO. |
gitea_mailer_from |
noreply@{{ gitea_http_domain }} |
Adres e-mail nadawcy, RFC 5322. |
gitea_subject_prefix |
|
Prefiks umieszczany przed liniami tematu e-maili. |
gitea_mailer_send_as_plaintext |
false |
Wysłanie maili tylko w formacie tekstowym, bez alternatywy HTML. |
gitea_mailer_extra_config |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [mailer] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_session_provider |
file |
Dostawca silnika sesji |
gitea_session_extra_config |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [session] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_picture_extra_config |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [picture] pliku konfiguracyjnego. |
Załączniki do zgłoszeń i pull requestów (attachment)
nazwa zmiennej |
wartość domyślna |
opis |
attachment_enabled |
true |
Czy załączniki do zgłoszeń i pull requestów są włączone? |
gitea_attachment_types |
zobacz dokumenty |
Lista dozwolonych rozszerzeń plików (.zip,.txt ), typy mime (text/plain ) lub typ wildcard (image/* , audio/* , video/* ). Pusta wartość lub */* zezwala na wszystkie typy. |
gitea_attachment_max_size |
4 |
Maksymalny rozmiar (MB). |
gitea_attachment_extra_config |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [attachment] pliku konfiguracyjnego. |
Dziennik (log)
nazwa zmiennej |
wartość domyślna |
opis |
gitea_log_systemd |
false |
Wyłącza logowanie do file , użyj systemd-journald |
gitea_log_level |
Warn |
Ogólny poziom logowania. [Trace, Debug, Info, Warn, Error, Critical, Fatal, None] |
gitea_log_extra_config |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [log] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_metrics_enabled |
false |
Włącz punkt metryczny |
gitea_metrics_token |
|
Token Bearer dla zadania zbierania Prometheus |
gitea_metrics_extra |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [metrics] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_oauth2_enabled |
true |
Włącz dostawcę Oauth2 (true/false) |
gitea_oauth2_jwt_secret |
|
Sekret Oauth2 JWT. Można go wygenerować za pomocą gitea generate secret JWT_SECRET . Zostanie automatycznie wygenerowany, jeśli nie jest zdefiniowany. |
gitea_oauth2_extra_config |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [oauth2] pliku konfiguracyjnego. |
nazwa zmiennej |
wartości domyślne |
opis |
gitea_federation_enabled |
false |
Włącz/Wyłącz funkcje federacyjne |
gitea_federation_share_user_stats |
false |
Włącz/Wyłącz statystyki użytkowników dla nodeinfo, jeśli federacja jest włączona |
gitea_federation_extra |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [federation] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_packages_enabled |
true |
Włącz/Wyłącz możliwości rejestru pakietów |
gitea_packages_extra |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [packages] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_lfs_storage_type |
local |
Typ przechowywania dla lfs |
gitea_lfs_serve_direct |
false |
Pozwala na przekierowanie do uwierzytelnionych adresów URL, aby serwować pliki bezpośrednio. (tylko Minio/S3) |
gitea_lfs_content_path |
{{ gitea_home }}/data/lfs |
Gdzie przechować pliki LFS |
gitea_lfs_extra |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [lfs] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_actions_enabled |
false |
Włącz/Wyłącz możliwości akcji globalnie. Możesz chcieć dodać repo.actions do gitea_default_repo_units , aby włączyć akcje we wszystkich nowych repozytoriach. |
gitea_actions_default_actions_url |
github |
Domyślny adres do pobrań wtyczek akcji, np. domyślna wartość oznacza pobranie z https://github.com/actions/checkout dla uses: actions/checkout@v3 |
gitea_actions_extra |
|
możesz użyć tej zmiennej do przekazania dodatkowych parametrów konfiguracyjnych w sekcji [actions] pliku konfiguracyjnego. |
nazwa zmiennej |
wartość domyślna |
opis |
gitea_other_show_footer_version |
true |
Wyświetlaj informacje o wersji Gitea i Go w stopce. |
gitea_other_show_footer_template_load_time |
true |
Pokaż czas wykonania szablonu w stopce. |
gitea_other_enable_sitemap |
true |
Generuj mapę strony. |
gitea_other_enable_feed |
true |
Włącz/Wyłącz kanał RSS/Atom. |
dodatkowa konfiguracja gitea
nazwa zmiennej |
wartość domyślna |
opis |
gitea_extra_config |
|
Dodatkowe ustawienia konfiguracyjne gitea. Zapoznaj się z arkuszem konfiguracyjnym przed jego użyciem! |
Konfiguracja Fail2Ban
Jeśli włączone, to wdroży filtr fail2ban oraz konfigurację więzienia dla Gitea, jak opisano w Dokumentacji Gitea.
Ponieważ wdroży to tylko pliki konfiguracyjne, fail2ban musi być już zainstalowany, w przeciwnym razie rola zakończy się niepowodzeniem.
nazwa zmiennej |
wartość domyślna |
opis |
gitea_fail2ban_enabled |
false |
Czy wdrożyć konfigurację fail2ban? |
gitea_fail2ban_jail_maxretry |
10 |
maksymalna konfiguracja retry jail fail2ban. |
gitea_fail2ban_jail_findtime |
3600 |
czas znajdowania jail fail2ban. |
gitea_fail2ban_jail_bantime |
900 |
czas banowania jail fail2ban. |
gitea_fail2ban_jail_action |
iptables-allports |
akcja jail fail2ban. |
lokalni użytkownicy gitea
zmienna |
opcja |
opis |
gitea_users |
|
słownik do tworzenia lokalnych użytkowników gitea lub forgejo |
|
name |
nazwa dla lokalnego użytkownika gitea/forgejo |
|
password |
hasło dla lokalnego użytkownika gitea |
|
email |
e-mail dla lokalnego użytkownika gitea |
|
admin |
nadaj użytkownikowi uprawnienia administratora |
|
must_change_password |
użytkownik powinien zmienić hasło po pierwszym zalogowaniu |
|
state |
ustaw na absent , aby usunąć użytkownika |
opcjonalne dostosowanie
Możesz opcjonalnie dostosować swój gitea, używając tej roli ansible. Informacje o dostosowaniach uzyskaliśmy z docs.gitea.io/en-us/customizing-gitea.
Aby wdrożyć wiele plików, utworzyliśmy zmienną gitea_custom_search
, która może wskazać na ścieżkę, w której umieściłeś własne pliki gitea (domyślnie "files/host_files/{{ inventory_hostname }}/gitea"
).
- LOGO:
- Ustaw
gitea_customize_logo
na true
- Szukamy:
logo.svg
- Używane jako favicon, ikona strony, ikona aplikacji
logo.png
- Używane w Open Graph
favicon.png
- Używane jako fallback dla przeglądarek, które nie obsługują symboli SVG
apple-touch-icon.png
- Używane w urządzeniach iOS jako zakładki
- Szukamy w (używając first_found):
{{ gitea_custom_search }}/gitea_logo/
files/{{ inventory_hostname }}/gitea_logo/
files/{{ gitea_http_domain }}/gitea_logo/
files/gitea_logo/
- STOPKA:
- Ustaw
gitea_customize_footer
na true
- Szukamy używając first_found w:
- "{{ 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'
- WŁASNE PLIKI:
- Ustaw
gitea_customize_files
na true
- Utwórz katalog z plikami, które chcesz wdrożyć.
- Wskaź
gitea_customize_files_path
na ten folder. (Domyślny {{ gitea_custom_search }}/gitea_files/
)
- WŁASNE MOTYWY:
Wymagania
Ta rola korzysta z kolekcji ansible.builtin
i community.general
. Aby pobrać najnowsze wydanie forgejo/gitea, korzystamy z json_query. To wymaga, aby jmespath
było dostępne.
Pakiety Pythona
Kolekcje Galaxy
Przykład instalacji wymagań
ansible-galaxy collection install --update --role-file requirements.yml
pip3 install --update jmespath
Wnieś wkład
Nie wahaj się stworzyć pull requesta, a jeśli masz wątpliwości, możesz skontaktować się ze mną na Mastodon @[email protected].
Będę zadowolony, że naprawię wszelkie problemy, które zgłosisz, a co lepsze, przejrzę twoje pull requesty :)
Historia tej roli
Ta rola ansible została pierwotnie opracowana na github.com/thomas-maurice/ansible-role-gitea. Ponieważ ta rola ma pewne problemy, takie jak domyślne wartości dla lokalizacji repozytoriów gitea, a scalanie pull requestów zwykle trwa kilka miesięcy, stworzono fork roli, który oferuje podobne funkcje. Tyle że w bardziej uporządkowany sposób i stara się szybciej reagować na problemy i pull requesty. Jest ona teraz częścią kolekcji l3d.git.