Class: PleaseRun::Platform::Systemd
- Defined in:
- lib/pleaserun/platform/systemd.rb
Overview
The platform implementation for systemd.
If you use Fedora 18+ or CentOS/RHEL 7+, this is for you.
Instance Method Summary collapse
- #files ⇒ Object
-
#install_actions ⇒ Object
def files.
Methods inherited from Base
#all_environment_variables, #default_file, #initialize, #log_path, #log_path_stderr, #log_path_stdout, #parsed_environment_variables, #platform, #render, #render_template, #safe_filename, #sysconfig_file, #template_path
Methods included from MustacheMethods
#escaped, #escaped_args, #quoted, #shell_args, #shell_continuation, #shell_quote
Methods included from Configurable
#configurable_setup, included, #validate
Constructor Details
This class inherits a constructor from PleaseRun::Platform::Base
Instance Method Details
#files ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/pleaserun/platform/systemd.rb', line 15 def files begin # TODO(sissel): Make it easy for subclasses to extend validation on attributes. insist { program } =~ /^\// rescue Insist::Failure raise PleaseRun::Configurable::ValidationError, "In systemd, the program must be a full path. You gave '#{program}'." end return Enumerator::Generator.new do |enum| enum.yield(safe_filename("/etc/default/{{ name }}"), render_template("default")) enum.yield(safe_filename("{{{ unit_path }}}/{{{ name }}}.service"), render_template("program.service")) # TODO(sissel): This is probably not the best place to put this. Ahh well :) enum.yield(safe_filename("{{{ unit_path }}}/{{{ name }}}-prestart.sh"), render_template("prestart.sh"), 0755) if prestart end end |
#install_actions ⇒ Object
def files
32 33 34 |
# File 'lib/pleaserun/platform/systemd.rb', line 32 def install_actions return ["systemctl --system daemon-reload"] end |