FAQ
Is the output of a command called by puppet stored somewhere on the master
or agent?

For example, if have the statement
---
commands :ls => "ls"
---

and then I try something like " ls, '/' "

where does the output of "ls /" go? I've tried poking around in vardir on
both the master and the agent with no luck. I'm probably just missing it,
but this would help with some debugging. I'm looking for both stdout and
stderr.

Note: I'm not actually running ls, I figured it was an easy example of a
command that writes to stdout/stderr

Thanks!

--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/QqAXvmTIdzAJ.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.

Search Discussions

  • Josh Cooper at Aug 13, 2012 at 7:23 pm

    On Mon, Aug 13, 2012 at 11:55 AM, ZJE wrote:
    Is the output of a command called by puppet stored somewhere on the master or agent?

    For example, if have the statement
    ---
    commands :ls => "ls"
    ---

    and then I try something like " ls, '/' "

    where does the output of "ls /" go? I've tried poking around in vardir on both the master and the agent with no luck. I'm probably just missing it, but this would help with some debugging. I'm looking for both stdout and stderr.
    Puppet doesn't capture the output of commands in a persistent way like
    it does with the `logoutput` parameter for the exec type. It does get
    written to a tempfile, but deleted soon after.

    However, you could easily modify lib/puppet/provider.rb, line 121 (in
    2.7.x), to output the result of calling `execute(cmd)`. That call will
    return the combined stdout and stderr output as a string.

    Josh

    --
    Josh Cooper
    Developer, Puppet Labs

    --
    You received this message because you are subscribed to the Google Groups "Puppet Users" group.
    To post to this group, send email to puppet-users@googlegroups.com.
    To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com.
    For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
  • Stefan Schulte at Aug 14, 2012 at 12:49 am

    On Mon, Aug 13, 2012 at 11:55:23AM -0700, ZJE wrote:
    Is the output of a command called by puppet stored somewhere on the master
    or agent?

    For example, if have the statement
    ---
    commands :ls => "ls"
    ---

    and then I try something like " ls, '/' "
    this does not seem right. The above command method marks the provider as
    unsuitable if the ls command is not present and creates a method with
    the name ls. So if you want to execute ls you do:

    output = ls('-l', '/tmp')
    where does the output of "ls /" go?
    it is the return value of the method "ls"

    -Stefan

    --
    You received this message because you are subscribed to the Google Groups "Puppet Users" group.
    To post to this group, send email to puppet-users@googlegroups.com.
    To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com.
    For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouppuppet-users @
categoriespuppet
postedAug 13, '12 at 6:55p
activeAug 14, '12 at 12:49a
posts3
users3
websitepuppetlabs.com

People

Translate

site design / logo © 2022 Grokbase