@scope_ansible
@scope_salt_ssh
@ssh_minion
@bug_reported
@susemanager
Feature: 0126 - Operate an Ansible control node in SSH minion
Description: * Related GitHub Card: https://github.com/SUSE/spacewalk/issues/30806
File name: minssh_ansible_control_node.feature
Relative path: secondary/minssh_ansible_control_node.feature
@scope_ansible
@scope_salt_ssh
@ssh_minion
@bug_reported
@susemanager
Scenario: Pre-requisite: Subscribe SUSE minions to SLE-Module-Python3-15-SP7-Pool for x86_64
Given
I am on the Systems overview page of this "ssh_minion"
0s
When
I follow "Software" in the content area
0s
And
I follow "Software Channels" in the content area
0s
And
I check "SLE-Module-Python3-15-SP7-Pool for x86_64" by label
0s
And
I click on "Next"
0s
And
I click on "Confirm"
0s
And
I wait until I see "Changing the channels has been scheduled." text
0s
And
I follow "scheduled"
0s
And
I wait until I see "1 system successfully completed this action" text, refreshing the page
0s
@scope_ansible
@scope_salt_ssh
@ssh_minion
@bug_reported
Scenario: Enable "Ansible control node" system type
Given
I am on the Systems overview page of this "ssh_minion"
00:00:01.786
When
I follow "Properties" in the content area
00:00:00.067
And
I check "ansible_control_node"
00:00:00.078
And
I click on "Update Properties"
00:00:01.314
Then
I wait until I see "Ansible Control Node type has been applied." text
00:00:00.089
@scope_ansible
@scope_salt_ssh
@ssh_minion
@bug_reported
@bug_reported
Scenario: Apply highstate and check that Ansible is installed
Given
I am on the Systems overview page of this "ssh_minion"
00:00:01.879
When
I follow "States" in the content area
00:00:00.066
And
I click on "Apply Highstate"
00:00:00.055
And
I wait until event "Apply highstate scheduled" is completed
00:01:28.312
Then
"ansible" should be installed on "ssh_minion"
00:00:00.485
@scope_ansible
@scope_salt_ssh
@ssh_minion
@bug_reported
Scenario: The Ansible tab appears in the system overview page
Given
I am on the Systems overview page of this "ssh_minion"
00:00:01.743
When
I follow "Ansible" in the content area
00:00:00.079
Then
I should see a "Ansible Control Node Configuration" text
00:00:00.060
@scope_ansible
@scope_salt_ssh
@ssh_minion
@bug_reported
Scenario: Configure some inventory and playbooks path
Given
I am on the Systems overview page of this "ssh_minion"
00:00:01.929
When
I follow "Ansible" in the content area
00:00:00.058
Then
I should see a "Ansible Control Node Configuration" text
00:00:00.058
And
I enter "/srv/playbooks/" as "new_playbook_path_input"
00:00:00.180
And
I click on "new_playbook_path_save"
00:00:00.054
And
I enter "/srv/playbooks/orion_dummy/hosts" as "new_inventory_path_input"
00:00:00.097
And
I click on "new_inventory_path_save"
00:00:00.057
@scope_ansible
@scope_salt_ssh
@ssh_minion
@bug_reported
Scenario: Display inventories
Given
I am on the Systems overview page of this "ssh_minion"
00:00:02.124
When
I follow "Ansible" in the content area
00:00:00.059
And
I follow "Inventories" in the content area
00:00:00.060
And
I wait until I see "/srv/playbooks/orion_dummy/hosts" text
00:00:00.499
And
I click on the inventory accordion for "/srv/playbooks/orion_dummy/hosts"
00:00:00.046
Then
I wait until I see "myself" text
00:00:21.844
@scope_ansible
@scope_salt_ssh
@ssh_minion
@bug_reported
Scenario: Discover playbooks and display them
Given
I am on the Systems overview page of this "ssh_minion"
00:00:01.910
When
I follow "Ansible" in the content area
00:00:00.080
And
I follow "Playbooks" in the content area
00:00:00.061
And
I wait until I see "/srv/playbooks" text
00:00:00.327
And
I click on "/srv/playbooks"
00:00:00.055
Then
I wait until I see "/srv/playbooks/orion_dummy/playbook_orion_dummy.yml" text
00:00:10.424
@scope_ansible
@scope_salt_ssh
@ssh_minion
@bug_reported
Scenario: Run a playbook using custom inventory
Given
I am on the Systems overview page of this "ssh_minion"
00:00:02.716
When
I follow "Ansible" in the content area
00:00:00.066
And
I follow "Playbooks" in the content area
00:00:00.064
And
I wait until I see "/srv/playbooks" text
00:00:00.233
And
I click on "/srv/playbooks"
00:00:00.053
And
I wait until I see "/srv/playbooks/orion_dummy/playbook_orion_dummy.yml" text
00:00:10.368
And
I click on "orion_dummy/playbook_orion_dummy.yml"
00:00:00.058
And
I wait until I see "Playbook Content" text
00:00:07.903
And
I select "/srv/playbooks/orion_dummy/hosts" from "inventory-path-select"
00:00:01.117
And
I click on "Schedule"
00:00:00.069
Then
I should see a "Playbook execution has been scheduled" text
00:00:00.245
And
I wait until event "Execute playbook 'playbook_orion_dummy.yml' scheduled" is completed
00:00:38.661
And
file "/tmp/file.txt" should exist on "ssh_minion"
00:00:00.784
@scope_ansible
@scope_salt_ssh
@ssh_minion
@bug_reported
Scenario: Cleanup: Disable Ansible and remove test playbooks and inventory file
Given
I am on the Systems overview page of this "ssh_minion"
00:00:01.784
When
I follow "Properties" in the content area
00:00:00.081
And
I uncheck "ansible_control_node"
00:00:10.081
And
I click on "Update Properties"
00:00:01.131
Then
I should see a "System properties changed" text
00:00:00.092
And
I remove package "orion-dummy" from this "ssh_minion" without error control
00:00:01.879
And
I remove "/tmp/file.txt" from "ssh_minion"
00:00:00.428
@scope_ansible
@scope_salt_ssh
@ssh_minion
@bug_reported
@susemanager
Scenario: Cleanup: Unsubscribe SUSE minions from SLE-Module-Python3-15-SP7-Pool for x86_64
Given
I am on the Systems overview page of this "ssh_minion"
0s
When
I follow "Software" in the content area
0s
And
I follow "Software Channels" in the content area
0s
And
I uncheck "SLE-Module-Python3-15-SP7-Pool for x86_64" by label
0s
And
I click on "Next"
0s
And
I click on "Confirm"
0s
And
I wait until I see "Changing the channels has been scheduled." text
0s
And
I follow "scheduled"
0s
And
I wait until I see "1 system successfully completed this action" text, refreshing the page
0s
@scope_ansible
@scope_salt_ssh
@ssh_minion
@bug_reported
Scenario: Cleanup: Disable "Ansible control node" system type
Given
I am on the Systems overview page of this "ssh_minion"
00:00:01.783
When
I follow "Properties" in the content area
00:00:00.073
And
I uncheck "ansible_control_node"
00:00:10.028
And
I click on "Update Properties"
00:00:01.934
@scope_ansible
@scope_salt_ssh
@ssh_minion
@bug_reported
Scenario: Cleanup: Apply highstate to disable the minion as an "Ansible control node"
Given
I am on the Systems overview page of this "ssh_minion"
00:00:01.860
When
I follow "States" in the content area
00:00:00.074
And
I click on "Apply Highstate"
00:00:00.097
And
I wait until event "Apply highstate scheduled" is completed
00:00:54.917