Than you all. I'll make note of your suggestions. I solved my issue like 
this (whether it's "optimal, I don;t know):




*  vars:    vcenter_datacenter: >-      {% if vcenter_hostname == 
'vcenter1' %}        * *Datacenter1 *

*Datacenter      {% elif vcenter_hostname == 'vcenter2' %}        * 
*Datacenter2* 


*Datacenter      {% else %}        Default Datacenter      {% endif %}*

On Tuesday, May 14, 2024 at 5:34:29 AM UTC-4 Rowe, Walter P. (Fed) wrote:

> A dictionary would solve this using the guest name as the key. 
>
> vcenter:
>   host1: { datacenter: datacenter1, vcenter: vcenter2 }
>   host2: { datacenter: datacenter1, vcenter: vcenter1 }
>   host3: { datacenter: datacenter2, vcenter: vcenter2 }
>   host4: { datacenter: datacenter2, vcenter: vcenter1 }
>
> {{ vcenter[inventory_hostname].datacenter }}
> {{ vcenter[inventory_hostname].vcenter }}
>
> Keeping that dictionary update to date will be tedious but could be 
> automated too. Query each vcenter / datacenter pair for its list of VMs and 
> generate a vars file with the above dictionary. Include that vars file in 
> your playbooks. Alternatively (and more expensive) is to create an initial 
> task that queries the each vcenter / datacenter pair and creates this 
> dictionary in real time.
>
> Walter
> --
> Walter Rowe, Division Chief
> Infrastructure Services Division
> Mobile: 202.355.4123 <(202)%20355-4123> 
>
> On May 8, 2024, at 12:34 PM, Dimitri Yioulos <[email protected]> wrote:
>
> Hello, all. 
>
> The subject of this post is probably terribly named. That said, here's 
> what I'm trying to accomplish:
>
> I have two VMware vCenter hosts - vcenter1.mycompany.com and 
> vcenter2.mycompany.com. Within each host is are two datacenters - 
> datacenter1 and datacenter2. for each host, the datacenter alignments are 
> vcenter1 -- datacenter1 and vcenter2 -- datacenter2.
>
> I have a number of playbooks that do actions against vCenter. For example, 
> I have one deletes all snapshots. It looks like this:
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> *--- - hosts: all   become: false   gather_facts: false   vars_prompt:     
> - name: "vcenter_username"       prompt: "Enter your Vcenter username 
> (without @vsphere.local)"       private: no     - name: "vcenter_password" 
>       prompt: "Enter your VMware password"       private: yes     - name: 
> "vcenter_hostname"       prompt: "Enter your Vcenter host 
> name:\nvcenter1\nvcenter2\n"       private: no     - name: 
> "vcenter_datacenter"       prompt: "Enter your Vcenter 
> datacenter:\ndatacenter1\ndatacenter2\n"       private: no   tasks:     - 
> name: Find vm folder name       ~     - name: Remove all snapshots of all 
> VMs       community.vmware.vmware_guest_snapshot:         hostname: "{{ 
> vcenter_hostname }}.fmycompany.com <http://fmycompany.com>"         
> username: "{{ vcenter_username }}@vsphere.local"         password: "{{ 
> vcenter_password }}"         datacenter: "{{ vcenter_datacenter }} 
> Datacenter"         folder: "{{ vm_folder.folders | 
> regex_replace(\"([\\[\\]'])\",'') }}"         name: "{{ inventory_hostname 
> }}"         state: remove_all         validate_certs: False       
> delegate_to: localhost*
>
> As you can see, at present, I have to provide the vCenter name, and the 
> corresponding datacenter name in order for the playbook to work. I would 
> like to eliminate the need to specify the datacenter name, and have that 
> populate datacenter ("{{ vcenter_datacenter }} Datacenter") based on the 
> vCenter host that I choose (hostname: "{{ vcenter_hostname }}.
> fmycompany.com"). I'm not clever enough to suss that out, and would 
> appreciate your help.
>
> -- 
> 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/424d790e-e657-405b-b720-8ce0448df4f4n%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/ansible-project/424d790e-e657-405b-b720-8ce0448df4f4n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
>
>

-- 
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/59368883-6996-488f-8973-b9e4eb299d59n%40googlegroups.com.

Reply via email to