Bug 636379

Summary: Describe missing supported wallaby utility commands
Product: Red Hat Enterprise MRG Reporter: Lana Brindley <lbrindle>
Component: Grid_User_GuideAssignee: Alison Young <alyoung>
Status: CLOSED CURRENTRELEASE QA Contact: ecs-bugs
Severity: medium Docs Contact:
Priority: low    
Version: DevelopmentCC: iboverma, jneedle, matt, mhideo, rrati, willb
Target Milestone: 2.1Keywords: Documentation
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-01-26 19:24:11 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 652506, 733205, 733324    
Bug Blocks:    
Deadline: 2011-09-30   

Description Lana Brindley 2010-09-22 02:46:16 UTC
Lubos Trilety 2010-09-21 04:43:47 EDT
Just notice that remote configuration chapter miss description of supported
wallaby utility commands like 'make-snapshot', 'list-snapshots', 'apropos',
'console' etc.
There are only 'dump', 'load' and 'inventory' commands in chapter 4.3. Tools

More info about that will be required from developers for Lana to do that.

(From BZ #614498)

LKB

Comment 1 Lana Brindley 2010-12-12 22:48:46 UTC
Rob,

Are you able to provide this info?

LKB

Comment 2 Will Benton 2010-12-23 08:09:28 UTC
This is a list of the available wallaby commands, along with what they
do and some brief notes on usage.  Every command supports the "-h" and
"--help" options, which cause them to output documentation.

wallaby help commands
Prints a list of all known wallaby commands, including user-defined ones, and single-sentence descriptions of what they do.

wallaby help COMMAND
Prints usage information for the named command, as if you had typed "wallaby COMMAND -h".

wallaby activate
Activates pending changes to the pool configuration.
Takes no arguments.

wallaby add-feature FEATURE-NAME
Adds a feature to the store with the given name.  Fails if a feature with the given name already exists.

wallaby add-node NODE-NAME
Adds a node to the store with the given name.

wallaby add-param PARAM-NAME [options]
Adds a parameter to the store with the given name.  Fails if a parameter with the given name already exists.
Valid options include:
        --level VALUE
	Sets the expert level of the newly-created param to the given integer value.

        --default-val VALUE
	Sets the default value for the newly-created param.  Note that it is not sensible for a parameter to have a default value if it is set up as a parameter whose default value must change.

        --description VALUE
	Sets the description of the newly-created param

        --needs-restart [yes|no]
	Sets whether or not subsystems that are interested in this parameter will need to restart when its value changes in a node's configuration.

        --must-change [yes|no]
	Sets the must_change property of the newly-created param

        --kind VALUE                 
	Sets the kind of the newly-created param, which provides documentation to the user.


wallaby apropos [options] KEYWORD
Provides a list of parameters that contain KEYWORD in their descriptions.
Valid options include:
      --regex
      Interprets KEYWORD as a regular expression.

      -i
      --case-insensitive
      Returns parameters whose descriptions contain either KEYWORD or a string that differs from it only by case.

wallaby console [options]
Provides an interactive Ruby environment in which to interact with the Wallaby API.
Valid options include:
      -r FILE
      --require-file FILE
      Loads the ruby code contained in FILE before doing anything else.

(Alison, see also http://wallaby.freevariable.com/2010/flexible-interaction-with-the-wallaby-console/ for more information on this subcommand.)

wallaby dump FILENAME
Dumps a snapshot of the current state of wallaby to a file.

wallaby explain NODENAME
Outputs an annotated display of a node's current configuration, indicating how each parameter got its value.

wallaby feature-import [options] FILE
Imports a wallaby feature from a legacy Condor configuration file, creating parameters that do not exist as necessary.  Directives may be supplied to Wallaby in the form of special comments, such as:

#name NAME
    Indicates that this feature should be named NAME.
#includes FEATURE
    Indicates that this feature should include FEATURE, which must exist in Wallaby.
#dependson FEATURE
    Indicates that this feature should depend upon FEATURE, which must exist in Wallaby.
#default PARAM
    Indicates that this feature should include PARAM, and set it to its default value. 

Valid options include:
      -n NAME
      --name NAME
      Call this feature NAME.  Note that you must supply a name, either with a #name directive or the --name option.

(Alison, see also http://wallaby.freevariable.com/2010/migrating-legacy-condor-configurations-to-wallaby/ for more information on this subcommand.)

wallaby inventory [options]
Lists a non-strict subset of wallaby-managed nodes.
    -s [name|checkin]
    --sort [name|checkin]
    Sort returned nodes by node name or last checkin time.

    -o [provisioned|unprovisioned]
    --only [provisioned|unprovisioned]
    Show only provisioned nodes (which were explicitly created in the wallaby store) or only unprovisioned nodes (which were implicitly created in the wallaby store when they checked in.)

    -c EXPR
    --constraint EXPR
    Show only nodes for which EXPR is true.  EXPR is Ruby code that is evaluated in the context of the node object.  In general, EXPR can include node object property accesses (but not API method calls) and some syntactic sugar for specifying times.  For example:
    *  wallaby inventory -c "last_checkin < 2.hours_ago"
    Shows all nodes that have checked in less than two hours ago.

    *  wallaby inventory -c "last_checkin.is_never && (name =~ /wa/ || name =~ /lla/ || name =~ /by/)"
    Shows all nodes that have never checked in and that contain one of the strings "wa", "lla", or "by" in their names.

    *  wallaby inventory -c "memberships.size == 0"
    Shows all nodes that are not a member of any groups.

wallaby list-snapshots
Lists snapshots in the store.

wallaby load SNAPFILE
Loads a wallaby database snapshot from a file from SNAPFILE.

wallaby load-snapshot SNAPNAME
Restores the internal wallaby snapshot that has the given name.

wallaby make-snapshot SNAPNAME
Makes an internal wallaby snapshot of the current service state and gives it a name.

wallaby modify-feature OLDNAME --name NEWNAME
Alters the name for a feature in the store.

wallaby modify-param [options] PARAM
Alters metadata for a parameter in the store.  See the documentation for "wallaby add-param" for details.

wallaby remove-feature NAME
Deletes a feature from the store.

wallaby remove-node NAME
Deletes a node from the store.

wallaby remove-param NAME
Deletes a parameter from the store.

wallaby show-feature NAME
Displays the properties of a feature.

wallaby show-node NAME
Displays the properties of a node.

wallaby show-param NAME
Displays metadata about a parameter.

Comment 3 Will Benton 2010-12-23 08:11:32 UTC
I'm not mentioning wallaby http-server (because it is only packaged on Fedora) or wallaby new-command (because it is probably out of scope for our docs at the moment).

Comment 4 Alison Young 2011-02-15 02:34:43 UTC
Pushing to 2.1 due to time and resource constraints.

Comment 5 Robert Rati 2011-09-01 13:10:39 UTC
There will be a few more commands in addition to the ones above

Comment 6 Alison Young 2011-09-16 02:02:24 UTC
Hi Rob,
Do you have the content for the other commands to be added yet? Needinfo deadline set for Sep 30. Will do what I can to get this into 2.1

Thanks

Comment 7 Robert Rati 2011-09-29 19:25:01 UTC
wallaby add-group GROUP-NAME
Adds a group to the store with the given name.  Fails if a group with the
given name already exists.

wallaby add-subsystem SUBSYS-NAME
Adds a subsystem to the store with the given name.  Fails if a subsystem with the given name already exists.

wallaby apply-group-feature [options] ACTION TARGET NAME
Modify features applied to a group in the store.
Valid options include:
    -p, --priority PRI               priority when adding
Where ACTION is one of: ADD, REMOVE, REPLACE

wallaby apply-node-feature [options] ACTION TARGET NAME
Modify features applied to a node in the store.
Valid options include:
    -p, --priority PRI               priority when adding
Where ACTION is one of: ADD, REMOVE, REPLACE

wallaby attach-params ACTION TYPE NAME PARAM[=VALUE]
Modify parameter/value pairs attached to an entity.
Where ACTION is one of: ADD, REMOVE, REPLACE
Where TYPE is one of: Node, Group, Feature, Subsystem
If no value is given, the parameter will use the default value defined for that parameter

wallaby feature-conflict [options] ACTION TARGET NAME
Modify a feature's conflicts in the store.
Valid options include:
    -p, --priority PRI               priority when adding
Where ACTION is one of: ADD, REMOVE, REPLACE

wallaby feature-depend [options] ACTION TARGET NAME
Modify a feature's dependencies in the store.
Valid options include:
    -p, --priority PRI               priority when adding
Where ACTION is one of: ADD, REMOVE, REPLACE

wallaby feature-include [options] ACTION TARGET NAME
Modify a feature's includes in the store.
Valid options include:
    -p, --priority PRI               priority when adding
Where ACTION is one of: ADD, REMOVE, REPLACE

wallaby list-features
Lists all the feature names in the store.

wallaby list-groups
Lists all the group names in the store.

wallaby list-nodes
Lists all the node names in the store.

wallaby list-params
Lists all the parameter names in the store.

wallaby list-subsystems
Lists all the subsystem names in the store.

wallaby modify-group OLDNAME --name NEWNAME
Alters the name for a group in the store.

wallaby node-membership [options] ACTION TARGET NAME
Modify a node's group membership.
Valid options include:
    -p, --priority PRI               priority when adding
Where ACTION is one of: ADD, REMOVE, REPLACE

wallaby param-conflict [options] ACTION TARGET NAME
Modify a parameter's conflicts in the store.
Valid options include:
    -p, --priority PRI               priority when adding
Where ACTION is one of: ADD, REMOVE, REPLACE

wallaby param-depend [options] ACTION TARGET NAME
Modify a parameter's dependencies in the store.
Valid options include:
    -p, --priority PRI               priority when adding
Where ACTION is one of: ADD, REMOVE, REPLACE

wallaby remove-group NAME
Deletes a group from the store.

wallaby remove-subsystem NAME
Deletes a subsystem from the store.

wallaby show-group NAME
Displays the properties of a group.

wallaby show-subsystem NAME
Displays the properties of a subsystem.

wallaby upgrade-db
Upgrade the database from available patch files.
Valid options include:
    -f, --force                      force upgrade

Comment 8 Robert Rati 2011-10-14 22:39:50 UTC
Massive change in the command names used to create relationships between
entities.

Removed:
apply-group-feature
apply-node-feature
attach-params
feature-conflict
feature-depend
feature-include
node-membership
param-conflict
param-depend

Added:
wallaby add-conflict-to-feature FEATURE-NAME CONFLICT-NAME [...] 
Add conflicts to a feature in the store.

wallaby add-conflict-to-param PARAM-NAME CONFLICT-NAME [...] 
Add conflicts to a parameter in the store.

wallaby add-dependency-to-feature FEATURE-NAME DEPENDENCY-NAME [...] 
Add dependencies to a feature in the store.

wallaby add-dependency-to-param PARAM-NAME DEPENDENCY-NAME [...] 
Add dependencies to a parameter in the store.

wallaby add-feature-to-group GROUP-NAME FEATURE-NAME [...] [GROUP-OPTIONS]
Add features to a group in the store.
    -p, --priority PRI               priority for NAMES

wallaby add-feature-to-node NODE-NAME FEATURE-NAME [...] [NODE-OPTIONS]
Add features to a node in the store.
    -p, --priority PRI               priority for NAMES

wallaby add-include-to-feature FEATURE-NAME INCLUDE-NAME [...]
[FEATURE-OPTIONS]
Add includes to a feature in the store.
    -p, --priority PRI               priority for NAMES

wallaby add-node-membership NODE-NAME GROUP-NAME [...] [NODE-OPTIONS]
Add group memberships to a node in the store.
    -p, --priority PRI               priority for NAMES

wallaby add-param-to-feature FEATURE-NAME PARAM-NAME[=VALUE] [...] 
Add parameters to a feature in the store.

wallaby add-param-to-group GROUP-NAME PARAM-NAME[=VALUE] [...] 
Add parameters to a group in the store.

wallaby add-param-to-node NODE-NAME PARAM-NAME[=VALUE] [...] 
Add parameters to a node in the store.

wallaby add-param-to-subsystem SUBSYSTEM-NAME PARAM-NAME [...] 
Add parameters to a subsystem in the store.

wallaby remove-conflict-from-feature FEATURE-NAME CONFLICT-NAME [...] 
Remove conflicts from a feature in the store.

wallaby remove-conflict-from-param PARAM-NAME CONFLICT-NAME [...] 
Remove conflicts from a parameter in the store.

wallaby remove-dependency-from-feature FEATURE-NAME DEPENDENCY-NAME [...] 
Remove dependencies from a feature in the store.

wallaby remove-dependency-from-param PARAM-NAME DEPENDENCY-NAME [...] 
Remove dependencies from a parameter in the store.

wallaby remove-feature-from-group GROUP-NAME FEATURE-NAME [...] 
Remove features from a group in the store.

wallaby remove-feature-from-node NODE-NAME FEATURE-NAME [...] 
Remove features from a node in the store.

wallaby remove-include-from-feature FEATURE-NAME INCLUDE-NAME [...] 
Remove includes from a feature in the store.

wallaby remove-node-membership NODE-NAME GROUP-NAME [...] 
Remove group memberships from a node in the store.

wallaby remove-param-from-feature FEATURE-NAME PARAM-NAME [...] 
Remove parameters from a feature in the store.

wallaby remove-param-from-group GROUP-NAME PARAM-NAME [...] 
Remove parameters from a group in the store.

wallaby remove-param-from-node NODE-NAME PARAM-NAME [...] 
Remove parameters from a node in the store.

wallaby remove-param-from-subsystem SUBSYSTEM-NAME PARAM-NAME [...] 
Remove parameters from a subsystem in the store.

wallaby replace-conflict-on-feature FEATURE-NAME CONFLICT-NAME [...] 
Replace the conflicts on a feature in the store with a new set of conflicts.

wallaby replace-conflict-on-param PARAM-NAME CONFLICT-NAME [...] 
Replace the conflicts on a parameter in the store with a new set of conflicts.

wallaby replace-dependency-on-feature FEATURE-NAME DEPENDENCY-NAME [...] 
Replace the dependencies on a feature in the store with a new set of
dependencies.

wallaby replace-dependency-on-param PARAM-NAME DEPENDENCY-NAME [...] 
Replace the dependencies on a parameter in the store with a new set of
dependencies.

wallaby replace-feature-on-group GROUP-NAME FEATURE-NAME [...] 
Replace the features on a group in the store with a new set of features.

wallaby replace-feature-on-node NODE-NAME FEATURE-NAME [...] 
Replace the features on a node in the store with a new set of features.

wallaby replace-include-on-feature FEATURE-NAME INCLUDE-NAME [...] 
Replace the includes on a feature in the store with a new set of includes.

wallaby replace-node-membership NODE-NAME GROUP-NAME [...] 
Raplce group memberships on a node in the store with a new set of group
memberships.

wallaby replace-param-on-feature FEATURE-NAME PARAM-NAME[=VALUE] [...] 
Replace the parameters on a feature in the store with a new set of parameters.

wallaby replace-param-on-group GROUP-NAME PARAM-NAME[=VALUE] [...] 
Replace the parameters on a group in the store with a new set of parameters.

wallaby replace-param-on-node NODE-NAME PARAM-NAME[=VALUE] [...] 
Replace the parameters on a node in the store with a new set of parameters.

wallaby replace-param-on-subsystem SUBSYSTEM-NAME PARAM-NAME [...] 
Replace the parameters on a subsystem in the store with a new set of
parameters.

wallaby show-features FEATURE [...]

wallaby show-groups GROUP [...]

wallaby show-nodes NODE [...]

wallaby show-subsystems SUBSYSTEM [...]

wallaby show-params PARAMETER [...]

Comment 10 Robert Rati 2011-10-27 16:59:56 UTC
Don't document the singular form of the commands (show-feature, etc) and only document the plural for now.

Comment 17 Lana Brindley 2012-01-26 19:24:11 UTC
This book is now available on redhat.com/docs. Please raise a new bug if you spot any issues.

Thanks,
LKB