diff options
Diffstat (limited to 'tools/src/py/qpid-ha')
-rwxr-xr-x | tools/src/py/qpid-ha | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/tools/src/py/qpid-ha b/tools/src/py/qpid-ha index 5b701a1fb4..3d56f24fb8 100755 --- a/tools/src/py/qpid-ha +++ b/tools/src/py/qpid-ha @@ -61,7 +61,9 @@ class Command: if opts.ssl_certificate: conn_options['ssl_certfile'] = opts.ssl_certificate if opts.ssl_key: - conn_options['ssl_key'] = opts.ssl_key + if not opts.ssl_certificate: + self.op.error("missing '--ssl-certificate' (required by '--ssl-key')") + conn_options['ssl_keyfile'] = opts.ssl_key conn_options['client_properties'] = {'qpid.ha-admin' : 1} connection = Connection.establish(opts.broker, **conn_options) @@ -86,8 +88,13 @@ class StatusCmd(Command): Command.__init__(self, "status", "Print HA status") self.op.add_option( "--expect", type="string", metavar="<status>", - help="Don't print status but return 0 if it matches <status>, 1 otherwise") + help="Don't print status. Return 0 if it matches <status>, 1 otherwise") + self.op.add_option( + "--is-primary", action="store_true", default=False, + help="Don't print status. Return 0 if the broker is primary, 1 otherwise") def do_execute(self, qmf_broker, ha_broker, opts, args): + if opts.is_primary: + if not ha_broker.status in ["active", "recovering"]: raise ExitStatus(1) if opts.expect: if opts.expect != ha_broker.status: raise ExitStatus(1) else: |