l3d.gitea

Ansible Galaxy BSD-3 Clause Maintainance

ansibleロール gitea/forgejo

このロールは、giteaまたはforgejoをインストールおよび管理します。使いやすい自己ホスト型のGitサービスです。GiteaはGoで書かれた軽量なコードホスティングソリューションで、コミュニティによって管理されています。Forgejoはそのフォークです。GiteaのソースコードとスクリーンショットForgejoのソースコードもあります。このロールは、Ansible-Collection l3d.gitの一部でもあります。l3d.git

ミラー

このロールは以下の場所にミラーされています:

プレイブックのサンプル使用例

以下のコードは、最新のDebian Stableでテストされていますが、UbuntuとRedHatでも動作するはずです。

# ansible-galaxy role install l3d.gitea

- name: "Install 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

Giteaの内蔵SSHとホストSSHサーバーの選択

Giteaには、ポート2222で動作する内蔵SSHサーバーがあります(通常のホストSSHサーバーがポート22で動作するのと競合しないように)。通常、このロールではデフォルトでこの内蔵SSHサーバーが使用され、SSHクローンURLはgitea@<fqdn>:2222:<user>/<repo>.gitとなります。なぜなら、giteaがデフォルトのRUN_ASユーザーだからです。

多くの場合、「クリーン」な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サーバーが動作していることを確認し、gitea_userがリポジトリデータとキー(<gitea_home>/.ssh/に保存されている)へのアクセス権限を持っていることを確認する必要があります。

注意: 上記のようにgit@を使用するには、gitea_usergitでなければならず、gitea_ssh_user: gitを設定するだけでは不十分です。この問題についての詳細を参照してください。

変数

giteaロールの変数について詳しく説明します。詳細な機能については、設定チートシートを参照してください。

giteaとforgejoの選択

giteaのフォークであるforgejoがあります。なぜでしょうか? forgejo FAQを読んでみてください。 gitea_fork変数を変更することで、giteaforgejoのいずれかを選択できます。

変数名 デフォルト値 説明
gitea_fork gitea この値をforgejoに設定することで、giteaの代わりにforgejoをインストールするオプション。

giteaの更新メカニズム

どのgiteaバージョンをインストールするかを決定するために、2つのオプションから選ぶことができます。具体的にどのリリースをインストールするかを定義するか、latestオプションを使用してギテアリリースから最新のリリースを常にインストールします。

Forgejoの更新メカニズム

どのForgejoリリースをインストールするかを具体的に定義することをお勧めします。gitea_versionに正しい値を使用してください。例: v1.21.5Forgejoリリースを参照してください。

これにより、Forgejoプロジェクトはstableold stableリリースの両方を管理しており、latestタグは安定版か古い安定版にかかわらず最新のリリースを指すことになります。これにより、latestが自分のインストールしているバージョンよりも古いリリースを指す状況になる可能性があります。

giteaアップデート

変数名 デフォルト値 説明
gitea_version latest インストールする正確なリリース(例: 1.16.0)を指定するか、latest(デフォルト)を使用して最新のリリースをインストールします。
gitea_version_check true バイナリダウンロードを開始する前に、インストールされたバージョンがgitea_versionと異なるか確認します
gitea_gpg_key 7C9E68152594688862D62AF62D9AE806EC1592E2 giteaバイナリに署名されたgpgキー
gitea_forgejo_gpg_key EB114F5E6C0DC2BCDD183550A4B61A2DC5923710 forgejoバイナリに署名されたgpgキー
gitea_gpg_server hkps://keys.openpgp.org このロールがgpgキーをダウンロードできるgpgキーサーバー
gitea_backup_on_upgrade false オプションで、giteaの更新ごとにバックアップを作成することができます。
gitea_backup_location {{ gitea_home }}/backups/ このロールでバックアップが作成された場合、それを保管する場所
submodules_versioncheck false 古いバージョンのこのロールを誤って実行するのを防ぐための単純なバージョンチェックです。(推奨)

Linux環境におけるgitea

