class TargetIO::TrainCompat::FileUtils

Public Class Methods

chmod(mode, list, noop: nil, verbose: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 5
def chmod(mode, list, noop: nil, verbose: nil)
  cmd = sprintf("chmod %s %s", __mode_to_s(mode), Array(list).join(" "))

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
chmod_R(mode, list, noop: nil, verbose: nil, force: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 14
def chmod_R(mode, list, noop: nil, verbose: nil, force: nil)
  cmd = sprintf("chmod -R%s %s %s", (force ? "f" : ""), mode_to_s(mode), Array(list).join(" "))

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
chown(user, group, list, noop: nil, verbose: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 23
def chown(user, group, list, noop: nil, verbose: nil)
  cmd = sprintf("chown %s %s", (group ? "#{user}:#{group}" : user || ":"), Array(list).join(" "))

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
chown_R(user, group, list, noop: nil, verbose: nil, force: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 32
def chown_R(user, group, list, noop: nil, verbose: nil, force: nil)
  cmd = sprintf("chown -R%s %s %s", (force ? "f" : ""), (group ? "#{user}:#{group}" : user || ":"), Array(list).join(" "))

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
copy(src, dest, preserve: nil, noop: nil, verbose: nil)
Alias for: cp
cp(src, dest, preserve: nil, noop: nil, verbose: nil) click to toggle source

cmp collect_method commands compare_file compare_stream

# File lib/chef/target_io/train/fileutils.rb, line 47
def cp(src, dest, preserve: nil, noop: nil, verbose: nil)
  cmd = "cp#{preserve ? " -p" : ""} #{[src, dest].flatten.join(" ")}"

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
Also aliased as: copy
cp_lr(src, dest, noop: nil, verbose: nil, dereference_root: true, remove_destination: false) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 57
def cp_lr(src, dest, noop: nil, verbose: nil, dereference_root: true, remove_destination: false)
  cmd = "cp -lr#{remove_destination ? " --remove-destination" : ""} #{[src, dest].flatten.join(" ")}"

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
cp_r(src, dest, preserve: nil, noop: nil, verbose: nil, dereference_root: true, remove_destination: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 66
def cp_r(src, dest, preserve: nil, noop: nil, verbose: nil, dereference_root: true, remove_destination: nil)
  cmd = "cp -r#{preserve ? "p" : ""}#{remove_destination ? " --remove-destination" : ""} #{[src, dest].flatten.join(" ")}"

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
install(src, dest, mode: nil, owner: nil, group: nil, preserve: nil, noop: nil, verbose: nil) click to toggle source

getwd (alias pwd) have_option? identical? (alias compare_file)

# File lib/chef/target_io/train/fileutils.rb, line 79
def install(src, dest, mode: nil, owner: nil, group: nil, preserve: nil, noop: nil, verbose: nil)
  cmd = "install -c"
  cmd << " -p" if preserve
  cmd << " -m " << mode_to_s(mode) if mode
  cmd << " -o #{owner}" if owner
  cmd << " -g #{group}" if group
  cmd << " " << [src, dest].flatten.join(" ")

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
ln(src, dest, force: nil, noop: nil, verbose: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 93
def ln(src, dest, force: nil, noop: nil, verbose: nil)
  cmd = "ln#{force ? " -f" : ""} #{[src, dest].flatten.join(" ")}"

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
Also aliased as: link
ln_s(src, dest, force: nil, noop: nil, verbose: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 103
def ln_s(src, dest, force: nil, noop: nil, verbose: nil)
  cmd = "ln -s#{force ? "f" : ""} #{[src, dest].flatten.join(" ")}"

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
Also aliased as: symlink
ln_sf(src, dest, noop: nil, verbose: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 113
def ln_sf(src, dest, noop: nil, verbose: nil)
  ln_s(src, dest, force: true, noop: noop, verbose: verbose)
end
makedirs(list, mode: nil, noop: nil, verbose: nil)
Alias for: mkdir_p
method_missing(m, *_args, **_kwargs, &_block) click to toggle source

uptodate?

# File lib/chef/target_io/train/fileutils.rb, line 199
def method_missing(m, *_args, **_kwargs, &_block)
  raise "Unsupported #{self.class} method #{m}"
end
mkdir(list, mode: nil, noop: nil, verbose: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 117
def mkdir(list, mode: nil, noop: nil, verbose: nil)
  cmd = "mkdir #{mode ? ("-m %03o " % mode) : ""}#{Array(list).join(" ")}"

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
mkdir_p(list, mode: nil, noop: nil, verbose: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 126
def mkdir_p(list, mode: nil, noop: nil, verbose: nil)
  cmd = "mkdir -p #{mode ? ("-m %03o " % mode) : ""}#{Array(list).join(" ")}"

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
Also aliased as: makedirs, mkpath
mkpath(list, mode: nil, noop: nil, verbose: nil)
Alias for: mkdir_p
mv(src, dest, force: nil, noop: nil, verbose: nil, secure: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 137
def mv(src, dest, force: nil, noop: nil, verbose: nil, secure: nil)
  cmd = "mv#{force ? " -f" : ""} #{[src, dest].flatten.join(" ")}"

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
remove_entry(list, noop: nil, verbose: nil, secure: nil)
Alias for: rm_rf
rm(list, force: nil, noop: nil, verbose: nil) click to toggle source

options options_of pwd remove remove_entry_secure remove_file

# File lib/chef/target_io/train/fileutils.rb, line 153
def rm(list, force: nil, noop: nil, verbose: nil)
  cmd = "rm#{force ? " -f" : ""} #{Array(list).join(" ")}"

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
rm_f(list, force: nil, noop: nil, verbose: nil, secure: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 162
def rm_f(list, force: nil, noop: nil, verbose: nil, secure: nil)
  rm(list, force: true, noop: noop, verbose: verbose)
end
rm_r(list, force: nil, noop: nil, verbose: nil, secure: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 166
def rm_r(list, force: nil, noop: nil, verbose: nil, secure: nil)
  cmd = "rm -r#{force ? "f" : ""} #{Array(list).join(" ")}"

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
rm_rf(list, noop: nil, verbose: nil, secure: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 175
def rm_rf(list, noop: nil, verbose: nil, secure: nil)
  rm_r(list, force: true, noop: noop, verbose: verbose, secure: secure)
end
Also aliased as: remove_entry, rmtree, safe_unlink
rmdir(list, parents: nil, noop: nil, verbose: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 182
def rmdir(list, parents: nil, noop: nil, verbose: nil)
  cmd = "rmdir #{parents ? "-p " : ""}#{Array(list).join(" ")}"

  Chef::Log.debug cmd if verbose
  return if noop

  __run_command(cmd)
end
rmtree(list, noop: nil, verbose: nil, secure: nil)
Alias for: rm_rf
touch(list, noop: nil, verbose: nil, mtime: nil, nocreate: nil) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 191
def touch(list, noop: nil, verbose: nil, mtime: nil, nocreate: nil)
  return if noop

  __run_command "touch #{nocreate ? "-c " : ""}#{mtime ? mtime.strftime("-t %Y%m%d%H%M.%S ") : ""}#{Array(list).join(" ")}"
end

Private Class Methods

__mode_to_s(mode) click to toggle source

TODO: Symbolic modes

# File lib/chef/target_io/train/fileutils.rb, line 206
def __mode_to_s(mode)
  mode.to_s(8)
end
__run_command(cmd) click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 210
def __run_command(cmd)
  __transport_connection.run_command(cmd)
end
__transport_connection() click to toggle source
# File lib/chef/target_io/train/fileutils.rb, line 214
def __transport_connection
  Chef.run_context&.transport_connection
end