great, that works as it should, thank you! > On 06/06/2023 4:23 PM CEST 'Hearn, Stan J.' via Ansible Project > <[email protected]> wrote: > > > > You can use package facts. > > > > - name: Gather the rpm package_facts > > package_facts: > > manager: auto > > > > - name: do something if package not installed > > debug: > > msg: 'hey package is not installed' > > when: "''MyPackage'' not in ansible_facts.packages" > > > > - name: do something if package is installed > > debug: > > msg: 'Hey package is installed' > > when: "''MyPackage'' in ansible_facts.packages" > > > > > > -----Original Message----- > From: dulhaver via Ansible Project <[email protected]> > Sent: Tuesday, June 6, 2023 10:18 AM > To: [email protected] > Subject: [EXTERNAL] [ansible-project] creating a csv for a package existing > or not existing on remotes > > > > I want to check whether a certain package is installed on a coupld of servers > and create a csv-file from it > > > > sub1-rd1533.agrar.portal.local, python3-psycopg2 is missing > > sub1-rd5194.prod.eakte.rz-abc.local, python3-psycopg2 exists > > vm-414001-0251.step.zrz.abc.local, python3-psycopg2 exists > > > > I though of using 'rpm -q <package_name>' and based on it's return code 0 or > 1 print the corresponding message into my csv. > > > > However the rpm -q <package_name> tasks simply fails on targets who do not > have the package installed rather then registering the rc 1 and making it > avaiable further down the playbook. > > > > So I guess I am following the wrong approach. Can anybody kindly push be into > the right direction? > > > > > > > > ==== THE Playbook ================================================= > > > > - name: check wheter packages exist > > hosts: "{{ targets | default ('postgres') }}" > > vars: > > package_names: > > - python3-psycopg2 > > tasks: > > - name: "Check if listed package is installed or not" > > command: rpm -q "{{ item }}" > > loop: "{{ package_names }}" > > register: package_check > > > > - name: "Print success" > > debug: > > msg: "{{ package_names }} is installed" > > when: package_check is succeeded > > > > - name: "Print failure" > > debug: > > msg: "{{ package_names }} is not installed" > > when: package_check is failed > > ====================================================================== > > > > > > ==== the output ====================================================== > > > > [me@sub1-rd1985 ad_hoc_playbooks]$ play get_package.yml -l @temp/limit > > > > PLAY [check wheter packages exist] > ************************************************************************************************************************************************************* > > > > TASK [Gathering Facts] > ************************************************************************************************************************************************************************* > > ok: [sub1-rd1533.agrar.portal.local] > > ok: [sub1-rd5194.prod.eakte.rz-abc.local] > > ok: [vm-414001-0251.step.zrz.abc.local] > > > > TASK [Check if listed package is installed or not] > ********************************************************************************************************************************************* > > changed: [sub1-rd5194.prod.eakte.rz-abc.local] => (item=python3-psycopg2) > > failed: [sub1-rd1533.agrar.portal.local] (item=python3-psycopg2) => > {"ansible_loop_var": "item", "changed": true, "cmd": ["rpm", "-q", > "python3-psycopg2"], "delta": "0:00:00.031946", "end": "2023-06-06 > 16:05:12.622331", "item": "python3-psycopg2", "msg": "non-zero return code", > "rc": 1, "start": "2023-06-06 16:05:12.590385", "stderr": "", "stderr_lines": > [], "stdout": "package python3-psycopg2 is not installed", "stdout_lines": > ["package python3-psycopg2 is not installed"]} > > changed: [vm-414001-0251.step.zrz.abc.local] => (item=python3-psycopg2) > > > > TASK [Print success] > *************************************************************************************************************************************************************************** > > ok: [sub1-rd5194.prod.eakte.rz-abc.local] => { > > "msg": "['python3-psycopg2'] is installed" > > } > > ok: [vm-414001-0251.step.zrz.abc.local] => { > > "msg": "['python3-psycopg2'] is installed" > > } > > > > TASK [Print failure] > *************************************************************************************************************************************************************************** > > skipping: [sub1-rd5194.prod.eakte.rz-abc.local] > > skipping: [vm-414001-0251.step.zrz.abc.local] > > > > PLAY RECAP > ************************************************************************************************************************************************************************************* > > sub1-rd1533.agrar.portal.local :ok=1 changed=0 unreachable=0failed=1 > skipped=0 rescued=0 ignored=0 > > sub1-rd5194.prod.eakte.rz-abc.local :ok=3changed=1 unreachable=0 > failed=0skipped=1 rescued=0 ignored=0 > > vm-414001-0251.step.zrz.abc.local :ok=3changed=1 unreachable=0 > failed=0skipped=1 rescued=0 ignored=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 [email protected] > mailto:[email protected]. > > To view this discussion on the web visit > https://urldefense.com/v3/__https://groups.google.com/d/msgid/ansible-project/382504686.709476.1686061067008*40office.mailbox.org__;JQ!!Fto3Xw!tNskoVOu0CM9Khjn0WESCZQM9PqeutSnAW9PH2KIdIuGDL83qjjh7sQWjbUydtawNGL-XxIZ8YkZbpnmH66tgjkwnzDDiLk$ > > https://urldefense.com/v3/__https:/groups.google.com/d/msgid/ansible-project/382504686.709476.1686061067008*40office.mailbox.org__;JQ!!Fto3Xw!tNskoVOu0CM9Khjn0WESCZQM9PqeutSnAW9PH2KIdIuGDL83qjjh7sQWjbUydtawNGL-XxIZ8YkZbpnmH66tgjkwnzDDiLk$ > . > > > > -- > 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/PH0PR10MB559314C85CD8C05F6524341EF052A%40PH0PR10MB5593.namprd10.prod.outlook.com > > https://groups.google.com/d/msgid/ansible-project/PH0PR10MB559314C85CD8C05F6524341EF052A%40PH0PR10MB5593.namprd10.prod.outlook.com?utm_medium=email&utm_source=footer. > ---
gunnar wagner | fichtestr. 1, 19386 lübz | fon: 0176 7808 9090 -- 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/621382254.712631.1686062616363%40office.mailbox.org.
