Software Alternatives & Reviews

Docker-compose.yml as a universal infrastructure interface

Kompose Dhall Configuration Language
  1. Go from Docker-Compose to Kubernetes with a simple tool
    Pricing:
    • Open Source

    #DevOps Tools #Developer Tools #Dev Ops 40 social mentions

  2. A non-repetitive alternative to YAML
    Pricing:
    • Open Source
    CUE [1] is kinda-sorta "transpiled" into by Pulumi's language support facility [2]. In general the greater the domain space being expressed the more I'm leery of this kind of approach; leaky abstractions creep in faster the larger the volume of concepts embraced. Infrastructure is a pretty big concepts volume. Whatever the source system (Pulumi in this case) does not provide a hook for that the target system (CUE in this case) supports for example, hacks tend to start to emerge. If there was both this layer of abstraction and a "break glass" layer available down to something analogous to an Abstract Syntax Tree level of primitives, then the target systems at least have hooks to compose new abstractions via some kind of DSL into the source system perhaps. There be dragons there too, though; no panaceas, but at least it is better than all sorts of hacks. I want to find out with CUE's BCL heritage to fix what they got wrong with BCL at Google being used by Borg, what the CUE team is doing to try to avoid the Second System Effect biting them as they build CUE. Both CUE and Dhall [3] seem promising when first deployed, but some field experience is reporting challenges I typically associate with immature tooling ecosystems surrounding them [4] that come up short when trying to reason beyond what the out of the box experience can quickly support when working at scale. One part I haven't quite figured out with these configuration expressions is how to seamlessly flow their models between organizational data models (to answer who owns what type questions, example) and operational data models (to answer who is on call type questions, for example), and gracefully manage the mistakes inevitably made in those models, without mountains of manual toil and bespoke in-house glue code. [1] https://cuelang.org/docs/about/ [2] https://www.pulumi.com/blog/extending-pulumi-languages-with-yaml-cue-jsonnet-rust/ [3] https://dhall-lang.org/ [4] https://news.ycombinator.com/item?id=32102203.

    #Configuration Management #Software Development #Productivity 83 social mentions

Discuss: Docker-compose.yml as a universal infrastructure interface

Log in or Post with