Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.

Bug 1515671

Summary: [RFE] Extend "Service Action - SSH Default" job template to be able to enable and disable services
Product: Red Hat Satellite 6 Reporter: Ture Karlsson <tkarlsso>
Component: Remote ExecutionAssignee: satellite6-bugs <satellite6-bugs>
Status: VERIFIED --- QA Contact: Peter Ondrejka <pondrejk>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 6.2.12CC: aruzicka, bkearney, egolov, inecas, tkarlsso
Target Milestone: 6.5.0Keywords: FutureFeature, RFE, Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: tfm-rubygem-foreman_remote_execution-1.6.4 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Ture Karlsson 2017-11-21 08:28:46 UTC
Description of problem:
The standard job template "Service Action - SSH Default" does not support enabling or disabling services. 

Version-Release number of selected component (if applicable): 6.2.12


How reproducible:
Always

Steps to Reproduce:
1. Run job template "Service Action - SSH Default"
2. Notice that there are no option to enable or disable a service

Actual results:
You have to use "Run Command - SSH Default" with "chkconfig <service name> on/off" or "systemctl <service name> enable/disable" depending on the target host.

Expected results:
There should be options in "Service Action - SSH Default" to enable/disable services and the template should handle if it is executed on a system that is using systemd or not.

Implementation suggestion:
Change the template to this:

<% if @host.operatingsystem.family == "Redhat" && @host.operatingsystem.major.to_i > 6 -%>
systemctl <%= input("action") %> <%= input("service") %>
<% elsif input("action") == "enable" -%>
chkconfig <%= input("service") %> on
<% elsif input("action") == "disable" -%>
chkconfig <%= input("service") %> off
<% else -%>
service <%= input("service") %> <%= input("action") %>
<% end -%>

And in the Job tab under Template input, add "enable" and "disable" to the list of Options so that the list consist of the following options:

restart
start
stop
status
enable
disable

Comment 1 Adam Ruzicka 2017-11-21 10:30:08 UTC
Created redmine issue http://projects.theforeman.org/issues/21717 from this bug

Comment 2 pm-sat@redhat.com 2018-06-19 08:14:18 UTC
Moving this bug to POST for triage into Satellite 6 since the upstream issue http://projects.theforeman.org/issues/21717 has been resolved.

Comment 4 Peter Ondrejka 2018-11-14 11:38:44 UTC
Well, verified for "Service Action - SSH Default" on Sat 6.5 snap 2, but shouldn't we fix the same problem in "Service Action - Ansible Default" while we are at it?

Comment 5 Peter Ondrejka 2018-11-14 12:10:11 UTC
OK turned out "Service Action - Ansible Default" has the enable option implemented as a separate input, which is cumbersome but not a reason to block this bz