summaryrefslogtreecommitdiffstats
path: root/lib/puppet/provider/exec/shell.rb
diff options
context:
space:
mode:
authorMatt Robinson <matt@puppetlabs.com>2011-08-15 10:36:03 -0700
committerMatt Robinson <matt@puppetlabs.com>2011-08-15 10:36:03 -0700
commite7d5c7c1cd4109d7bb061a503f5da8777a1be66d (patch)
tree6aace815f8c3fe30d4ad7eefbda8af141b78482f /lib/puppet/provider/exec/shell.rb
parenta71573cb32f01e5bf5f1a5030c6a291ce5b63370 (diff)
parentfa1ec4dd93f015c2943271c9ae107991c6d3c90e (diff)
Merge branch '2.7.x'
* 2.7.x: (25 commits) (#4411) Explain that runinterval = 0 does not mean "never run" Maint: Fix missing option text in puppet agent and arrange options alphabetically (#8302) Improve documentation of exec providers (#7853) Clarify and complete docs for the tagmail report processor Maint: Mention that audit metaparameter will accept "all" Maint: Adjust wording for file type's content parameter Maint: Fix poor documentation for versioncmp function. maint: Fix case sensitive require maint: Add inspect app options to help maint: Fix inspect help Increment lib/puppet.rb VERSION string Updated CHANGELOG for 2.7.3rc1 (#4762) Ensure that clients on the moon can successfully connect. Add document outlining preferred contribution methods Add document outlining preferred contribution methods Add document outlining preferred contribution methods Revert "Merge branch 'vcsrepo'" Revert "Merge branch 'vcsrepo'" Updating CHANGELOG for 2.7.2rc3 (#8704) Give better errors for invalid fileserver.conf ... Manually Resolved Conflicts: lib/puppet/parser/functions/versioncmp.rb spec/integration/node/facts_spec.rb
Diffstat (limited to 'lib/puppet/provider/exec/shell.rb')
-rw-r--r--lib/puppet/provider/exec/shell.rb13
1 files changed, 11 insertions, 2 deletions
diff --git a/lib/puppet/provider/exec/shell.rb b/lib/puppet/provider/exec/shell.rb
index 98f309e8f..ad2171005 100644
--- a/lib/puppet/provider/exec/shell.rb
+++ b/lib/puppet/provider/exec/shell.rb
@@ -3,8 +3,17 @@ Puppet::Type.type(:exec).provide :shell, :parent => :posix do
confine :feature => :posix
- desc "Execute external binaries directly, on POSIX systems.
-passing through a shell so that shell built ins are available."
+ desc <<-EOT
+ Passes the provided command through `/bin/sh`; only available on
+ POSIX systems. This allows the use of shell globbing and built-ins, and
+ does not require that the path to a command be fully-qualified. Although
+ this can be more convenient than the `posix` provider, it also means that
+ you need to be more careful with escaping; as ever, with great power comes
+ etc. etc.
+
+ This provider closely resembles the behavior of the `exec` type
+ in Puppet 0.25.x.
+ EOT
def run(command, check = false)
command = %Q{/bin/sh -c "#{command.gsub(/"/,'\"')}"}