The Puppet Labs Issue Tracker has Moved: https://tickets.puppetlabs.com

Bug #8162

Cloud Pack should have no required options

Added by Jeff McCune almost 3 years ago. Updated 4 months ago.

Status:AcceptedStart date:06/30/2011
Priority:LowDue date:
Assignee:-% Done:

0%

Category:cloud provisioner
Target version:-
Keywords:cloudpack cloud_provisioner Affected URL:
Branch: Affected PE version:

We've Moved!

Ticket tracking is now hosted in JIRA: https://tickets.puppetlabs.com

This ticket may be automatically exported to the ENTERPRISE project on JIRA using the button below:


Description

Overview

The phrases “required option” and “mandatory option” are oxymorons in and of themselves. As the number of these type of CLI options increase, the time required for an end user to “do stuff” with cloud pack also increases. The end user needs to figure out how to satisfy all of the mandatory option requirements.

Documentation will help, but from an usability standpoint I think the ideal situation is to have no required options whatsoever.

For this ticket, the following options should be made truly optional:

  • puppet node create
    • --platform
    • --image
    • --type
    • --keypair
  • puppet node bootstrap
    • err: The following options are required: platform, image, image, type, keypair, login, login, login, keyfile, installer_payload, installer_answers, node_group, node_group err: Try 'puppet help node bootstrap' for usage
  • puppet node init
    • Not sure what this action expects:
    • err: puppet node init takes 1 argument, but you gave 0

Recommendation

Cloud Pack should have it’s own configuration file and an action to write settings to this configuration file. This could be as simple as a YAML file with a hash that’s merged with the command line options for each action. This will be filed as two related but separate tickets.


Related issues

Related to Puppet Enterprise (Public) - Feature #8163: CloudPack should have one configuration file Accepted 06/30/2011
Related to Puppet Enterprise (Public) - Feature #8164: CloudPack should have an action to write settings to a co... Needs More Information 06/30/2011

History

#1 Updated by Daniel Pittman almost 3 years ago

Bug #8162: Cloud Pack should have no required options

The phrases “required option” and “mandatory option” are oxymorons in and of themselves. As the number of these type of CLI options increase, the time required for an end user to “do stuff” with cloud pack also increases. The end user needs to figure out how to satisfy all of the mandatory option requirements.

These are mandatory choices that the user must make. The only possible alternative is that they are all strictly positionally sensitive, and get much, much, much less useful help. As in, something like this:

] puppet cloudything $platform $image $type  # oops, forgot

$keypair at the end

cloudything takes four arguments, but you gave three, sorry.

] puppet cloudything $platform $type $image $keypair
... time passes, stuff happens ...
boom!  Sorry, $type is not a valid EC2 image, please try again.

Documentation will help, but from an usability standpoint I think the ideal situation is to have no required options whatsoever.

These are choices that absolutely must be made, and can’t be guessed.

They have to be provided somewhere; options are the least worst choice for that.

#2 Updated by Jeff McCune almost 3 years ago

Daniel Pittman wrote:

Bug #8162: Cloud Pack should have no required options

The phrases “required option” and “mandatory option” are oxymorons in and of themselves. As the number of these type of CLI options increase, the time required for an end user to “do stuff” with cloud pack also increases. The end user needs to figure out how to satisfy all of the mandatory option requirements.

These are mandatory choices that the user must make. The only possible alternative is that they are all strictly positionally sensitive, and get much, much, much less useful help. As in, something like this:

I agree with you that the user must make these choices at least once.

What I’m trying to propose in this ticket is one of many possible alternative allowing the user to make them once and only once rather than on every invocation of the command line interface.

Does that make sense?

#3 Updated by Jeff McCune almost 3 years ago

  • Priority changed from Normal to Low

Not required for release

Dan and I don’t believe this is a requirement for release at all.

#4 Updated by James Turnbull almost 3 years ago

  • Status changed from Unreviewed to Accepted

#5 Updated by Nigel Kersten almost 3 years ago

  • Category set to cloudpack

#6 Updated by Charlie Sharpsteen 4 months ago

  • Project changed from Cloud-Provisioner to Puppet Enterprise (Public)
  • Category deleted (cloudpack)

#7 Updated by Kenn Hussey 4 months ago

  • Category set to cloud provisioner

Also available in: Atom PDF