Serialise drctl boolean flags with the "=" form - #2533
Conversation
Hello delthas,My role is to assist you with the merge of this Available options
Available commands
Status report is not available. |
Waiting for approvalThe following approvals are needed before I can proceed with the merge:
|
968e06f to
f4d55ce
Compare
The file tests a helper from common/utils.ts and is about to cover a second one. Name it after the module rather than after a single function, and rename its case list accordingly. Issue: ZENKO-5356
ff449e6 to
9ab37a2
Compare
CTST built every zenko-drctl command line with "--flag value". spf13/pflag gives boolean flags NoOptDefVal = "true", so a bool flag does not consume the next argv token: "--force-rotate-service-credentials false" set the flag to true and left "false" as a positional argument, silently accepted because no drctl leaf command declares an Args validator. Every "Given a DR installed" therefore force-rotated the sink's service credentials, regardless of the install counter. On run 34585935213 the six installs produced six rotations on the sink against one on the source, leaving the CR at service-users-seq 7 while pods still mounted user-creds.v1.5. Issue: ZENKO-5356
9ab37a2 to
303c4e1
Compare
|
/approve |
|
!done 2h |
In the queueThe changeset has received all authorizations and has been added to the The changeset will be merged in:
The following branches will NOT be impacted:
This pull request does not target the following hotfix branch(es) so they
There is no action required on your side. You will be notified here once IMPORTANT Please do not attempt to modify this pull request.
If you need this pull request to be removed from the queue, please contact a The following options are set: approve |
|
I have successfully merged the changeset of this pull request
The following branches have NOT changed:
Please check the status of the associated issue ZENKO-5356. Goodbye delthas. |
|
|
What does this PR do, and why do we need it?
CTST built every
zenko-drctlcommand line with--flag value. pflag boolean flags donot consume the next argument, so
--force-rotate-service-credentials falseset the flagto true and left
"false"as a positional argument, silently ignored.Every
Given a DR installedtherefore force-rotated the sink's service credentials,instead of only the install that follows an uninstall. Each rotation rolls the sink's
backbeat pods and can stall D/R replication, which shows up as intermittent PRA failures:
on run 34585935213 the six
installs produced six rotations on the sink against one on the source, and both failing
scenarios were replicated deletes that never landed.
Emit booleans as
--flag=value, and coverparamToCliin the tests forcommon/utils.ts, renamed fromparseGoDuration.test.tsnow that it holds cases for asecond helper.
Which issue does this PR fix?
Fixes ZENKO-5356.