@skip_if_github_validation
@scope_formulas
@bug_reported
@skip_if_containerized_server
@ssh_minion
Feature: 0131 - Use salt formulas
Description: * Related GitHub Card: https://github.com/SUSE/spacewalk/issues/30502
In order to use simple forms to apply changes to minions
As an authorized user
I want to be able to install and use salt formulas
File name: min_salt_formulas.feature
Relative path: secondary/min_salt_formulas.feature
@skip_if_github_validation
@scope_formulas
@bug_reported
@bug_reported
Scenario: The new formula appears on the server
When
I follow the left menu "Salt > Formula Catalog"
00:00:00.131
Text 'locale' not found (ScriptError) ./features/step_definitions/navigation_steps.rb:13:in `block (2 levels) in (top (required))' ./features/step_definitions/navigation_steps.rb:12:in `/^I should see a "(.*)" text in the content area$/' features/secondary/min_salt_formulas.feature:27:in `I should see a "locale" text in the content area'
@skip_if_github_validation
@scope_formulas
@bug_reported
Scenario: Enable the formula on the minion
Given
I am on the Systems overview page of this "sle_minion"
00:00:01.526
When
I follow "Formulas" in the content area
00:00:00.073
Then
I should see a "Choose formulas:" text
00:00:00.139
And
I should see a "General System Configuration" text
00:00:00.190
And
I should see a "Locale" text
00:00:00.199
When
I check the "locale" formula
00:00:00.075
And
I click on "Save"
00:00:00.062
And
I wait until I see "Formula saved." text
00:00:00.705
Then
the "locale" formula should be checked
00:00:10.035
@skip_if_github_validation
@scope_formulas
@bug_reported
Scenario: Parametrize the formula on the minion
When
I follow "Formulas" in the content area
00:00:00.061
And
I follow first "Locale" in the content area
00:00:00.214
And
I click on "Expand All Sections"
00:00:00.149
And
I select "Etc/GMT-5" in timezone name field
00:00:00.057
And
I select "French" in language field
00:00:00.042
And
I select "French (Canada)" in keyboard layout field
00:00:00.043
And
I click on "Save Formula"
00:00:00.061
Then
I should see a "Formula saved" text
00:00:00.690
@skip_if_github_validation
@scope_formulas
@bug_reported
Scenario: Check the pillar data after saving the formula
When
I refresh the pillar data
00:00:04.881
Then
the pillar data for "formulas" should be "- locale" on "sle_minion"
00:00:03.491
And
the pillar data for "timezone:name" should be "Etc/GMT-5" on "sle_minion"
00:00:03.405
And
the pillar data for "keyboard_and_language:keyboard_layout" should be "French (Canada)" on "sle_minion"
00:00:03.481
And
the pillar data for "keyboard_and_language:language" should be "French" on "sle_minion"
00:00:04.594
@skip_if_github_validation
@scope_formulas
@bug_reported
@ssh_minion
Scenario: No other minion is affected by the formula
Then
the pillar data for "formulas" should be empty on "ssh_minion"
00:00:10.430
And
the pillar data for "timezone" should be empty on "ssh_minion"
00:00:10.024
And
the pillar data for "keyboard_and_language" should be empty on "ssh_minion"
00:00:09.850
@skip_if_github_validation
@scope_formulas
@bug_reported
Scenario: Use the parametrized formula in test mode
Given
I am on the Systems overview page of this "sle_minion"
00:00:01.635
And
I follow "States" in the content area
00:00:00.072
Then
I should see the toggler "disabled"
00:00:00.011
When
I click on the "disabled" toggler
00:00:00.044
And
I click on "Apply Highstate"
00:00:00.060
Then
I should see a "Applying the highstate has been scheduled." text
00:00:00.546
And
I wait at most 300 seconds until event "Apply highstate in test-mode scheduled" is completed
00:00:23.601
@skip_if_github_validation
@scope_formulas
@bug_reported
Scenario: Apply the parametrized formula via the highstate
When
I enable repository "sle_update_repo" on this "sle_minion" without error control
00:00:00.786
And
I follow "States" in the content area
00:00:00.060
And
I click on "Apply Highstate"
00:00:00.058
Then
I should see a "Applying the highstate has been scheduled." text
00:00:00.429
When
I wait until event "Apply highstate scheduled" is completed
00:00:23.706
Then
the timezone on "sle_minion" should be "+05"
00:00:00.783
And
the keymap on "sle_minion" should be "ca"
00:00:00.456
And
the language on "sle_minion" should be "fr_FR.UTF-8"
00:00:00.910
And
I disable repository "sle_update_repo" on this "sle_minion" without error control
00:00:00.484
@skip_if_github_validation
@scope_formulas
@bug_reported
Scenario: Reset the formula on the minion
When
I follow "Formulas" in the content area
00:00:00.067
And
I follow first "Locale" in the content area
00:00:00.262
And
I click on "Clear values" and confirm alert box
00:00:00.553
And
I click on "Save Formula"
00:00:00.068
Then
I should see a "Formula saved" text
00:00:00.558
@skip_if_github_validation
@scope_formulas
@bug_reported
Scenario: Check the pillar data after resetting the formula
When
I refresh the pillar data
00:00:06.174
Then
the pillar data for "formulas" should be "- locale" on "sle_minion"
00:00:03.427
And
the pillar data for "timezone:name" should be "CET" on "sle_minion"
00:00:03.517
And
the pillar data for "keyboard_and_language:keyboard_layout" should be "English (US)" on "sle_minion"
00:00:04.828
And
the pillar data for "keyboard_and_language:language" should be "English (US)" on "sle_minion"
00:00:03.455
@skip_if_github_validation
@scope_formulas
@bug_reported
Scenario: Apply the reset formula via the highstate
And
I follow "States" in the content area
00:00:00.070
And
I click on "Apply Highstate"
00:00:00.058
Then
I should see a "Applying the highstate has been scheduled." text
00:00:00.557
When
I wait until event "Apply highstate scheduled" is completed
00:00:22.868
Then
the timezone on "sle_minion" should be "CET"
00:00:00.731
And
the keymap on "sle_minion" should be "us"
00:00:00.433
And
the language on "sle_minion" should be "en_US.UTF-8"
00:00:00.869
@skip_if_github_validation
@scope_formulas
@bug_reported
Scenario: Disable the formula on the minion
When
I follow "Formulas" in the content area
00:00:00.077
Then
I should see a "Choose formulas:" text
00:00:00.139
And
I should see a "General System Configuration" text
00:00:00.179
And
I should see a "Locale" text
00:00:00.199
When
I uncheck the "locale" formula
00:00:00.074
And
I click on "Save"
00:00:00.062
And
I wait until I see "Formula saved." text
00:00:00.858
Then
the "locale" formula should be unchecked
00:00:10.030
@skip_if_github_validation
@scope_formulas
@bug_reported
Scenario: Check the pillar data after disabling the formula
When
I refresh the pillar data
00:00:04.838
Then
the pillar data for "formulas" should be empty on "sle_minion"
00:00:03.465
And
the pillar data for "timezone" should be empty on "sle_minion"
00:00:03.408
And
the pillar data for "keyboard_and_language" should be empty on "sle_minion"
00:00:03.426
@skip_if_github_validation
@scope_formulas
@bug_reported
Scenario: Assign locale formula to minion via group formula
When
I follow the left menu "Systems > System Groups"
00:00:00.076
When
I follow "Create Group"
00:00:00.282
And
I enter "locale-formula-group" as "name"
00:00:00.074
And
I enter "Test group with locale formula added" as "description"
00:00:00.076
And
I click on "Create Group"
00:00:00.059
Then
I should see a "System group locale-formula-group created." text
00:00:00.585
When
I follow "Formulas" in the content area
00:00:00.069
Then
I should see a "Choose formulas:" text
00:00:00.181
And
I should see a "General System Configuration" text
00:00:00.197
And
I should see a "Locale" text
00:00:00.196
When
I check the "locale" formula
00:00:00.072
And
I click on "Save"
00:00:00.061
And
I wait until I see "Formula saved." text
00:00:00.470
And
I follow "Target"
00:00:00.499
And
I check the "sle_minion" client
00:00:00.059
And
I click on "Add Systems"
00:00:01.286
Then
I should see a "1 systems were added to locale-formula-group server group." text
00:00:00.203
@skip_if_github_validation
@scope_formulas
@bug_reported
Scenario: Check the pillar data after assigning group formula
When
I refresh the pillar data
00:00:04.095
Then
the pillar data for "formulas" should be "- locale" on "sle_minion"
00:00:03.453
And
the pillar data for "timezone:name" should be "CET" on "sle_minion"
00:00:03.610
And
the pillar data for "keyboard_and_language:keyboard_layout" should be "English (US)" on "sle_minion"
00:00:04.445
And
the pillar data for "keyboard_and_language:language" should be "English (US)" on "sle_minion"
00:00:03.449
@skip_if_github_validation
@scope_formulas
@bug_reported
@ssh_minion
Scenario: No other minion is affected by the group formula
Then
the pillar data for "formulas" should be empty on "ssh_minion"
00:00:11.943
And
the pillar data for "timezone" should be empty on "ssh_minion"
00:00:10.170
And
the pillar data for "keyboard_and_language" should be empty on "ssh_minion"
00:00:10.612
@skip_if_github_validation
@scope_formulas
@bug_reported
Scenario: Cleanup: remove "locale-formula-group" system group
When
I follow the left menu "Systems > System Groups"
00:00:00.076
And
I follow "locale-formula-group" in the content area
00:00:00.084
And
I follow "Delete Group" in the content area
00:00:00.072
When
I click on "Confirm Deletion"
00:00:00.057
Unable to find visible xpath "/html" (Capybara::ElementNotFound) ./features/support/commonlib.rb:125:in `check_text?' ./features/step_definitions/navigation_steps.rb:691:in `/^I should see a "([^"]*)" text$/' features/secondary/min_salt_formulas.feature:159:in `I should see a "System group" text'
And
I should see a "locale-formula-group" text
0s
And
I should see a "deleted" text
0s
@skip_if_github_validation
@scope_formulas
@bug_reported
Scenario: Cleanup: reset locale values on the minion
Given
I am on the Systems overview page of this "sle_minion"
00:00:01.553
And
I follow "States" in the content area
00:00:00.069
And
I click on "Apply Highstate"
00:00:00.061
Then
I should see a "Applying the highstate has been scheduled." text
00:00:00.329
When
I wait until event "Apply highstate scheduled" is completed
00:00:22.654
Then
the timezone on "sle_minion" should be "CET"
00:00:00.792
And
the keymap on "sle_minion" should be "us"
00:00:00.434
And
the language on "sle_minion" should be "en_US.UTF-8"
00:00:00.887