class Hookit::Resource::HookFile
Public Class Methods
new(name)
click to toggle source
Calls superclass method
Hookit::Resource::Base::new
# File lib/hookit/resource/hook_file.rb, line 14 def initialize(name) path name unless path source ::File.basename(name) super end
Public Instance Methods
run(action)
click to toggle source
# File lib/hookit/resource/hook_file.rb, line 20 def run(action) case action when :create create! chown! chmod! when :create_if_missing create_if_missing! chown! chmod! when :delete delete! when :touch touch! end end
Protected Instance Methods
chmod!()
click to toggle source
# File lib/hookit/resource/hook_file.rb, line 58 def chmod! ::File.chmod(mode, path) if mode end
chown!()
click to toggle source
# File lib/hookit/resource/hook_file.rb, line 53 def chown! return unless owner or group `chown #{(group.nil?) ? owner : "#{owner}:#{group}"} #{path}` end
create!()
click to toggle source
# File lib/hookit/resource/hook_file.rb, line 39 def create! ::File.write path, render end
create_if_missing!()
click to toggle source
# File lib/hookit/resource/hook_file.rb, line 43 def create_if_missing! if not ::File.exists? path create! end end
delete!()
click to toggle source
# File lib/hookit/resource/hook_file.rb, line 49 def delete! ::File.delete path end
file_dir()
click to toggle source
# File lib/hookit/resource/hook_file.rb, line 70 def file_dir "#{module_root}/files" end
module_root()
click to toggle source
# File lib/hookit/resource/hook_file.rb, line 74 def module_root dict[:module_root] end
render()
click to toggle source
# File lib/hookit/resource/hook_file.rb, line 66 def render ::File.read("#{file_dir}/#{source}") end
touch!()
click to toggle source
# File lib/hookit/resource/hook_file.rb, line 62 def touch! `touch -c #{path}` end