Module: ChefApply::TargetHost::Linux
- Defined in:
- lib/chef_apply/target_host/linux.rb
Constant Summary collapse
- MKTEMP_COMMAND =
- "d=$(mktemp -d -p${TMPDIR:-/tmp} chef_XXXXXX); echo $d".freeze 
Instance Method Summary collapse
- #chown(path, owner) ⇒ Object
- #del_dir(path) ⇒ Object
- #del_file(path) ⇒ Object
- #install_package(target_package_path) ⇒ Object
- #make_temp_dir ⇒ Object
- #mkdir(path) ⇒ Object
- 
  
    
      #normalize_path(path)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    Nothing to escape in a linux-based path. 
- #omnibus_manifest_path ⇒ Object
- #ws_cache_path ⇒ Object
Instance Method Details
#chown(path, owner) ⇒ Object
| 17 18 19 20 21 | # File 'lib/chef_apply/target_host/linux.rb', line 17 def chown(path, owner) owner ||= user run_command!("chown #{owner} '#{path}'") nil end | 
#del_dir(path) ⇒ Object
| 46 47 48 | # File 'lib/chef_apply/target_host/linux.rb', line 46 def del_dir(path) del_file(path) end | 
#del_file(path) ⇒ Object
| 42 43 44 | # File 'lib/chef_apply/target_host/linux.rb', line 42 def del_file(path) run_command!("rm -rf #{path}") end | 
#install_package(target_package_path) ⇒ Object
| 31 32 33 34 35 36 37 38 39 40 | # File 'lib/chef_apply/target_host/linux.rb', line 31 def install_package(target_package_path) install_cmd = case File.extname(target_package_path) when ".rpm" "rpm -Uvh #{target_package_path}" when ".deb" "dpkg -i #{target_package_path}" end run_command!(install_cmd) nil end | 
#make_temp_dir ⇒ Object
| 23 24 25 26 27 28 29 | # File 'lib/chef_apply/target_host/linux.rb', line 23 def make_temp_dir # We will cache this so that we only @tempdir ||= begin res = run_command!("bash -c '#{MKTEMP_COMMAND}'") res.stdout.chomp.strip end end | 
#mkdir(path) ⇒ Object
| 13 14 15 | # File 'lib/chef_apply/target_host/linux.rb', line 13 def mkdir(path) run_command!("mkdir -p #{path}") end | 
#normalize_path(path) ⇒ Object
Nothing to escape in a linux-based path
| 55 56 57 | # File 'lib/chef_apply/target_host/linux.rb', line 55 def normalize_path(path) path end | 
#omnibus_manifest_path ⇒ Object
| 6 7 8 9 10 11 | # File 'lib/chef_apply/target_host/linux.rb', line 6 def omnibus_manifest_path # TODO - if habitat install on target, this won't work # Note that we can't use File::Join, because that will render for the # CURRENT platform - not the platform of the target. "/opt/chef/version-manifest.json" end | 
#ws_cache_path ⇒ Object
| 50 51 52 | # File 'lib/chef_apply/target_host/linux.rb', line 50 def ws_cache_path "/var/chef-workstation" end |