From 2747c140d537fc9caa243e3a79035478e9606c10 Mon Sep 17 00:00:00 2001 From: Rich Megginson Date: Fri, 2 Feb 2024 09:48:14 -0700 Subject: [PATCH] ci: fix python unit test - copy pytest config to tests/unit This is fixed by tox-lsr 3.2.2 - all actions that use tox-lsr are updated to 3.2.2, not just the python unit tests, even though the fix is only related to pytest. All roles are updated to use tox-lsr 3.2.2 for the sake of consistency even if not affected by the pytest issue. Something changed recently in the way github actions provisions systems which means some of the directories are not readable by the python unit test actions. In addition, the python unit tests were causing a lot of unnecessary directory traversal doing collection/discovery of unit test files, because of using `pytest -c /path/to/tox-lsr/pytest.ini` Unfortunately, with `pytest`, the directory of the config file is the root directory for the tests and tests discovery, and there is no way around this. Therefore, the only solution is to copy the tox-lsr `pytest.ini` to the `tests/unit` directory, which makes that the test root directory. See also https://github.com/linux-system-roles/tox-lsr/pull/160 Signed-off-by: Rich Megginson --- .github/workflows/ansible-lint.yml | 2 +- .github/workflows/ansible-managed-var-comment.yml | 2 +- .github/workflows/ansible-plugin-scan.yml | 2 +- .github/workflows/ansible-test.yml | 2 +- .github/workflows/python-unit-test.yml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ansible-lint.yml b/.github/workflows/ansible-lint.yml index 4d693bb..0e1a71e 100644 --- a/.github/workflows/ansible-lint.yml +++ b/.github/workflows/ansible-lint.yml @@ -32,7 +32,7 @@ jobs: - name: Install tox, tox-lsr run: | set -euxo pipefail - pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.2.1" + pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.2.2" - name: Convert role to collection format run: | diff --git a/.github/workflows/ansible-managed-var-comment.yml b/.github/workflows/ansible-managed-var-comment.yml index 0014762..b2b8460 100644 --- a/.github/workflows/ansible-managed-var-comment.yml +++ b/.github/workflows/ansible-managed-var-comment.yml @@ -30,7 +30,7 @@ jobs: - name: Install tox, tox-lsr run: | set -euxo pipefail - pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.2.1" + pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.2.2" - name: Run ansible-plugin-scan run: | diff --git a/.github/workflows/ansible-plugin-scan.yml b/.github/workflows/ansible-plugin-scan.yml index ae7c74c..8085384 100644 --- a/.github/workflows/ansible-plugin-scan.yml +++ b/.github/workflows/ansible-plugin-scan.yml @@ -30,7 +30,7 @@ jobs: - name: Install tox, tox-lsr run: | set -euxo pipefail - pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.2.1" + pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.2.2" - name: Run ansible-plugin-scan run: | diff --git a/.github/workflows/ansible-test.yml b/.github/workflows/ansible-test.yml index e63d92a..26fe33c 100644 --- a/.github/workflows/ansible-test.yml +++ b/.github/workflows/ansible-test.yml @@ -33,7 +33,7 @@ jobs: - name: Install tox, tox-lsr run: | set -euxo pipefail - pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.2.1" + pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.2.2" - name: Convert role to collection format run: | diff --git a/.github/workflows/python-unit-test.yml b/.github/workflows/python-unit-test.yml index c69a9a1..bcb21e6 100644 --- a/.github/workflows/python-unit-test.yml +++ b/.github/workflows/python-unit-test.yml @@ -58,7 +58,7 @@ jobs: run: | set -euxo pipefail python -m pip install --upgrade pip - pip install "git+https://github.com/linux-system-roles/tox-lsr@3.2.1" + pip install "git+https://github.com/linux-system-roles/tox-lsr@3.2.2" # If you have additional OS dependency packages e.g. libcairo2-dev # then put them in .github/config/ubuntu-requirements.txt, one # package per line.