From code to production DevOps plays vital role. Multiple developers puts the logic in version control system after their unit testing. Then comes the task of building the integrated code & package it to release to QA for testing. QA in turn test all their cycles to verify the build/package could be released to the customer or gold build for deployment. This cycle goes on for every new features, bug fixes or customization. This is a involved and time consuming task. There are few ways to do faster through automating and streamlining the software development and with infrastructure management processes. These can be accomplished using proper tools.
- Needs Continuous Integration (CI)
- Needs Continuous Development (CD)
- Needs QA automation
- Needs Testing
- Needs Simulation
- Needs Emulation
From the above mentioned lines, it is well understood what are the tools can be blindly applied/used to accomplish CICD and QA automation. So automation can be done by Jenkins, scripts, languages TDD, BDD and etc. Similarly the packaging can be done by using fpm, MSI, & etc and deployment can be done by Ansible, Puppet, HOT & etc. The conceptual CICD will lead to a gap to forecast various types of conditions and behavior. The simulation and emulation are the area where we have extended our thoughts make it as part of DevOps for better delivery. We choose virtual network/virtual private cloud (VPC) to do the simulation and emulation along with Infrastructure automation in addition to the actual
deployment infrastructure automation. The virtual network is our part of DevOps i.e. for developers, qa, deployment engineers use. Some DevOps tools we use Puppet, Docker, ansible.