ci: tox-lsr 3.17.1 - previous update broke container tests, this fixes them [citest_skip]#134
Merged
ci: tox-lsr 3.17.1 - previous update broke container tests, this fixes them [citest_skip]#134
Conversation
…s them [citest_skip] tox-lsr 3.17.1 has a fix for the broken container tests There was one shell function for both setting up the callback plugins and the connection plugin. When this function was skipped, the ANSIBLE_CONNECTION_PLUGINS environment variable was not set, so all subsequent tests failed. The connection plugin must be present and the env. var. must be set in order to run any container tests. The code was fixed to ensure that there is always a connection plugin installed in the correct location and that ANSIBLE_CONNECTION_PLUGINS is always set and contains this path. Also, setting up the callback plugins and the connection plugin is already idempotent, so no reason to skip them. Signed-off-by: Rich Megginson <rmeggins@redhat.com>
Reviewer's guide (collapsed on small PRs)Reviewer's GuideUpdates GitHub Actions workflows to use tox-lsr 3.17.1 and adjusts qemu-kvm integration-test logic so callback/connection plugins are always configured, fixing broken container tests and correcting a minor shell indentation issue. Sequence diagram for qemu_kvm container tests ensuring connection plugin setupsequenceDiagram
participant GH as GitHubActionsRunner
participant WF as qemu_kvm_workflow
participant Tox as tox
participant ToxLSR as tox_lsr_3_17_1
participant Ansible as ansible_core
participant Conn as connection_plugin
GH->>WF: Trigger workflow on push or PR
WF->>Tox: Run tox environment for qemu_kvm tests
Tox->>ToxLSR: Load linux_system_roles tox configuration
ToxLSR->>ToxLSR: Ensure callback plugins directory exists
ToxLSR->>ToxLSR: Ensure connection plugin installed in correct path
ToxLSR->>ToxLSR: Set ANSIBLE_CONNECTION_PLUGINS to include plugin path
ToxLSR->>Ansible: Invoke ansible tests for containers
Ansible->>Conn: Use configured connection plugin for container access
Ansible-->>WF: Report test results
WF-->>GH: Publish qemu_kvm container test status
Flow diagram for idempotent plugin setup without skippingflowchart TD
A[start qemu_kvm container test job] --> B[install tox_lsr_3_17_1]
B --> C[run tox environment]
C --> D[run setup_plugins function]
subgraph setup_plugins
D --> E[ensure callback plugins directory exists]
E --> F[ensure connection plugin file is present]
F --> G[export ANSIBLE_CONNECTION_PLUGINS including plugin path]
end
G --> H[run ansible container tests]
H --> I{tests complete?}
I -->|yes| J[end job]
I -->|no, retry or fail| K[report failure]
K --> J
classDef changed fill:#fffbdd,stroke:#d2a106,stroke-width:1px
class B,C,D,E,F,G changed
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
tox-lsr 3.17.1 has a fix for the broken container tests
There was one shell function for both setting up the callback plugins and the connection plugin.
When this function was skipped, the ANSIBLE_CONNECTION_PLUGINS environment variable was not
set, so all subsequent tests failed. The connection plugin must be present and the env. var.
must be set in order to run any container tests. The code was fixed to ensure that there is
always a connection plugin installed in the correct location and that ANSIBLE_CONNECTION_PLUGINS
is always set and contains this path.
Also, setting up the callback plugins and the connection plugin is already idempotent, so no
reason to skip them.
Signed-off-by: Rich Megginson rmeggins@redhat.com
Summary by Sourcery
Update CI workflows to use tox-lsr 3.17.1 and adjust container test configuration to ensure connection plugins are always set up.
Bug Fixes:
CI: