Update stdlib and concat to 6.1.0 both
[mirror/dsa-puppet.git] / 3rdparty / modules / stdlib / lib / puppet / type / file_line.rb
index 14650fe..ead6b10 100644 (file)
@@ -1,51 +1,57 @@
 Puppet::Type.newtype(:file_line) do
   desc <<-DOC
 Puppet::Type.newtype(:file_line) do
   desc <<-DOC
-    Ensures that a given line is contained within a file.  The implementation
-    matches the full line, including whitespace at the beginning and end.  If
-    the line is not contained in the given file, Puppet will append the line to
-    the end of the file to ensure the desired state.  Multiple resources may
-    be declared to manage multiple lines in the same file.
-
-    Example:
-
-        file_line { 'sudo_rule':
-          path => '/etc/sudoers',
-          line => '%sudo ALL=(ALL) ALL',
-        }
-
-        file_line { 'sudo_rule_nopw':
-          path => '/etc/sudoers',
-          line => '%sudonopw ALL=(ALL) NOPASSWD: ALL',
-        }
-
+    @summary
+      Ensures that a given line is contained within a file.
+
+    The implementation matches the full line, including whitespace at the
+    beginning and end.  If the line is not contained in the given file, Puppet
+    will append the line to the end of the file to ensure the desired state.
+    Multiple resources may be declared to manage multiple lines in the same file.
+
+    * Ensure Example
+    ```
+    file_line { 'sudo_rule':
+      path => '/etc/sudoers',
+      line => '%sudo ALL=(ALL) ALL',
+    }
+
+    file_line { 'sudo_rule_nopw':
+      path => '/etc/sudoers',
+      line => '%sudonopw ALL=(ALL) NOPASSWD: ALL',
+    }
+    ```
     In this example, Puppet will ensure both of the specified lines are
     contained in the file /etc/sudoers.
 
     In this example, Puppet will ensure both of the specified lines are
     contained in the file /etc/sudoers.
 
-    Match Example:
+    * Match Example
 
 
-        file_line { 'bashrc_proxy':
-          ensure => present,
-          path   => '/etc/bashrc',
-          line   => 'export HTTP_PROXY=http://squid.puppetlabs.vm:3128',
-          match  => '^export\ HTTP_PROXY\=',
-        }
+    ```
+    file_line { 'bashrc_proxy':
+      ensure => present,
+      path   => '/etc/bashrc',
+      line   => 'export HTTP_PROXY=http://squid.puppetlabs.vm:3128',
+      match  => '^export\ HTTP_PROXY\=',
+    }
+    ```
 
     In this code example match will look for a line beginning with export
     followed by HTTP_PROXY and replace it with the value in line.
 
 
     In this code example match will look for a line beginning with export
     followed by HTTP_PROXY and replace it with the value in line.
 
-    Examples With `ensure => absent`:
+    Examples With `ensure => absent`:
 
     This type has two behaviors when `ensure => absent` is set.
 
     One possibility is to set `match => ...` and `match_for_absence => true`,
     as in the following example:
 
 
     This type has two behaviors when `ensure => absent` is set.
 
     One possibility is to set `match => ...` and `match_for_absence => true`,
     as in the following example:
 
-        file_line { 'bashrc_proxy':
-          ensure            => absent,
-          path              => '/etc/bashrc',
-          match             => '^export\ HTTP_PROXY\=',
-          match_for_absence => true,
-        }
+    ```
+    file_line { 'bashrc_proxy':
+      ensure            => absent,
+      path              => '/etc/bashrc',
+      match             => '^export\ HTTP_PROXY\=',
+      match_for_absence => true,
+    }
+    ```
 
     In this code example match will look for a line beginning with export
     followed by HTTP_PROXY and delete it.  If multiple lines match, an
 
     In this code example match will look for a line beginning with export
     followed by HTTP_PROXY and delete it.  If multiple lines match, an
@@ -57,25 +63,30 @@ Puppet::Type.newtype(:file_line) do
     The second way of using `ensure => absent` is to specify a `line => ...`,
     and no match:
 
     The second way of using `ensure => absent` is to specify a `line => ...`,
     and no match:
 
