Skip to content

multinode.sh: detect controller containers unhealthy before tempest#101

Open
elelaysh wants to merge 2 commits into
mainfrom
detect-octavia-unhealthy
Open

multinode.sh: detect controller containers unhealthy before tempest#101
elelaysh wants to merge 2 commits into
mainfrom
detect-octavia-unhealthy

Conversation

@elelaysh
Copy link
Copy Markdown
Contributor

This adds a basic check that all controller container are healthy to the multinode test.

The check is done before tempest is run.

@elelaysh elelaysh requested a review from a team as a code owner December 31, 2025 15:17
@gemini-code-assist
Copy link
Copy Markdown

Summary of Changes

Hello @elelaysh, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly improves the reliability of multinode testing by introducing a critical health check for controller containers. By ensuring that the core infrastructure is stable and healthy before running comprehensive Tempest tests, the changes aim to reduce false-positive test failures and provide more accurate feedback on the system's operational status, streamlining the debugging process.

Highlights

  • Pre-Tempest Health Check: A new check has been implemented within the run_tests function to verify the health of all controller containers before initiating Tempest tests. If any controller container is found to be unhealthy, Tempest will not proceed.
  • Refactored Test Execution: The run_tests function now orchestrates the container health check and conditionally executes run_tempest, ensuring a more robust testing workflow.
  • Script Command Updates: The multinode.sh script's usage message and main function's command parsing have been updated to include and properly handle the new run_tests command.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request adds a useful check for unhealthy controller containers before running Tempest tests. However, the shell command used for this check is syntactically incorrect and will prevent the tests from ever running. I've added a critical review comment with a corrected and more robust command. The other changes to expose the new run_tests function are correct.

Comment thread ansible/files/multinode.sh Outdated
@elelaysh
Copy link
Copy Markdown
Contributor Author

using the docker ps | grep to display the lines with unhealthy status.

Comment thread ansible/files/multinode.sh Outdated
Comment thread ansible/files/multinode.sh Outdated
@elelaysh elelaysh force-pushed the detect-octavia-unhealthy branch from b914e8d to 7411845 Compare January 5, 2026 11:07
Eg octavia-api is currently broken in multinode deployment
in OVS mode because ovn plugin is unconditionally enabled.

Adding this check to the run_tests function, before running tempest.
It should be prefered to run_tempest because it checks docker health
first.
@elelaysh elelaysh force-pushed the detect-octavia-unhealthy branch from 7411845 to 78fef00 Compare January 5, 2026 13:08
@elelaysh elelaysh requested a review from Alex-Welsh January 5, 2026 13:09
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