From 276144878cf5d03326881985d819b7b0ffa86baa Mon Sep 17 00:00:00 2001 From: Rich Megginson Date: Fri, 2 Feb 2024 09:49:20 -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 --- .ansible-lint | 2 +- .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 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.ansible-lint b/.ansible-lint index 720deba..51462b9 100644 --- a/.ansible-lint +++ b/.ansible-lint @@ -17,7 +17,7 @@ kinds: skip_list: - fqcn-builtins - var-naming[no-role-prefix] - - sanity[cannot-ignore] + - sanity[cannot-ignore] # wokeignore:rule=sanity exclude_paths: - tests/roles/ - .github/ 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: |