Skip to content

Commit 8c1c339

Browse files
authored
Testing maintenance (#2327)
1 parent 52833bb commit 8c1c339

17 files changed

+566
-595
lines changed

.config/constraints.txt

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
# This file was autogenerated by uv via the following command:
2+
# tox run -e deps
3+
alabaster==1.0.0
4+
asttokens==3.0.0
5+
babel==2.17.0
6+
backports-tarfile==1.2.0 ; python_full_version < '3.12'
7+
beautifulsoup4==4.13.3
8+
certifi==2025.1.31
9+
cffi==1.17.1 ; platform_python_implementation != 'PyPy'
10+
charset-normalizer==3.4.1
11+
colorama==0.4.6 ; sys_platform == 'win32'
12+
coverage==7.8.0
13+
cryptography==44.0.2
14+
decorator==5.2.1
15+
defusedxml==0.7.1
16+
docutils==0.21.2
17+
exceptiongroup==1.2.2 ; python_full_version < '3.11'
18+
execnet==2.1.1
19+
executing==2.2.0
20+
filemagic==1.6
21+
flaky==3.8.1
22+
furo==2024.8.6
23+
gssapi==1.9.0 ; sys_platform != 'win32'
24+
idna==3.10
25+
imagesize==1.4.1
26+
importlib-metadata==8.6.1 ; python_full_version < '3.12'
27+
iniconfig==2.1.0
28+
ipython==8.34.0
29+
jaraco-classes==3.4.0
30+
jaraco-context==6.0.1
31+
jaraco-functools==4.1.0
32+
jedi==0.19.2
33+
jinja2==3.1.6
34+
keyring==25.6.0
35+
krb5==0.7.1 ; sys_platform != 'win32'
36+
markupsafe==3.0.2
37+
matplotlib-inline==0.1.7
38+
more-itertools==10.6.0
39+
oauthlib==3.2.2
40+
packaging==24.2
41+
parameterized==0.9.0
42+
parso==0.8.4
43+
pexpect==4.9.0 ; sys_platform != 'emscripten' and sys_platform != 'win32'
44+
pluggy==1.5.0
45+
prompt-toolkit==3.0.50
46+
ptyprocess==0.7.0 ; sys_platform != 'emscripten' and sys_platform != 'win32'
47+
pure-eval==0.2.3
48+
pycparser==2.22 ; platform_python_implementation != 'PyPy'
49+
pygments==2.19.1
50+
pyjwt==2.10.1
51+
pyspnego==0.11.2
52+
pytest==8.3.5
53+
pytest-cache==1.0
54+
pytest-cov==6.0.0
55+
pytest-instafail==0.5.0
56+
pytest-sugar==1.0.0
57+
pytest-timeout==2.3.1
58+
pytest-xdist==3.6.1
59+
pywin32-ctypes==0.2.3 ; sys_platform == 'win32'
60+
pyyaml==6.0.2
61+
requests==2.32.3
62+
requests-futures==1.0.2
63+
requests-jwt==0.6.0
64+
requests-kerberos==0.15.0
65+
requests-mock==1.12.1
66+
requests-oauthlib==2.0.0
67+
requests-toolbelt==1.0.0
68+
requires-io==0.2.6
69+
snowballstemmer==2.2.0
70+
soupsieve==2.6
71+
sphinx==8.1.3
72+
sphinx-basic-ng==1.0.0b2
73+
sphinx-copybutton==0.5.2
74+
sphinxcontrib-applehelp==2.0.0
75+
sphinxcontrib-devhelp==2.0.0
76+
sphinxcontrib-htmlhelp==2.1.0
77+
sphinxcontrib-jsmath==1.0.1
78+
sphinxcontrib-qthelp==2.0.0
79+
sphinxcontrib-serializinghtml==2.0.0
80+
sspilib==0.2.0 ; sys_platform == 'win32'
81+
stack-data==0.6.3
82+
tenacity==9.0.0
83+
termcolor==3.0.0
84+
tomli==2.2.1 ; python_full_version <= '3.11'
85+
traitlets==5.14.3
86+
urllib3==2.3.0
87+
wcwidth==0.2.13
88+
wheel==0.45.1
89+
yanc==0.3.3
90+
zipp==3.21.0 ; python_full_version < '3.12'
91+
92+
# The following packages were excluded from the output:
93+
# secretstorage
94+
# jeepney
95+
# pip
96+
# typing-extensions

.devcontainer/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# See here for image contents: https://github.com/devcontainers/images/blob/main/src/base-ubuntu/.devcontainer/Dockerfile
22

33
# [Choice] Ubuntu version: https://github.com/devcontainers/images/tree/main/src/base-ubuntu
4-
ARG VARIANT="ubuntu-22.04"
4+
ARG VARIANT="ubuntu-24.04"
55
FROM mcr.microsoft.com/vscode/devcontainers/base:${VARIANT}
66

77
# [Optional] Uncomment this section to install additional OS packages.

.devcontainer/devcontainer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"dockerfile": "Dockerfile",
77
// Update 'VARIANT' to pick an Ubuntu version
88
"args": {
9-
"VARIANT": "ubuntu-22.04"
9+
"VARIANT": "ubuntu-24.04"
1010
}
1111
},
1212
// Set *default* container specific settings.json values on container create.

