sm

AWS Secrets Manager CLI Tool

Readme Card

License: MIT Go Report Card Coverage Status go.dev reference

Please see the docs for details on the commands.

$ sm --help
NAME:
   sm - AWS Secrets Manager CLI Tool

USAGE:
   sm [global options] command [command options] [arguments...]

COMMANDS:
   get, view    select from list or pass in specific secret
   edit, e      interactive edit of a secret String Value
   create, c    create new secret in Secrets Manager
   put          non-interactive update to a specific secret
   delete, del  delete a specific secret
   list         display table of all secrets with meta data
   describe     print description of secret to `STDOUT`
   help, h      Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --help, -h     show help (default: false)
   --version, -v  print the version (default: false)

COPYRIGHT:
   (c) 2021 Derek Smith

Authentication

This tool uses the awssession module for creating authenticated sessions. This will use AWS Instance Role, Environment Variables or AWS CLI configuration files to generate a session. This tool should obey all AWS CLI Environment Variables.

Installation

Homebrew (for macOS users)

brew tap clok/sm
brew install sm

curl binary

$ curl https://i.jpillora.com/clok/sm! | bash

docker

The compiled docker images are maintained on GitHub Container Registry (ghcr.io). We maintain the following tags:

  • edge: Image that is build from the current HEAD of the main line branch.
  • latest: Image that is built from the latest released version
  • x.y.z (versions): Images that are build from the tagged versions within Github.
docker pull ghcr.io/clok/sm
docker run -v "$PWD":/workdir ghcr.io/clok/sm --version

man page

To install man page:

$ sm install-manpage

Development

  1. Fork the clok/sm repo
  2. Use go >= 1.16
  3. Branch & Code
  4. Run linters :broom: golangci-lint run
  5. Commit with a Conventional Commit
  6. Open a PR

Versioning

We employ git-chglog to manage the CHANGELOG.md. For the versions available, see the tags on this repository.

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE file for details