Initially, I set up the Ansible Playbook outside of using a role, a plays/, 
vars/, group_vars/, and collections/ directories.  Yes, the network and 
vc_locations were being passed 
in as extra_vars in Anbible Tower via  a Survey.  

As things have grown, I recently converted that work over to an Ansible 
role.  The conversion worked well and things run accordingly through 
Ansible Tower.  The site.yml is what
is used including the vars_files sans the second role.  Now I am working on 
including the second role for post-processing needs of the deployed vms. 

Yes, the vmware-windows role needs variables defined for the vcenter, 
vlans, etc.  Currently, I have multiple ymls built out holding the vars 
such as:
     vlan1.yml, vlan2.yml, etc.
     vcenter1.yml, vcenter2.yml, etc.  
Doing it like this, I can have a prompt in the Survey for the Admins to 
customize the deployment.  I think I am following you, I can move those yml 
files over to tasks/ in the first role. 

I did indent the second role, having to remove the hyphen from "name."  In 
doing so, I received two warning:

*"[WARNING]: While constructing a mapping from /tmp/bwrap_ ... 
/project/vmware-windows- role/provision.yml, line 3, column 3, found a 
duplicate dict key (name). Using last defined value only* 

# Windows would be the inventory for the second role

*[WARNING]: Could not match supplied host pattern, ignoring: windows*
Thanks!
On Thursday, November 10, 2022 at 8:26:41 AM UTC-7 walte...@nist.gov wrote:

> Does the vmware-windows role need the vars defined from the vars_files? If 
> so then the role itself should include them inside it's task file(s). Move 
> the vars_files inside tasks/main.yml. Anything the role does after that 
> will get the value of those vars definitions. 
>
> The vmware-windows role will see the values of network and vc_location 
> that come into the playbook executing the role. I presume they come in as 
> extra_vars from command line or ansible tower.
>
>
> Walter
> --
> Walter Rowe, Division Chief
> Infrastructure Services, OISM
> Mobile: 202.355.4123 <(202)%20355-4123>
>
> On Nov 10, 2022, at 9:54 AM, Christopher Bachmeyer <chris.b...@gmail.com> 
> wrote:
>
> Hi, Walter,  
>
> That is correct.  I am, the vmware-windows role is the first play and 
> creates the host_group "windows" to be used as inventory in the second 
> play. 
> Right now, the second role is not indented but let me give that a go this 
> morning.  I'm presuming to indent the entire block starting with the hyphen 
> ( - name: .... )? 
>
> Regarding the vars_files, use import statements in the vars/main.yml of 
> the first role?  I have multiple vars files under vars/ that are specific 
> to the vcenters 
> and vlans.  Using vars_files and variables in the Ansible Tower Survey 
> gives the Admins a way to customize the builds to the environment (which 
> works well!).
>
> Thank you! 
>
> On Thursday, November 10, 2022 at 5:23:04 AM UTC-7 walte...@nist.gov 
> wrote:
>
>> You need to make sure you use proper indentation. Your roles list needs 
>> to be indented two spaces like your vars_files. 
>>
>> Is it possible also that your sourcing of those the vars_files from 
>> within your role is overwriting the value of "windows" such that there is 
>> no inventory for the second play? Why do you source those vars files? The 
>> vmware-windows role will do that automatically. 
>>
>> - name: VMware-windows create role
>>   hosts: localhost           
>>   gather_facts: no
>>   roles:
>>     - vmware-windows
>>
>>
>> ### this vars_files should not be needed
>>
>>
>>   vars_files:
>>     - ./roles/vmware-windows/vars/{{ vc_location }}.yml
>>     - ./roles/vmware-windows/vars/{{ network }}.yml
>>
>>
>> - name: Windows-post role
>>   hosts: windows
>>   gather_facts: no
>>   roles:
>>     - windows-post
>>
>>
>>
>> I presume that your vmware-windows role in the first play creates the 
>> host group called "windows" that you use as the inventory in your second 
>> play?
>>
>> Walter
>> --
>> Walter Rowe, Division Chief
>> Infrastructure Services, OISM
>> Mobile: 202.355.4123 <(202)%20355-4123>
>>
>> On Nov 9, 2022, at 5:30 PM, Christopher Bachmeyer <chris.b...@gmail.com> 
>> wrote:
>>
>> Hey all,  
>>
>> I have two roles that are included in my site.yml and the goal is to 
>> execute the second role as soon as the first role completes.  I have added 
>> a task to generate a dynamic inventory in the first role that the second 
>> role can use.  I have a job Template in Ansible Tower and the first role 
>> executes cleanly but job Template completes without the second role 
>> executing.  
>>
>> What am I missing?
>>
>> - name: VMware-windows create role
>>   hosts: localhost           
>>   gather_facts: no
>>   roles:
>>   - vmware-windows
>>
>>   vars_files:
>>     - ./roles/vmware-windows/vars/{{ vc_location }}.yml
>>     - ./roles/vmware-windows/vars/{{ network }}.yml
>>
>> - name: Windows-post role
>>   hosts: windows
>>   gather_facts: no
>>   roles:
>>   - windows-post
>>
>> Thanks!
>>
>> -- 
>> 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 ansible-proje...@googlegroups.com.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/ansible-project/907f209c-2a3a-465e-95a3-ae82c8f27d0bn%40googlegroups.com
>>  
>> <https://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgroups.google.com%2Fd%2Fmsgid%2Fansible-project%2F907f209c-2a3a-465e-95a3-ae82c8f27d0bn%2540googlegroups.com%3Futm_medium%3Demail%26utm_source%3Dfooter&data=05%7C01%7Cwalter.rowe%40nist.gov%7C1b01356140424408fdae08dac32b73e0%7C2ab5d82fd8fa4797a93e054655c61dec%7C1%7C0%7C638036888634982696%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=U1qEShSYYOig1EjN%2B4PS46zxuZWIUgE3i2fpfXcpZQM%3D&reserved=0>
>> .
>>
>>
>>
> -- 
> 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 ansible-proje...@googlegroups.com.
>
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/ansible-project/37e14367-deed-4287-9a3a-f549975a7498n%40googlegroups.com
>  
> <https://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgroups.google.com%2Fd%2Fmsgid%2Fansible-project%2F37e14367-deed-4287-9a3a-f549975a7498n%2540googlegroups.com%3Futm_medium%3Demail%26utm_source%3Dfooter&data=05%7C01%7Cwalter.rowe%40nist.gov%7C1b01356140424408fdae08dac32b73e0%7C2ab5d82fd8fa4797a93e054655c61dec%7C1%7C0%7C638036888634982696%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=TxzPHEFfKruxvgbapzwvQxP6PD2Xx3Tg1w%2BA%2BQ7Asy0%3D&reserved=0>
> .
>
>
>

-- 
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 ansible-project+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/771d6e38-413b-486a-9da0-d89fa190e924n%40googlegroups.com.

Reply via email to