Method: Puppet::FileSystem.symlink

Defined in:
lib/puppet/file_system.rb

Creates a symbolic link dest which points to the current file. If dest already exists:

  • and is a file, will raise Errno::EEXIST

  • and is a directory, will return 0 but perform no action

  • and is a symlink referencing a file, will raise Errno::EEXIST

  • and is a symlink referencing a directory, will return 0 but perform no action

With the :force option set to true, when dest already exists:

  • and is a file, will replace the existing file with a symlink (DANGEROUS)

  • and is a directory, will return 0 but perform no action

  • and is a symlink referencing a file, will modify the existing symlink

  • and is a symlink referencing a directory, will return 0 but perform no action

Parameters:

  • dest (String)

    The path to create the new symlink at

  • options (Hash) (defaults to: {})

    the options to create the symlink with

Options Hash (options):

  • :force (Boolean)

    overwrite dest

  • :noop (Boolean)

    do not perform the operation

  • :verbose (Boolean)

    verbose output

Returns:

  • (Integer)

    0

Raises:

  • (Errno::EEXIST)

    dest already exists as a file and, :force is not set



250
251
252
# File 'lib/puppet/file_system.rb', line 250

def self.symlink(path, dest, options = {})
  @impl.symlink(assert_path(path), dest, options)
end