@skip_if_github_validation
@sle_minion
@scope_salt
Feature: 0055 - Management of minion keys
Description: In Order to validate the minion onboarding page
As an authorized user
I want to verify all the minion key management features in the UI
File name: min_salt_minions_page.feature
Relative path: secondary/min_salt_minions_page.feature
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: Delete SLES minion system profile before exploring the onboarding page
When
I delete "sle_minion" system using the api
00:00:05.152
And
I perform a full salt minion cleanup on "sle_minion"
00:00:08.972
And
I wait until Salt client is inactive on "sle_minion"
00:00:00.471
Then
"sle_minion" should not be registered
00:00:00.991
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: Minion is visible in the Pending section
FAIL: echo " master: uyuni-master-server.sumaci.aws server_id_use_crc: adler32 enable_legacy_startup_events: False enable_fqdns_grains: False start_event_grains: - machine_id - saltboot_initrd - susemanager" ) /etc/venv-salt-minion/minion.d/susemanager.conf returned status code = 1. Output: (ScriptError) ./features/support/remote_node.rb:172:in `run_local' ./features/support/remote_node.rb:120:in `run' ./features/step_definitions/file_management_steps.rb:47:in `/^I store "([^"]*)" into file "([^"]*)" on "([^"]*)"$/' ./features/step_definitions/salt_steps.rb:300:in `/^I store "([^"]*)" into file "([^"]*)" in salt minion config directory on "([^"]*)"$/' ./features/step_definitions/salt_steps.rb:295:in `/^I configure salt minion on "([^"]*)"$/' features/secondary/min_salt_minions_page.feature:30:in `I configure salt minion on "sle_minion"'
And
I restart salt-minion on "sle_minion"
0s
And
I wait at most 10 seconds until Salt master sees "sle_minion" as "unaccepted"
0s
And
I follow the left menu "Salt > Keys"
0s
And
I refresh page until I see "sle_minion" hostname as text
0s
Then
I should see a "Fingerprint" text
0s
And
I see "sle_minion" fingerprint
0s
And
I should see a "pending" text
0s
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: Reject and delete the pending key
And
I follow the left menu "Salt > Keys"
00:00:00.065
Unable to find xpath "//tr[td[contains(.,'uyuni-master-suse-minion.sumaci.aws')]]//button[@aria-label = 'Reject']" (Capybara::ElementNotFound) ./features/step_definitions/salt_steps.rb:447:in `/^I reject "([^"]*)" from the Pending section$/' features/secondary/min_salt_minions_page.feature:41:in `I reject "sle_minion" from the Pending section'
And
I wait at most 10 seconds until Salt master sees "sle_minion" as "rejected"
0s
Then
I should see a "rejected" text
0s
When
I stop salt-minion on "sle_minion"
0s
And
I delete "sle_minion" from the Rejected section
0s
And
I refresh page until I do not see "sle_minion" hostname as text
0s
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: Accepted minion shows up as a registered system
When
I start salt-minion on "sle_minion"
00:00:00.838
And
I wait at most 10 seconds until Salt master sees "sle_minion" as "unaccepted"
00:00:10.000
+ Show Error
+ Screenshot
execution expired (Timeout::Error) ./features/support/commonlib.rb:89:in `repeat_until_timeout' ./features/step_definitions/salt_steps.rb:99:in `/^I wait at most (\d+) seconds until Salt master sees "([^"]*)" as "([^"]*)"$/' features/secondary/min_salt_minions_page.feature:51:in `I wait at most 10 seconds until Salt master sees "sle_minion" as "unaccepted"'
Then
"sle_minion" should not be registered
0s
When
I follow the left menu "Salt > Keys"
0s
Then
I should see a "pending" text
0s
When
I accept "sle_minion" key
0s
And
I wait at most 10 seconds until Salt master sees "sle_minion" as "accepted"
0s
And
I wait until onboarding is completed for "sle_minion"
0s
Then
"sle_minion" should be registered
0s
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: The minion communicates with the Salt master
execution expired (Timeout::Error) ./features/support/commonlib.rb:89:in `repeat_until_timeout' ./features/step_definitions/salt_steps.rb:17:in `/^the Salt master can reach "(.*?)"$/' features/secondary/min_salt_minions_page.feature:61:in `the Salt master can reach "sle_minion"'
When
I get OS information of "sle_minion" from the Master
0s
Then
it should contain the OS of "sle_minion"
0s
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: Delete profile of unreacheable minion
No system found for hostname: uyuni-master-suse-minion.sumaci.aws (RuntimeError) ./features/support/commonlib.rb:444:in `get_system_id' ./features/step_definitions/navigation_steps.rb:502:in `/^I am on the Systems overview page of this "([^"]*)"$/' features/secondary/min_salt_minions_page.feature:66:in `I am on the Systems overview page of this "sle_minion"'
When
I stop salt-minion on "sle_minion"
0s
And
I follow "Delete System"
0s
Then
I should see a "Confirm System Profile Deletion" text
0s
When
I click on "Delete Profile"
0s
Then
I wait until I see "Cleanup timed out. Please check if the machine is reachable." text
0s
When
I click on "Delete Profile Without Cleanup" in "An error occurred during cleanup" modal
0s
And
I wait until I see "has been deleted" text
0s
Then
"sle_minion" should not be registered
0s
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: Cleanup: bootstrap again the minion
When
I perform a full salt minion cleanup on "sle_minion"
00:00:05.182
And
I follow the left menu "Systems > Bootstrapping"
00:00:00.156
Then
I should see a "Bootstrap Minions" text
00:00:00.064
The hostname of sle_minion is uyuni-master-suse-minion.sumaci.aws
And
I enter "22" as "port"
00:00:00.049
And
I enter "root" as "user"
00:00:00.053
And
I enter "linux" as "password"
00:00:00.057
And
I select "1-SUSE-KEY-x86_64" from "activationKeys"
00:00:00.071
And
I select the hostname of "proxy" from "proxies" if present
00:00:00.061
And
I click on "Bootstrap"
00:00:00.075
And
I wait until I see "Bootstrap process initiated." text
00:00:42.386
And
I wait until onboarding is completed for "sle_minion"
00:01:23.742