- Home
- Skills
- Hashicorp
- Agent Skills
- Aws Ami Builder
aws-ami-builder_skill
- Shell
- Official
196
GitHub Stars
1
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill hashicorp/agent-skills --skill aws-ami-builder- SKILL.md3.6 KB
Overview
This skill builds Amazon Machine Images (AMIs) using Packer's amazon-ebs builder. It provides ready-to-use templates, common source AMI filters, multi-region copy options, and practical build commands to create reproducible custom EC2 images. Use it to automate AMI creation, incorporate provisioning steps, and distribute AMIs across regions.
How this skill works
The skill generates Packer HCL templates that launch a temporary EC2 instance from a filtered source AMI, runs provisioners (shell, scripts, etc.), and creates a new AMI from the instance volume. It supports source_ami_filter for selecting official images, ami_regions for cross-region copying, and standard AWS credential resolution for authentication. Templates include tagging, unique AMI naming with timestamps, and options to adjust instance type and block device mappings.
When to use it
- Creating a custom AMI with preinstalled software and configuration for production or test environments.
- Automating AMI builds as part of CI/CD pipelines to ensure reproducible images.
- Copying a validated AMI to multiple AWS regions for global deployments.
- Building golden images that meet security and compliance baselines.
- Replacing manual EC2 provisioning by baking configuration into an AMI.
Best practices
- Use source_ami_filter with owners and most_recent to select official base images reliably.
- Include a timestamp in ami_name to guarantee unique AMI names and avoid conflicts.
- Validate and test templates locally with packer validate before running full builds.
- Open SSH only from trusted IPs and ensure the build subnet has internet access for provisioning.
- Adjust launch_block_device_mappings.volume_size if the source AMI disk is too small for your artifacts.
Example use cases
- Build an Ubuntu 22.04-based AMI with application dependencies preinstalled and push to us-east-1 and eu-west-1.
- Create a hardened Amazon Linux 2023 AMI with security hardening scripts applied during provisioning.
- Automate nightly AMI builds in CI, tagging each AMI with build metadata and timestamp.
- Produce a minimal, immutable AMI for autoscaling groups to speed instance start-up.
FAQ
Packer relies on AWS credential resolution: environment variables (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY), the AWS credentials file (~/.aws/credentials), or an IAM instance profile when running on EC2.
Why did my build fail with SSH timeout?
Ensure the security group used by the build allows SSH (port 22) from your builder and that the subnet provides internet access for package downloads and provisioning.