{"id":17140757,"url":"https://github.com/ashex/ec2-imagebuilder-poc","last_synced_at":"2026-02-27T02:33:24.634Z","repository":{"id":69726487,"uuid":"239975845","full_name":"Ashex/ec2-imagebuilder-poc","owner":"Ashex","description":"Proof of Concept framework for generating EC2 Image Builder pipelines","archived":false,"fork":false,"pushed_at":"2022-02-05T18:16:22.000Z","size":13,"stargazers_count":10,"open_issues_count":0,"forks_count":8,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-07T11:45:30.905Z","etag":null,"topics":["aws","aws-ec2-imagebuilder","python3"],"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/Ashex.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,"zenodo":null}},"created_at":"2020-02-12T09:40:07.000Z","updated_at":"2022-04-03T12:52:40.000Z","dependencies_parsed_at":"2023-03-13T20:24:54.552Z","dependency_job_id":null,"html_url":"https://github.com/Ashex/ec2-imagebuilder-poc","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Ashex/ec2-imagebuilder-poc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ashex%2Fec2-imagebuilder-poc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ashex%2Fec2-imagebuilder-poc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ashex%2Fec2-imagebuilder-poc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ashex%2Fec2-imagebuilder-poc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ashex","download_url":"https://codeload.github.com/Ashex/ec2-imagebuilder-poc/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ashex%2Fec2-imagebuilder-poc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29883102,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-26T23:51:21.483Z","status":"online","status_checked_at":"2026-02-27T02:00:06.759Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["aws","aws-ec2-imagebuilder","python3"],"created_at":"2024-10-14T20:15:37.957Z","updated_at":"2026-02-27T02:33:24.611Z","avatar_url":"https://github.com/Ashex.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EC2 Image Builder Proof of Concept\n\n\nIn December 2019 AWS released EC2 Image Builder, a rather interesting service for generating AMIs:\n\nIt is a service that makes it easier and faster to build and maintain secure images. Image Builder simplifies the creation, patching, testing, distribution, and sharing of Linux or Windows Server images.\n\nUnfortunately the Console for EC2 Image Builder has quite a few limitations which don't reflect the strengths of the service.\n\nThis framework was created as a proof of concept to show how to create the Image Pipeline and all of its dependencies and is for testing purposes (i.e not production ready). \n\nThe Pipeline definition is done via a yaml file which is consumed by the script, presently it will generate a new version of any versionable resources and then recreate the pipeline in order to deploy that new version. A flag is available to recreate all non-versionable resource.\n\nTwo pipeline configurations are provided:\n\n* Hardened AMI following requirements of CIS Amazon Linux 2 Benchmark version 1.0.0\n* Cloud Custodian AMI\n\nNo tests are done to see if the latest version is the same as that defined.\n\n### Requirements\n\n* python 3.6+\n* boto3\n* aws-auth-helper\n* pyyaml\n\n### Setup\n\nInstall the python dependencies with `pip install -r requirements.txt`\n\n### Usage\n\nThe following arguments are available (in addition to those provided by the aws-auth-helper library):\n\n```\n  --pipeline-def PIPELINE_DEF\n                        File containing the pipeline definition, referencing\n                        components and such\n  --component-bucket COMPONENT_BUCKET\n                        S3 Bucket to temporarily store component definition in\n                        (optional). Use if boto tells you the component has\n                        too many characters\n  --start-pipeline      Start Pipeline after creation\n  --update              Recreate non-versioned resources instead of reusing\n                        them\n  --debug               Increase output verbosity\n```\n\n\nExecute the tool by providing it with the location of the pipeline definition, in this case `custodian.yaml`. Execute the script like so:\n\n`python build.py --region eu-west-1 --pipeline-def custodian.yaml `\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashex%2Fec2-imagebuilder-poc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fashex%2Fec2-imagebuilder-poc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashex%2Fec2-imagebuilder-poc/lists"}