はじめに
コレクションをインストールするには ansible-galaxy collection install コレクション名やアーカイブファイル名前
という書式が一番シンプルかなと思います。
複数のコレクションをいっぺんにインストールしたい場合は、]requirements.yml
というファイルに定義して -r
オプションで指定する](https://docs.ansible.com/ansible/latest/user_guide/collections_using.html#install-multiple-collections-with-a-requirements-file)方法もあります。
ですが、ファイルに書くほどでもないけど、いますぐ、手っ取り早く複数のコレクションを指定するには、
ansible-galaxy collection install コレクション1 コレクション2 コレクション3
のような指定の仕方もできます。
- 環境
- ansible-core 2.12.
おためし
ansible.utils
と netbox.netbox
という2つのコレクションを一度にインストールしてみます。
$ ansible-galaxy collection install ansible.utils netbox.netbox Starting galaxy collection install process Process install dependency map Starting collection install process Downloading https://galaxy.ansible.com/download/ansible-utils-2.6.1.tar.gz to /Users/sakana/.ansible/tmp/ansible-local-34764sxzv2emb/tmp850gohw3/ansible-utils-2.6.1-bf75vsy5 Installing 'ansible.utils:2.6.1' to '/Users/sakana/.ansible/collections/ansible_collections/ansible/utils' Downloading https://galaxy.ansible.com/download/netbox-netbox-3.7.1.tar.gz to /Users/sakana/.ansible/tmp/ansible-local-34764sxzv2emb/tmp850gohw3/netbox-netbox-3.7.1-15y3wkfb ansible.utils:2.6.1 was installed successfully Installing 'netbox.netbox:3.7.1' to '/Users/sakana/.ansible/collections/ansible_collections/netbox/netbox' netbox.netbox:3.7.1 was installed successfully
以下の通り無事にインストールできました。
$ ansible-galaxy collection list # /Users/sakana/.ansible/collections/ansible_collections Collection Version ------------- ------- ansible.utils 2.6.1 netbox.netbox 3.7.1
補足
コマンドのヘルプを見ると The collection(s) name
とあります。
$ ansible-galaxy collection install -h usage: ansible-galaxy collection install [-h] [-s API_SERVER] [--token API_KEY] [-c] [-v] [-f] [--clear-response-cache] [--no-cache] [-i] [-n | --force-with-deps] [-p COLLECTIONS_PATH] [-r REQUIREMENTS] [--pre] [-U] [collection_name ...] positional arguments: collection_name The collection(s) name or path/url to a tar.gz collection artifact. This is mutually exclusive with --requirements-file. ...(略)...
おまけ
実はというわけでもないですが、複数指定できるものといえば ansible-playbook
コマンドも Playbook を複数指定できます。