Commit graph

36 commits

Author SHA1 Message Date
David Wittman
8d53ef2f60 [service] Fix bug with upstart detection
Upstart scripts are being incorrectly identified as SysV init scripts
due to a logic error in the `service` module.

Because upstart uses multiple commands (`/sbin/start`, `/sbin/stop`,
etc.) for managing service state, the codepath for upstart sets
`self.svc_cmd` to an empty string on line 451.

Empty strings are considered a non-truthy value in Python, so
conditionals which are checking the state of `self.svc_cmd` should
explicitly compare it to `None` to avoid overlooking the fact that
the service may be controlled by an upstart script.
2015-03-25 17:37:18 -05:00
Toshio Kuratomi
939ecd33d4 In service_enable, the default of changed is True so we have to set it
to False explicitly if it is False.

Fixes #875
2015-03-03 11:23:35 -08:00
Brian Coca
1bca815d37 Merge pull request #95 from Gamevy/use-insserv
Use insserv where available
2015-02-16 18:52:38 -05:00
Brian Coca
ed8154bdc7 Merge pull request #759 from jonhadfield/systemd_enabled_check
use is-enabled to check systemd service status.
2015-02-16 12:29:44 -05:00
Dagobert Michelsen
1f2ffb3900 Solaris SMF is already supported and should be mentioned in the docs, 2015-02-12 17:04:31 +01:00
Brian Coca
b82055f021 Merge pull request #648 from bcoca/service_fix_update-rc.d
simplified update-rc.d enable/disable handling,
2015-02-11 21:05:25 -05:00
Jon Hadfield
b20b29bd17 use is-enabled to check systemd service status. 2015-02-08 18:15:15 +00:00
Graham Hay
17c7d9c5d5 Use insserv where available 2015-02-04 12:24:56 +00:00
Jonathan Armani
645e0653a3 Merge branch 'devel' into openbsd_rcctl 2015-01-23 13:01:34 +01:00
Toshio Kuratomi
4f1f8e89c9 More information about distutils on Solaris in case we run into this again 2015-01-22 21:55:27 -08:00
Toshio Kuratomi
effdba95de Merge pull request #639 from tgolly/devel
distutils is not available on some non-Linux OS's
2015-01-22 21:49:17 -08:00
Brian Coca
e957150f77 Merge pull request #189 from jarmani/openbsd_rcctl
Openbsd rcctl
2015-01-19 10:12:16 -05:00
Patrik Lundin
e8c328773a Update OpenBSD rcctl handling to use new syntax.
See http://marc.info/?l=openbsd-cvs&m=142054488027109&w=2
2015-01-17 12:04:41 +01:00
Tim G
8f43a0a4fe Load distutils on all platforms EXCEPT Solaris.
Solaris doesn't ship distutils with with the default Python package.  This patch fixes "service" on Solaris since 30d6713.
2015-01-16 10:06:36 +10:00
Brian Coca
9ac5ed2621 now allows for case in which someone removed the K* links and is trying
to reenable a service
2015-01-15 15:53:39 -05:00
Brian Coca
f4a709ad7c simplified update-rc.d enable/disable handling, removed forced defaults
creation as that breaks local customizations
2015-01-15 15:32:19 -05:00
Tim G
68b5b7be72 distutils is not available on some non-Linux OS's 2015-01-14 13:15:38 +10:00
Patrik Lundin
2acfbf016d Handle string returned by 'default' correctly.
We need to handle the string returned by 'default' in the same way we handle
the string returned by 'status' since the resulting flags are compared later.
2014-12-11 23:01:23 +01:00
Brian Coca
aba9e5e4f9 vastly simplified systemd detection, made enable/disable errors clearer
both of which allows us to remove 'service name detection' as if systemd
is init we still use it to handle initscripts.
2014-12-08 08:15:54 -05:00
Brian Coca
df6d58614e now actually adds usable name for systemd when service only has init
script
2014-12-05 12:45:01 -05:00
Toshio Kuratomi
5af4463823 Gixes to doc formatting 2014-12-03 08:17:15 -08:00
Brian Coca
943f8fe7c9 Merge pull request #346 from bcoca/service_cleanup
service cleanup
2014-12-02 11:03:03 -05:00
Achilleas Pipinellis
a375ce33d3 Clarify supported init systems. 2014-12-01 16:15:24 +02:00
Brian Coca
29d211e7ab service cleanup 2014-11-17 22:32:16 -05:00
Brian Coca
f49120598f service now detects systemd is actually running, not just installed 2014-11-17 15:03:49 -05:00
Patrik Lundin
eea4d06848 Fix typo: Replace "N0" with "NO". 2014-11-13 12:39:29 +01:00
Toshio Kuratomi
7f611468a8 Fix for systemd service scripts with newlines
Fixes #127
2014-10-22 16:43:35 -04:00
Patrik Lundin
f9d9c1b6d7 Multiple fixes for OpenBSD rcctl handling.
* Use the newly added 'default' argument to know if the default flags are set
  or not.
* Handle that 'status' may either return flags or YES/NO.
* Centralize flag handling logic.
* Set action variable after check if we need to keep going.

Big thanks to @ajacoutot for implementing the rcctl 'default' argument.
2014-10-12 18:41:23 +02:00
Patrik Lundin
e463400412 Simplify self.arguments logic.
Strange logic pointed out by @jarmani, thanks!
2014-10-06 21:20:20 +02:00
Patrik Lundin
924cf20cf8 Depend more on rcctl if it is present.
* Make the module support enable/disable of special services like pf via rcctl.
  Idea and method from @jarmani.
* Make the module handle when the user supplied 'arguments' variable does not
  match the current flags in rc.conf.local.
* Update description now that the code tries to use rcctl for everything if it
  is available.
2014-10-06 21:20:20 +02:00
Patrik Lundin
5f37624eb4 Tweak error checking for "enabled" code.
Based on input from @jarmani:
* A return value of 2 now means a service does not exist. Instead of
  trying to handle the different meanings of rc after running "status",
  just look at stderr to know if something failed.
* Skip looking at stdout to make the code cleaner. Any errors should
  turn up on stderr.
2014-10-06 21:20:20 +02:00
Patrik Lundin
c6dd88c1d1 Fail if "rcctl status" writes to stderr. 2014-10-06 21:20:20 +02:00
Patrik Lundin
1a8cdb5e3e Check rc and print error message if any.
It is probably good to use stdout before printing a generic error
message as well.
2014-10-06 21:20:20 +02:00
Patrik Lundin
c46e030100 Make "enabled" code aware of --check mode. 2014-10-06 21:20:20 +02:00
Jonathan Armani
1b97390765 Add enable / disable of services for OpenBSD if rcctl is present 2014-10-06 21:20:20 +02:00
Michael DeHaan
c8e1a2077e file extensions! 2014-09-26 10:37:56 -04:00
Renamed from system/service (Browse further)