how about -
"{{ r.ansible_facts.ansible_distribution ~ ' ' ~
r.ansible_facts.ansible_distribution_version }}"On Wed, Feb 24, 2021 at 3:36 PM Kiran Kumar <[email protected]> wrote: > > Setup gives : > > "ansible_distribution": "Ubuntu", > "ansible_distribution_file_parsed": true, > "ansible_distribution_file_path": "/etc/os-release", > "ansible_distribution_file_variety": "Debian", > "ansible_distribution_major_version": "18", > "ansible_distribution_release": "bionic", > "ansible_distribution_version": "18.04", > > > > I would like to use OS name as > > Ubuntu20.04 & not Ubuntu 20.04.2 LTS > > So tried below .. as *value *.. all 3 failed .. any suggestions Please, > on how to concatenate ? > > ####################################### > > The offending line appears to be: > > - name: OS > value: "{{ r.ansible_facts.ansible_distribution }}" "{{ > r.ansible_facts.ansible_distribution_version }}" > ^ here > We could be wrong, but this one looks like it might be an issue with > missing quotes. Always quote template expression brackets when they > start a value. For instance: > > with_items: > - {{ foo }} > > Should be written as: > > with_items: > - "{{ foo }}" > ####################################### > The offending line appears to be: > > - name: OS > value: "{{ r.ansible_facts.ansible_distribution }}"+"{{ > r.ansible_facts.ansible_distribution_version }}" > ^ here > We could be wrong, but this one looks like it might be an issue with > missing quotes. Always quote template expression brackets when they > start a value. For instance: > > with_items: > - {{ foo }} > > Should be written as: > > with_items: > - "{{ foo }}" > > ####################################### > {"msg": "template error while templating string: expected token 'end of > print statement', got 'r'. String: {{ r.ansible_facts.ansible_distribution > r.ansible_facts.ansible_distribution_version }}"} > > ####################################### > > On Wed, Feb 24, 2021 at 12:24 AM Kiran Kumar <[email protected]> wrote: > >> Wow r.ansible_facts.ansible_lsb.description did worked !!! Thanks again >> Abhijit >> >> On Wed, Feb 24, 2021 at 12:17 AM Kiran Kumar <[email protected]> wrote: >> >>> Thanks Abhijit, Awesome , it worked !!!! >>> >>> Only issue is >>> >>> value: "{{ r.ansible_facts.ansible_distribution }}" >>> when: vm_info.instance.customvalues.OS != >>> r.ansible_facts.ansible_distribution >>> >>> that Just give Ubuntu ... is it possible to extract the info from setup >>> module ie below part.. >>> >>> >>> "ansible_lsb": { >>> "codename": "bionic", >>> * "description": "Ubuntu 18.04.5 LTS",* >>> "id": "Ubuntu", >>> "major_release": "18", >>> "release": "18.04" >>> }, >>> >>> >>> >>> >>> >>> Hopefully that is also present in CentOS nodes that way .. so the >>> description part ... >>> >>> r.ansible_facts.ansible_lsb.description ? will do .. >>> >>> >>> On Mon, Feb 22, 2021 at 10:49 PM [email protected] <[email protected]> >>> wrote: >>> >>>> Thanks a lot Abhijit .. i will give it a try & report issue if any. >>>> >>>> On Monday, February 22, 2021 at 9:30:23 PM UTC-8 Abhijeet Kasurde wrote: >>>> >>>>> You can do this using dynamic inventory and delegate_to >>>>> >>>>> Here is how - >>>>> >>>>> 1. Gather facts about virtual machines >>>>> 2. Gather facts about custom attributes using vmware_guest_info >>>>> 3. Compare and change if needed >>>>> >>>>> you can see this playbook >>>>> >>>>> --- >>>>> - hosts: running >>>>> tasks: >>>>> - setup: >>>>> register: r >>>>> >>>>> - debug: >>>>> msg: "{{ r.ansible_facts.ansible_distribution }}" >>>>> >>>>> - name: Get custom attributes information >>>>> vmware_guest_info: >>>>> name: CentOS7_Rest >>>>> datacenter: Asia-Datacenter1 >>>>> folder: /Asia-Datacenter1/vm/ >>>>> register: vm_info >>>>> delegate_to: localhost >>>>> >>>>> - debug: >>>>> msg: "{{ vm_info }}" >>>>> >>>>> - name: Update OS information >>>>> vmware_guest_custom_attributes: >>>>> name: CentOS7_Rest >>>>> datacenter: Asia-Datacenter1 >>>>> folder: /Asia-Datacenter1/vm/ >>>>> state: present >>>>> attributes: >>>>> - name: OS >>>>> value: "{{ r.ansible_facts.ansible_distribution }}" >>>>> when: vm_info.instance.customvalues.OS != >>>>> r.ansible_facts.ansible_distribution >>>>> delegate_to: localhost >>>>> >>>>> On Tue, Feb 23, 2021 at 4:12 AM [email protected] <[email protected]> >>>>> wrote: >>>>> >>>>>> I will give 1 more reason .. eg someone upgrade OS from 16.04 to >>>>>> 20.04 .. may forget to update the custom attributes... >>>>>> >>>>>> On Monday, February 22, 2021 at 2:41:08 PM UTC-8 [email protected] >>>>>> wrote: >>>>>> >>>>>>> Hi >>>>>>> >>>>>>> Here are my custom attributes >>>>>>> >>>>>>> >>>>>>> [image: Capture.JPG] >>>>>>> >>>>>>> >>>>>>> Today these are populated with >>>>>>> community.vmware.vmware_guest_custom_attributes >>>>>>> >>>>>>> >>>>>>> But that is manually from the file.. it has human error possible >>>>>>> >>>>>>> eg Ubuntu 20.04 folks may type Ubuntu20.4 >>>>>>> >>>>>>> >>>>>>> There is facts which ansible gather has the OS info.. eg -m setup -a >>>>>>> "filter=ansible_distribution_version" >>>>>>> >>>>>>> >>>>>>> Is it somehow possible to get the OS info populated "automatically" >>>>>>> with a playbook .. ie update the custom attributes dynamically with real >>>>>>> time data ? >>>>>>> >>>>>>> Any suggestions Please ? >>>>>>> >>>>>>> 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 [email protected]. >>>>>> To view this discussion on the web visit >>>>>> https://groups.google.com/d/msgid/ansible-project/6a28a2f4-92d4-4963-8a8d-0c79c64b87cbn%40googlegroups.com >>>>>> <https://groups.google.com/d/msgid/ansible-project/6a28a2f4-92d4-4963-8a8d-0c79c64b87cbn%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>> . >>>>>> >>>>> >>>>> >>>>> -- >>>>> Thanks, >>>>> Abhijeet Kasurde >>>>> >>>> -- >>>> 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/653118a7-176e-48c8-921b-f23830da9534n%40googlegroups.com >>>> <https://groups.google.com/d/msgid/ansible-project/653118a7-176e-48c8-921b-f23830da9534n%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/CAGhW9Js43VnoQRBUP2XH7%3DTU4JTZ%3DsQdrcXj_OYjv0_k14%3DQ-w%40mail.gmail.com > <https://groups.google.com/d/msgid/ansible-project/CAGhW9Js43VnoQRBUP2XH7%3DTU4JTZ%3DsQdrcXj_OYjv0_k14%3DQ-w%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > -- Thanks, Abhijeet Kasurde -- 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/CAFwWkHox3DtOeLda5dbJ5FwB4SSAb0W2rfkg9ypTqKHCG%3DCRgg%40mail.gmail.com.