.github/dependabot.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,19 @@ updates:
33
- package-ecosystem: pip
44
directory: "/"
55
schedule:
6-
interval: monthly
7-
open-pull-requests-limit: 10
8-
target-branch: main
6+
day: sunday
7+
interval: weekly
98
labels:
10-
- "dependencies"
11-
- "skip-changelog"
12-
9+
- dependabot-deps-updates
10+
- skip-changelog
11+
groups:
12+
dependencies:
13+
patterns:
14+
- "*"
1315
- package-ecosystem: "github-actions"
14-
target-branch: main
1516
directory: "/"
16-
open-pull-requests-limit: 10
1717
schedule:
18-
interval: "monthly"
18+
interval: daily
1919
labels:
2020
- "dependencies"
2121
- "skip-changelog"

.github/workflows/ack.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,4 @@ on:
77
jobs:
88
ack:
99
uses: ansible/team-devtools/.github/workflows/ack.yml@main
10+
secrets: inherit

.github/workflows/jira_ci.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,11 @@ jobs:
2222
steps:
2323
- uses: actions/checkout@v4
2424
- uses: ./.github/workflows/jira_cloud_ci.yml
25-
secrets:
26-
CLOUD_ADMIN: ${{ secrets.CI_JIRA_CLOUD_ADMIN }}
27-
CLOUD_ADMIN_TOKEN: ${{ secrets.CI_JIRA_CLOUD_ADMIN_TOKEN }}
28-
CLOUD_USER: ${{ secrets.CI_JIRA_CLOUD_USER }}
29-
CLOUD_USER_TOKEN: ${{ secrets.CI_JIRA_CLOUD_USER_TOKEN }}
25+
with:
26+
CLOUD_ADMIN: ${{ secrets.CI_JIRA_CLOUD_ADMIN }}
27+
CLOUD_ADMIN_TOKEN: ${{ secrets.CI_JIRA_CLOUD_ADMIN_TOKEN }}
28+
CLOUD_USER: ${{ secrets.CI_JIRA_CLOUD_USER }}
29+
CLOUD_USER_TOKEN: ${{ secrets.CI_JIRA_CLOUD_USER_TOKEN }}
3030

3131
# 'check' the only job that should be marked as required in
3232
# repository config, so we do not need to change required jobs

.github/workflows/release.yml

Lines changed: 31 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -3,54 +3,46 @@ name: release
33
on:
44
release:
55
types: [published]
6+
workflow_dispatch:
67

78
jobs:
89
pypi:
910
name: Publish to PyPI registry
1011
environment: release
11-
runs-on: ubuntu-20.04
12+
runs-on: ubuntu-24.04
13+
permissions:
14+
id-token: write
1215

1316
env:
1417
FORCE_COLOR: 1
1518
PY_COLORS: 1
1619
TOXENV: pkg
17-
TOX_PARALLEL_NO_SPINNER: 1
1820

1921
steps:
20-
- name: Switch to using Python 3.10 by default
21-
uses: actions/setup-python@v5
22-
with:
23-
python-version: "3.10"
24-
25-
- name: Install system dependencies
26-
run: |
27-
sudo apt remove -y docker-compose
28-
sudo apt-get update -y
29-
sudo apt-get --assume-yes --no-install-recommends install -y apt-transport-https curl libkrb5-dev
30-
31-
- name: Install build dependencies
32-
run: python3 -m pip install --user tox
33-
34-
- name: Check out src from Git
35-
uses: actions/checkout@v4
36-
with:
37-
fetch-depth: 0 # needed by setuptools-scm
38-
39-
- name: Build dists
40-
run: python -m tox
41-
42-
- name: Publish to test.pypi.org
43-
if: >- # "create" workflows run separately from "push" & "pull_request"
44-
github.event_name == 'release'
45-
uses: pypa/gh-action-pypi-publish@release/v1
46-
with:
47-
verbose: true
48-
password: ${{ secrets.testpypi_password }}
49-
repository-url: https://test.pypi.org/legacy/
50-
51-
- name: Publish to pypi.org
52-
if: >- # "create" workflows run separately from "push" & "pull_request"
53-
github.event_name == 'release'
54-
uses: pypa/gh-action-pypi-publish@release/v1
55-
with:
56-
password: ${{ secrets.pypi_password }}
22+
- name: Switch to using Python 3.10 by default
23+
uses: actions/setup-python@v5
24+
with:
25+
python-version: "3.10"
26+
27+
- name: Install system dependencies
28+
run: |
29+
sudo apt remove -y docker-compose
30+
sudo apt-get update -y
31+
sudo apt-get --assume-yes --no-install-recommends install -y apt-transport-https curl libkrb5-dev
32+
33+
- name: Install tox
34+
run: python3 -m pip install --user "tox>=4.0.0"
35+
36+
- name: Check out src from Git
37+
uses: actions/checkout@v4
38+
with:
39+
fetch-depth: 0 # needed by setuptools-scm
40+
submodules: true
41+
42+
- name: Build dists
43+
run: python3 -m tox
44+
45+
- name: Publish to pypi.org
46+
if: >- # "create" workflows run separately from "push" & "pull_request"
47+
github.event_name == 'release'
48+
uses: pypa/gh-action-pypi-publish@release/v1

