Releases: robmorgan/infraspec
v0.2.2
What's Changed
Documentation
- Website Refresh - Position InfraSpec as an open-source tool with a built-in AWS emulator (#199)
- Homepage Update - Update homepage to reflect value proposition focusing on plain English testing with virtual or real AWS APIs
- Getting Started Guide - Improve documentation for getting started with InfraSpec
- AWS Compatibility - Update AWS compatibility data with current service coverage
Dependencies
- Bump github.com/aws/aws-sdk-go-v2/service/s3 (#195)
- Bump github.com/aws/aws-sdk-go-v2/service/sqs (#196)
- Bump github.com/aws/aws-sdk-go-v2/service/ec2 (#197)
Full Changelog: v0.2.1...v0.2.2
v0.2.1
What's Changed
Features
- Lambda BDD Testing Support - Full-featured Lambda testing with assertions, step definitions, Terraform examples, and feature files for basic functions, versions/aliases, and function URLs (#194)
- IAM Managed Policies - Add support for top 25 AWS managed policies in the emulator (#194)
- Emulator Port Change - Change default emulator port from 8000 to 3687 to avoid conflicts with common dev servers (#192)
Bug Fixes
- RDS Delete Delay - Reduce DB instance removal delay from 120s to 5s for faster test cleanup (#193)
- Lambda Error Handling - Improve error handling and remove dead code
Documentation
- Update CLAUDE.md to reflect that emulation is the default behavior (use
--livefor real AWS)
CI/CD
- Add Lambda to integration test matrix in GitHub Actions
Full Changelog: v0.2.0...v0.2.1
v0.2.0
What's Changed
Features
- Embedded AWS Emulator: The Virtual Cloud AWS emulator is now embedded directly in InfraSpec - no external dependency needed (#189)
- CloudMirror Tool: New tool for analyzing AWS API parity between the emulator and real AWS services (#190)
Bug Fixes
- S3 Virtual-Hosted DNS: Use nip.io for virtual-hosted style DNS resolution in S3 (#191)
- Race Condition: Fixed core race condition issue (#189)
Improvements
- CI Updates: Removed
--virtual-cloudflag from GitHub Actions as the emulator is now embedded by default - Documentation: Added comprehensive embedded emulator documentation to CLAUDE.md
Dependencies
- Bumped github.com/aws/aws-sdk-go-v2/service/s3 to v1.94.0
- Bumped github.com/aws/aws-sdk-go-v2/service/rds to v1.113.1
- Bumped github.com/aws/aws-sdk-go-v2/service/ssm to v1.67.7
- Bumped github.com/aws/aws-sdk-go-v2/config to v1.32.6
- Bumped actions/cache from 4 to 5
Full Changelog: v0.1.2...v0.2.0
v0.1.2
What's Changed
Features
- Terraform state isolation: Always copy Terraform configs to temp directory for proper state isolation between test runs (#180)
- SQS assertions: Add SQS queue assertions and step definitions for testing queue configurations (#159)
- Early access page: Add Virtual Cloud early access signup page on website (#171)
Improvements
- CI parallelization: Integration tests now run in parallel by AWS service for faster CI (#181)
- Website compatibility data: Updated AWS compatibility statistics reflecting latest Virtual Cloud coverage (#182)
Security
- Fixed potential XSS vulnerability by sanitizing user input in email HTML (#171)
- Updated React packages for security advisory (#170)
Dependencies
- Bumped AWS SDK Go v2 packages (DynamoDB, IAM, S3, SQS, SSM, RDS, EC2, credentials)
- Bumped github.com/spf13/cobra to v1.10.2
- Bumped go.uber.org/zap to v1.27.1
- Bumped golang.org/x/net to v0.48.0
- Bumped GitHub Actions (cache@5, upload-artifact@6, download-artifact@7)
Full Changelog: v0.1.1...v0.1.2
v0.1.1
Changelog
- 46d4606: chore(deps): bump actions/upload-artifact from 4 to 5 (@dependabot[bot])
- 4167507: chore(deps): bump actions/checkout from 4 to 6 (@dependabot[bot])
- a6fd66c: chore(deps): bump github.com/aws/aws-sdk-go-v2/service/dynamodb (@dependabot[bot])
- 4925805: Merge pull request #149 from robmorgan/dependabot/go_modules/github.com/aws/aws-sdk-go-v2/service/dynamodb-1.53.1 (@robmorgan)
- 87b3203: Merge pull request #147 from robmorgan/dependabot/github_actions/actions/upload-artifact-5 (@robmorgan)
- 73746f0: Merge pull request #146 from robmorgan/dependabot/github_actions/actions/checkout-6 (@robmorgan)
- d778665: chore(docs): marketing tweaks (@robmorgan)
- 2c7e98d: chore(docs): pr feedback (@robmorgan)
- 2f1a14f: Merge pull request #153 from robmorgan/chore/marketing-tweaks (@robmorgan)
- 047e333: chore(docs): remove callout (@robmorgan)
- 5401d24: chore(docs): copy tweaks (@robmorgan)
- a4b19dc: feat(website): add AWS compatibility page (@robmorgan)
- 148206f: docs(website): add CloudMirror documentation page (@robmorgan)
- 78ba81a: docs(website): simplify CloudMirror page for public documentation (@robmorgan)
- b4bdfea: docs(website): add CloudMirror section to Virtual Cloud page (@robmorgan)
- e109543: feat(website): add InfraSpec vs LocalStack comparison page (@robmorgan)
- 8f1d3fc: docs(website): add AWS update FAQ to pricing page (@robmorgan)
- bf72bb2: docs(website): add LocalStack comparison section to Virtual Cloud page (@robmorgan)
- 210960a: docs(website): content updates and LocalStack comparison refinements (@robmorgan)
- 429ff16: fix: improve AWS compatibility table contrast in light mode (@robmorgan)
- fb8ec53: fix: use lighter backgrounds with borders for service rows (@robmorgan)
- 8b3f887: fix: update AWS compatibility data date to November 27, 2025 (@robmorgan)
- adf7cb4: chore(docs): improvements (@robmorgan)
- ab0dec2: chore(docs): light mode improvements (@robmorgan)
- 3139831: fix(s3): add S3CONTROL endpoint for Virtual Cloud (@robmorgan)
- 341a854: Merge pull request #154 from robmorgan/fix/add-s3control-endpoint (@robmorgan)
- 9829a5c: fix(s3): correct S3_CONTROL endpoint env var name (@robmorgan)
- 3306000: docs: add Virtual Cloud integration section (@robmorgan)
- 6282d40: feat(docs): add infraspec install script (@robmorgan)
- 957634d: feat(docs): add getting started modal (@robmorgan)
- 2d39af3: chore(docs): infraspec pro to cloud (@robmorgan)
- 35ac907: feat(ec2): add EC2 assertions, step definitions, and examples (@robmorgan)
- 2fb82eb: Merge pull request #155 from robmorgan/feat/ec2-support (@robmorgan)
- 5820b65: feat(cli): add parallel test execution support (@robmorgan)
- b84c7cf: chore: dont ignore providers (@robmorgan)
- ebdb13d: ci: replace test matrix with InfraSpec parallelism (@robmorgan)
- 26161c6: Merge pull request #156 from robmorgan/feat/parallel-execution (@robmorgan)
- 0e4d93c: fix(ci): remove Terraform provider cache to fix parallel test conflicts (@robmorgan)
- aa0ea47: feat(terraform): add IAM service endpoint for Virtual Cloud (@robmorgan)
- d8461bc: Merge pull request #157 from robmorgan/fix/remove-terraform-provider-cache (@robmorgan)
- 83e892e: feat(iam): add IAM assertions, steps, features, and examples (@robmorgan)
- e0063a6: Merge pull request #158 from robmorgan/feat/iam-virtual-cloud-endpoint (@robmorgan)
- fcfac0c: docs(website): update AWS compatibility data from CloudMirror (@robmorgan)
v0.1.0
This release introduces InfraSpec Virtual Cloud - a hosted AWS emulator that lets you test your infrastructure without an AWS account, with near instant results.
☁️ Virtual Cloud Integration
Run your infrastructure tests against InfraSpec's Virtual Cloud emulator instead of real AWS. Tests run in seconds instead of minutes with no cleanup required.
# Run tests against Virtual Cloud
infraspec --virtual-cloud features/aws/s3/ Virtual Cloud currently supports:
- S3 - Buckets, objects, versioning, encryption
- DynamoDB - Tables, indexes, auto-scaling
- RDS - MySQL and PostgreSQL instances
🚀 New Features
Terraform Improvements
- Copy to temp directory - Isolate test runs by copying Terraform configs to temp directories
- Environment variable endpoints - Use
AWS_ENDPOINT_URL_*env vars instead of provider override files - Random suffix variables - Lowercase-only random suffixes for AWS resource compatibility
S3 & RDS Step Definitions
- Read bucket names from Terraform outputs:
the S3 bucket name is read from Terraform output "bucket_name" - Read DB instance IDs from Terraform outputs:
the RDS instance ID is read from Terraform output "db_id" - Virtual-hosted style domain support for S3
Developer Experience
- Plain text formatter - New output format for debugging
- Improved error messages - Better errors when virtual cloud is enabled without a token
- CI/CD optimizations - Test workflow reduced from 10+ minutes to ~2-3 minutes
📚 Documentation
- Comprehensive Virtual Cloud documentation
- Significantly improved README
- New getting started guides
What's Changed
Full Changelog: v0.0.14...v0.1.0
v0.0.14
This releases introduces the new http provider.
🌐 HTTP Provider
Users can now use the http provider to test HTTP endpoints including GET, POST methods, form data and file uploads. For example, the following feature ensures an API is available and returns the correct status code.
Feature: HTTP Requests
As a DevOps Engineer
I want to test HTTP endpoints
So that I can validate API functionality and infrastructure
Scenario: Test basic GET request
Given I have a HTTP endpoint at "http://localhost:8000/get"
When I make a GET request
Then the HTTP response status should be 200And this feature tests a file upload:
Scenario: Test file upload with form data
Given I have a HTTP endpoint at "http://localhost:8000/post"
And I have a file "../../examples/http/test-file.txt" as field "file"
And I set content type to "multipart/form-data"
And I set the form data to:
| Name | Value |
| uuid | 191152a9-0bd6-4db0-999d-12787295f1ec |
| type | document |
When I make a POST request
Then the HTTP response status should be 200What's Changed
- feat: add HTTP request support for API testing by @robmorgan in #49
Full Changelog: v0.0.13...v0.0.14