-
Notifications
You must be signed in to change notification settings - Fork 215
testsuite: add feature to run health check tool #10179
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
base: master
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
# Copyright (c) 2025 SUSE LLC | ||
# Licensed under the terms of the MIT license. | ||
|
||
@scope_salt | ||
@skip_if_github_validation | ||
Feature: Health Check tool based on a supportconfig | ||
A supportconfig generated from the Uyuni server | ||
should be able to be parsed by Health Check tool. | ||
|
||
Scenario: A supportconfig is taken from the server | ||
When I generate a supportconfig for the server | ||
Then I obtain and extract the supportconfig from the server | ||
|
||
Scenario: Execute health check tool with server supportconfig | ||
When I run "mgr-health-check -v -s /root/server-supportconfig/uyuni-server-supportconfig/ start" on "localhost" | ||
Then I run "test $(podman ps | grep health-check | wc -l) == 4" on "localhost" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Then I check that Health check tool container is running |
||
|
||
Scenario: I wait until health-check is ready | ||
When I run "curl localhost:3000/api/health -o /dev/null" on "localhost" with timeout at most 10 seconds | ||
|
||
Scenario: Health Check containers are healthy and running | ||
When I run "curl -s localhost:9000 -o /dev/null" on "localhost" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. What about using this step?
|
||
Then I run "curl -s localhost:3100 -o /dev/null" on "localhost" | ||
And I run "curl -s localhost:9081 -o /dev/null" on "localhost" | ||
And I run "curl -s localhost:3000 -o /dev/null" on "localhost" | ||
|
||
Scenario: Health Check containers are exposing metrics | ||
When I run "curl -s localhost:9000/metrics.json | python3 -c 'import sys, json; print(json.load(sys.stdin).keys())'" on "localhost" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Let's build a step definition for this please. Then I check the health check tool metrics are exposed in "localhost" |
||
|
||
Scenario: Cleanup: Remove health check tool | ||
When I run "mgr-health-check stop" on "localhost" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Same, let's build some step for this |
||
Then I run "test $(podman ps | grep health-check | wc -l) == 0" on "localhost" | ||
And I run "rm /root/server-supportconfig -rf" on "localhost" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When I start health check tool with support config "/root/server-supportconfig/uyuni-server-supportconfig/" on "localhost"