Skip to content

Drop sanity-py3.14 / sanity-py3.13 jobs from the CI tox-ansible matrix#595

Closed
webknjaz wants to merge 2 commits into
ansible-collections:mainfrom
webknjaz:patch-1
Closed

Drop sanity-py3.14 / sanity-py3.13 jobs from the CI tox-ansible matrix#595
webknjaz wants to merge 2 commits into
ansible-collections:mainfrom
webknjaz:patch-1

Conversation

@webknjaz

Copy link
Copy Markdown
Member

This is necessary since tox-ansible is unpinned and the reusable workflow and actions infra does not support surgical pinning. This plugin adds Python 3.14 unconditionally which fails to install ansible-pylibssh as it requires building from source but the underlying libssh headers are not present in runtime and the infra is not flexible enough to have us inject it into the env.

Description

  • What is being changed? The CI job matrix
  • Why is this change needed? It injects a currently-incompatible Python 3.14 into the CI making it required earlier than acceptable.
  • How does this change address the issue? No job == no failure.

Type of Change

  • CI maintenance

Related Issue

Component Name

N/A

Self-Review Checklist

  • I have performed a self-review of my code
  • I have added relevant comments to complex code sections
  • I have removed all commented code (no commented code should be merged)
  • I have updated documentation where needed
  • I have considered the security impact of these changes
  • I have considered performance implications
  • I have thought about error handling and edge cases
  • I have tested the changes in my local environment
  • I have verified the changes work with the target IOS-XR version(s)
  • I have reviewed the acceptance criteria for related tickets

Testing Instructions

Prerequisites

N/A

Steps to Test

CI status.

Expected Results

Should not have the corresponding job.

Test Results

N/A

Acceptance Criteria Verification

  • All acceptance criteria have been reviewed and verified
  • Acceptance criteria checklist:
    • CI's green

Additional Context

This is an attempt to unblock the CI as a quick workaround. It should be possible to revert as soon as ansible-pyblibssh has wheels for Python 3.14.

Command Output / Logs

N/A

Required Actions

  • Requires documentation updates
  • Requires changelog fragment
  • Requires integration test updates
  • Requires unit test updates
  • Requires coordination with other teams
  • Blocked by PR/MR: #XXX

Screenshots/Logs

N/A

Breaking Changes

N/A

This is necessary since `tox-ansible` is unpinned and the reusable workflow and actions infra does not support surgical pinning. This plugin adds Python 3.14 unconditionally which fails to install `ansible-pylibssh` as it requires building from source but the underlying `libssh` headers are not present in runtime and the infra is not flexible enough to have us inject it into the env.
@webknjaz webknjaz changed the title Drop sanity-py3.14 jobs from the CI tox-ansible matrix Drop sanity-py3.14 / sanity-py3.13 jobs from the CI tox-ansible matrix Mar 11, 2026
@webknjaz webknjaz marked this pull request as ready for review March 11, 2026 12:39
@webknjaz

Copy link
Copy Markdown
Member Author

@KB-perByte I'll leave adding a commit to fix this to you — plz take over this PR:

FATAL: The 1 sanity test(s) listed below (out of 24) failed. See error output above for details.
action-plugin-docs

Comment thread tox-ansible.ini
skip = ""
skip =
sanity-py3.14
sanity-py3.13

@ssbarnea ssbarnea Mar 11, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe an file comment comment explaining why these are skipped could prove useful as sooner or later someone will wonder why these were ignored even if they are part of the official support matrix.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, I'll leave this to @KB-perByte. Just wanted to see if this'd work. The docs aren't very clear on what skip is allowed to contain — you might want to sprinkle more examples in. I've only read the source code promptly and made an educated guess.

@webknjaz

Copy link
Copy Markdown
Member Author

This is no longer needed.

@webknjaz webknjaz closed this Mar 16, 2026
@webknjaz webknjaz deleted the patch-1 branch March 16, 2026 14:28
@webknjaz webknjaz moved this from ⏰ Merge reminder needed 🔀 to 🌈 Done 🦄 in 📅 Procrastinating in public 😵‍💫 Mar 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants