私はYAMLで定義されているすべての私の変数を持ってオフに開始するには、複数のレジスタを反復処理および方法におけるビルドの延長利用するAnsibleは、
あなたがapp_dir: "/mnt/{{ item.name }}"
と
app_dir_ext: "/mnt/{{ item.0.name }}"
が奇数見て気づくかもしれませんので、私はもともと私の変数を持っていた
app_dir: "/mnt/{{ item.name }}"
app_dir_ext: "/mnt/{{ item.0.name }}"
workstreams:
- name: tigers
service_workstream: tigers-svc
app_sub_dir:
- inbound
- inbound/incoming
- inbound/error
- inbound/error/processed
- name: lions
service_workstream: lions-svc
app_sub_dir:
- inbound
- inbound/incoming
- inbound/error
- inbound/error/processed
YAMLで以下のように設定しましたが、私は大量のワークストリームを持っているときにYAMLの行数が少ないために上記を使用することに決めました。
私は、それらを作成して、注意してください!(権限が適用されない場合は、ディレクトリが存在するかどうかを確認するためにAnsibleコードを持っているの数にfile:
モジュールを使用する際に伴う操作上のsshのタイムアウトにこのアプローチをとっている
workstreams:
- name: tigers
service_workstream: tigers-svc
app_dir: /mnt/tigers
...
非常に大きなNFSマウント共有)。
- name: Check workstreams app_dir
stat:
path: "{{ app_dir }}"
register: app_dir_status
with_items:
- "{{ workstreams }}"
- name: Check workstreams app_sub_dir
stat:
path: "{{ app_dir_ext }}/{{ item.1 }}/"
register: app_sub_dir_status
with_subelements:
- "{{ workstreams }}"
- app_sub_dir
- name: create workstreams app_dir
file:
path: "/mnt/{{ item.0.name }}"
state: directory
owner: "ftp"
group: "ftp"
mode: '0770'
recurse: yes
with_nested:
- '{{ workstreams }}'
- app_dir_status.results
when:
- '{{ item.1.stat.exists }} == false'
これは少しハックですが、私はここに
私の質問をcheck..etcする第二、第三、第四のパスを持っているが、作品はI、更新/ <register_name>.stat.exists == false
を使用するために上記のコードをリファクタリングする方法です私の仕事を制御するためにapp_dir_status
とapp_sub_dir_status
の両方から?