Bug 733368 - Provide ccs/ccp like functionality through wallaby shell commands
Summary: Provide ccs/ccp like functionality through wallaby shell commands
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: condor-wallaby-tools
Version: Development
Hardware: Unspecified
OS: Unspecified
high
unspecified
Target Milestone: 2.1
: ---
Assignee: Robert Rati
QA Contact: Lubos Trilety
URL:
Whiteboard:
Depends On:
Blocks: 743350
TreeView+ depends on / blocked
 
Reported: 2011-08-25 15:04 UTC by Robert Rati
Modified: 2012-02-07 08:37 UTC (History)
4 users (show)

Fixed In Version: wallaby-0.12.1-1
Doc Type: Technology Preview
Doc Text:
Previously, the Wallaby configuration service shell commands did not provide full functionality when configuring the wallaby utility. Consequently, options not provided by the shell commands had to be configured via the condor_configure_store and condor_configure_pool utilities. This update adds many new wallaby shell commands and the Wallaby database configuration can now be performed through the wallaby shell.
Clone Of:
Environment:
Last Closed: 2012-01-23 17:28:32 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHEA-2012:0045 0 normal SHIPPED_LIVE Red Hat Enterprise MRG Grid 2.1 bug fix and enhancement update 2012-01-23 22:22:58 UTC

Description Robert Rati 2011-08-25 15:04:28 UTC
Description of problem:
It would be nice to re-implement ccs/ccp in wallaby shell commands to increase programatical access to the functionality and remove any duplication of effort between the two tools.  ccs/ccp should continue to exist as a translation for users familiar with those tools.

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 Robert Rati 2011-10-02 04:14:07 UTC
Changes on branch:
BZ733368-more-shell-cmds

Added the following commands:
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, --priorwallaby 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 upgradeity 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 2 Robert Rati 2011-10-03 21:49:29 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
C: Wallaby shell commands did not provide full functionality when configuring wallaby.
C: If functionality did not exist in the wallaby shell commands, a user would have to use the condor_configure_store or condor_configure_pool tools.
C: Many new wallaby shell commands have been added.
R: Wallaby database configuration can be achieved through wallaby shell.

