Within WePay’s tools team, we are always looking for ways to make our engineers more productive. One of the challenging things we are trying to do is distribute a series of automated tasks to our developers, such as a way for developers to tag a service for deployment, tail logs from ELK, cherry-pick a commit to multiple branches, or OAuth with external services. Rather than create a bunch of single use scripts, we wanted to put everything into one modular tool to perform tasks in a unified, well-tested way. The tool needed to be aware of any updates and provide a way to update itself. We also wanted this tool to be portable between our development environments and our infrastructure.
Full post here: https://wecode.wepay.com/posts/wetools-an-elixir-cli