.github/workflows/tox.yml

Lines changed: 22 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,14 @@
22
name: tox
33
on:
44
push:
5-
branches: ["main"]
5+
branches:
6+
- "main"
67
pull_request:
7-
branches: ["main"]
8+
branches:
9+
- "main"
10+
schedule:
11+
- cron: "0 0 * * *"
12+
workflow_call:
813

914
concurrency:
1015
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
@@ -32,11 +37,11 @@ jobs:
3237
lint
3338
docs
3439
pkg
35-
py310:tox -e py310 --notest
36-
py311:tox -e py311 --notest
37-
py312:tox -e py312 --notest
38-
py310-macos:tox -e py312 --notest
39-
py312-macos:tox -e py312 --notest
40+
py310:tox -e py310 -- -k test_unit
41+
py311:tox -e py311 -- -k test_unit
42+
py312:tox -e py312 -- -k test_unit
43+
py310-macos:tox -e py310 -- -k test_unit
44+
py312-macos:tox -e py312 -- -k test_unit
4045
# ^ macos is also used to validate arm64 building
4146
platforms: linux,macos
4247
skip_explode: "1"
@@ -79,7 +84,8 @@ jobs:
7984

8085
- name: Install tox
8186
run: |
82-
python3 -m pip install --upgrade pip wheel tox
87+
python3 -m pip install --upgrade pip
88+
python3 -m pip install --upgrade "tox>=4.0.0" "tox-uv>=1.25.0" "uv>=0.6.6"
8389
8490
- run: ${{ matrix.command }}
8591

@@ -99,10 +105,10 @@ jobs:
99105
uses: actions/upload-artifact@v4
100106
with:
101107
name: logs-${{ matrix.name }}.zip
102-
if-no-files-found: error
103108
include-hidden-files: true
104109
path: |
105110
.tox/**/log/
111+
.tox/**/.coverage*
106112
.tox/**/coverage.xml
107113
108114
- name: Report failure if git reports dirty status
@@ -141,19 +147,21 @@ jobs:
141147
uses: actions/upload-artifact/merge@v4
142148
with:
143149
name: logs.zip
150+
include-hidden-files: true
144151
pattern: logs-*.zip
145152
# artifacts like py312.zip and py312-macos do have overlapping files
146153
separate-directories: true
147154

148155
- name: Download artifacts
149156
uses: actions/download-artifact@v4
157+
continue-on-error: true # to allow rerunning this job
150158
with:
151159
name: logs.zip
152160
path: .
153161

154162
- name: Check for expected number of coverage.xml reports
155163
run: |
156-
JOBS_PRODUCING_COVERAGE=0
164+
JOBS_PRODUCING_COVERAGE=5
157165
if [ "$(find . -name coverage.xml | wc -l | bc)" -ne "${JOBS_PRODUCING_COVERAGE}" ]; then
158166
echo "::error::Number of coverage.xml files was not the expected one (${JOBS_PRODUCING_COVERAGE}): $(find . -name coverage.xml |xargs echo)"
159167
exit 1
@@ -178,13 +186,8 @@ jobs:
178186
with:
179187
name: ${{ matrix.name }}
180188
# verbose: true # optional (default = false)
181-
fail_ci_if_error: false
182-
use_oidc: true # cspell:ignore oidc
183-
files: "*/tests/output/reports/coverage.xml"
184-
185-
# - name: Check codecov.io status
186-
# if: github.event_name == 'pull_request'
187-
# uses: coactions/codecov-status@main
189+
fail_ci_if_error: true
190+
use_oidc: ${{ !(github.event_name == 'pull_request' && github.event.pull_request.head.repo.fork) }} # cspell:ignore oidc
188191

189192
- name: Decide whether the needed jobs succeeded or failed
190193
uses: re-actors/alls-green@release/v1
@@ -194,4 +197,6 @@ jobs:
194197
- name: Delete Merged Artifacts
195198
uses: actions/upload-artifact/merge@v4
196199
with:
200+
include-hidden-files: true
197201
delete-merged: true
202+
pattern: logs-*.zip

0 commit comments

Comments
 (0)