Cox-Automotive/alks-cli

[FEATURE]: Support to use alks-cli as an external process with AWS CLI

codezninja opened this issue · 5 comments

I would like to use AWS cli credentials_process with alks-cli. One of the requirements is that the STDOUT from the external process has to conform to an output

{
  "Version": 1,
  "AccessKeyId": "an AWS access key",
  "SecretAccessKey": "your AWS secret access key",
  "SessionToken": "the AWS session token for temporary credentials", 
  "Expiration": "ISO8601 timestamp when the credentials expire"
}  

the current json output from alks is

{
    "accessKey": "",
    "secretKey": "",
    "sessionToken": "",
    "expires": 1581064700874
}

The update with break current json output users so I would make it a major release.

Ref: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sourcing-external.html

Temporary work-around with JQ:

with_entries( if .key | contains("accessKey") then .key |= "AccessKeyId" elif .key | contains("secretKey") then .key |= "SecretAccessKey" elif .key | contains("sessionToken") then .key |= "SessionToken" elif .key | contains("expires") then .key |= "Expiration" else . end)

@brianantonelli awesome is this something I can test locally before the release?

@bondezbond We just rolled out a new minor version with support for your use case. The existing json export type is unchanged, but we've added a new aws export type with the proper structure to support your use case. Happy hacking!

woohoo. upgraded and worked like a charm. Thanks