Skip to content

Commit

Permalink
ci: tox-lsr 3.4.0 - fix py27 tests; move other checks to py310
Browse files Browse the repository at this point in the history
The latest version of virtualenv does not support creating
python 2.7 virtualenvs.  Change our CI tests to restrict the version
of virtualenv<20.22.0 and tox<4.15 for py27 environments

Move pylint, flake8, and black checks to the py310 environment
which is currently supported by ansible-core 2.17 and its related
checkers such as ansible-lint and ansible-test

pylint now uses ansible-core 2.17 and restricts the version of
pylint to 3.1.0 which is the version used by ansible-test 2.17

Remove `extends: default` for .yamllint.yml.  The latest version
of ansible-lint will automatically incorporate local yamllint
settings unless there is an `extends:`.

The above changes require some fixes to the role code.

For more information, see
linux-system-roles/tox-lsr#168
and
linux-system-roles/tox-lsr#170
  • Loading branch information
richm committed Jun 5, 2024
1 parent 482d9ef commit bca910e
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 11 deletions.
2 changes: 1 addition & 1 deletion inventory/group_vars/active_roles.yml
Original file line number Diff line number Diff line change
Expand Up @@ -53,4 +53,4 @@ lsr_namespace: fedora
lsr_name: linux_system_roles
lsr_role_namespace: linux_system_roles # for ansible-lint
gha_checkout_action: actions/checkout@v4
tox_lsr_url: "git+https://github.com/linux-system-roles/tox-lsr@3.3.0"
tox_lsr_url: "git+https://github.com/linux-system-roles/tox-lsr@3.4.0"
Original file line number Diff line number Diff line change
Expand Up @@ -86,11 +86,8 @@ jobs:
toxenvs="py${toxpyver}"
# NOTE: The use of flake8, pylint, black with specific
# python envs is arbitrary and must be changed in tox-lsr
# We really should either do those checks using the latest
# version of python, or in every version of python
case "$toxpyver" in
27) toxenvs="${toxenvs},coveralls,flake8,pylint" ;;
36) toxenvs="${toxenvs},coveralls,black" ;;
310) toxenvs="${toxenvs},coveralls,flake8,pylint,black" ;;
*) toxenvs="${toxenvs},coveralls" ;;
esac
TOXENV="$toxenvs" lsr_ci_runtox
Expand Down
16 changes: 11 additions & 5 deletions playbooks/templates/.github/workflows/python-unit-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -61,8 +61,17 @@ jobs:
run: |
set -euxo pipefail
python -m pip install --upgrade pip
if [ "${{ matrix.pyver_os.ver }}" = 2.7 ]; then
# newer virtualenv cannot create python2 venvs
# newer tox requires newer virtualenv
tox='tox<4.15'
virtualenv='virtualenv<20.22.0'
else
tox=tox
virtualenv=virtualenv
fi
{%- endraw +%}
pip install "{{ tox_lsr_url }}"
pip install "$tox" "$virtualenv" "{{ tox_lsr_url }}"
{%- raw %}
# If you have additional OS dependency packages e.g. libcairo2-dev
# then put them in .github/config/ubuntu-requirements.txt, one
Expand All @@ -78,11 +87,8 @@ jobs:
toxenvs="py${toxpyver}"
# NOTE: The use of flake8, pylint, black with specific
# python envs is arbitrary and must be changed in tox-lsr
# We really should either do those checks using the latest
# version of python, or in every version of python
case "$toxpyver" in
27) toxenvs="${toxenvs},coveralls,flake8,pylint" ;;
36) toxenvs="${toxenvs},coveralls,black" ;;
310) toxenvs="${toxenvs},coveralls,flake8,pylint,black" ;;
*) toxenvs="${toxenvs},coveralls" ;;
esac
TOXENV="$toxenvs" lsr_ci_runtox
Expand Down
1 change: 0 additions & 1 deletion playbooks/templates/.yamllint.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
# SPDX-License-Identifier: MIT
---
extends: default
ignore: |
/.tox/
{% if yamllint.ignore is defined %}
Expand Down

0 comments on commit bca910e

Please sign in to comment.