diff --git a/cmd/certificates/auth.go b/cmd/certificates/auth.go index d59c4f116..efa33c571 100644 --- a/cmd/certificates/auth.go +++ b/cmd/certificates/auth.go @@ -200,22 +200,24 @@ func cmdExportAuth(cmd *cobra.Command, args []string) error { } var emails []string - switch { - case len(args) > 0 && !authCfg.All: + if authCfg.All { if authCfg.EmailsPath != "" { - return errs.New("Either use `--emails-path` or positional args, not both.") + return errs.New("Cannot use `--emails-path` with --all.") } - emails = args - case len(args) == 0 || authCfg.All: emails, err = authDB.UserIDs(ctx) if err != nil { return err } - default: - emails, err = parseEmailsList(authCfg.EmailsPath, authCfg.Delimiter) - if err != nil { - return errs.Wrap(err) + } else { + if authCfg.EmailsPath != "" { + emails, err = parseEmailsList(authCfg.EmailsPath, authCfg.Delimiter) + if err != nil { + return errs.Wrap(err) + } + } else if len(args) == 0 { + return errs.New("Need either `--emails-path` or positional args.") } + emails = append(emails, args...) } var ( diff --git a/scripts/test-certificates.sh b/scripts/test-certificates.sh index b4a60ced3..334f0d13e 100755 --- a/scripts/test-certificates.sh +++ b/scripts/test-certificates.sh @@ -78,7 +78,7 @@ for i in {0..4}; do fi done -exported_auths=$(_certificates auth export) +exported_auths=$(_certificates auth export --all) _certificates run --min-difficulty 0 --authorization-addr $AUTHS_HTTP_ADDR & CERTS_PID=$! @@ -96,7 +96,7 @@ done kill_certificates_server # Expect 10 authorizations total. -auths=$(_certificates auth export) +auths=$(_certificates auth export --all) require_lines 10 "$auths" $LINENO for i in {1..4}; do