Comment 4 Lubos Trilety 2011-10-05 15:16:57 UTC
(In reply to comment #1)
> Changes on branch:
> BZ733368-more-shell-cmds
> 
> Added the following commands:
> 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.

-- it didn't fail if a group with the given name already exists. (same for any other add functionality)
# wallaby add-group group
Adding the following group: group with {}
Console Connection Established...
# wallaby add-group group
Adding the following group: group with {}
Console Connection Established...
# echo $?
0

-- What is the meaning of the name option in the command
# wallaby add-group groupname --name name1
Adding the following group: groupname with {:name=>"name1"}
Console Connection Established...
# wallaby remove-group groupname --name name1
Console Connection Established...
warning:  group groupname does not exist

# wallaby add-group groupname --name name1
Adding the following group: groupname with {:name=>"name1"}
Console Connection Established...
# wallaby list-groups
Console Connection Established...
+++DEFAULT
name1
# wallaby add-group groupname --name name1
Adding the following group: groupname with {:name=>"name1"}
Console Connection Established...
# wallaby list-groups
Console Connection Established...
+++DEFAULT
name1
groupname

> 
> 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.

-- There is [subsystem-options] in help, but without any explanation what it is.
# wallaby help add-subsystem
Usage:  wallaby add-subsystem subsystem-name [...] [subsystem-options]
    -h, --help                       displays this message.

> 
> 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

-- Missing description of ACTION, TARGET and NAME in help (same for 'wallaby apply-node-feature')
# wallaby help apply-group-feature
Usage:  wallaby apply-group-feature [options] ACTION TARGET NAME
Modify features applied to a group in the store.
    -h, --help                       displays this message
    -p, --priority PRI               priority when adding

-- It doesn't run, but maybe I miss something (same for 'wallaby apply-node-feature')
# wallaby add-group group
Adding the following group: group with {}
Console Connection Established...
# wallaby add-feature feat
Adding the following feature: feat with {}
Console Connection Established...
# wallaby apply-group-feature ADD group feat
Console Connection Established...
Invalid NAME: feat

> 
> 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

-- see wallaby apply-group-feature

> 
> 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

-- Missing description of ACTION, TYPE and NAME in help
-- Missing note that there could be more than one parameter
# wallaby attach-params --help
Usage:  wallaby attach-params ACTION TYPE NAME PARAM[=VALUE]
Modifies parameter/value pairs attached to an entity.
    -h, --help                       displays this message

-- it doesn't run on RHEL5 for Group as TYPE
# wallaby add-group group
Adding the following group: group with {}
Console Connection Established...
# wallaby add-param param
Adding the following parameter: param with {}
Console Connection Established...
# wallaby attach-params (ADD|REPLACE|REMOVE) Group group param
Console Connection Established...
fatal:  wrong number of arguments (0 for 1)

-- there is not handled error when invalid parameter is used
#  wallaby attach-params <ACTION> <TYPE> <NAME> noparam
Console Connection Established...
fatal:  #<NoMethodError: undefined method `name' for nil:NilClass>

> 
> 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

-- Missing description of ACTION, TARGET and NAME in help
-- Missing note that there could be more than one NAME
-- Has the priority option any meaning for this command?
-- (all three points are valid also for feature-depend and feature-include)
# wallaby feature-conflict --help
Usage:  wallaby feature-conflict [options] ACTION TARGET NAME
Modify a feature's conflicts in the store.
    -h, --help                       displays this message
    -p, --priority PRI               priority when adding

> 
> 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

-- see wallaby feature-conflict

> 
> 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
> 

-- see wallaby feature-conflict

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

OK

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

OK

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

OK

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

OK

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

OK

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

-- Missing explanation what's [group-options] in help?
-- Why is it possible to put there more than one group name?
# wallaby modify-group --help
Usage:  wallaby modify-group group-name [...] [group-options]
    -h, --help                       displays this message
        --name VALUE                 Sets the name property of the modified group
                                        (valid values are strings)

# wallaby list-groups
Console Connection Established...
group
group1
# wallaby modify-group group group1 --name group2
Console Connection Established...
Modifying the following group: group with {:name=>"group2"}
Modifying the following group: group1 with {:name=>"group2"}
# wallaby list-groups
Console Connection Established...
group2
group1

-- It is possible to rename default group +++DEFAULT
# wallaby list-groups
Console Connection Established...
+++DEFAULT
# wallaby modify-group +++DEFAULT --name group
Console Connection Established...
Modifying the following group: +++DEFAULT with {:name=>"group"}
# wallaby list-groups
Console Connection Established...
group

> 
> 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

-- Missing description of ACTION, TARGET and NAME in help
-- Does the priority have any meaning for this command?
-- There could be more than one NAME
-- (same for param-conflict and param-depend)
# wallaby node-membership --help
Usage:  wallaby node-membership [options] ACTION TARGET NAME
Modify a node's group membership.
    -h, --help                       displays this message
    -p, --priority PRI               priority when adding

> 
> 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

-- see wallaby node-membership

> 
> 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

-- see wallaby node-membership

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

-- There is [group-options] in help, but it does not make sense, it's no needed
-- Same for --name option
# wallaby remove-group --help
Usage:  wallaby remove-group group-name [...] [group-options]
    -h, --help                       displays this message
        --name VALUE                 Sets the name property of the modified group
                                        (valid values are strings)
-- It is possible to remove default group '+++DEFAULT', I don't think that it should. (default group cannot be added)
# wallaby list-groups
Console Connection Established...
+++DEFAULT
group2
group1
# wallaby remove-group +++DEFAULT
Console Connection Established...
Removing the following group: +++DEFAULT with {}
# wallaby list-groups
Console Connection Established...
group2
group1

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

-- There is [subsystem-options] in help, but it does not make sense, it's no needed
# wallaby remove-subsystem --help
Usage:  wallaby remove-subsystem subsystem-name [...] [subsystem-options]
    -h, --help                       displays this message

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

-- There is [group-options] in help, it does not make much sense
# wallaby show-group --help
Usage:  wallaby show-group group-name [...] [group-options]
    -h, --help                       displays this message

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

-- There is [subsystem-options] in help, it does not make much sense
# wallaby show-subsystem --help
Usage:  wallaby show-subsystem subsystem-name [...] [subsystem-options]
    -h, --help                       displays this message

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

-- it does not run on RHEL5
# wallaby upgrade-db
Console Connection Established...
fatal:  undefined method `chars' for "ParameterArc":String


For all generally:
-- If there is some problem, e.g. cyclic dependency etc. it doesn't print any error it just ignore the broken input
E.g.
# wallaby  show-feature feat feat2
Console Connection Established...
feat
  name:  "feat"
  params:  {}
  depends:  ["feat2"]
  conflicts:  []
  included_features:  []
feat2
  name:  "feat2"
  params:  {}
  depends:  []
  conflicts:  []
  included_features:  []
# wallaby feature-depend ADD feat2 feat
Console Connection Established...
# wallaby  show-feature feat feat2
Console Connection Established...
feat
  name:  "feat"
  params:  {}
  depends:  ["feat2"]
  conflicts:  []
  included_features:  []
feat2
  name:  "feat2"
  params:  {}
  depends:  []
  conflicts:  []
  included_features:  []


>>> ASSIGNED

Comment 5 Robert Rati 2011-10-10 13:53:49 UTC
All above issues have been resolved upstream on:
BUGFIX-shell-cmds-fixes

To answer the question about priorities, they do matter for the case of Groups and Nodes.  The priority will determine the value of parameters that exist in multiple features applied to a group/node.  The other cases are basically cosmetic.

Comment 6 Lubos Trilety 2011-10-11 09:15:11 UTC
(In reply to comment #5)
> All above issues have been resolved upstream on:
> BUGFIX-shell-cmds-fixes
> 
> To answer the question about priorities, they do matter for the case of Groups
> and Nodes.  The priority will determine the value of parameters that exist in
> multiple features applied to a group/node.  The other cases are basically
> cosmetic.

I think it is wrong, for those other cases the priority should not be mentioned in help, if it's ignored. Moreover some error message should be printed when user use the priority parameter.

Please fill 'Fixed In Version' when bug is moved to modified state.

Comment 7 Robert Rati 2011-10-11 12:46:42 UTC
There is no harm in allowing a user to inject a list of entities at a specific point and it having no effect functionally.  It is an option and not required for functionality.

Comment 8 Robert Rati 2011-10-12 21:07:03 UTC
Turns out that wallaby doesn't guarantee order for relationships that are effectively sets, so I've removed the -p option from all commands except apply-group-feature, apply-node-feature, and node-membership.

Comment 9 Robert Rati 2011-10-14 22:39:05 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 11 Lubos Trilety 2011-10-18 15:57:47 UTC

(In reply to comment #9)

Tested on:
wallaby-0.12.0-1

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

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

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

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

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

-- help should include description of GROUP-OPTIONS
-- something like where [GROUP-OPTIONS] are: -p priority ...
-- it doesn't work rhel5
# wallaby add-features-to-group group1 feat1
Console Connection Established...
fatal:  wrong number of arguments (0 for 1)

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

-- there should be description of NODE-OPTIONS in help
functionality -- OK
> 
> wallaby add-includes-to-feature FEATURE-NAME INCLUDE-NAME [...]
> [FEATURE-OPTIONS]
> Add includes to a feature in the store.
>     -p, --priority PRI               priority for NAMES

-- there should be description of FEATURE-OPTIONS in help
-- it is possible include feature which depends on
# wallaby show-features feat2
Console Connection Established...
feat2
  name:  "feat2"
  params:  {}
  depends:  ["feat3", "feat4"]
  conflicts:  []
  included_features:  ["feat3", "feat4"]
> 
> wallaby add-node-memberships NODE-NAME GROUP-NAME [...] [NODE-OPTIONS]
> Add group memberships to a node in the store.
>     -p, --priority PRI               priority for NAMES

-- there should be description of NODE-OPTIONS in help
functionality -- OK
> 
> wallaby add-params-to-feature FEATURE-NAME PARAM-NAME[=VALUE] [...] 
> Add parameters to a feature in the store.

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

-- doesn't work on rhel5
# wallaby add-params-to-group group1 P1
Console Connection Established...
fatal:  wrong number of arguments (0 for 1)
> 
> wallaby add-params-to-node NODE-NAME PARAM-NAME[=VALUE] [...] 
> Add parameters to a node in the store.

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

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

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

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

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

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

-- doesn't work on RHEL5
# wallaby remove-features-from-group group1 feat1
Console Connection Established...
fatal:  wrong number of arguments (0 for 1)
> 
> wallaby remove-features-from-node NODE-NAME FEATURE-NAME [...] 
> Remove features from a node in the store.

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

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

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

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

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

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

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

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

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

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

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

-- doesn't work on RHEL5
# wallaby replace-features-on-group group1 feat1
Console Connection Established...
fatal:  wrong number of arguments (0 for 1)
> 
> wallaby replace-features-on-node NODE-NAME FEATURE-NAME [...] 
> Replace the features on a node in the store with a new set of features.

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

-- it is possible include feature which depends on
# wallaby show-features feat2
Console Connection Established...
feat2
  name:  "feat2"
  params:  {}
  depends:  ["feat3", "feat4"]
  conflicts:  []
  included_features:  ["feat3", "feat4"]
> 
> wallaby replace-node-memberships NODE-NAME GROUP-NAME [...] 
> Raplce group memberships on a node in the store with a new set of group
> memberships.

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

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

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

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

OK
> 
> wallaby show-features FEATURE [...]

OK
> 
> wallaby show-groups GROUP [...]

OK
> 
> wallaby show-nodes NODE [...]

OK
> 
> wallaby show-subsystems SUBSYSTEM [...]

OK
> 
> wallaby show-params PARAMETER [...]

OK

>>> ASSIGNED

Comment 12 Lubos Trilety 2011-10-18 16:10:02 UTC
Rest of commands

> wallaby add-group
OK

> wallaby add-subsystem
OK

> wallaby modify-group -h
-- still missing description of GROUP-OPTIONS in help
functionality -- OK

> wallaby remove-group
OK

> wallaby remove-subsystem
OK

> wallaby upgrade-db
OK

Comment 13 Robert Rati 2011-10-19 16:38:04 UTC
Issues resolved on master.

Comment 14 Lubos Trilety 2011-10-26 12:35:20 UTC
Tested with:
wallaby-0.12.1-1

Tested on:
RHEL6 i386, x86_64
RHEL5 i386, x86_64

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

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

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

-- it is possible include feature on which depends new Bug 747308 was created
> 
> wallaby add-node-memberships NODE-NAME GROUP-NAME [...] [NODE-OPTIONS]
> Add group memberships to a node in the store.
>     -p, --priority PRI               priority for NAMES

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

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

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

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

-- it is possible include feature on which depends - new Bug 747308 created
>
> wallaby modify-group -h

OK

>>> VERIFIED

Comment 15 Tomas Capek 2011-11-16 15:45:55 UTC
    Technical note updated. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    Diffed Contents:
@@ -1,4 +1 @@
-C: Wallaby shell commands did not provide full functionality when configuring wallaby.
+Previously, the Wallaby configuration service shell commands did not provide full functionality when configuring the wallaby utility. Consequently, options not provided by the shell commands had to be configured via the condor_configure_store and condor_configure_pool utilities. This update adds many new wallaby shell commands and the Wallaby database configuration can now be performed through the wallaby shell.-C: If functionality did not exist in the wallaby shell commands, a user would have to use the condor_configure_store or condor_configure_pool tools.
-C: Many new wallaby shell commands have been added.
-R: Wallaby database configuration can be achieved through wallaby shell.

Comment 16 errata-xmlrpc 2012-01-23 17:28:32 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHEA-2012-0045.html


Note You need to log in before you can comment on or make changes to this bug.