6.2. コレクションの作成

Ansible Galaxy CLI ツールを使用して、独自のコレクションをローカルで作成できます。コレクション固有のコマンドはすべて、collection サブコマンドを使用してアクティベートできます。

前提条件

  • 開発環境に Ansible バージョン 2.9 以降がインストールされている。

手順

  1. 端末で、名前空間の root ディレクトリーの場所に移動します。分かりやすくするため、これは COLLECTIONS_PATH のパスにすることが推奨されますが、必須ではありません。
  2. 以下のコマンドを実行して、my_namespacemy_collection_name を選択した値に置き換えます。

    $ ansible-galaxy collection init <my_namespace>.<my_collection_name>
    注記

    galaxy.ansible.com または cloud.redhat.com/ansible/automation-hub の My Content タブの下で、名前空間にアップロードする適切なパーミッションがあることを確認してください。

上記のコマンドは、上記の名前空間引数から名前が付けられたディレクトリーが存在しない場合は作成し、そのディレクトリーに Collection 名を指定してディレクトリーを作成します。そのディレクトリー内では、デフォルトまたはスケルトン Collection になります。ここでは、ロールまたはプラグインを追加し、独自の Collection 開発に取り掛かることができます。

実行環境に関連して、コレクション開発者は Ansible Builder で適切なメタデータを提供することで、コンテンツの要件を宣言できます。

Collection からの要件は、以下の方法で認識できます。

  • meta/execution-environment.yml ファイルが Python または bindep 要件ファイル、もしくはその両方を参照します。
  • Python の依存関係に関する情報を含む requirements.txt という名前のファイルは、Collection のルートディレクトリーにある場合があります。
  • システムレベルの依存関係を含む bindep.txt という名前のファイルは、Collection のルートレベルに存在する場合があります。
  • これらのファイルのいずれかが Collection の build_ignore にある場合、このセクションはビルドアーティファクトに含めるべきではないファイルまたはディレクトリーにフィルターを設定するために使用されるため、Ansible Builder はこれらを取得しません。

コレクションメンテナーは、introspect コマンドを使用して、ansible-builder が想定する要件を認識していることを確認できます。

$ ansible-builder introspect --sanitize ~/.ansible/collections/

関連情報

  • コレクションの作成の詳細については、Ansible で コレクションの作成 を参照してください。Developer Guide をクリックします。