リポジトリの追加

リポジトリページ、リポジトリの各フィールド、設定シードでの宣言

  1. リポジトリページ
  2. リポジトリを追加する
  3. リポジトリを変更できるユーザー
  4. 設定シードでリポジトリを宣言する

リポジトリページ

リポジトリは 設定 > 接続 > リポジトリ で管理します。このページには showSettings、または 7.3.0 以降は showConnectionsSettings ロールオプション が必要です。一部の変更は管理者しか行えません。 後述 を参照してください。

リポジトリ

一覧には 名前、 説明、 ブランチ、 HEAD (チェックアウトされているコミットの短縮ハッシュ)、 プル、 プッシュ が表示されます。リポジトリの 詳細 タブでも、HEAD の上に同じプルとプッシュのバッジが表示されます。

列 意味
プル 前回のクローン、プル、リセットの結果。git の処理中は 実行中、その後は 成功 または 失敗。初回までは「-」
プッシュ 前回のプッシュが失敗した場合は 失敗。ここで (デザイナーによって) 保存した変更がまだリモートにプッシュされていない場合は 保留中の変更。待機中のものがなければ 成功。初回のプッシュまでは「-」

プッシュ列の 成功 は、プッシュ待ちのものがないという意味にすぎません。リモートには、プルで取り込まれる新しいコミットがまだあるかもしれません。 各行のメニューには次の操作があります。

操作 内容
編集 下記のフィールドを変更します
プル リポジトリをクローンします。作業ツリーがすでにある場合はプルします
プッシュ 作業ツリーをコミットしてプッシュします。フォーム、設定、playbook、ワークフロー、インベントリに使用するリポジトリでのみ使え、まだプッシュしていない変更がある間だけ有効です
リセット 作業ツリーを削除して再度クローンします。ローカルの変更は破棄されます
資格情報を変更 リポジトリの 認証情報 タブを開き、git が使う認証情報を選びます
前回のプルの出力を表示 前回のクローン、プル、リセットの git の出力を、パスワードをマスクして表示します
前回のプッシュの出力を表示 前回のプッシュの git の出力を、パスワードをマスクして表示します
削除 レコードと REPO_PATH 配下の作業ツリーを削除します。管理者のみ実行できます

一覧の上にある すべてプル で、すべてのリポジトリを一度にプルします。

1 つのリポジトリで同時に実行される git 操作は 1 つだけです。2 つ目の操作は Repository '<name>' not found or already running, try again later で拒否されます。


リポジトリを追加する

リポジトリを追加 をクリックすると、ウィザードが 4 つのステップ ( リポジトリ、 認証情報、 用途、 プルの スケジュール ) でフィールドを尋ねます。保存するとすぐに、AnsibleForms がバックグラウンドでクローンを開始します。

リポジトリの編集

フィールド 必須 意味
名前 はい REPO_PATH 配下のフォルダー名。英字、数字、ハイフン、アンダースコア、ドットが使えます
ブランチ はい クローン、プル、プッシュするブランチ ( main など)。7.3.0 以降は必須です。省略できるのは設定シードのリポジトリだけで、その場合はリモートの既定のブランチがクローンされます
認証情報 いいえ git が使うユーザーとパスワードまたはトークンを持つ、 接続 > 認証情報 の認証情報。 認証情報を追加 で新しく作成できます
URI はい リモート。 https://... または SSH ( git@git.example.com:team/forms.git、 ssh://... )
定期プルを有効にする いいえ スケジュールに従ってリポジトリをプルします
プルのスケジュール いいえ プルするタイミングを cron 式で指定します。定期プルを有効にすると表示されます
説明 はい 自由記述の説明
設定に使用しますか? … インベントリに使用しますか? いいえ リポジトリが保持するもの。 前述 を参照してください
アプリ起動時にプル いいえ AnsibleForms の起動時に毎回リポジトリをクローンまたはプルします

リポジトリの名前を変更すると、作業ツリーが新しいフォルダーに移動し、プルのスケジュールも一緒に移ります。バージョン 7 より前のリポジトリで独自のユーザーを持っているものは、 認証情報 タブにその旨が表示されます。認証情報を選んで置き換えてください。


リポジトリを変更できるユーザー

リポジトリの内容は AnsibleForms が読み込んで実行するものになるため、7.3.0 以降、 admin ロールを持たないユーザーは次の操作ができなくなりました。

  • リポジトリの追加または削除
  • URI または ブランチ の変更
  • 〜に使用 フラグのオンとオフの切り替え

説明、プルのスケジュール、認証情報の変更や、プル、プッシュ、リセットは引き続き行えます。ランナー、 接続、サインインで使われている認証情報は選択できません。拒否された場合はその認証情報の名前が示されますが、中身については何も表示されません。


設定シードでリポジトリを宣言する

リポジトリは 設定シード でも宣言できます。こうしておくと、新しいインスタンスは初回起動時にそのリポジトリをクローンします。

repositories:
  items:
    - name: forms
      description: Forms and configuration
      uri: https://git.example.com/team/forms.git
      branch: main
      credential: git-bot
      use_for_forms: true
      use_for_config: true
      rebase_on_start: true
      cron: "*/15 * * * *"

フィールドはページのものと同じで、 credential (シードまたはアプリの認証情報)、 rebase_on_start ( アプリ起動時に プル )、 cron (プルのスケジュール) も含まれます。認証情報の代わりに user と password も引き続き使用できます。シードで 作成したリポジトリはインターフェイス上では読み取り専用で、作業ツリーがない場合は起動時に再度クローンされます。 管理対象オブジェクト を参照してください。