26 lines
507 B
Ruby
26 lines
507 B
Ruby
Puppet::Type.type(:bash_rc_d).provide(:install) do
|
|
desc "Configure a new directory to be added to every user's PATH"
|
|
|
|
def create
|
|
file.open('wb') { |fh| fh.puts content }
|
|
end
|
|
|
|
def destroy
|
|
file.unlink
|
|
end
|
|
|
|
def exists?
|
|
file.file? && file.read == content
|
|
end
|
|
|
|
private
|
|
def content
|
|
"export PATH=#{@resource[:path]}/#{@resource[:name]}/sbin:#{@resource[:path]}/#{@resource[:name]}/bin:$PATH"
|
|
end
|
|
|
|
def file
|
|
Pathname("/etc/bash.bashrc.d/#{@resource[:name]}.sh")
|
|
end
|
|
end
|
|
|