Fork me on GitHub
#aws
<
2022-09-17
>
Cory00:09:41

we started exploring a clojure cdk wrapper at last job, with some success. particularly, cdk-tf which gets rid of the multi-cloud argument too. i definitely have some opposition to introducing turing-completeness to this space, but if your state is sufficiently small and isolated to the service / repo it's bound to, then it can be a great pattern.

Drew Verlee03:09:17

What is "the multicloud argument"?

Cory03:09:20

CloudFormation brought up before this is AWS specific. I've always thought that TF advertising multi-cloud vs multi-platform was silly. Terraform can declaratively manage resources for you across everything; CF doesn't just miss out on GCP and Azure, it misses out on Pagerduty, Sentry, et al, anything you'd like to compose with your infrastructure data plane.

Cory00:09:56

terraform can also be just json and gives you opportunity to, for example, set up a sentry app / datadog app + dashboards / etc in conjunction with your service deployment itself to ensure optimal reuse / composition of contextual variables and, in general, more standardization across various *aaS deps.

👀 1
jjttjj14:09:49

Oh wow, I can't believe I missed the fact that they have a json-compatible syntax. I thought I tried googling that when I was looking into them but I must have done a bad job

steveb8n00:09:13

one way to evaluate anything above CF is high vs low level constructs. low level are just a DSL on top of CF. high level are constructs which do extra stuff for you e.g. add a lambda to a gateway, the construct adds all the IAM stuff for you transparently. This is a big time saver. This is where CDK shines.