-        file_line { 'bashrc_proxy':
-          ensure => absent,
-          path   => '/etc/bashrc',
-          line   => 'export HTTP_PROXY=http://squid.puppetlabs.vm:3128',
-        }
+    ```
+    file_line { 'bashrc_proxy':
+      ensure => absent,
+      path   => '/etc/bashrc',
+      line   => 'export HTTP_PROXY=http://squid.puppetlabs.vm:3128',
+    }
+    ```
 
 
-    Note that when ensuring lines are absent this way, the default behavior
+    > *Note:*
+    When ensuring lines are absent this way, the default behavior
     this time is to always remove all lines matching, and this behavior
     can't be disabled.
 
     this time is to always remove all lines matching, and this behavior
     can't be disabled.
 
-    Encoding example:
+    Encoding example:
 
 
-        file_line { "XScreenSaver":
-          ensure   => present,
-          path     => '/root/XScreenSaver',
-          line     => "*lock: 10:00:00",
-          match    => '^*lock:',
-          encoding => "iso-8859-1",
-        }
+    ```
+    file_line { "XScreenSaver":
+      ensure   => present,
+      path     => '/root/XScreenSaver',
+      line     => "*lock: 10:00:00",
+      match    => '^*lock:',
+      encoding => "iso-8859-1",
+    }
+    ```
 
     Files with special characters that are not valid UTF-8 will give the
     error message "invalid byte sequence in UTF-8".  In this case, determine
 
     Files with special characters that are not valid UTF-8 will give the
     error message "invalid byte sequence in UTF-8".  In this case, determine
@@ -88,6 +99,7 @@ Puppet::Type.newtype(:file_line) do
   DOC
 
   ensurable do
   DOC
 
   ensurable do
+    desc 'Manage the state of this type.'
     defaultvalues
     defaultto :present
   end
     defaultvalues
     defaultto :present
   end
@@ -97,30 +109,30 @@ Puppet::Type.newtype(:file_line) do
   end
 
   newparam(:match) do
   end
 
   newparam(:match) do
-    desc 'An optional ruby regular expression to run against existing lines in the file.' \
-         ' If a match is found, we replace that line rather than adding a new line.' \
-         ' A regex comparison is performed against the line value and if it does not' \
-         ' match an exception will be raised.'
+    desc 'An optional ruby regular expression to run against existing lines in the file.
+          If a match is found, we replace that line rather than adding a new line.
+          A regex comparison is performed against the line value and if it does not
+          match an exception will be raised.'
   end
 
   newparam(:match_for_absence) do
   end
 
   newparam(:match_for_absence) do
-    desc 'An optional value to determine if match should be applied when ensure => absent.' \
-         ' If set to true and match is set, the line that matches match will be deleted.' \
-         ' If set to false (the default), match is ignored when ensure => absent.' \
-         ' When `ensure => present`, match_for_absence is ignored.'
+    desc 'An optional value to determine if match should be applied when ensure => absent.
+          If set to true and match is set, the line that matches match will be deleted.
+          If set to false (the default), match is ignored when ensure => absent.
+          When `ensure => present`, match_for_absence is ignored.'
     newvalues(true, false)
     defaultto false
   end
 
   newparam(:multiple) do
     newvalues(true, false)
     defaultto false
   end
 
   newparam(:multiple) do
-    desc 'An optional value to determine if match can change multiple lines.' \
-         ' If set to false, an exception will be raised if more than one line matches'
+    desc 'An optional value to determine if match can change multiple lines.
+          If set to false, an exception will be raised if more than one line matches'
     newvalues(true, false)
   end
 
   newparam(:after) do
     newvalues(true, false)
   end
 
   newparam(:after) do
-    desc 'An optional value used to specify the line after which we will add any new lines. (Existing lines are added in place)' \
-         ' This is also takes a regex.'
+    desc 'An optional value used to specify the line after which we will add any new lines. (Existing lines are added in place)
+          This is also takes a regex.'
   end
 
   # The line property never changes; the type only ever performs a create() or
   end
 
   # The line property never changes; the type only ever performs a create() or
@@ -172,7 +184,6 @@ Puppet::Type.newtype(:file_line) do
   autorequire(:file) do
     self[:path]
   end
   autorequire(:file) do
     self[:path]
   end
-
   validate do
     if self[:replace_all_matches_not_matching_line].to_s == 'true' && self[:multiple].to_s == 'false'
       raise(Puppet::Error, 'multiple must be true when replace_all_matches_not_matching_line is true')
   validate do
     if self[:replace_all_matches_not_matching_line].to_s == 'true' && self[:multiple].to_s == 'false'
       raise(Puppet::Error, 'multiple must be true when replace_all_matches_not_matching_line is true')