Development and Operation teams are two different faces of the same coin which are working on the same goal to create a great product. DevOps bridges the gap between development and operations team to work together and emphasizes on communication, collaboration, integration and automation.
To automate and fasten these processes (development, build, test and deploy) various tools are being used.
Several standout tools catching the attention of DevOps loving organizations are:
- Jenkins provides Continuous Integration services for software development
- Artifactory (JFrog) gives DevOps team the tool to efficiently manage continual flow of code from the individual developer’s machine to the organization’s production environment
- Chef (systems and cloud infrastructure framework or configuration management tool) automates the management of the infrastructure through recipes and cookbooks
- Puppet offers data center orchestration by automating configuration and management of machines and software
- JMeter can be used as a load testing tool for analyzing and measuring the performance of variety of services with focus on web applications
- Selenium is a portable software testing framework for web applications
By using the above tools, App42 DevOps platform provides a way to automate the end-to-end delivery and management of infrastructure and accelerate application deployment and releases.
By using App42 DevOps, the developer just needs to develop their code and push into Source Code Management tools and the DevOps process will automatically make build, run the required test cases and the build/binary will be automatically deployed on the required nodes using Configuration Management tools.
Below are the mentioned steps:
- 1. Code changes are pushed into Source Code Management (Git/Perforce)
- 2. Changes are fetched by Continuous Integration tool (Jenkins)
- 3. Build is started
- 4. Required test cases are run
- 5. If build is failed, notification is sent to developer
- 6. If build is passed, binary is uploaded to Binary Repository (Artifactory/JFrog)
- 7. Application Nodes are provisioned
- 8. Latest Configurations are fetched from Configuration Management tool (Chef/Puppet) and applied on the Application Nodes
- 9. Start the Load Testing using testing tools (JMeter/Selenium)
- 10. Test cases are executed on the updated deployed environment
- 11. Developer is notified for the successful deployment