Public bug reported:

Systemd properly honors an exit code of 6 when creating a native
service, like so:

---8<---
ranger@carolina:/lib/systemd/system$ cat exitcode.service
[Unit]
Description=Test Exit Code (Systemd)

[Service]
Type=oneshot
ExecStart=/bin/bash -c 'exit 6'

[Install]
WantedBy=default.target
ranger@carolina:/lib/systemd/system$ sudo systemctl start exitcode
Job for exitcode.service failed because the control process exited with error 
code.
See "systemctl status exitcode.service" and "journalctl -xe" for details.
ranger@carolina:/lib/systemd/system$ echo $?
1
---8<---

However, the equivalent SysV init file improperly returns an exit code
of 0 when starting under the compatibility layer:

---8<---
ranger@carolina:/etc/init.d$ cat exitcode
#! /bin/sh

### BEGIN INIT INFO
# Provides:          exitcode
# Required-Start:    $local_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Test Exit Code (SysV)
# Description:       Test case for Systemd SysV compatibility layer
### END INIT INFO

exit 6
ranger@carolina:/etc/init.d$ sudo systemctl enable exitcode
exitcode.service is not a native service, redirecting to systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable exitcode
ranger@carolina:/etc/init.d$ sudo systemctl start exitcode
ranger@carolina:/etc/init.d$ echo $?
0
---8<---

Even if I change the script to do `exit 1` it still returns exit code 0.

These are tiny examples but we are hitting it in the real world with the
startup scripts for the OpenNMS Debian/Ubuntu packages, which return
exit code 6 (LSB "not configured") when there are leftover upgrade files
in `/etc/opennms`. The OpenNMS startup is not properly failing on
attempted startup in this case.

** Affects: systemd (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1828883

Title:
  systemd sysv-compatibility eats exit codes

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1828883/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to