Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace check.sh and/or ci.sh with tox/nox #3170

Open
jakkdl opened this issue Dec 24, 2024 · 5 comments · Fixed by #3196
Open

Replace check.sh and/or ci.sh with tox/nox #3170

jakkdl opened this issue Dec 24, 2024 · 5 comments · Fixed by #3196
Assignees

Comments

@jakkdl
Copy link
Member

jakkdl commented Dec 24, 2024

Tox sounds wonderful. I've been meaning to suggest it. I've actually been working on some reusable workflows for tox-based projects + experimented with some cool GHA integrations.
When you get to it, I may offer some help / experimentation in simplifying things here.

Originally posted by @webknjaz in #3157 (comment)

thread contains more discussion on tox vs nox. Whoever wants to Do It can probably just decide on either.

Initial PR does not need to be a huge one that replaces all of check.sh & ci.sh and overhauls CI stuff, an incremental approach should work perfectly fine here.

@webknjaz
Copy link
Member

Reopening #3196 because it says that it's not enough right in the first sentence.. It's the close keyword that's at fault.

@webknjaz webknjaz reopened this Feb 24, 2025
@webknjaz webknjaz moved this from 🌈 Done 🦄 to 📑 Ready 👌 in 📅 Procrastinating in public Feb 24, 2025
@jakkdl
Copy link
Member Author

jakkdl commented Feb 24, 2025

followup from #3196 (comment): remove quotes from descriptions

@webknjaz
Copy link
Member

followup from #3196 (comment): remove quotes from descriptions

And the descriptions can be multi-line + contain substitutions like {basepython} which would make the expanded env definitions even more distinctive.
Example: https://github.com/ansible/awx-plugins/blob/b90483b/tox.ini#L225C3-L230C77.

@webknjaz
Copy link
Member

@webknjaz
Copy link
Member

And another one (#3196 (comment)): separate tox invocation into installing the deps and running the (test) commands.

Example: https://github.com/ansible/awx-plugins/blob/b90483b/.github/workflows/reusable-tox.yml#L288-L301 (tox r --notest -vvv) + https://github.com/ansible/awx-plugins/blob/b90483b/.github/workflows/reusable-tox.yml#L312-L327 (tox r --skip-pkg-install -q).

Bonus points for an additional tox invocation with maximum verbosity, rerunning the failed tests, also with maximum verbosity of pytest: https://github.com/ansible/awx-plugins/blob/b90483b/.github/workflows/reusable-tox.yml#L366-L382 + https://github.com/ansible/awx-plugins/blob/b90483b/.github/workflows/ci-cd.yml#L699-L702.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants