├── .circleci └── config.yml ├── .gitignore ├── CHANGELOG.md ├── LICENSE ├── README.md ├── bin ├── build ├── compile ├── generate-docs ├── lint-docs ├── lint-gometalinter ├── lint-shellcheck ├── release └── run-tests ├── cli ├── add.go ├── add_test.go ├── app.go ├── app_test.go ├── doc.go ├── export.go ├── export_test.go ├── init.go ├── init_test.go ├── main.go ├── main_test.go ├── rotate.go ├── rotate_kms_key.go ├── rotate_kms_key_test.go ├── rotate_test.go ├── testdata │ ├── empty.json │ ├── invalid.json │ └── one_credential.json ├── version.go └── version_test.go ├── crypto ├── doc.go ├── encoding.go ├── encoding_test.go ├── main.go ├── main_test.go ├── mock │ └── main.go ├── secretbox.go └── secretbox_test.go ├── doc ├── doc.go ├── main.go ├── man │ ├── ejson-kms.1 │ ├── ejson-kms_add.1 │ ├── ejson-kms_export.1 │ ├── ejson-kms_init.1 │ ├── ejson-kms_rotate-kms-key.1 │ ├── ejson-kms_rotate.1 │ └── ejson-kms_version.1 └── md │ ├── ejson-kms.md │ ├── ejson-kms_add.md │ ├── ejson-kms_export.md │ ├── ejson-kms_init.md │ ├── ejson-kms_rotate-kms-key.md │ ├── ejson-kms_rotate.md │ └── ejson-kms_version.md ├── formatter ├── bash.go ├── bash_test.go ├── doc.go ├── dotenv.go ├── dotenv_test.go ├── json.go ├── json_test.go ├── main.go ├── main_test.go ├── testdata │ ├── bash │ ├── bash-ifempty │ ├── bash-ifnotset │ ├── dotenv │ ├── json.json │ └── yaml.yaml ├── yaml.go └── yaml_test.go ├── go.mod ├── go.sum ├── kms ├── doc.go ├── main.go ├── main_test.go ├── mock │ └── main.go └── testdata │ └── invalid-aws ├── main.go ├── model ├── doc.go ├── secret.go ├── store.go ├── store_test.go └── testdata │ ├── invalid.json │ └── valid.json └── utils ├── doc.go ├── io.go ├── io_test.go ├── validators.go └── validators_test.go /.circleci/config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/.circleci/config.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .dist/* 2 | .secrets.json 3 | .artifacts/* 4 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/README.md -------------------------------------------------------------------------------- /bin/build: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/bin/build -------------------------------------------------------------------------------- /bin/compile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/bin/compile -------------------------------------------------------------------------------- /bin/generate-docs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/bin/generate-docs -------------------------------------------------------------------------------- /bin/lint-docs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/bin/lint-docs -------------------------------------------------------------------------------- /bin/lint-gometalinter: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/bin/lint-gometalinter -------------------------------------------------------------------------------- /bin/lint-shellcheck: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/bin/lint-shellcheck -------------------------------------------------------------------------------- /bin/release: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/bin/release -------------------------------------------------------------------------------- /bin/run-tests: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/bin/run-tests -------------------------------------------------------------------------------- /cli/add.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/add.go -------------------------------------------------------------------------------- /cli/add_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/add_test.go -------------------------------------------------------------------------------- /cli/app.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/app.go -------------------------------------------------------------------------------- /cli/app_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/app_test.go -------------------------------------------------------------------------------- /cli/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/doc.go -------------------------------------------------------------------------------- /cli/export.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/export.go -------------------------------------------------------------------------------- /cli/export_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/export_test.go -------------------------------------------------------------------------------- /cli/init.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/init.go -------------------------------------------------------------------------------- /cli/init_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/init_test.go -------------------------------------------------------------------------------- /cli/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/main.go -------------------------------------------------------------------------------- /cli/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/main_test.go -------------------------------------------------------------------------------- /cli/rotate.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/rotate.go -------------------------------------------------------------------------------- /cli/rotate_kms_key.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/rotate_kms_key.go -------------------------------------------------------------------------------- /cli/rotate_kms_key_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/rotate_kms_key_test.go -------------------------------------------------------------------------------- /cli/rotate_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/rotate_test.go -------------------------------------------------------------------------------- /cli/testdata/empty.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/testdata/empty.json -------------------------------------------------------------------------------- /cli/testdata/invalid.json: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /cli/testdata/one_credential.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/testdata/one_credential.json -------------------------------------------------------------------------------- /cli/version.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/version.go -------------------------------------------------------------------------------- /cli/version_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/cli/version_test.go -------------------------------------------------------------------------------- /crypto/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/crypto/doc.go -------------------------------------------------------------------------------- /crypto/encoding.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/crypto/encoding.go -------------------------------------------------------------------------------- /crypto/encoding_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/crypto/encoding_test.go -------------------------------------------------------------------------------- /crypto/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/crypto/main.go -------------------------------------------------------------------------------- /crypto/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/crypto/main_test.go -------------------------------------------------------------------------------- /crypto/mock/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/crypto/mock/main.go -------------------------------------------------------------------------------- /crypto/secretbox.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/crypto/secretbox.go -------------------------------------------------------------------------------- /crypto/secretbox_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/crypto/secretbox_test.go -------------------------------------------------------------------------------- /doc/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/doc.go -------------------------------------------------------------------------------- /doc/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/main.go -------------------------------------------------------------------------------- /doc/man/ejson-kms.1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/man/ejson-kms.1 -------------------------------------------------------------------------------- /doc/man/ejson-kms_add.1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/man/ejson-kms_add.1 -------------------------------------------------------------------------------- /doc/man/ejson-kms_export.1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/man/ejson-kms_export.1 -------------------------------------------------------------------------------- /doc/man/ejson-kms_init.1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/man/ejson-kms_init.1 -------------------------------------------------------------------------------- /doc/man/ejson-kms_rotate-kms-key.1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/man/ejson-kms_rotate-kms-key.1 -------------------------------------------------------------------------------- /doc/man/ejson-kms_rotate.1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/man/ejson-kms_rotate.1 -------------------------------------------------------------------------------- /doc/man/ejson-kms_version.1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/man/ejson-kms_version.1 -------------------------------------------------------------------------------- /doc/md/ejson-kms.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/md/ejson-kms.md -------------------------------------------------------------------------------- /doc/md/ejson-kms_add.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/md/ejson-kms_add.md -------------------------------------------------------------------------------- /doc/md/ejson-kms_export.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/md/ejson-kms_export.md -------------------------------------------------------------------------------- /doc/md/ejson-kms_init.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/md/ejson-kms_init.md -------------------------------------------------------------------------------- /doc/md/ejson-kms_rotate-kms-key.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/md/ejson-kms_rotate-kms-key.md -------------------------------------------------------------------------------- /doc/md/ejson-kms_rotate.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/md/ejson-kms_rotate.md -------------------------------------------------------------------------------- /doc/md/ejson-kms_version.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/doc/md/ejson-kms_version.md -------------------------------------------------------------------------------- /formatter/bash.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/bash.go -------------------------------------------------------------------------------- /formatter/bash_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/bash_test.go -------------------------------------------------------------------------------- /formatter/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/doc.go -------------------------------------------------------------------------------- /formatter/dotenv.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/dotenv.go -------------------------------------------------------------------------------- /formatter/dotenv_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/dotenv_test.go -------------------------------------------------------------------------------- /formatter/json.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/json.go -------------------------------------------------------------------------------- /formatter/json_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/json_test.go -------------------------------------------------------------------------------- /formatter/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/main.go -------------------------------------------------------------------------------- /formatter/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/main_test.go -------------------------------------------------------------------------------- /formatter/testdata/bash: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/testdata/bash -------------------------------------------------------------------------------- /formatter/testdata/bash-ifempty: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/testdata/bash-ifempty -------------------------------------------------------------------------------- /formatter/testdata/bash-ifnotset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/testdata/bash-ifnotset -------------------------------------------------------------------------------- /formatter/testdata/dotenv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/testdata/dotenv -------------------------------------------------------------------------------- /formatter/testdata/json.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/testdata/json.json -------------------------------------------------------------------------------- /formatter/testdata/yaml.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/testdata/yaml.yaml -------------------------------------------------------------------------------- /formatter/yaml.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/yaml.go -------------------------------------------------------------------------------- /formatter/yaml_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/formatter/yaml_test.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/go.sum -------------------------------------------------------------------------------- /kms/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/kms/doc.go -------------------------------------------------------------------------------- /kms/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/kms/main.go -------------------------------------------------------------------------------- /kms/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/kms/main_test.go -------------------------------------------------------------------------------- /kms/mock/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/kms/mock/main.go -------------------------------------------------------------------------------- /kms/testdata/invalid-aws: -------------------------------------------------------------------------------- 1 | [default 2 | -------------------------------------------------------------------------------- /main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/main.go -------------------------------------------------------------------------------- /model/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/model/doc.go -------------------------------------------------------------------------------- /model/secret.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/model/secret.go -------------------------------------------------------------------------------- /model/store.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/model/store.go -------------------------------------------------------------------------------- /model/store_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/model/store_test.go -------------------------------------------------------------------------------- /model/testdata/invalid.json: -------------------------------------------------------------------------------- 1 | { 2 | "kms_key_id": 123 3 | } 4 | -------------------------------------------------------------------------------- /model/testdata/valid.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/model/testdata/valid.json -------------------------------------------------------------------------------- /utils/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/utils/doc.go -------------------------------------------------------------------------------- /utils/io.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/utils/io.go -------------------------------------------------------------------------------- /utils/io_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/utils/io_test.go -------------------------------------------------------------------------------- /utils/validators.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/utils/validators.go -------------------------------------------------------------------------------- /utils/validators_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adrienkohlbecker/ejson-kms/HEAD/utils/validators_test.go --------------------------------------------------------------------------------