Parade is a simple CLI tool for AWS SSM parameter store. Easy to read and write key values in your parameter store.
brew install chroju/tap/parade
Download the latest binary from here and place it in the some directory specified by $PATH
.
If you have set up Go environment, you can also install parade
with go get
command.
go get github.com/chroju/parade
Parade requires your AWS IAM user authentication. The same authentication method as AWS CLI is available. Tools like aws-vault can be used as well.
# with command line options
$ parade --profile YOUR_PROFILE
# with aws-vault
$ aws-vault exec YOUR_PROFILE -- parade
Parade uses the following AWS API. If you are dealing with SecureString, you will also need permission to access the kms key.
- ssm:DeleteParameter
- ssm:DescribeParameters
- ssm:GetParameter
- ssm:PutParameter
There are simple 4 sub commands. It is similar to redis-cli.
Search keys and display their types together.
keys
command supports exact match, forward match, and partial match. It usually searches for exact matches.
$ parade /service1/dev/key1
/service1/dev/key1 Type: String
Use *
as a postfix, the search will be done as a forward match. Furthermore, also use *
as a prefix, it becomes a partial match. You can't use *
as a prefix only.
$ parade keys /service1*
/service1/dev/key1 Type: String
/service1/dev/key2 Type: String
/service1/prod/key3 Type: SecureString
$ parade keys *prod*
/service1/prod/key3 Type: SecureString
If no argument is given, all keys will be retrieved.
$ parade keys
/service1/dev/key1 Type: String
/service1/dev/key2 Type: String
/service1/prod/key3 Type: SecureString
...
Display the value of the specified key.
$ parade get /service1/dev/key1
value1
You can also do a partial search using *
as well as the keys
command.
$ parade get /service1*
/service1/dev/key1 value1
/service1/dev/key2 value2
/service1/prod/key3 value3
The --decrypt
or -d
option is required to decrypt SecureString.
$ parade get /service1/dev/password
(encrypted)
$ parade get /service1/dev/password -d
1234password
Set new key and value.
$ parade set /service1/dev/key4 value4
If the specified key already exists, you can choose to overwrite it. Use --force
flag if you want to force overwriting.
$ parade set /service1/dev/key4 value5
WARN: `/service1/dev/key4` already exists.
Overwrite `/service1/dev/key4` (value: value4) ? (Y/n)
$ parade set /service1/dev/key4 value5 --force
The value is stored as String
type by default. It also supports SecureString
with the --encrypt
flag. If you don't specify a key ID with --kms-key-id
flag, uses the default key associated with your AWS account.
StringList
type is not supported.
Delete key and value. Use --force
flag if you want to skip the confirmation prompt.
$ parade del /service1/dev/key4
Delete `/service1/dev/key4` (value: value5) ? (Y/n)
$ parade del /service1/dev/key4 --force