2

While not being officially supported, I want to run Chef Server 12 (12.3.0) on Debian Jessie.

After fixing Debian's systemd ego trip as described in chef-cookbooks/chef-server#86, it is installing and running successfully.

However, the runit setup seems not correct:

# chef-server-ctl status
fail: bookshelf: unable to change to service directory: file does not exist
fail: nginx: unable to change to service directory: file does not exist
...

I'm not yet an expert with neither systemd nor runit, but here is some debug information:

# systemctl status private_chef-runsvdir-start.service
● private_chef-runsvdir-start.service - private_chef Runit Process Supervisor
   Loaded: loaded (/etc/systemd/system/private_chef-runsvdir-start.service; enabled)
   Active: active (running) since Sun 2015-11-15 14:52:13 UTC; 36min ago
 Main PID: 2572 (runsvdir)
   CGroup: /system.slice/private_chef-runsvdir-start.service
           ├─2572 runsvdir -P /opt/opscode/service log: ....................................................................................................................................................................................
           ├─2702 runsv rabbitmq
           ├─2719 ....

Inspecting the status of the sv command:

# sv status bookshelf
fail: bookshelf: unable to change to service directory: file does not exist

# sv status /opt/opscode/service/bookshelf/
run: /opt/opscode/service/bookshelf/: (pid 6075) 2242s; run: log: (pid 6116) 2241s

I assume that at some point sv is missing the path parameter that runsvdir (-P /opt/opscode/service) got supplied. Any way to add this additional directory to the "search path" of runit?

EDIT: Exporting $SVDIR (export SVDIR=/opt/opscode/service) helps me solve the problem at least for the current user session. Issue still is that sudo will ignore this, wherever it is exported.

StephenKing
  • 932
  • 1
  • 8
  • 18

0 Answers0