What to automate? Which parts of the delivery process are good candidates? Which applications will benefit from automation? At first, those sound like silly questions. Automate all your repetitive processes. If you think that you'll do the same thing manually more than once, automate it. Why would you waste your creative potential and knowledge by doing things that are much better done by scripts? Yet, an average company does not adhere to that logic. Why is that? ...
In addition to the list of 30 Must-Have Tools to Support DevOps, QualiSystems recommend the following DevOps tools:
Sandbox tools are essential for DevOps success, especially in larger companies. The Sandbox enables each developer and tester to have their own personal replica of the production infrastructure environment – from physical and virtual machines and networks to applications and cloud interfaces. The Sandbox is the "uber container" that allows organizations to carry a consistent environment throughout the entire DevOps lifecycle.
Github is a must-have DevOps enabler. Keeping source code in a public or private repository on Github immediately enables transparency and collaboration in software development, while having many useful features and extensions to enable automation in DevOps. When we opened up our software on Github, we saw a dramatic increase in the excitement around our development team.
Test automation tools
Test automation tools are critical to DevOps success. Holding a place right in the middle of the DevOps lifecycle, it is impossible to implement continuous deployment without first automating test. The right test automation tool can enable end-to-end automation in DevOps.
Container tools are essential enablers for DevOps, enabling application portability between development and production environments. Containers also allow developers to implement DevOps automation using container features. Everything that you can get from PaaS tools, you can get for free with containers and at a much lower cost in terms of complexity and vendor limitations.
While not a requirement in order to implement DevOps, using Micro services can really improve the feasibility of DevOps automation. Micro services are designed to be self-contained and separately modifiable. This makes them easy to push from development to deployment without a large amount of integration testing.
Joan Wrabetz is CTO of QualiSystems.