teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2020/10/02 01:47

投稿

ngyuki
ngyuki

スコア4516

answer CHANGED
@@ -29,4 +29,45 @@
29
29
  # 確認用
30
30
  - debug:
31
31
  var: res.results | map(attribute='ansible_facts') | list
32
+ ```
33
+
34
+ ---
35
+
36
+ ループの中身を別ファイルにして set_fact で vm_disk を作るほうがまだは判りやすいかもしれません・・
37
+
38
+ ```yaml
39
+ # main.yaml
40
+
41
+ - include: deploy.yaml
42
+ with_items: "{{ vms }}"
43
+ ```
44
+
45
+ ```yaml
46
+ # deploy.yaml
47
+
48
+ - set_fact:
49
+ vm_disk:
50
+ disk1:
51
+ size_gd: "{{ item.disk1_disksize }}"
52
+ type: thin
53
+ datastore: "{{ item.disk1_datastore_name }}"
54
+
55
+ - set_fact:
56
+ vm_disk:
57
+ disk1: "{{ vm_disk.disk1 }}"
58
+ disk2:
59
+ size_gd: "{{ item.disk2_disksize }}"
60
+ type: thin
61
+ datastore: "{{ item.disk2_datastore_name }}"
62
+ when: item.disk2_disksize is defined
63
+
64
+ - name: Deploy guest VMs
65
+ set_fact:
66
+ vsphere_guest:
67
+ vcenter_hostname: "{{ esx_ipaddr }}"
68
+ vm_disk: "{{ vm_disk }}"
69
+
70
+ # 確認用
71
+ - debug:
72
+ var: vsphere_guest
32
73
  ```