From 4bee251879b97c6d43a9eae9192bff3e2889fc4d Mon Sep 17 00:00:00 2001 From: Fabien Boucher Date: Jun 09 2021 10:35:21 +0000 Subject: [PATCH 1/2] rpm-install-rpm: exclude python warnings that polute stdout Some dnf command output are used as task input elsewhere. It seems stdout can be poluted by Python warning such as: 2021-06-09 09:32:53.272280 | TASK [repo-install-rpm : Check zuul-built has been setup] 2021-06-09 09:32:54.030351 | cloud-host | /usr/lib/python3.10/site-packages/dnf/const.py:22: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives 2021-06-09 09:32:54.030456 | cloud-host | import distutils.sysconfig 2021-06-09 09:32:54.036755 | cloud-host | /usr/lib/python3.10/site-packages/dnf/const.py:22: DeprecationWarning: The distutils.sysconfig module is deprecated, use sysconfig instead 2021-06-09 09:32:54.036786 | cloud-host | import distutils.sysconfig 2021-06-09 09:32:54.292712 | cloud-host | zuul-built zuul-built This patch set the PYTHONWARNINGS and var to related tasks. --- diff --git a/roles/repo-install-rpm/tasks/install_repo_packages.yaml b/roles/repo-install-rpm/tasks/install_repo_packages.yaml index f3f05d3..9bdb566 100644 --- a/roles/repo-install-rpm/tasks/install_repo_packages.yaml +++ b/roles/repo-install-rpm/tasks/install_repo_packages.yaml @@ -16,6 +16,8 @@ register: repoquery vars: exclude: '{% for x in install_repo_exclude|default([]) %}--exclude "{{ x }}" {% endfor %}' + environment: + PYTHONWARNINGS: ignore - name: Download packages locally get_url: diff --git a/roles/repo-install-rpm/tasks/main.yaml b/roles/repo-install-rpm/tasks/main.yaml index bfa584d..a25404e 100644 --- a/roles/repo-install-rpm/tasks/main.yaml +++ b/roles/repo-install-rpm/tasks/main.yaml @@ -19,6 +19,8 @@ shell: "dnf repolist | grep zuul-built" failed_when: false register: zuulbuilt_test + environment: + PYTHONWARNINGS: ignore - name: Install artifacts from zuul-built include_tasks: install_repo_packages.yaml From a2c03793008557343dc2c56d8ecc0fef7f48e3e2 Mon Sep 17 00:00:00 2001 From: Fabien Boucher Date: Jun 09 2021 10:35:21 +0000 Subject: [PATCH 2/2] repo-install-rpm: dnf - Force discard stderr from output Ansible make both stderr and stdout in a stdout vars. The Deprecations warning cause trouble so discard stderr. --- diff --git a/roles/repo-install-rpm/tasks/install_repo_packages.yaml b/roles/repo-install-rpm/tasks/install_repo_packages.yaml index 9bdb566..e4e0666 100644 --- a/roles/repo-install-rpm/tasks/install_repo_packages.yaml +++ b/roles/repo-install-rpm/tasks/install_repo_packages.yaml @@ -12,12 +12,10 @@ become: yes - name: Get changes generated packages on {{ repo_name }} - shell: dnf -q --repo {{ repo_name }} repoquery {{ exclude }} --location | egrep -v ".src.rpm$" + shell: dnf -q --repo {{ repo_name }} repoquery {{ exclude }} --location 2> /dev/null | egrep -v ".src.rpm$" register: repoquery vars: exclude: '{% for x in install_repo_exclude|default([]) %}--exclude "{{ x }}" {% endfor %}' - environment: - PYTHONWARNINGS: ignore - name: Download packages locally get_url: diff --git a/roles/repo-install-rpm/tasks/main.yaml b/roles/repo-install-rpm/tasks/main.yaml index a25404e..4b34b20 100644 --- a/roles/repo-install-rpm/tasks/main.yaml +++ b/roles/repo-install-rpm/tasks/main.yaml @@ -16,11 +16,9 @@ - item.change != zuul.change - name: Check zuul-built has been setup - shell: "dnf repolist | grep zuul-built" + shell: "dnf repolist 2> /dev/null | grep zuul-built" failed_when: false register: zuulbuilt_test - environment: - PYTHONWARNINGS: ignore - name: Install artifacts from zuul-built include_tasks: install_repo_packages.yaml