Fork me on GitHub

There is some tool like ansible, that helps me to do idempotent operations in my local//remote linux system, but that use an actual PL, like JS/python/clojure rather than a wired YAML with loops and conditionals?

Ben Sless05:01:18

I think nix has some deployment tool

Michael W09:01:33

The closest thing to ansible I have found in clojure is spire.

Michael W09:01:18

There is also titanoboa while not exactly the same can be used like ansible.

Dimitar Uzunov20:01:58

hmm given how stable / supported ansible is if I had to start a new codebase I think I would try to generate the yaml with babashka

Dimitar Uzunov20:01:17

if I had to start a new codebase

Dimitar Uzunov20:01:38

same if I have to start a project with kubernetes with to be honest

Dimitar Uzunov20:01:14

templating feels wrong with yaml, I would rather use a programming language and use functions

Dimitar Uzunov20:01:19

and there is a lot of repeatability in creating ansible tasks that probably works nice with functions - i.e. installing yum packages, running shell scripts, setting up rescue blocks etc.

Dimitar Uzunov20:01:32

definetely do filter the output through ansible-lint

Dimitar Uzunov20:01:44

it gives some nice hints on ansible best practices

Dimitar Uzunov20:01:32

anyway by generating the yaml you can output really straightforward instructions for ansible to run and if you conform it to best practices the errors will come out understandable (

Dimitar Uzunov20:01:07

and refactoring will be much easier - i.e. rearranging which tasks go in which role, changing tags etc.


😲 but also 😞 because I just realized the last chance I had to ski was New Year's 2020

Martynas Maciulevičius20:01:07

I opted to use this for background music instead: