From 69b034b263d428f5aeec422c4c2a86b940d049e1 Mon Sep 17 00:00:00 2001 From: Sergey Date: Mon, 3 Aug 2020 14:49:55 +0300 Subject: [PATCH] Fix yaml python dep in root tests (#96) Use different python interpretators for root and rootless tests, as it's a problem in Ubuntu 18. --- .github/workflows/podman_container.yml | 8 +++-- .github/workflows/podman_container_idem.yml | 32 +++++++++++++------ .github/workflows/podman_container_info.yml | 8 +++-- .github/workflows/podman_image.yml | 8 +++-- .github/workflows/podman_image_info.yml | 8 +++-- .github/workflows/podman_network_info.yml | 8 +++-- .github/workflows/podman_pod.yml | 8 +++-- .github/workflows/podman_pod_info.yml | 8 +++-- .github/workflows/podman_volume.yml | 8 +++-- .github/workflows/podman_volume_info.yml | 8 +++-- ci/playbooks/containers/podman_container.yml | 1 + .../podman_container_idempotency.yml | 1 + .../containers/podman_container_info.yml | 2 ++ ci/playbooks/containers/podman_image.yml | 2 ++ ci/playbooks/containers/podman_image_info.yml | 2 ++ .../containers/podman_network_info.yml | 2 ++ ci/playbooks/containers/podman_pod.yml | 1 + ci/playbooks/containers/podman_pod_info.yml | 2 ++ ci/playbooks/containers/podman_volume.yml | 2 ++ .../containers/podman_volume_info.yml | 2 ++ ci/run_containers_tests.sh | 2 +- .../tasks/main.yml | 4 +++ .../targets/podman_pod/tasks/main.yml | 4 +++ 23 files changed, 102 insertions(+), 29 deletions(-) diff --git a/.github/workflows/podman_container.yml b/.github/workflows/podman_container.yml index f7429a4..0e28c62 100644 --- a/.github/workflows/podman_container.yml +++ b/.github/workflows/podman_container.yml @@ -5,7 +5,8 @@ on: paths: - '.github/workflows/podman_container.yml' - 'ci/*.yml' - - 'ci/containers/podman_container.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_container.yml' - 'plugins/modules/podman_container.py' - 'plugins/modules/podman_container_info.py' - 'tests/integration/targets/podman_container/**' @@ -15,7 +16,8 @@ on: paths: - '.github/workflows/podman_container.yml' - 'ci/*.yml' - - 'ci/containers/podman_container.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_container.yml' - 'plugins/modules/podman_container.py' - 'plugins/modules/podman_container_info.py' - 'tests/integration/targets/podman_container/**' @@ -56,6 +58,8 @@ jobs: - name: Upgrade pip and display Python and PIP versions run: | + sudo apt-get update + sudo apt-get install -y python*-wheel python*-yaml python -m pip install --upgrade pip python -V pip --version diff --git a/.github/workflows/podman_container_idem.yml b/.github/workflows/podman_container_idem.yml index 043a9bd..614bdfa 100644 --- a/.github/workflows/podman_container_idem.yml +++ b/.github/workflows/podman_container_idem.yml @@ -3,22 +3,22 @@ name: Idempotency on: push: paths: - - '.github/workflows/podman_container.yml' + - '.github/workflows/podman_container_idem.yml' - 'ci/*.yml' - - 'ci/containers/podman_container.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_container_idempotency.yml' - 'plugins/modules/podman_container.py' - - 'plugins/modules/podman_container_info.py' - - 'tests/integration/targets/podman_container/**' + - 'tests/integration/targets/podman_container_idempotency/**' branches: - master pull_request: paths: - - '.github/workflows/podman_container.yml' + - '.github/workflows/podman_container_idem.yml' - 'ci/*.yml' - - 'ci/containers/podman_container.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_container_idempotency.yml' - 'plugins/modules/podman_container.py' - - 'plugins/modules/podman_container_info.py' - - 'tests/integration/targets/podman_container/**' + - 'tests/integration/targets/podman_container_idempotency/**' schedule: - cron: 4 0 * * * # Run daily at 0:03 UTC @@ -56,6 +56,8 @@ jobs: - name: Upgrade pip and display Python and PIP versions run: | + sudo apt-get update + sudo apt-get install -y python*-wheel python*-yaml python -m pip install --upgrade pip python -V pip --version @@ -70,7 +72,8 @@ jobs: ${{ runner.os }}- - name: Install Ansible ${{ matrix.ansible-version }} - run: python3 -m pip install --user --force-reinstall --upgrade '${{ matrix.ansible-version }}' + run: | + python3 -m pip install --user --force-reinstall --upgrade '${{ matrix.ansible-version }}' - name: Build and install the collection tarball run: | @@ -78,7 +81,7 @@ jobs: ~/.local/bin/ansible-galaxy collection build --output-path /tmp/just_new_collection --force ~/.local/bin/ansible-galaxy collection install -vvv --force /tmp/just_new_collection/*.tar.gz - - name: Run idempotency tests for podman container + - name: Run preparing tests for podman container run: | export PATH=~/.local/bin:$PATH @@ -103,6 +106,15 @@ jobs: -i localhost, \ -e ansible_connection=local \ -e setup_python=false + shell: bash + - name: Run idempotency tests for podman container + run: | + export PATH=~/.local/bin:$PATH + if [[ '${{ matrix.ansible-version }}' == 'git+https://github.com/ansible/ansible.git@devel' ]]; then + export ANSIBLE_CONFIG=$(pwd)/ci/ansible-dev.cfg + elif [[ '${{ matrix.ansible-version }}' == 'ansible<2.10' ]]; then + export ANSIBLE_CONFIG=$(pwd)/ci/ansible-2.9.cfg + fi TEST2RUN=podman_container_idempotency ./ci/run_containers_tests.sh shell: bash diff --git a/.github/workflows/podman_container_info.yml b/.github/workflows/podman_container_info.yml index eab6cbc..eab3c6b 100644 --- a/.github/workflows/podman_container_info.yml +++ b/.github/workflows/podman_container_info.yml @@ -5,7 +5,8 @@ on: paths: - '.github/workflows/podman_container_info.yml' - 'ci/*.yml' - - 'ci/containers/podman_container_info.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_container_info.yml' - 'plugins/modules/podman_container.py' - 'plugins/modules/podman_container_info.py' - 'tests/integration/targets/podman_container_info/**' @@ -15,7 +16,8 @@ on: paths: - '.github/workflows/podman_container_info.yml' - 'ci/*.yml' - - 'ci/containers/podman_container_info.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_container_info.yml' - 'plugins/modules/podman_container.py' - 'plugins/modules/podman_container_info.py' - 'tests/integration/targets/podman_container_info/**' @@ -56,6 +58,8 @@ jobs: - name: Upgrade pip and display Python and PIP versions run: | + sudo apt-get update + sudo apt-get install -y python*-wheel python*-yaml python -m pip install --upgrade pip python -V pip --version diff --git a/.github/workflows/podman_image.yml b/.github/workflows/podman_image.yml index f46cbf0..7300ff1 100644 --- a/.github/workflows/podman_image.yml +++ b/.github/workflows/podman_image.yml @@ -5,7 +5,8 @@ on: paths: - '.github/workflows/podman_image.yml' - 'ci/*.yml' - - 'ci/containers/podman_image.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_image.yml' - 'plugins/modules/podman_image.py' - 'plugins/modules/podman_image_info.py' - 'tests/integration/targets/podman_image/**' @@ -15,7 +16,8 @@ on: paths: - '.github/workflows/podman_image.yml' - 'ci/*.yml' - - 'ci/containers/podman_image.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_image.yml' - 'plugins/modules/podman_image.py' - 'plugins/modules/podman_image_info.py' - 'tests/integration/targets/podman_image/**' @@ -56,6 +58,8 @@ jobs: - name: Upgrade pip and display Python and PIP versions run: | + sudo apt-get update + sudo apt-get install -y python*-wheel python*-yaml python -m pip install --upgrade pip python -V pip --version diff --git a/.github/workflows/podman_image_info.yml b/.github/workflows/podman_image_info.yml index 794280f..e900b18 100644 --- a/.github/workflows/podman_image_info.yml +++ b/.github/workflows/podman_image_info.yml @@ -5,7 +5,8 @@ on: paths: - '.github/workflows/podman_image_info.yml' - 'ci/*.yml' - - 'ci/containers/podman_image_info.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_image_info.yml' - 'plugins/modules/podman_image.py' - 'plugins/modules/podman_image_info.py' - 'tests/integration/targets/podman_image_info/**' @@ -15,7 +16,8 @@ on: paths: - '.github/workflows/podman_image_info.yml' - 'ci/*.yml' - - 'ci/containers/podman_image_info.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_image_info.yml' - 'plugins/modules/podman_image.py' - 'plugins/modules/podman_image_info.py' - 'tests/integration/targets/podman_image_info/**' @@ -56,6 +58,8 @@ jobs: - name: Upgrade pip and display Python and PIP versions run: | + sudo apt-get update + sudo apt-get install -y python*-wheel python*-yaml python -m pip install --upgrade pip python -V pip --version diff --git a/.github/workflows/podman_network_info.yml b/.github/workflows/podman_network_info.yml index 2ead3ba..a673d30 100644 --- a/.github/workflows/podman_network_info.yml +++ b/.github/workflows/podman_network_info.yml @@ -5,7 +5,8 @@ on: paths: - '.github/workflows/podman_network_info.yml' - 'ci/*.yml' - - 'ci/containers/podman_network_info.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_network_info.yml' - 'plugins/modules/podman_network_info.py' - 'tests/integration/targets/podman_network_info/**' branches: @@ -14,7 +15,8 @@ on: paths: - '.github/workflows/podman_network_info.yml' - 'ci/*.yml' - - 'ci/containers/podman_network_info.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_network_info.yml' - 'plugins/modules/podman_network_info.py' - 'tests/integration/targets/podman_network_info/**' schedule: @@ -54,6 +56,8 @@ jobs: - name: Upgrade pip and display Python and PIP versions run: | + sudo apt-get update + sudo apt-get install -y python*-wheel python*-yaml python -m pip install --upgrade pip python -V pip --version diff --git a/.github/workflows/podman_pod.yml b/.github/workflows/podman_pod.yml index dea888c..575d78b 100644 --- a/.github/workflows/podman_pod.yml +++ b/.github/workflows/podman_pod.yml @@ -5,7 +5,8 @@ on: paths: - '.github/workflows/podman_pod.yml' - 'ci/*.yml' - - 'ci/containers/podman_pod.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_pod.yml' - 'plugins/modules/podman_pod.py' - 'plugins/modules/podman_pod_info.py' - 'tests/integration/targets/podman_pod/**' @@ -15,7 +16,8 @@ on: paths: - '.github/workflows/podman_pod.yml' - 'ci/*.yml' - - 'ci/containers/podman_pod.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_pod.yml' - 'plugins/modules/podman_pod.py' - 'plugins/modules/podman_pod_info.py' - 'tests/integration/targets/podman_pod/**' @@ -56,6 +58,8 @@ jobs: - name: Upgrade pip and display Python and PIP versions run: | + sudo apt-get update + sudo apt-get install -y python*-wheel python*-yaml python -m pip install --upgrade pip python -V pip --version diff --git a/.github/workflows/podman_pod_info.yml b/.github/workflows/podman_pod_info.yml index b23b475..595e4fb 100644 --- a/.github/workflows/podman_pod_info.yml +++ b/.github/workflows/podman_pod_info.yml @@ -5,7 +5,8 @@ on: paths: - '.github/workflows/podman_pod_info.yml' - 'ci/*.yml' - - 'ci/containers/podman_pod_info.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_pod_info.yml' - 'plugins/modules/podman_pod.py' - 'plugins/modules/podman_pod_info.py' - 'tests/integration/targets/podman_pod_info/**' @@ -15,7 +16,8 @@ on: paths: - '.github/workflows/podman_pod_info.yml' - 'ci/*.yml' - - 'ci/containers/podman_pod_info.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_pod_info.yml' - 'plugins/modules/podman_pod.py' - 'plugins/modules/podman_pod_info.py' - 'tests/integration/targets/podman_pod_info/**' @@ -56,6 +58,8 @@ jobs: - name: Upgrade pip and display Python and PIP versions run: | + sudo apt-get update + sudo apt-get install -y python*-wheel python*-yaml python -m pip install --upgrade pip python -V pip --version diff --git a/.github/workflows/podman_volume.yml b/.github/workflows/podman_volume.yml index 36187c9..16302e2 100644 --- a/.github/workflows/podman_volume.yml +++ b/.github/workflows/podman_volume.yml @@ -5,7 +5,8 @@ on: paths: - '.github/workflows/podman_volume.yml' - 'ci/*.yml' - - 'ci/containers/podman_volume.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_volume.yml' - 'plugins/modules/podman_volume.py' - 'tests/integration/targets/podman_volume/**' branches: @@ -14,7 +15,8 @@ on: paths: - '.github/workflows/podman_volume.yml' - 'ci/*.yml' - - 'ci/containers/podman_volume.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_volume.yml' - 'plugins/modules/podman_volume.py' - 'tests/integration/targets/podman_volume/**' schedule: @@ -54,6 +56,8 @@ jobs: - name: Upgrade pip and display Python and PIP versions run: | + sudo apt-get update + sudo apt-get install -y python*-wheel python*-yaml python -m pip install --upgrade pip python -V pip --version diff --git a/.github/workflows/podman_volume_info.yml b/.github/workflows/podman_volume_info.yml index 7e7aced..35beed6 100644 --- a/.github/workflows/podman_volume_info.yml +++ b/.github/workflows/podman_volume_info.yml @@ -5,7 +5,8 @@ on: paths: - '.github/workflows/podman_volume_info.yml' - 'ci/*.yml' - - 'ci/containers/podman_volume_info.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_volume_info.yml' - 'plugins/modules/podman_volume_info.py' - 'plugins/modules/podman_volume.py' - 'tests/integration/targets/podman_volume_info/**' @@ -15,7 +16,8 @@ on: paths: - '.github/workflows/podman_volume_info.yml' - 'ci/*.yml' - - 'ci/containers/podman_volume_info.yml' + - 'ci/run_containers_tests.sh' + - 'ci/playbooks/containers/podman_volume_info.yml' - 'plugins/modules/podman_volume_info.py' - 'plugins/modules/podman_volume.py' - 'tests/integration/targets/podman_volume_info/**' @@ -56,6 +58,8 @@ jobs: - name: Upgrade pip and display Python and PIP versions run: | + sudo apt-get update + sudo apt-get install -y python*-wheel python*-yaml python -m pip install --upgrade pip python -V pip --version diff --git a/ci/playbooks/containers/podman_container.yml b/ci/playbooks/containers/podman_container.yml index 1c1b4e2..40e2f1f 100644 --- a/ci/playbooks/containers/podman_container.yml +++ b/ci/playbooks/containers/podman_container.yml @@ -6,3 +6,4 @@ name: podman_container vars: idem_image: idempotency_test + ansible_python_interpreter: "{{ _ansible_python_interpreter }}" diff --git a/ci/playbooks/containers/podman_container_idempotency.yml b/ci/playbooks/containers/podman_container_idempotency.yml index 52e9768..0903992 100644 --- a/ci/playbooks/containers/podman_container_idempotency.yml +++ b/ci/playbooks/containers/podman_container_idempotency.yml @@ -6,3 +6,4 @@ name: podman_container_idempotency vars: idem_image: idempotency_test + ansible_python_interpreter: "{{ _ansible_python_interpreter }}" diff --git a/ci/playbooks/containers/podman_container_info.yml b/ci/playbooks/containers/podman_container_info.yml index fcad57a..c1d00f7 100644 --- a/ci/playbooks/containers/podman_container_info.yml +++ b/ci/playbooks/containers/podman_container_info.yml @@ -4,3 +4,5 @@ tasks: - include_role: name: podman_container_info + vars: + ansible_python_interpreter: "{{ _ansible_python_interpreter }}" diff --git a/ci/playbooks/containers/podman_image.yml b/ci/playbooks/containers/podman_image.yml index 65bbb98..1df087b 100644 --- a/ci/playbooks/containers/podman_image.yml +++ b/ci/playbooks/containers/podman_image.yml @@ -4,3 +4,5 @@ tasks: - include_role: name: podman_image + vars: + ansible_python_interpreter: "{{ _ansible_python_interpreter }}" diff --git a/ci/playbooks/containers/podman_image_info.yml b/ci/playbooks/containers/podman_image_info.yml index 43d5d27..47fd1e1 100644 --- a/ci/playbooks/containers/podman_image_info.yml +++ b/ci/playbooks/containers/podman_image_info.yml @@ -4,3 +4,5 @@ tasks: - include_role: name: podman_image_info + vars: + ansible_python_interpreter: "{{ _ansible_python_interpreter }}" diff --git a/ci/playbooks/containers/podman_network_info.yml b/ci/playbooks/containers/podman_network_info.yml index ec283d7..8e3ea2d 100644 --- a/ci/playbooks/containers/podman_network_info.yml +++ b/ci/playbooks/containers/podman_network_info.yml @@ -4,3 +4,5 @@ tasks: - include_role: name: podman_network_info + vars: + ansible_python_interpreter: "{{ _ansible_python_interpreter }}" diff --git a/ci/playbooks/containers/podman_pod.yml b/ci/playbooks/containers/podman_pod.yml index 00585e3..b95da50 100644 --- a/ci/playbooks/containers/podman_pod.yml +++ b/ci/playbooks/containers/podman_pod.yml @@ -6,3 +6,4 @@ name: podman_pod vars: idem_image: idempotency_test + ansible_python_interpreter: "{{ _ansible_python_interpreter }}" diff --git a/ci/playbooks/containers/podman_pod_info.yml b/ci/playbooks/containers/podman_pod_info.yml index cacd1b3..96aca4c 100644 --- a/ci/playbooks/containers/podman_pod_info.yml +++ b/ci/playbooks/containers/podman_pod_info.yml @@ -4,3 +4,5 @@ tasks: - include_role: name: podman_pod_info + vars: + ansible_python_interpreter: "{{ _ansible_python_interpreter }}" diff --git a/ci/playbooks/containers/podman_volume.yml b/ci/playbooks/containers/podman_volume.yml index 28b80c1..8b8df81 100644 --- a/ci/playbooks/containers/podman_volume.yml +++ b/ci/playbooks/containers/podman_volume.yml @@ -4,3 +4,5 @@ tasks: - include_role: name: podman_volume + vars: + ansible_python_interpreter: "{{ _ansible_python_interpreter }}" diff --git a/ci/playbooks/containers/podman_volume_info.yml b/ci/playbooks/containers/podman_volume_info.yml index 19702e0..030c919 100644 --- a/ci/playbooks/containers/podman_volume_info.yml +++ b/ci/playbooks/containers/podman_volume_info.yml @@ -4,3 +4,5 @@ tasks: - include_role: name: podman_volume_info + vars: + ansible_python_interpreter: "{{ _ansible_python_interpreter }}" diff --git a/ci/run_containers_tests.sh b/ci/run_containers_tests.sh index 21811a5..4976647 100755 --- a/ci/run_containers_tests.sh +++ b/ci/run_containers_tests.sh @@ -16,7 +16,7 @@ CMD="ANSIBLE_ROLES_PATH=${CURWD}/../tests/integration/targets \ ${ANSIBLECMD:-ansible-playbook} \ -i localhost, -c local --diff \ ci/playbooks/containers/${TEST2RUN}.yml \ - -e ansible_python_interpreter=$(command -v python)" + -e _ansible_python_interpreter=$(command -v python)" bash -c "$CMD -vv" || exit_code=$? if [[ "$exit_code" != 0 ]]; then diff --git a/tests/integration/targets/podman_container_idempotency/tasks/main.yml b/tests/integration/targets/podman_container_idempotency/tasks/main.yml index 79bdf5c..b207f73 100644 --- a/tests/integration/targets/podman_container_idempotency/tasks/main.yml +++ b/tests/integration/targets/podman_container_idempotency/tasks/main.yml @@ -28,12 +28,16 @@ - name: Test idempotency for root containers include_tasks: root-podman.yml + vars: + ansible_python_interpreter: "/usr/bin/python" args: apply: become: true - name: Test idempotency for root network containers include_tasks: root-podman-network.yml + vars: + ansible_python_interpreter: "/usr/bin/python" args: apply: become: true diff --git a/tests/integration/targets/podman_pod/tasks/main.yml b/tests/integration/targets/podman_pod/tasks/main.yml index e392d4a..2ede24b 100644 --- a/tests/integration/targets/podman_pod/tasks/main.yml +++ b/tests/integration/targets/podman_pod/tasks/main.yml @@ -598,12 +598,16 @@ - name: Test idempotency for root pods include_tasks: root-pod.yml + vars: + ansible_python_interpreter: "/usr/bin/python" args: apply: become: true - name: Test idempotency for root pods and networks include_tasks: net-pod.yml + vars: + ansible_python_interpreter: "/usr/bin/python" args: apply: become: true