@sle_minion
@scope_configuration_channels
Feature: 0136 - Configuration state channels
Description: In order to configure systems through Salt
I want to be able to use the state channels
File name: min_config_state_channel.feature
Relative path: secondary/min_config_state_channel.feature
@sle_minion
@scope_configuration_channels
Scenario: Create a state channel
When
I follow the left menu "Configuration > Channels"
00:00:00.133
And
I follow "Create State Channel"
00:00:00.283
Then
I should see a "New Config State Channel" text
00:00:00.060
When
I enter "My State Channel" as "cofName"
00:00:00.073
And
I enter "statechannel" as "cofLabel"
00:00:00.061
And
I enter "This is a state channel" as "cofDescription"
00:00:00.071
And
I enter "touch /root/foobar:\n cmd.run:\n - creates: /root/foobar" in the editor
00:00:00.004
And
I click on "Create Config State Channel"
00:00:00.676
Then
I should see a "State Channel" text
00:00:00.070
And
I should see a "Channel Properties" text
00:00:00.064
And
I should see a "Channel Information" text
00:00:00.067
And
I should see a "Configuration Actions" text
00:00:00.067
@sle_minion
@scope_configuration_channels
Scenario: Subscribe a minion to the state channel
When
I am on the Systems overview page of this "sle_minion"
00:00:03.234
And
I follow "Configuration" in the content area
00:00:00.068
And
I follow "Manage Configuration Channels" in the content area
00:00:00.067
And
I follow first "Subscribe to Channels" in the content area
00:00:00.061
And
I check "My State Channel" in the list
00:00:00.064
And
I click on "Continue"
00:00:00.610
And
I click on "Update Channel Rankings"
00:00:00.710
Then
I should see a "Channel Subscriptions successfully changed for" text
00:00:00.079
When
I follow the left menu "Configuration > Channels"
00:00:00.119
And
I follow "My State Channel"
00:00:00.439
Then
I should see a "1 system subscribed" text
00:00:00.066
When
I follow "View/Edit 'init.sls' File"
00:00:00.346
Then
I should see a "Revision 1 of /init.sls from channel My State Channel" text
00:00:00.079
And
I should see a "File Contents" text
00:00:00.074
And
I should see a "touch /root/foobar:" text
00:00:00.082
When
I am on the Systems overview page of this "sle_minion"
00:00:01.517
And
I follow "States" in the content area
00:00:00.067
And
I follow "Configuration Channels" in the content area
00:00:00.066
Then
I should see a "Execute States" button
00:00:00.201
When
I click on "Execute States"
00:00:00.075
Then
I should see a "Applying the config channels has been scheduled" text
00:00:00.273
When
I wait until event "Apply states [custom] scheduled" is completed
00:00:22.211
And
I wait until file "/root/foobar" exists on "sle_minion"
00:00:00.793
@sle_minion
@scope_configuration_channels
Scenario: Try to remove init.sls file
When
I follow the left menu "Configuration > Channels"
00:00:00.109
And
I follow "My State Channel"
00:00:00.418
And
I follow "View/Edit 'init.sls' File"
00:00:00.332
When
I follow "Delete"
00:00:00.243
And
I click on "Delete Configuration Revision"
00:00:00.389
Then
I should see a "Cannot delete the only revision for the init.sls file" text
00:00:00.081
And
I should see a "Revision 1 of /init.sls from channel My State Channel" text
00:00:00.076
@sle_minion
@scope_configuration_channels
Scenario: Cleanup: remove the state channel and the file
When
I follow the left menu "Configuration > Channels"
00:00:00.063
And
I follow "My State Channel"
00:00:00.442
And
I follow "Delete Channel"
00:00:00.287
Then
I should see a "Are you sure you want to delete this config channel?" text
00:00:00.056
When
I click on "Delete Config Channel"
00:00:00.060
Then
I should see a "Channel 'My State Channel' has been deleted." text
00:00:00.054
And
I remove "/root/foobar" from "sle_minion"
00:00:00.448
@sle_minion
@scope_configuration_channels
Scenario: Create the 1st state channel
When
I follow the left menu "Configuration > Channels"
00:00:00.061
And
I follow "Create State Channel"
00:00:00.214
Then
I should see a "New Config State Channel" text
00:00:00.058
When
I enter "My State Channel" as "cofName"
00:00:00.071
And
I enter "statechannel" as "cofLabel"
00:00:00.060
And
I enter "This is a state channel" as "cofDescription"
00:00:00.069
And
I enter "touch /root/statechannel:\n cmd.run:\n - creates: /root/statechannel" in the editor
00:00:00.006
And
I click on "Create Config State Channel"
00:00:00.653
Then
I should see a "State Channel" text
00:00:00.074
And
I should see a "Channel Properties" text
00:00:00.062
And
I should see a "Channel Information" text
00:00:00.062
And
I should see a "Configuration Actions" text
00:00:00.062
@sle_minion
@scope_configuration_channels
Scenario: Create the 2nd state channel with same name
When
I follow the left menu "Configuration > Channels"
00:00:00.059
And
I follow "Create State Channel"
00:00:00.238
Then
I should see a "New Config State Channel" text
00:00:00.058
When
I enter "My State Channel" as "cofName"
00:00:00.063
And
I enter "statechannel2" as "cofLabel"
00:00:00.057
And
I enter "This is a state channel" as "cofDescription"
00:00:00.068
And
I enter "touch /root/statechannel2:\n cmd.run:\n - creates: /root/statechannel2" in the editor
00:00:00.003
And
I click on "Create Config State Channel"
00:00:00.671
Then
I should see a "State Channel" text
00:00:00.065
And
I should see a "Channel Properties" text
00:00:00.063
And
I should see a "Channel Information" text
00:00:00.060
And
I should see a "Configuration Actions" text
00:00:00.061
@sle_minion
@scope_configuration_channels
Scenario: Create the 3rd state channel with spacecmd
When
I create channel "statechannel3" from spacecmd of type "state"
00:00:04.039
And
I follow the left menu "Configuration > Channels"
00:00:00.062
Then
I should see a "statechannel3" text
00:00:00.100
When
I update init.sls from spacecmd with content "touch /tmp/statechannel3:\n cmd.run:\n - creates: /tmp/statechannel3" for channel "statechannel3"
00:00:10.080
And
I get "/init.sls" file details for channel "statechannel3" via spacecmd
00:00:03.661
Then
I should see "Revision: 2" in the output
00:00:00.000
When
I update init.sls from spacecmd with content "touch /root/statechannel3:\n cmd.run:\n - creates: /root/statechannel3" for channel "statechannel3" and revision "100"
00:00:10.798
And
I get "/init.sls" file details for channel "statechannel3" via spacecmd
00:00:03.652
Then
I should see "Revision: 100" in the output
00:00:00.000
@sle_minion
@scope_configuration_channels
Scenario: Subscribe a minion to 1st and 2nd state channels
When
I am on the Systems overview page of this "sle_minion"
00:00:01.511
And
I follow "States" in the content area
00:00:00.073
And
I follow "Configuration Channels" in the content area
00:00:00.067
And
I click on "Search" in element "search-row"
00:00:00.071
Then
I should see a "My State Channel" text
00:00:00.180
And
I should see a "statechannel" text
00:00:00.077
And
I should see a "statechannel2" text
00:00:00.070
When
I check "statechannel-cbox"
00:00:00.087
And
I check "statechannel2-cbox"
00:00:00.078
And
I click on "Save Changes"
00:00:00.065
And
I wait until I see "Edit Channel Ranks" text
00:00:00.062
Then
I should see a "My State Channel (statechannel)" text
00:00:00.062
And
I should see a "My State Channel (statechannel2)" text
00:00:00.062
When
I click on "Confirm"
00:00:00.058
Then
I should see a "State assignments have been saved." text
00:00:00.277
@sle_minion
@scope_configuration_channels
Scenario: Apply the Configuration channel state
When
I follow "States" in the content area
00:00:00.064
And
I follow "Configuration Channels" in the content area
00:00:00.057
And
I click on "Search" in element "search-row"
00:00:00.060
And
I wait until I see "Execute States" text
00:00:00.070
And
I click on "Execute States"
00:00:00.230
Then
I should see a "Applying the config channels has been scheduled" text
00:00:10.000
+ Show Error
Text 'Applying the config channels has been scheduled' not found (ScriptError) ./features/step_definitions/navigation_steps.rb:691:in `/^I should see a "([^"]*)" text$/' features/secondary/min_config_state_channel.feature:140:in `I should see a "Applying the config channels has been scheduled" text'
And
I wait until event "Apply states [custom] scheduled" is completed
0s
And
I wait until file "/root/statechannel" exists on "sle_minion"
0s
And
I wait until file "/root/statechannel2" exists on "sle_minion"
0s
undefined method `map' for an instance of String (NoMethodError) ./features/support/env.rb:211:in `web_session_is_active?' ./features/support/env.rb:182:in `After'
@sle_minion
@scope_configuration_channels
Scenario: Subscribe a minion to the 3rd state channel
Unable to find xpath "//section" (Capybara::ElementNotFound) ./features/step_definitions/navigation_steps.rb:387:in `/^I follow "([^"]*)" in the (.+)$/' features/secondary/min_config_state_channel.feature:146:in `I follow "States" in the content area'
And
I follow "Configuration Channels" in the content area
0s
Then
I should see a "My State Channel" text
0s
And
I should see a "statechannel3" text
0s
When
I check "statechannel3-cbox"
0s
And
I click on "Save Changes"
0s
And
I wait until I see "Edit Channel Ranks" text
0s
And
I should see a "My State Channel (statechannel)" text
0s
And
I should see a "My State Channel (statechannel2)" text
0s
And
I should see a "statechannel3 (statechannel3)" text
0s
When
I click on "Confirm"
0s
Then
I should see a "State assignments have been saved." text
0s
@sle_minion
@scope_configuration_channels
Scenario: Apply the Configuration channel state with spacecmd
When
I schedule apply configchannels for "sle_minion"
00:00:07.567
execution expired (Timeout::Error) ./features/support/commonlib.rb:89:in `repeat_until_timeout' ./features/step_definitions/command_steps.rb:822:in `/^I wait at most (\d+) seconds until file "([^"]*)" exists on "([^"]*)"$/' ./features/step_definitions/command_steps.rb:817:in `/^I wait until file "([^"]*)" exists on "([^"]*)"$/' features/secondary/min_config_state_channel.feature:161:in `I wait until file "/root/statechannel3" exists on "sle_minion"'
@sle_minion
@scope_configuration_channels
Scenario: Cleanup: remove the 1st state channel and the deployed file
Unable to find xpath "//aside/div[@id='nav']/nav/ul/li/div/a[contains(.,'Configuration')]/parent::div/parent::li" (Capybara::ElementNotFound) ./features/step_definitions/navigation_steps.rb:441:in `block (2 levels) in (top (required))' ./features/step_definitions/navigation_steps.rb:433:in `each' ./features/step_definitions/navigation_steps.rb:433:in `each_with_index' ./features/step_definitions/navigation_steps.rb:433:in `/^I follow the left menu "([^"]*)"$/' features/secondary/min_config_state_channel.feature:164:in `I follow the left menu "Configuration ) Channels"'
And
I follow first "My State Channel"
0s
And
I follow "Delete Channel"
0s
Then
I should see a "Are you sure you want to delete this config channel?" text
0s
When
I click on "Delete Config Channel"
0s
Then
I should see a "Channel 'My State Channel' has been deleted." text
0s
When
I remove "/root/statechannel" from "sle_minion"
0s
@sle_minion
@scope_configuration_channels
Scenario: Cleanup: remove the 2nd state channel and the deployed file
Unable to find xpath "//aside/div[@id='nav']/nav/ul/li/div/a[contains(.,'Configuration')]/parent::div/parent::li" (Capybara::ElementNotFound) ./features/step_definitions/navigation_steps.rb:441:in `block (2 levels) in (top (required))' ./features/step_definitions/navigation_steps.rb:433:in `each' ./features/step_definitions/navigation_steps.rb:433:in `each_with_index' ./features/step_definitions/navigation_steps.rb:433:in `/^I follow the left menu "([^"]*)"$/' features/secondary/min_config_state_channel.feature:173:in `I follow the left menu "Configuration ) Channels"'
And
I follow first "My State Channel"
0s
And
I follow "Delete Channel"
0s
Then
I should see a "Are you sure you want to delete this config channel?" text
0s
When
I click on "Delete Config Channel"
0s
Then
I should see a "Channel 'My State Channel' has been deleted." text
0s
When
I remove "/root/statechannel2" from "sle_minion"
0s
@sle_minion
@scope_configuration_channels
Scenario: Cleanup: remove the 3rd state channel and the deployed file
Unable to find xpath "//aside/div[@id='nav']/nav/ul/li/div/a[contains(.,'Configuration')]/parent::div/parent::li" (Capybara::ElementNotFound) ./features/step_definitions/navigation_steps.rb:441:in `block (2 levels) in (top (required))' ./features/step_definitions/navigation_steps.rb:433:in `each' ./features/step_definitions/navigation_steps.rb:433:in `each_with_index' ./features/step_definitions/navigation_steps.rb:433:in `/^I follow the left menu "([^"]*)"$/' features/secondary/min_config_state_channel.feature:182:in `I follow the left menu "Configuration ) Channels"'
And
I follow first "statechannel3"
0s
And
I follow "Delete Channel"
0s
Then
I should see a "Are you sure you want to delete this config channel?" text
0s
When
I click on "Delete Config Channel"
0s
Then
I should see a "Channel 'statechannel3' has been deleted." text
0s
When
I remove "/root/statechannel3" from "sle_minion"
0s