aws-vault icon indicating copy to clipboard operation
aws-vault copied to clipboard

aws-vault 6.6.0 behavior change

Open chenrui333 opened this issue 4 years ago • 8 comments

  • [x] I am using the latest release of AWS Vault
  • [ ] I have provided my .aws/config (redacted if necessary)
  • [ ] I have provided the debug output using aws-vault --debug (redacted if necessary)

👋 trying to upgrade aws-vault to use the latest release, but ran into some issue as below the runtime behavior seems different between macOS and linux (for aws-vault login):

On macOS

$ aws-vault login
aws-vault: error: login: argument 'profile' not provided, nor any AWS env vars found. Try --help

On linux

/ # ./aws-vault login
aws-vault: error: Specified keyring backend not available, try --help

kind of relates to https://github.com/Homebrew/homebrew-core/pull/96523

chenrui333 avatar Mar 12 '22 17:03 chenrui333

Hey @chenrui333 I'm struggling to understand what the issue is without further details.

Your macOS example returns an error because you have not specified a profile and aws env vars haven't been found. 6.5.0 behaviour also displayed an error for this.

Your Linux example returns an error because your selected keyring backend isn't available. You'll need to supply more information to show what backend you're using, and what the difference to 6.5.0 was, because 6.5.0 also would return an error when the selected backend wasn't available.

mtibben avatar Mar 13 '22 00:03 mtibben

Looking at the logs the different behaviour is that the command aws-vault login now complains about the selected keyring backend. Except it does not select any keyring backend that I can see.

SMillerDev avatar Mar 14 '22 07:03 SMillerDev

Please provide details with --debug as the issue template requests

mtibben avatar Mar 14 '22 08:03 mtibben

$ /home/linuxbrew/.linuxbrew/Cellar/aws-vault/6.6.0/bin/aws-vault login --debug 2>&1
2022/03/14 08:19:28 aws-vault 6.6.0-Homebrew
2022/03/14 08:19:28 [keyring] Considering backends: [keyctl]
2022/03/14 08:19:28 [keyring] Failed backend keyctl: accessing "" keyring failed: unknown scope ""
aws-vault: error: Specified keyring backend not available, try --help

SMillerDev avatar Mar 14 '22 08:03 SMillerDev

In v6.5.0, aws-vault login PROFILE - PROFILE is mandatory

in v6.6.0, aws-vault login [PROFILE] - PROFILE is optional.

Both v6.5.0 and v6.6.0 throw the same error when a profile argument is given

Why is homebrew testing the behaviour of an error message about missing arguments... i don't understand

mtibben avatar Mar 14 '22 10:03 mtibben

Why is homebrew testing the behaviour of an error message about missing arguments... i don't understand

Because we want to validate that it compiled and runs succesfully and any other check requires credentials.

Both v6.5.0 and v6.6.0 throw the same error when a profile argument is given

That's good to know, we can adjust the test to give an invalid profile.

SMillerDev avatar Mar 14 '22 10:03 SMillerDev

I created #890 since this issue has a bunch of unrelated information about Homebrew tests that aren't part of the problem.

SMillerDev avatar Mar 14 '22 11:03 SMillerDev

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] avatar Sep 21 '22 03:09 stale[bot]