@skip_if_containerized_server
@skip_if_github_validation
@sle_minion
@scope_onboarding
@susemanager
@uyuni
Feature: 0050 - Register a Salt minion with a bootstrap script
Description: 1) delete SLES minion and register again with bootstrap script
2) subscribe minion to a base channels
3) install and remove a package
File name: min_bootstrap_script.feature
Relative path: secondary/min_bootstrap_script.feature
@skip_if_containerized_server
@skip_if_github_validation
@sle_minion
@scope_onboarding
Scenario: Delete SLES minion system profile before script bootstrap test
When
I delete "sle_minion" system using the api
0s
And
I perform a full salt minion cleanup on "sle_minion"
0s
And
I wait until Salt client is inactive on "sle_minion"
0s
Then
"sle_minion" should not be registered
0s
@skip_if_containerized_server
@skip_if_github_validation
@sle_minion
@scope_onboarding
Scenario: Bootstrap the minion using the script
When
I bootstrap "sle_minion" using bootstrap script with activation key "1-SUSE-KEY-x86_64" from the proxy
0s
And
I wait at most 10 seconds until Salt master sees "sle_minion" as "unaccepted"
0s
And
I accept "sle_minion" key in the Salt master
0s
Then
I should see "sle_minion" via spacecmd
0s
@skip_if_containerized_server
@skip_if_github_validation
@sle_minion
@scope_onboarding
Scenario: Check if onboarding for the script-bootstrapped minion was successful
When
I follow the left menu "Systems > System List > All"
0s
And
I wait until I see the name of "sle_minion", refreshing the page
0s
And
I wait until onboarding is completed for "sle_minion"
0s
@skip_if_containerized_server
@skip_if_github_validation
@sle_minion
@scope_onboarding
@susemanager
Scenario: Subscribe the script-bootstrapped SLES minion to a base channel
Given
I am on the Systems overview page of this "sle_minion"
0s
When
I follow "Software" in the content area
0s
And
I follow "Software Channels" in the content area
0s
And
I wait until I do not see "Loading..." text
0s
And
I check radio button "SLE-Product-SLES15-SP7-Pool for x86_64"
0s
And
I wait until I do not see "Loading..." text
0s
And
I include the recommended child channels
0s
And
I check "SLE-Module-DevTools15-SP7-Pool for x86_64"
0s
And
I check "Fake-RPM-SUSE-Channel"
0s
And
I click on "Next"
0s
Then
I should see a "Confirm Software Channel Change" text
0s
When
I click on "Confirm"
0s
Then
I should see a "Changing the channels has been scheduled." text
0s
And
I wait until event "Subscribe channels scheduled" is completed
0s
@skip_if_containerized_server
@skip_if_github_validation
@sle_minion
@scope_onboarding
@uyuni
Scenario: Subscribe the script-bootstrapped SLES minion to a base channel
Given
I am on the Systems overview page of this "sle_minion"
0s
When
I follow "Software" in the content area
0s
And
I follow "Software Channels" in the content area
0s
And
I wait until I do not see "Loading..." text
0s
And
I check radio button "openSUSE Tumbleweed (x86_64)"
0s
And
I wait until I do not see "Loading..." text
0s
And
I check "Uyuni Client Tools for openSUSE Tumbleweed (x86_64) (Development)"
0s
And
I check "Fake-RPM-SUSE-Channel"
0s
And
I click on "Next"
0s
Then
I should see a "Confirm Software Channel Change" text
0s
When
I click on "Confirm"
0s
Then
I should see a "Changing the channels has been scheduled." text
0s
And
I wait until event "Subscribe channels scheduled" is completed
0s
@skip_if_containerized_server
@skip_if_github_validation
@sle_minion
@scope_onboarding
Scenario: Install a package to the script-bootstrapped SLES minion
Given
I am on the Systems overview page of this "sle_minion"
0s
When
I follow "Software" in the content area
0s
And
I follow "Install"
0s
And
I enter "orion-dummy" as the filtered package name
0s
And
I click on the filter button
0s
And
I check row with "orion-dummy" and arch of "sle_minion"
0s
And
I click on "Install Packages"
0s
And
I click on "Confirm"
0s
Then
I should see a "1 package install has been scheduled for" text
0s
When
I wait until event "Package Install/Upgrade scheduled" is completed
0s
Then
"orion-dummy-1.1-1.1" should be installed on "sle_minion"
0s
@skip_if_containerized_server
@skip_if_github_validation
@sle_minion
@scope_onboarding
Scenario: Run a remote command on normal SLES minion
When
I follow the left menu "Salt > Remote Commands"
0s
Then
I should see a "Remote Commands" text in the content area
0s
When
I enter command "file /tmp"
0s
And
I click on preview
0s
Then
I should see "sle_minion" hostname
0s
And
I wait until I do not see "pending" text
0s
When
I click on run
0s
And
I wait until I do not see "pending" text
0s
And
I expand the results for "sle_minion"
0s
Then
I should see "/tmp: sticky, directory" in the command output for "sle_minion"
0s
@skip_if_containerized_server
@skip_if_github_validation
@sle_minion
@scope_onboarding
Scenario: Cleanup: remove package from script-bootstrapped SLES minion
When
I remove package "orion-dummy-1.1-1.1" from this "sle_minion"
0s
Then
"orion-dummy-1.1-1.1" should not be installed on "sle_minion"
0s