Background: I am a student pursuing a Bachelor of Technology degree with experience in cybersecurity, penetration testing, and vulnerability assessment following reconnaissance and enumeration techniques. During my internship, I've explored the use of plugins. One plugin that I'd like to share is an Automated Web Development Environment integrating Git/GitHub, Jenkins, and httpd Web Server in RHEL-8.
Goals: Developing a DevOps adoption roadmap.
Solution & Results:
I've learned a lot about Jenkins. It is one of the essential tools in DevOps. You can use it to integrate all DevOps stages with the help of plugins, and there are 1,000s of them. In particular, I've explored the Continuous Integration development practice in which the developers are required to commit changes to the source code in a shared repository several times a day -- or even more frequently. Every commit made in the repository is then built. This allows the teams to detect the problems early.
The most awesome thing about Jenkins is continuous integration, deployment, and many other DevOps workflows.
My Automated Web Development Environment project integrates Git/GitHub, Jenkins, and httpd Web Server in RHEL-8. With it, a developer only needs to commit the code from his local repository. From there, GitHub will automatically send the code to Jenkins using webhooks with any commit in a GitHub repo. Jenkins then launches the website into the Apache2 httpd server, which is set up in RHEL-8. This reduces a lot of manual environment provisioning. Developing an automation infrastructure is one thing that new developers should take on before getting too deep in development.
Depending on the Continuous Integration tool used, several other functions require a mention. These include deploying the build application on the test server and providing the concerned teams with the build and test results. I plan to explore them all!
This particular project has resulted in: