Uploaded image for project: 'Puppet'
  1. Puppet
  2. PUP-10412

systemd service provider only works on running systems

    XMLWordPrintable

Details

    • Bug
    • Status: Needs Information
    • Normal
    • Resolution: Unresolved
    • PUP 6.14.0
    • None
    • Types and Providers
    • None
    • Night's Watch
    • Needs Assessment
    • Needs Assessment

    Description

      Puppet Version: 6.14.0
      Puppet Server Version:
      OS Name/Version: Any systemd-based linux

      The systemd service provider "is not functional on this host" in a systemd-nspawn container running without `-boot` or with `-as-pid2`. In these cases there is a separate PID namespace and PID 1 is not systemd. This is because the current "confines" in `providers/service/systemd.rb` checks for "systemd" in `/proc/1/comm`.

      Desired Behavior:

      Using systemctl to enable/disable/mask units only needs `/usr/bin/systemctl` to exist. If possible I could see having different behavior for handling `ensure` vs `enable` based on PID1. However, when setting up a container image, I should be able to enable/disable/mask services.

       

       

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              matt@monaco.cx Matthew Monaco
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:

                Zendesk Support