For fun I've been writing a fairly complicated set of Linux automation scripts in both Ansible and Pyinfra.

I like Pyinfra, but it feels a lot more like I'm programming in Python then defining automation tasks.

I think a lot of Ansible dislike is from bad implementation.

@geerlingguy My problem with Ansible is that sooo many modules/packages are dead. :( But I had the same experience with Puppet, so..

@geerlingguy I feel like 50% of it is yaml sucking hard and the other 50% is jinja2 sucking even harder.

But it's still great and the best we have.

@fedops @geerlingguy i honestly cannot decide whether yaml sucks harder than jinja2

at least there's good alternatives to yaml, while with jinja2 i really don't know

@geerlingguy i am not saying Ansible is bad, but stuff like Terraform/Cloudformation are better, because you just describe final destination, rather than whole journey.
@geerlingguy I’ve not seen Pyinfra before, is it similar to Nornir?

@JimmyKip Heh, I haven't seen Nornir!

Pyinfra has some Ansible-isms in a very broad sense, but it's basically a Pythonic shell scripting environment.

@geerlingguy Ah interesting, Nornir is pretty similar. You write it in python but has a similar vocabulary to Ansible with inventory, tasks etc.
@geerlingguy at least Ansible is being maintained. The salt project has been scaled back due to Broadcom acquiring VMware (which owned salt).
@paulhey @geerlingguy and here i was thinking that SUSE were the salt maintainers.
@geerlingguy my experience was that pyinfra scaled a lot better, in other words was much faster with more hosts due to the underlying ssh implementation. Did you notice anything like that?
@geerlingguy have you ever tried Saltstack?

@geerlingguy

Hadn't seen pyinfra, need to try it.

The worst part of Ansible is the terrible Jinja2 filters, I think, but thankfully it's easy to write filter plugins.

@geerlingguy I switched to Pyinfra for my personal projects. I really like it a lot, but I miss the community support. Since Ansible is much more popular, you can find almost everything you need.

@geerlingguy
Depending on the health of #Saltstack, $DAYJOB may be looking at alternatives later this year.

I hadn't heard of pyinfra before. That seems like an interesting project.

@geerlingguy I have been giving this idea, about bad implementations being bigger problems than the tools themselves, and wondering about the flipped argument: maybe the tools make it really easy to make bad implementations.

With that in mind, I don’t necessarily blame the implementer. But I start to wonder if a different tool is better for the job.

This isn’t necessarily about ansible, but automation tooling in general.

@joe @geerlingguy agree - to certain extent tools “make us” write bad code or at least don’t encourage to write the good one
@geerlingguy you may as well look at #Sparrowdo -https://wp.me/p8gE3q-19r which is more like Ansible ( basically just run tasks as normal functions ) but in #RakuLang
Sparrowdo cookbook

How to use Sparrowdo to manage your hosts over ssh InstallationInstall Sparrowdo as Raku module using zef package manager % zef install –/test Sparrowdo BootstrapBootstrap process installs Sp…

Sparrowdo