Basically i have a include_vars file that has all my configs, want
with_items to only pull back the required config.
example / include_vars:
---
small2019:
- config: "DC2019"
InstallMedia:
Source: "\\\\someshare\\"
SourceVHDX: "Virtual Hard Disks\\DC2019.vhdx"
Destination: "C:\\ISOs\\MDT\\DC2019\\"
large2019:
- config: "DC2019"
InstallMedia:
Source: "\\\\someshare\\"
SourceVHDX: "Virtual Hard Disks\\DC2019.vhdx"
Destination: "C:\\ISOs\\MDT\\DC2019\\"
On Tuesday, June 2, 2020 at 2:36:05 PM UTC-5, Adam McGill wrote:
>
> If i remove the single quotes, in the debug i see it pull the information
> correctly from the include_vars. If I use the same with_items: "{{
> vm_config }}" in the task i get this.
>
> "msg": "The task includes an option with an undefined variable. The error
> was: 'ansible.utils.unsafe_proxy.AnsibleUnsafeText object' has no attribute
> 'InstallMedia'\n\nThe error appears to be in
>
> On Tuesday, June 2, 2020 at 2:06:39 PM UTC-5, Stefan Hornburg (Racke)
> wrote:
>>
>> On 6/2/20 5:55 PM, Adam McGill wrote:
>> > I would like to take the value of the var and pass it into with_items
>> and I am running into an issue / error, how can i
>> > pass just the value into with_items. If i hardcode and put the value
>> with_items: {{ small2019 }} in there are no
>> > issues. Using include_vars / file which has the data, want to pass
>> value into with items to get results.
>>
>> Why did you wrap the variable in single quotes? This makes it a literal
>> string instead of the contents of the variable ...
>>
>> Regards
>> Racke
>>
>> >
>> > Result:
>> > ************************************
>> > - debug:
>> > var: "{{ 'vm_config' }}"
>> >
>> > okL [(servername)] => {
>> > "vm_config": "small2019"
>> > }
>> >
>> > Using with_items with value, errors
>> > ********************************************
>> > - name: Create VMs
>> > win_hyperv_guest:
>> > vmname: "{{ vm_name }}"
>> > hvhostname: "{{ hv_fullname }}"
>> > installmedia_source: "{{ item.InstallMedia.Source }}"
>> > installmedia_destination: "{{ item.InstallMedia.Destination }}"
>> > importvmoptions_path: "{{ item.ImportVMOptions.Path }}"
>> > importvmoptions_destination: "{{ item.ImportVMOptions.Destination
>> }}"
>> > systemosdisksize: "{{ item.SystemOSDiskSize | default (omit) }}"
>> > vmmemory: "{{ item.VMMemory }}"
>> > vmprocessor: "{{ item.VMProcessor }}"
>> > vmnetworkadaptervlan: "{{ item.VMNetworkAdapterVlan }}"
>> > vmnetworkadapter: "{{ item.VMNetworkAdapter | default (omit) }}"
>> > additionaldisks: "{{ item.AdditionalDisks | default (omit) }}"
>> > failoverclusteradd: "{{ item.FailoverClusterAdd | default (omit)
>> }}"
>> > removedvdrive: "{{ item.RemoveDVDrive | default (omit) }}"
>> > bootordergen2networklast: "{{ item.BootOrderGen2NetworkLast |
>> default (omit) }}"
>> > state: present
>> > with_items: "{{ 'vm_config' }}"
>> > register: new_vms
>> >
>> > Using with_items with hardcoded - works
>> > ********************************************
>> > - name: Create VMs
>> > win_hyperv_guest:
>> > vmname: "{{ vm_name }}"
>> > hvhostname: "{{ hv_fullname }}"
>> > installmedia_source: "{{ item.InstallMedia.Source }}"
>> > installmedia_destination: "{{ item.InstallMedia.Destination }}"
>> > importvmoptions_path: "{{ item.ImportVMOptions.Path }}"
>> > importvmoptions_destination: "{{ item.ImportVMOptions.Destination
>> }}"
>> > systemosdisksize: "{{ item.SystemOSDiskSize | default (omit) }}"
>> > vmmemory: "{{ item.VMMemory }}"
>> > vmprocessor: "{{ item.VMProcessor }}"
>> > vmnetworkadaptervlan: "{{ item.VMNetworkAdapterVlan }}"
>> > vmnetworkadapter: "{{ item.VMNetworkAdapter | default (omit) }}"
>> > additionaldisks: "{{ item.AdditionalDisks | default (omit) }}"
>> > failoverclusteradd: "{{ item.FailoverClusterAdd | default (omit)
>> }}"
>> > removedvdrive: "{{ item.RemoveDVDrive | default (omit) }}"
>> > bootordergen2networklast: "{{ item.BootOrderGen2NetworkLast |
>> default (omit) }}"
>> > state: present
>> > with_items: "{{ small2019 }}"
>> > register: new_vms
>> >
>> > --
>> > You received this message because you are subscribed to the Google
>> Groups "Ansible Project" group.
>> > To unsubscribe from this group and stop receiving emails from it, send
>> an email to
>> > [email protected] <mailto:
>> [email protected]>.
>> > To view this discussion on the web visit
>> >
>> https://groups.google.com/d/msgid/ansible-project/03761546-e9df-4a13-85f8-5a56331e8a53%40googlegroups.com
>>
>> > <
>> https://groups.google.com/d/msgid/ansible-project/03761546-e9df-4a13-85f8-5a56331e8a53%40googlegroups.com?utm_medium=email&utm_source=footer>.
>>
>>
>>
>>
>> --
>> Ecommerce and Linux consulting + Perl and web application programming.
>> Debian and Sympa administration. Provisioning with Ansible.
>>
>>
--
You received this message because you are subscribed to the Google Groups
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/ansible-project/1d6bc36e-a1f0-47f8-a146-b8b8f1c6cd91%40googlegroups.com.