Jira (PUP-8669) The `puppet help` command should list external subcommands

4 views
Skip to first unread message

Charlie Sharpsteen (JIRA)

unread,
Apr 19, 2018, 10:37:03 AM4/19/18
to puppe...@googlegroups.com
Charlie Sharpsteen updated an issue
 
Puppet / Improvement PUP-8669
The `puppet help` command should list external subcommands
Change By: Charlie Sharpsteen
Affects Version/s: PUP 5.5.1
Affects Version/s: PUP 4.10.11
Add Comment Add Comment
 
This message was sent by Atlassian JIRA (v7.7.1#77002-sha1:e75ca93)
Atlassian logo

Charlie Sharpsteen (JIRA)

unread,
Apr 19, 2018, 10:37:04 AM4/19/18
to puppe...@googlegroups.com
Charlie Sharpsteen created an issue
Issue Type: Improvement Improvement
Assignee: Unassigned
Created: 2018/04/19 7:36 AM
Priority: Normal Normal
Reporter: Charlie Sharpsteen

The puppet help command lists all available subcommands that can be run via puppet <subcommand name>. However, Puppet will also dispatch to "external" subcommands that are executables in the PATH with names that match puppet-*. The help subcommand should list these as well.

Reproduction Case

  • Install the puppet-agent package on CentOS 7 along with the puppet-client-tools package, which provides some external subcommands:

rpm -Uvh http://yum.puppetlabs.com/puppet5/puppet5-release-el-7.noarch.rpm
yum install -y puppet-agent puppet-client-tools
 
# Add bin directories to PATH
source /etc/profile.d/puppet-agent.sh

  • Run: puppet help

Outcome

The output of puppet help lists only Ruby subcommands:

# puppet help
 
Usage: puppet <subcommand> [options] <action> [options]
 
Available subcommands:
 
  agent             The puppet agent daemon
  apply             Apply Puppet manifests locally
  ca                Local Puppet Certificate Authority management. (Deprecated)
  catalog           Compile, save, view, and convert catalogs.
  cert              Manage certificates and requests
  certificate       Provide access to the CA for certificate management.
  certificate_request  Manage certificate requests. (Deprecated)
  certificate_revocation_list  Manage the list of revoked certificates. (Deprecated)
  config            Interact with Puppet's settings.
  describe          Display help about resource types
  device            Manage remote network devices
  doc               Generate Puppet references
  epp               Interact directly with the EPP template parser/renderer.
  facts             Retrieve and store facts.
  filebucket        Store and retrieve files in a filebucket
  generate          Generates Puppet code from Ruby definitions.
  help              Display Puppet help.
  key               Create, save, and remove certificate keys. (Deprecated)
  lookup            Interactive Hiera lookup
  man               Display Puppet manual pages. (Deprecated)
  master            The puppet master daemon
  module            Creates, installs and searches for modules on the Puppet Forge.
  node              View and manage node definitions.
  parser            Interact directly with the parser.
  plugin            Interact with the Puppet plugin system.
  report            Create, display, and submit reports.
  resource          The resource abstraction layer shell
  script            Run a puppet manifests as a script without compiling a catalog
  status            View puppet server status. (Deprecated)
 
See 'puppet help <subcommand> <action>' for help on a specific subcommand action.
See 'puppet help <subcommand>' for help on a specific subcommand.
Puppet v5.5.1

Expected Outcome

The puppet help output should include an "External subcommands" section which lists the actions provided by the puppet-client-tools package:

# puppet help
 
Usage: puppet <subcommand> [options] <action> [options]
 
Available subcommands:
 
  agent             The puppet agent daemon
  apply             Apply Puppet manifests locally
  ca                Local Puppet Certificate Authority management. (Deprecated)
  catalog           Compile, save, view, and convert catalogs.
  cert              Manage certificates and requests
  certificate       Provide access to the CA for certificate management.
  certificate_request  Manage certificate requests. (Deprecated)
  certificate_revocation_list  Manage the list of revoked certificates. (Deprecated)
  config            Interact with Puppet's settings.
  describe          Display help about resource types
  device            Manage remote network devices
  doc               Generate Puppet references
  epp               Interact directly with the EPP template parser/renderer.
  facts             Retrieve and store facts.
  filebucket        Store and retrieve files in a filebucket
  generate          Generates Puppet code from Ruby definitions.
  help              Display Puppet help.
  key               Create, save, and remove certificate keys. (Deprecated)
  lookup            Interactive Hiera lookup
  man               Display Puppet manual pages. (Deprecated)
  master            The puppet master daemon
  module            Creates, installs and searches for modules on the Puppet Forge.
  node              View and manage node definitions.
  parser            Interact directly with the parser.
  plugin            Interact with the Puppet plugin system.
  report            Create, display, and submit reports.
  resource          The resource abstraction layer shell
  script            Run a puppet manifests as a script without compiling a catalog
  status            View puppet server status. (Deprecated)
 
External subcommands:
 
  db
  query
 
See 'puppet help <subcommand> <action>' for help on a specific subcommand action.
See 'puppet help <subcommand>' for help on a specific subcommand.
Puppet v5.5.1

Charlie Sharpsteen (JIRA)

unread,
Apr 19, 2018, 10:37:04 AM4/19/18
to puppe...@googlegroups.com

Charlie Sharpsteen (JIRA)

unread,
Apr 19, 2018, 10:42:03 AM4/19/18
to puppe...@googlegroups.com
Charlie Sharpsteen commented on Improvement PUP-8669
 
Re: The `puppet help` command should list external subcommands

Should probably implement PUP-8670 first, so that puppet help can display usage for everything that it lists.

Charlie Sharpsteen (JIRA)

unread,
Apr 19, 2018, 10:42:03 AM4/19/18
to puppe...@googlegroups.com

Austin Boyd (Jira)

unread,
Jul 13, 2021, 8:38:02 PM7/13/21
to puppe...@googlegroups.com
Austin Boyd updated an issue
Change By: Austin Boyd
Zendesk Ticket Count: 1
Zendesk Ticket IDs: 45054
This message was sent by Atlassian Jira (v8.13.2#813002-sha1:c495a97)
Atlassian logo

Austin Boyd (Jira)

unread,
Jul 13, 2021, 8:38:02 PM7/13/21
to puppe...@googlegroups.com
Reply all
Reply to author
Forward
0 new messages