Not long ago, I wrote that ARA: Ansible Run Analysis had it’s first birthday. It was an important milestone and it was a great opportunity to reflect back on where the project was coming from and think about what we needed to do in the future. Just for fun, let’s look at what I had written back in May to summarize what was probably coming: Python 3 compatibility This is done and was shipped in ARA 0.
(Edit: See at the end) I can’t get enough of this Ansible thing, it’s great and makes my life easier. Sometimes there’s this little awesome feature that is in a pull request or has already landed in the development branch. You can’t wait to use but it won’t be shipped until the next release of Ansible.. and sometimes that takes a while. What do you do in the meantime ?
Ansible is known to be good at running things in the order you write them and that’s why it’s awesome for orchestration. However, I have a use case where I have several similar and long-running tasks to run that do not need to run sequentially. Ansible provides a way to run tasks asynchronously and later recover their result. The problem The problem is that Ansible doesn’t provide a way to limit the amount of concurrent tasks run asynchronously.
ARA is one year old, happy birthday ARA ! ARA’s come a long way since the early prototypes. The latest version, 0.13, looks pretty awesome. It even caught the eye of Michael DeHaan, the author of Ansible ! This looks pretty awesome (maybe run on a Jenkins box?) https://t.co/qvd3aYE7n9 — Michael DeHaan (@laserllama) May 6, 2017 Let’s go back in time to look at the humble beginnings of the project and some of the important milestones that marked it’s history this past year.
I’m excited to announce the release of ARA: Ansible Run Analysis 0.13.0! ARA 0.13.0 is available on PyPi or from source on GitHub. I’m also happy to announce that ARA 0.13.0 will be the first version of ARA packaged for Fedora and CentOS EPEL. Stay tuned in the near future to hear when the packages will be available. Wait, what’s ARA ? ARA is an Ansible callback plugin that records your playbook runs, wherever it is.