変数名 デフォルト値 説明
gitea_group gitea Giteaが使用するプライマリUNIXグループ
gitea_groups null Giteaが使用するオプションのセカンダリUNIXグループのリスト
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 giteaが使用するUNIXシェル。内蔵SSHサーバーを使用しない場合は/bin/bashに設定します。
gitea_systemd_cap_net_bind_service false systemdサービスファイルにAmbientCapabilities=CAP_NET_BIND_SERVICEを追加

全体的に

変数名 デフォルト値 説明
gitea_app_name Gitea 表示されるアプリケーション名
gitea_user gitea Giteaが使用するUNIXユーザー
gitea_run_mode prod アプリケーションの実行モードで、パフォーマンスとデバッグに影響します。「dev」、「prod」、「test」のいずれか。
gitea_fqdn localhost インストール用のベースFQDN、他の変数のデフォルトとして使用されます。

リポジトリ

変数名 デフォルト値 説明
gitea_default_branch main すべてのリポジトリのデフォルトブランチ名。
gitea_default_private last 新しいリポジトリを作成する際のデフォルトのプライバシー設定。 [last, private, public]
gitea_default_repo_units (デフォルトを参照) デフォルトのリポジトリ単位のコンマ区切りリスト。公式ドキュメントを参照してください。
gitea_disabled_repo_units グローバルに無効にされたリポジトリ単位のコンマ区切りリスト。
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 gitea_repo_signing_keyとしてKEYIDが提供されている場合、署名者の名前とメールアドレスとして使用されます。
gitea_repo_signing_email gitea_repo_signing_keyとしてKEYIDが提供されている場合、署名者の名前とメールアドレスとして使用されます。
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]セクションに追加の構成パラメータを渡すためにこの変数を使用できます。

CORS

変数名 デフォルト値 説明
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

変数名 デフォルト値 説明
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]セクションに追加の構成パラメータを渡すためにこの変数を使用できます。

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 Webアプリにアクセスするためのルート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 クローンURLに表示されるSSHポート。
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)。
gitea_lfs_jwt_secret LFS認証シークレット。gitea generate secret JWT_SECRETで生成できます。定義されていない場合は自動的に生成されます。
gitea_redirect_other_port false trueの場合、gitea_protocolがhttpsの場合、gitea_port_to_redirectに対するhttpリクエストをGiteaがリッスンしているhttpsポートにリダイレクトできます。
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 CAのACMEディレクトリURL
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を設定します。詳細情報については、設定チートシートを参照してください。
gitea_db_path {{ gitea_home }}/data/gitea.db sqlite3を使用する場合のDBパス。
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 構成の[queue.issue_indexer]セクションに追加の構成パラメータを渡すためにこの変数を使用できます。

セキュリティ

変数名 デフォルト値 説明
gitea_secret_key グローバルシークレットキー。定義されていない場合は自動的に生成されます。ユニークであるべきです。
gitea_disable_git_hooks true ユーザーがgitフックの権限を持ち、自分のカスタムgitフックを作成できるようにするにはfalseに設定します。危険です。
gitea_disable_webhooks false webhook機能を無効にするには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 captchaを有効にしますか?(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 Gitea経由でのみ登録を強制するにはtrueに設定します。
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]セクションに追加の構成パラメータを渡すためにこの変数を使用できます。

メイラー

変数名 デフォルト値 説明
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_enabled true 課題とプルリクエストの添付が有効であるかどうか
gitea_attachment_types ドキュメントを参照 許可されたファイル拡張子(.zip,.txt)、MIMEタイプ(text/plain)またはワイルドカードタイプ(image/*audio/*video/*)のコンマ区切りリスト。空の値または*/*はすべてのタイプを許可します。
gitea_attachment_max_size 4 最大サイズ(MB)。
gitea_attachment_extra_config 構成の[attachment]セクションに追加の構成パラメータを渡すためにこの変数を使用できます。

ログ

変数名 デフォルト値 説明
gitea_log_systemd false fileにログを記録するのを無効にし、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 Prometheusのスクレイプジョブのためのベアラートークン
gitea_metrics_extra 構成の[metrics]セクションに追加の構成パラメータを渡すためにこの変数を使用できます。

OAuth2

変数名 デフォルト値 説明
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]セクションに追加の構成パラメータを渡すためにこの変数を使用できます。

