{"id":20566049,"url":"https://github.com/pathmotion/aws-secrets-circleci","last_synced_at":"2025-07-10T20:32:53.430Z","repository":{"id":140207071,"uuid":"197147642","full_name":"PathMotion/aws-secrets-circleci","owner":"PathMotion","description":"A circle ci step to load secrets from AWS Secrets Manager and store them into an .env file","archived":false,"fork":false,"pushed_at":"2020-04-02T15:09:02.000Z","size":12,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-07T20:01:46.531Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PathMotion.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-07-16T07:55:41.000Z","updated_at":"2024-10-26T16:48:12.000Z","dependencies_parsed_at":null,"dependency_job_id":"b22b2314-31e4-43d5-bf93-e045443bc2e8","html_url":"https://github.com/PathMotion/aws-secrets-circleci","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/PathMotion/aws-secrets-circleci","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PathMotion%2Faws-secrets-circleci","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PathMotion%2Faws-secrets-circleci/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PathMotion%2Faws-secrets-circleci/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PathMotion%2Faws-secrets-circleci/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PathMotion","download_url":"https://codeload.github.com/PathMotion/aws-secrets-circleci/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PathMotion%2Faws-secrets-circleci/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264652713,"owners_count":23644316,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-16T04:39:52.945Z","updated_at":"2025-07-10T20:32:53.421Z","avatar_url":"https://github.com/PathMotion.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Circle CI AWS Secrets Manager connector\n\n## About\n\nThis image is made to load AWS Secrets Manager secret value to a file which can be sourced by Circle CI.\n\nIt is Python 3 based and uses the Boto library.\n\n## Usage in Docker\n\n```\nexport KEY_ID=\u003cyour aws key id\u003e\nexport ACCESS_KEY=\u003cyour aws access key\u003e\ndocker run pathmotion/aws-secrets-circleci \\\n    --region=eu-west-1 \\\n    --secret my-secrets-for-circle-ci \\\n    --output /root/secrets.env\n```\n\nThis will write a file like this to `/root/secrets.env` (as defined in the command parameters)\n\n```\nexport FOO=\"bar\"\nexport HELLO_CI=\"I am an AWS Secret\"\n```\n\nThis file can be directly sourced on a bash environment.\n\n## Usage in CircleCI\n\nDefine the executor and your credentials as environment variables\n\n```yaml\nexecutors:\n    docker:\n      - image: pathmotion/aws-secrets-circleci:latest\n```\n\nDefine those commands to load the secrets from AWS and inject it into the env vars of a job\n\n```yaml\ncommands:\n  aws-secrets-load:\n    description: Load secrets from an AWS Secrets Manager secret entry\n    parameters:\n      secret_name:\n        type: string\n        default: my-secret-from-aws\n      aws_region:\n        type: string\n        default: eu-west-1\n      filename:\n        type: string\n    steps:\n      - attach_workspace:\n          at: /secrets\n      - run:\n          command: |\n            echo 'export KEY_ID=\"$AWSSM_KEY_ID\"' \u003e\u003e $BASH_ENV\n            echo 'export ACCESS_KEY=\"$AWSSM_ACCESS_KEY\"' \u003e\u003e $BASH_ENV\n      - run: load-aws-secrets --region \u003c\u003c parameters.aws_region \u003e\u003e --secret \u003c\u003c parameters.secret_name \u003e\u003e --output /secrets/\u003c\u003c paramters.filename \u003e\u003e\n      - persist_to_workspace:\n          root: /secrets\n          paths:\n            - \u003c\u003c paramters.filename \u003e\u003e\n  \n  aws-secrets-source:\n    description: Read the AWS secrets manager secrets\n    parameters:\n      filename:\n        type: string\n    steps:\n      - attach_workspace:\n          at: .\n      - run: cat ./\u003c\u003c paramters.filename \u003e\u003e \u003e\u003e $BASH_ENV\n```\n\nAnd in your jobs (here for a composer loading for example)\n\n```yaml\n jobs:\n  load-secrets:\n    executor: aws-secrets\n    steps:\n      - aws-secrets-load:\n          filename: common-secrets.env\n\n  deps-composer:\n    executor: composer\n    steps:\n      - aws-secrets-source:\n          filename: common-secrets.env\n      - composer-install\n\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpathmotion%2Faws-secrets-circleci","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpathmotion%2Faws-secrets-circleci","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpathmotion%2Faws-secrets-circleci/lists"}