@skip_if_github_validation
@sle_minion
@scope_salt
Feature: 0059 - Verify that Salt mgrcompat state works when the new module.run syntax is enabled
File name: min_salt_mgrcompat_state.feature
Relative path: secondary/min_salt_mgrcompat_state.feature
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: Remove mgrcompat module from minion synced modules and schedule Hardware Refresh
Given
I remove "minion/extmods/states/mgrcompat.py" from salt cache on "sle_minion"
00:00:00.957
And
I remove "minion/extmods/states/__pycache__/mgrcompat*" from salt cache on "sle_minion"
00:00:00.513
And
I am on the Systems overview page of this "sle_minion"
00:00:02.829
When
I follow "Hardware"
00:00:00.611
And
I click on "Schedule Hardware Refresh"
00:00:00.846
Then
I should see a "You have successfully scheduled a hardware profile refresh" text
00:00:00.132
When
I wait until event "Hardware List Refresh scheduled" is completed
00:00:22.386
And
I wait until there is no Salt job calling the module "hardware.profileupdate" on "sle_minion"
00:00:02.959
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: Remove saltutil grain and mgrcompat module from minion and schedule Hardware Refresh
Given
I remove "minion/extmods/states/mgrcompat.py" from salt cache on "sle_minion"
00:00:00.624
And
I remove "minion/extmods/states/__pycache__/mgrcompat*" from salt cache on "sle_minion"
00:00:00.588
And
I store "grains: {__suse_reserved_saltutil_states_support: False}" into file "custom_grains.conf" in salt minion config directory on "sle_minion"
00:00:00.575
And
I refresh salt-minion grains on "sle_minion"
00:00:02.403
And
I am on the Systems overview page of this "sle_minion"
00:00:01.637
When
I follow "Hardware"
00:00:00.613
And
I click on "Schedule Hardware Refresh"
00:00:00.800
Then
I should see a "You have successfully scheduled a hardware profile refresh" text
00:00:00.124
When
I wait until event "Hardware List Refresh scheduled" is completed
00:00:22.300
And
I wait until there is no Salt job calling the module "hardware.profileupdate" on "sle_minion"
00:00:03.229
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: Delete SLES minion system profile before mgrcompat test
When
I delete "sle_minion" system using the api
00:00:04.493
And
I perform a full salt minion cleanup on "sle_minion"
00:01:37.884
And
I wait until Salt client is inactive on "sle_minion"
00:00:00.486
Then
"sle_minion" should not be registered
00:00:01.001
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: Enable new module.run syntax on the minion and perform registration
Given
I store "use_superseded: [module.run]" into file "custom_modulerun.conf" in salt minion config directory on "sle_minion"
00:00:00.469
+ Show Error
+ Screenshot
FAIL: echo "use_superseded: [module.run]" ) /etc/venv-salt-minion/minion.d/custom_modulerun.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/secondary/min_salt_mgrcompat_state.feature:52:in `I store "use_superseded: [module.run]" into file "custom_modulerun.conf" in salt minion config directory on "sle_minion"'
When
I follow the left menu "Systems > Bootstrapping"
0s
Then
I should see a "Bootstrap Minions" text
0s
When
I enter the hostname of "sle_minion" as "hostname"
0s
And
I enter "22" as "port"
0s
And
I enter "root" as "user"
0s
And
I enter "linux" as "password"
0s
And
I select the hostname of "proxy" from "proxies" if present
0s
And
I click on "Bootstrap"
0s
And
I wait until I see "Bootstrap process initiated." text
0s
And
I wait until onboarding is completed for "sle_minion"
0s
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: Check if onboarding for the minion with the new module.run syntax was successful
When
I follow the left menu "Systems > System List > All"
00:00:00.175
execution expired (Timeout::Error) ./features/support/commonlib.rb:89:in `repeat_until_timeout' ./features/step_definitions/navigation_steps.rb:70:in `/^I wait until I see "([^"]*)" (text|regex), refreshing the page$/' ./features/step_definitions/navigation_steps.rb:133:in `/^I wait until I see the "([^"]*)" system, refreshing the page$/' ./features/step_definitions/navigation_steps.rb:129:in `/^I wait until I see the name of "([^"]*)", refreshing the page$/' features/secondary/min_salt_mgrcompat_state.feature:66:in `I wait until I see the name of "sle_minion", refreshing the page'
And
I wait until onboarding is completed for "sle_minion"
0s
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: Check that installed packages are visible with the new module.run syntax
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_mgrcompat_state.feature:70:in `I am on the Systems overview page of this "sle_minion"'
When
I follow "Software" in the content area
0s
And
I follow "List / Remove"
0s
Then
I should see a "aaa_base" text
0s
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: Check that Hardware Refresh button works on a SLE minion with new module.run syntax
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_mgrcompat_state.feature:76:in `I am on the Systems overview page of this "sle_minion"'
And
I follow "Hardware"
0s
And
I click on "Schedule Hardware Refresh"
0s
Then
I should see a "You have successfully scheduled a hardware profile refresh" text
0s
When
I wait until event "Hardware List Refresh scheduled" is completed
0s
And
I wait until there is no Salt job calling the module "hardware.profileupdate" on "sle_minion"
0s
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: Cleanup: Delete profile of the minion and disable new module.run syntax
When
I remove "custom_modulerun.conf" from salt minion config directory on "sle_minion"
00:00:00.845
And
I remove "custom_grains.conf" from salt minion config directory on "sle_minion"
00:00:00.473
And
I delete "sle_minion" system using the api
00:00:01.042
And
I perform a full salt minion cleanup on "sle_minion"
00:00:04.875
And
I wait until Salt client is inactive on "sle_minion"
00:00:00.512
Then
"sle_minion" should not be registered
00:00:01.059
@skip_if_github_validation
@sle_minion
@scope_salt
Scenario: Cleanup: bootstrap again the minion after mgrcompat tests
When
I perform a full salt minion cleanup on "sle_minion"
00:00:04.876
And
I follow the left menu "Systems > Bootstrapping"
00:00:00.088
Then
I should see a "Bootstrap Minions" text
00:00:00.072
The hostname of sle_minion is uyuni-master-suse-minion.sumaci.aws
And
I enter "22" as "port"
00:00:00.063
And
I enter "root" as "user"
00:00:00.071
And
I enter "linux" as "password"
00:00:00.078
And
I select "1-SUSE-KEY-x86_64" from "activationKeys"
00:00:00.084
And
I select the hostname of "proxy" from "proxies" if present
00:00:00.071
And
I click on "Bootstrap"
00:00:00.079
And
I wait until I see "Bootstrap process initiated." text
00:00:43.091
And
I wait until onboarding is completed for "sle_minion"
00:01:22.725