aboutsummaryrefslogtreecommitdiff
path: root/sh/openrc-run.sh.in
AgeCommit message (Collapse)Author
2018-02-23check whether /sys/fs/cgroup is a mountpointChristian Brauner
The current check only tries to detect whether /sys/fs/cgroup exists and whether it is writable or not. But when the init system doesn't mount cgroups then /sys/fs/cgroup will just be an empty directory. When paired with unprivileged containers that mount sysfs this will cause misleading errors to be printed since /sys/fs/cgroup will be owned by user nobody:nogroup in this case. Independent of this specific problem this check will also be misleading when the /sys/fs/cgroup exists and is in fact writable by the init system but isn't actually a mountpoint. Note from William. "grep -qs" doesn't need to redirect output to /dev/null since it is completely silent. This fixes #209.
2017-12-01Clean up the calls to group_add_serviceWilliam Hubbs
This function should only be called once and it does not take any arguments. X-Gentoo-Bug: 639166 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=639166
2017-09-14Make cgroup_cleanup send only one sigterm and sigkillWilliam Hubbs
Instead of looping and sending multiple signals to child processes in cgroup_cleanup, we send sigterm followed by sleeping one second then sigkill. This brings us more in line with systemd's "control group" killmode setting. Also, this commit includes several shellcheck cleanups.
2017-09-14add support for control groups version 2William Hubbs
This is for #94.
2017-08-15sh/openrc-run: source service script before ulimit is processedWilliam Hubbs
This is needed to allow the service script author to set a default for rc_ulimit inside the service script.
2016-12-17sh/openrc-run.sh: expose default start/stop/statusRobin H. Johnson
Supervisor setups break easily when start/stop/status functions are not default. Applications that write multiple PIDs to a pidfile (eg HAProxy as described in bug 601540), can also benefit from being able to call the default start/stop/status with modified environment variables. Expose the default start/stop/status functions as default_start/stop/status, and use them for the defaults start/stop/status. Trivial usage example: ``` stop() { t=$(mktemp) for pid in $(cat $pidfile) ; do echo $pid >$t pidfile=$t default_stop done rm -f $t } ``` X-Gentoo-Bug: 601540 X-Gentoo-Bug-URL: https://bugs.gentoo.org/601540 Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2016-09-06sh/openrc-run.sh: read global configuration settings firstWilliam Hubbs
X-Gentoo-Bug: 503134 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=503134
2016-07-27Add support for runitWilliam Hubbs
X-Gentoo-Bug: 501364 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=501364
2016-04-27add daemon supervisorWilliam Hubbs
The supervise-daemon process is meant to be a lightweight supervisor which can monitor and restart a daemon if it crashes.
2016-01-22fix testsWilliam Hubbs
X-Gentoo-Bug: 572602 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=572602
2015-12-21Convert OpenRC to a centralized copyright/license structureWilliam Hubbs
In the past, OpenRC was a hybrid of a centralized and file-scope license/copyright structure. I followed the instructions from the Software Freedom Law Center [1] to convert to a Centralized structure where possible, for easier future maintenance. [1] https://softwarefreedom.org/resources/2012/ManagingCopyrightInformation.html
2015-12-03add support for -containers keywordWilliam Hubbs
2015-11-12Implement "want" dependencyIan Stakenvicius
The want dependency is similar to the use dependency. If a service script, for example called service1, adds "want service2" to its depend function, OpenRC will attempt to start service2, if it exists on the system, when service1 is started. However, service1 will start regardless of the status of service2. X-Gentoo-Bug: 406021 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=406021
2015-11-05Add rc.conf.d supportWilliam Hubbs
This makes it possible to override settings in rc.conf by adding a directory @SYSCONFDIR@/rc.conf.d and putting files in this directory. The files will be processed in lexical order, and the last setting in these files will be used.
2015-10-13openrc-run.sh: fix new required_* tests to exit properlyWilliam Hubbs
2015-10-13typo fixWilliam Hubbs
X-Gentoo-Bug: 563010 X-Gentoo-Bug: https://bugs.gentoo.org/show_bug.cgi?id=563010
2015-10-13openrc-run.sh: allow spaces in required_{files,dirs}William Hubbs
X-Gentoo-Bug: 562320 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=562320
2015-05-11Add support for the s6 supervision suiteWilliam Hubbs
2015-05-11Rework supervisor integration frameworkWilliam Hubbs
The original way of doing this allowed users to change the supervisor in conf.d/*. This changes this so that the supervisor setup can be done in the service script itself.
2015-05-08Make the default start, stop and status functions overridableWilliam Hubbs
This will make it possible to add support for supervision suites such as runit and s6.
2015-05-01Add support for systemd-nspawn containersWilliam Hubbs
This adds support for running OpenRC in a container created by the systemd-nspawn utility. This fixes #52. X-Gentoo-Bug: 548058 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=548058
2015-04-27convert all references from runscript to openrc-runWilliam Hubbs