Our great sponsors
-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
Honestly I've had good luck writing clean Cloud Formation. It's AWS only. But Nested Stacks can help keep things pretty clean and tools like cfn-lint do a pretty good job of preventing you from going too crazy with spaghetti code. Additionally, as it's all json/yaml, you can parse it to look for common problems your organization wants to enforce. So you can ensure things like specific tags your roles/vpc etc..., or usage of an "approved" set of AMI, requiring an EKS/RDS cluster to be split across availability zones; they're all just a test in your CI pipeline away.
Absolutely. Modules, conditionals, outputs are all much easier to use with Pulumi. Obviously I don't know precisely what you're trying to do, but for example you can have one top level program that conditionally makes whatever resources you need from a yaml configuration, dictionary, arrays, or just multiple if/then statements. If you create everything in one stack you can chain the outputs easily and Pulumi will figure out the dependencies. These resources can be separate included modules, classes etc. Here's a good place to look for pre-built things: https://www.pulumi.com/docs/guides/crosswalk/aws/
I actually updated the example and now code uses plugins and is way more readable - https://github.com/melezhik/sparrowci-aws-example/blob/main/sparrow.yaml , let me know what you think ))
Related posts
- Terraform vs. AWS CloudFormation
- Deploy config rules across your organization
- Authorization and Amazon Verified Permissions - A New Way to Manage Permissions Part XIII: Cloudformation
- Generative (A)IaC in the IDE with Application Composer
- AWS OIDC auth fails when role trust relationship has app_id configured