Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

passwords starting with a dash are not supported #114

Open
3 tasks done
jsievers opened this issue Jul 21, 2022 · 4 comments
Open
3 tasks done

passwords starting with a dash are not supported #114

jsievers opened this issue Jul 21, 2022 · 4 comments

Comments

@jsievers
Copy link

What version of the credhub server you are using?

Server Version: 2.12.6

What version of the credhub cli you are using?

CLI Version: 2.9.3

If you were attempting to accomplish a task, what was it you were attempting to do?

set a password whose value is predetermined and starts with a dash (-)

What did you expect to happen?

password should be set

What was the actual behavior?

$ credhub set -t password -n '/example-password' -w '-supersecret'
expected argument for flag `-w, --password', but got option `-supersecret'

Please confirm where necessary:

  • I have included a log output
  • My log includes an error message
  • I have included steps for reproduction

If you are a PCF customer with an Operation Manager (PCF Ops Manager) please direct your questions to support (https://support.pivotal.io/)

@cf-gitbot
Copy link

We have created an issue in Pivotal Tracker to manage this. Unfortunately, the Pivotal Tracker project is private so you may be unable to view the contents of the story.

The labels on this github issue will be updated when the story is started.

@jsievers
Copy link
Author

there is a similar issue reported #86

the problem is that any argument starting with a dash is interpreted as a flag.

there should be a way to escape dashes, maybe adding support for the GNU -- "end of options" CLI convention would be a good idea, so we could have

$ credhub set -t password -n '/example-password' -w -- '-supersecret'

right now the only workaround I found is to use import with a temp file

https://github.com/cloudfoundry/credhub-cli/blob/main/EXAMPLES.md#exporting-and-importing

which is a kludge and may leave plain text secrets on the filesystem

@jsievers
Copy link
Author

a simpler workaround: use stdin instead

$ echo '-supersecret' | credhub set -t password -n '/example-password'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

No branches or pull requests

3 participants