Java JDKをインストールしていることがよくあります。ロールを使用すると、そのタッチが簡単になります。私はいくつかの異なる方法を試しました(多くの.gitmodulesとサブモジュールを含みます...作業のために複数のgitシステムを使用する必要があり、すべてが醜くなります)。私の最大の要件は、プレイブックプロジェクトに役割コードをチェックインしないことです。ほとんどの場合、すべてを1か所にまとめることができます。
私の 'requirements.yml'ファイルの内容:
- src: https://github.com/staylorx/ansible-role-wls-prep.git
version: master
name: staylorx.wls-prep
- src: https://my-work-git-extravaganza.com
version: 2.x
name: coolplace.niftyrole
#From Ansible Galaxy
- src: staylorx.oracle-jdk
別のプレイブックinstall-roles.ymlを実行します。
---
- hosts: localhost
tasks:
- file:
path: roles
state: absent
- local_action:
command ansible-galaxy install -r requirements.yml --roles-path roles
- lineinfile:
dest: .gitignore
regexp: '^\/roles$'
line: '/roles'
state: present
この最初のプレイブックを実行してから、通常どおり、どのプレイブックでも自分の役割を実行します。私にとっての秘密は、それがgitによって無視されるようにすることです。そのため、誤って役割をチェックインしません。また、毎回フォルダーを一掃するので、エラーを強制したり無視したりする必要がないようにしています。