Is there an attempt at a DevOps-oriented programming language, which would extend a regular programming language with facilities for run-time feedback from, say, cloud, including performance monitoring, error handling etc? I mean, you run a program like on a desktop (but in a cloud) and you get a REPL-like handle.
NixOS has its own declarative paradigm scripting language for configuring the OS. It’s a package manager based operating system that gives you scripting abilities over the pm.
I played with NixOS a few years ago, although I haven’t played with NixOps: https://github.com/NixOS/nixops. I am looking for a programming language that has run-time facilities that can offload some DevOps/SRE work. Not just libraries, tools, PaaS, but an extension of development into operations.
Something along this trend: https://www.appdynamics.com/blog/engineering/is-noops-the-end-of-devops-think-again/
Did you check ansible? It is designed for deployment automation. https://github.com/ansible/ansible
Thanks, yes. I haven’t tried Terraform but I have a gut feeling that I would prefer it as it seems to avoid side-effects. But both are tools as opposed to something more deeply integrated in a programming language, making a distributed application lifecycle akin to one of a desktop application. Kind-of, instead of bundling together tens of tools and frameworks, create the infrastructure and services based on the application. Perhaps something like the serverless but deeper.
Is Pulumi closer to what you’re looking for?
Based on the description, sounds like that. More feedback once I learn a bit more.
Was going to suggest exactly that +1
Wow, it is interesting! Have you had the opportunity to using in a project?
No, I just learned about it on Hacker News.
I still haven’t got the time to get some experience but just spotted this: https://www.infoq.com/podcasts/infrastructure-code-multi-cloud/ dated March 27.