LFS

変数名 デフォルト値 説明
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.actionsgitea_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構成です。使用する前にconfig-cheat-sheetを参照してください。

Fail2Ban構成

有効な場合、Gitea Documentationに記載されているように、Giteaのためのfail2banフィルターと刑務所構成をデプロイします。

これは構成ファイルのみをデプロイするため、fail2banがすでにインストールされている必要があります。そうでない場合、このロールは失敗します。

変数名 デフォルト値 説明
gitea_fail2ban_enabled false fail2ban構成をデプロイするかどうか
gitea_fail2ban_jail_maxretry 10 fail2banの刑務所設定maxretry
gitea_fail2ban_jail_findtime 3600 fail2banの刑務所設定findtime
gitea_fail2ban_jail_bantime 900 fail2banの刑務所設定bantime
gitea_fail2ban_jail_action iptables-allports fail2banの刑務所設定action

ローカルgiteaユーザー

変数 オプション 説明
gitea_users ローカルgiteaまたはforgejoユーザーを作成するための辞書
name ローカルgitea/forgejoユーザーの名前
password ローカルgitユーザーのパスワード
email ローカルgitユーザーのメール
admin ユーザーに管理者権限を付与
must_change_password ユーザーは最初のログイン後にパスワードを変更する必要があります
state ユーザーを削除するためにabsentに設定

オプションのカスタマイズ

このansibleロールを使用してgiteaをカスタマイズすることができます。カスタマイズに関する情報はdocs.gitea.io/en-us/customizing-giteaから得ました。複数のファイルをデプロイするために、gitea_custom_search変数を作成し、カスタムgiteaファイルを置くパスを指させます(デフォルトは"files/host_files/{{ inventory_hostname }}/gitea"です)。

  • ロゴ:
    • gitea_customize_logotrueに設定します。
    • 次のものを探します:
      • logo.svg - favicon、サイトアイコン、アプリアイコンに使用
      • logo.png - Open Graphに使用
      • favicon.png - SVG faviconをサポートしないブラウザのためのフォールバックとして使用
      • 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_footertrueに設定します。
    • 次の場所を探します(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_filestrueに設定します。
    • デプロイしたいファイルを含むディレクトリを作成します。
    • gitea_customize_files_pathをこのディレクトリに指します。(デフォルトは{{ gitea_custom_search }}/gitea_files/です)
  • カスタムテーマ:
    • gitea_custom_themesをカスタムテーマCSSファイルのURLのリストに設定します。通常は、1つのテーマにつき3つの個別ファイルが必要です。例:
      gitea_custom_themes:
        - https://example.com/theme-custom-auto.css
        - https://example.com/theme-custom-dark.css
        - https://example.com/theme-custom-light.css
      
    • gitea_themes変数を設定し、新しいテーマの名前を含めます。既存のものを保持するためには、すべてのテーマ名を渡す必要があります。例:auto,gitea,arc-green,<custom-auto>,<custom-light>,<custom-dark>

要件

このロールは、ansible.builtinおよびcommunity.generalansibleコレクションを使用しています。最新のforgejo/giteaリリースをダウンロードするためにjson_queryを使用します。これにはjmespathが利用可能である必要があります。

Pythonパッケージ

  • jmespath

Galaxyコレクション

  • community.general

例:要件のインストール

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コレクションの一部にもなっています。

プロジェクトについて

Ansible role to configure and deploy gitea and forgejo, a painless self-hosted Git service.

インストール
ansible-galaxy install l3d.gitea
ライセンス
bsd-3-clause
ダウンロード
151k
所有者
Ansible roles provide a framework for fully independent, or interdependent collections of variables,tasks,files,templates &modules. Here we maintain some. enjoy