3 ms·
> To do it right, you'd want to encode app and infra changes in the same ubiquitous tool Well, that's exactly what we do with Dhall, which lets us put static t
by solatic 7y ago
> To do it right, you'd want to encode app and infra changes in the same ubiquitous tool
Well, that's exactly what we do with Dhall, which lets us put static types on infrastructure tooling that prints out unpredictable output but in a predictable format and transform that output into the format that other dependent tools expect. Everything is then glued together with simple shell scripts and run in a CI environment.
Once you understand the pattern - use an uber-config plus typed tool outputs to generate downstream config and apply all config in an idempotent way - you wonder why you ever did things any other way.
- rossmohax 7y agoI looked at Dhall before. It is a pure language for static configs, right? It can't help me to express "deploy k8s resource, wait for annotation to appear, take annotation value and use it to deploy infra resource". Wrapping multiple tools in a bash is exact thing I wish I didn't have to do :( If Dhall enables safer bash glue, I'd be happy to read how