3 ms·
Ansible's pretend-declarative yaml doesn't add any value, while forcing you to use patterns that rarely match your use-case. It should have been a python librar
by sly010 6y ago
Ansible's pretend-declarative yaml doesn't add any value, while forcing you to use patterns that rarely match your use-case. It should have been a python library without all the yaml from the beginning.
That said, pyinfra seems to be making the same mistakes (being a tool instead of a library, prescribing a folder structure, not letting me create my own abstractions), so you are right that it provides no advantage over Ansible.
- BiteCode_dev 6y agoWhile it would be nice to have the core and the framework dissociated, stating that it provide no advantage over Ansible seems overly broad. You can use python logic to compose your deployment scenario, use imports to reuse features, package modules the same way, etc. The whole ecosystem is also at your disposal, be it libraries, IDE support, linters, formatters, debuggers and so on. It doesn't need to reinvent the wheel, and you don't need to learn a new syntax. I would call that a win. Now, is pyinfra well designed enough to be practical in production, that's another matter that needs testing.
- 1337shadow 6y agoWell then maybe this is more for you yourlabs.io/oss/shlax (it's still in development, check the pipeline build job to see some outputs) But honestly pyinfra seems like the clean Ansible rewrite for people who like both devops and python programing, pyinfra looks like the next major version of Ansible.
- BiteCode_dev 6y agoThanks for sharing Shlax, I didn't know about it, and at first glance, I like the design choices: encapsulate task, pass the target object so you can mock it for testing, use await to delegate I/O...
- 1337shadow 6y agoShlax still has to prove it can do what it aims with the simple design it strives to keep.