Description of problem: When attempting to get help from rhqctl using the --help command-line argument, it fails when used in conjunction with a command. This appears to be due to the server not yet being installed or a property check failure. The result is that a user can not get help for the rhqctl install command until after the rhqctl install has been completed. The expectation is that the --help command provide usage help for the command. Perhaps this should include the required properties in the event they are missing but at least display the usage help page for the command it was issued for. Version-Release number of selected component (if applicable): JON 3.2 ER3 Build: c0742ed:cbad264 How reproducible: Always Steps to Reproduce: 1. Extract JBoss ON server ZIP to $JON_HOME directory. 2. Execute rhqctl --help 3. Execute rhqctl install --help Actual results: $ ./rhqctl --help 17:10:03,739 INFO [org.jboss.modules] JBoss Modules version 1.2.2.Final-redhat-1 usage: rhqctl <cmd> [options] where <cmd> is one of: console <[options]> Starts an RHQ service in the foreground. Only --server or --storage is supported. To start the agent in the foreground, use the <RHQ_AGENT_HOME>/bin/rhq-agent.(sh|bat) script. install <[options]> Installs RHQ services. restart <[options]> Restarts RHQ services. start <[options]> Starts RHQ services. status <[options]> Check status of RHQ services stop <[options]> Stops RHQ services upgrade <[options]> Upgrades RHQ services from an earlier installed version * For help on a specific command: rhqctl <cmd> --help * Limit commands to a single component with one of: --storage, --server, --agent $ ./rhqctl install --help 17:11:02,166 INFO [org.jboss.modules] JBoss Modules version 1.2.2.Final-redhat-1 The [jboss.bind.address] property is required but not set in [rhq-server.properties]. Do you want to set [jboss.bind.address] value now? yes|no: Expected results: ./rhqctl install --help should return the command usage help as per: "For help on a specific command: rhqctl <cmd> --help" Additional info: It appears that the usage help is suppressed due to the missing jboss.bind.address in the rhq-server.properties file. The end result is that the user CAN NOT get command usage help unless they: - read the documentation - log a support case - proceed blindly with the usage of the install command
from a master build, it looks like this all works. Will make sure this is in the 3.2 branch. Here's what the output looks like for all the commands: ====================================================================== $ ./rhqctl --help 14:34:12,677 INFO [org.jboss.modules] JBoss Modules version 1.2.0.CR1 usage: rhqctl <cmd> [options] where <cmd> is one of: console <[options]> Starts an RHQ service in the foreground. Only --server or --storage is supported. To start the agent in the foreground, use the <RHQ_AGENT_HOME>/bin/rhq-agent.(sh|bat) script. install <[options]> Installs RHQ services. restart <[options]> Restarts RHQ services. start <[options]> Starts RHQ services. status <[options]> Check status of RHQ services stop <[options]> Stops RHQ services upgrade <[options]> Upgrades RHQ services from an earlier installed version * For help on a specific command: rhqctl <cmd> --help * Limit commands to a single component with one of: --storage, --server, --agent ====================================================================== $ ./rhqctl console --help 14:34:17,493 INFO [org.jboss.modules] JBoss Modules version 1.2.0.CR1 usage: rhqctl console [options] Starts an RHQ service in the foreground. Only --server or --storage is supported. To start the agent in the foreground, use the <RHQ_AGENT_HOME>/bin/rhq-agent.(sh|bat) script. --server Start the RHQ server in the foreground --storage Start the RHQ storage node in the foreground ====================================================================== $ ./rhqctl install --help 14:34:27,253 INFO [org.jboss.modules] JBoss Modules version 1.2.0.CR1 usage: rhqctl install [options] Installs RHQ services. --agent Install RHQ agent. The install directory will be [/home/mazz/source/rhq/dev-container/r hq-agent] --agent-config <arg> An alternate XML file to use in place of the default agent-configuration.xml --agent-preference <arg> An agent preference setting (whose argument is in the form 'name=value') to be set in the agent. More than one of these is allowed. --server Install RHQ server. If you have not yet installed an RHQ storage node somewhere in your network, you must specify --storage to install one. --start If specified then immediately start the services after installation. Note that services may be started and shut down as part of the installation process, but will not be started or left running by default. --storage Install RHQ storage node. The install directory will be [/home/mazz/source/rhq/dev-container/r hq-server/rhq-storage]. Note that this option implies --agent which means an agent will also be installed, if one is not yet installed. --storage-data-root-dir <arg> The root directory under which all storage data directories will be placed. ====================================================================== $ ./rhqctl restart --help 14:34:31,863 INFO [org.jboss.modules] JBoss Modules version 1.2.0.CR1 usage: rhqctl restart [options] Restarts RHQ services. --agent Restart RHQ agent --server Restart RHQ server --storage Restart RHQ storage node ====================================================================== $ ./rhqctl start --help 14:34:36,836 INFO [org.jboss.modules] JBoss Modules version 1.2.0.CR1 usage: rhqctl start [options] Starts RHQ services. --agent Start RHQ agent --server Start RHQ server --storage Start RHQ storage node ====================================================================== $ ./rhqctl status --help 14:34:43,477 INFO [org.jboss.modules] JBoss Modules version 1.2.0.CR1 usage: rhqctl status [options] Check status of RHQ services --agent Check status of RHQ agent --server Check status of RHQ server --storage Check status of RHQ storage node ====================================================================== $ ./rhqctl stop --help 14:34:47,281 INFO [org.jboss.modules] JBoss Modules version 1.2.0.CR1 usage: rhqctl stop [options] Stops RHQ services --agent Stop RHQ agent --server Stop RHQ server --storage Stop RHQ storage node ====================================================================== $ ./rhqctl upgrade --help 14:34:51,733 INFO [org.jboss.modules] JBoss Modules version 1.2.0.CR1 usage: rhqctl upgrade [options] Upgrades RHQ services from an earlier installed version --from-agent-dir <arg> Full path to install directory of the RHQ Agent to be upgraded. Required only if an existing agent exists and is not installed in the default location: <from-server-dir>/../rhq-agent --from-server-dir <arg> Full path to install directory of the RHQ Server to be upgraded. Required. --run-data-migrator <arg> This option is valid only when upgrading from older systems that did not have storage nodes. The existing metric data needs to migrate to the metric storage. The upgrade process can trigger this or give you an estimate on the duration. If you want to have fine control over the process, please run the migrator on the command line. Options are none (do nothing), estimate (estimate the migration time only), print-command (print the command line for a manual run), do-it (run the migration) --start If specified then immediately start the services after upgrade. Note that services may be started and shut down as part of the upgrade process, but will not be started or left running by default. --storage-data-root-dir <arg> This option is valid only when upgrading from older systems that did not have storage nodes. Use this option to specify a non-default base directory for the data directories created by the storage node. For example, if the default directory is not writable for the current user (/var/lib on Linux) or if you simply prefer a different location. --use-remote-storage-node <arg> By default a server is co-located with a storage node. However, if this option is set to true, no local storage node will be upgraded and it is assumed a remote storage node is configured in rhq-server.properties.
I take that back. All the commands do work as I describe in comment #1 EXCEPT install. It works IF your rhq-server.props are fully configured, if not, "rhqctl install --help" prompts you. we need to fix that
master commit e3655db00a3439a0a17b119eb4ed87b8420e023d Author: Jay Shaughnessy <jshaughn> Date: Mon Oct 14 15:18:33 2013 -0400 - Fix issue with validation blocking help commands - Fix issue with validation of irrelevant component. For example, don't validate rhq-server.properties for 'rhqctl install --storage' Release/jon3.2.x commit: 3f9c7af11086b879737122aca0cd952ccc851b95
Moving to ON_QA for testing in the next build.
Verified on Version: 3.2.0.ER4 Build Number: e413566:057b211 Verified that if the rhq-server.properties have missing properties like 'jboss.bind.address', the './rhqctl install --help' command does not prompt and works correctly. ----------------------------------------------------------------------------------- [root@suniltest bin]# ./rhqctl install --help 16:27:33,961 INFO [org.jboss.modules] JBoss Modules version 1.2.2.Final-redhat-1 usage: rhqctl install [options] Installs RHQ services. --agent Install RHQ agent. The install directory will be [/install/jonbuilds/jon32/ER4/rhq-agen t] --agent-config <arg> An alternate XML file to use in place of the default agent-configuration.xml --agent-preference <arg> An agent preference setting (whose argument is in the form 'name=value') to be set in the agent. More than one of these is allowed. --server Install RHQ server. If you have not yet installed an RHQ storage node somewhere in your network, you must specify --storage to install one. --start If specified then immediately start the services after installation. Note that services may be started and shut down as part of the installation process, but will not be started or left running by default. --storage Install RHQ storage node. The install directory will be [/install/jonbuilds/jon32/ER4/jon-serv er-3.2.0.ER4/rhq-storage]. Note that this option implies --agent which means an agent will also be installed, if one is not yet installed. --storage-data-root-dir <arg> The root directory under which all storage data directories will be placed. ---------------------------------------------------------------------------- Also verified below help commands: ./rhqctl --help ./rhqctl console --help ./rhqctl restart --help ./rhqctl start --help ./rhqctl status --help ./rhqctl stop --help ./rhqctl upgrade --help