ci: tox-lsr 3.17.1 - previous update broke container tests, this fixes them [citest_skip]#3
Merged
ci: tox-lsr 3.17.1 - previous update broke container tests, this fixes them [citest_skip]#3
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 (which fixes broken container tests) and stops skipping callback/connection plugin setup between tox runs in the qemu-kvm integration workflow, ensuring required Ansible connection plugins are always installed and enabled during container tests. Sequence diagram for tox_lsr_3_17_1 ensuring connection_plugins for container testssequenceDiagram
actor Dev as Developer
participant GHA as GitHub_Actions
participant WF as Workflow_job
participant Tox as tox_lsr_3_17_1
participant Shell as Shell_setup_functions
participant Ansible as Ansible_test_runner
participant ConnDir as Connection_plugins_directory
participant Env as ANSIBLE_CONNECTION_PLUGINS_env
participant Ctn as Container_tests
Dev->>GHA: Push_changes_triggers_workflows
GHA->>WF: Start_job
WF->>Tox: Install_tox_lsr_3_17_1
WF->>Shell: Run_plugin_setup_functions
Shell->>ConnDir: Ensure_connection_plugin_installed
Shell->>Env: Export_path_to_connection_plugins
Shell->>Ansible: Return_configured_environment
WF->>Ansible: Invoke_tests_with_env
Ansible->>Ctn: Run_container_tests_using_connection_plugin
Ctn-->>Ansible: Report_results
Ansible-->>WF: Test_status
WF-->>GHA: Job_status
GHA-->>Dev: Report_CI_status
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