I’m in shock. For the AI 🤖 doubters here’s where I’m at after like three weeks I think. To be fair been working long hours but still.
I spent days in between resolving a lot of other resource issues and blog posts creating a script that creates the default VPC configuration for all the accounts in my organization environments.
An environment is basically an ou with a bunch of standard accounts and resources in it where compute resources and users can access them but not other environments. Like an Azure subscription or GCP project kind of. Standardized deployments, controls, governance, trust boundaries, and in the end -agent (true) sandboxes. More on that later.
The complicated part was the ui - i create a default VPC configuration and using bash allow the user to add, edit, delete each resource.
In the end the VPC configuration is stored to an XML file - one for each VPC, including in which regions to deploy the VPC.
I had Kiro CLI with Opus 4.6 write a Lambda function that deploys everything in the XML file.
Opus seems to be behaving ok again in AWS Kiro, BTW.
As for all the things in my VPCs…
It’s a lot. I listed the resources in prior posts so not going to repeat.
When I ran the Lambda, the biggest issue I had was adjusting key policies and lambda role policies and making sure variable were set and populated with consistent names and values.
When I ran the lambda function it deployed everything up to a VPC endpoint missing a security group. It failed to fix it right the first time.
After that one issue - it deployed everything without error. So like three tries to deploy a super complex networking environment.
I literally thought I would run it a couple of times and troubleshoot tomorrow because it was going to take way too long.
Wow cool. 😎
I hit another KMS bucket policy issue in one account. Why I don’t know they should be all the same.
Beyond that I can start reviewing all the resources tomorrow for any errors and begin testing my Yubikey button push to run a job functionality which is deployed but untested.
Woot! 🎉
After I wrote this I’m seriously doubting it actually worked. It deployed too fast. I did tell it to deploy in parallel. Will Check tomorrow.