Integration of Trending Technology(GitHub, Jenkins, Docker)
Vijay Singh
InfoSec & Privacy Specialist || Zero Trust Auth* || TPRM || Lead Auditor ISO 27001:2022|| ISO 27701:2019 || GDPR/Data Security & Privacy || DPDPA-2023 || Azure/ AWS Security || Threat/Vulnerability Management
Technology integration is the use of technology resources -- computers, & different kind of devices along with social media platforms and networks, software applications, the Internet, etc.
"When technology integration is at its best, a child or a teacher doesn't stop to think that he or she is using a technology tool -- it is second nature. And students are often more actively engaged in projects when technology tools are a seamless part of the learning process."
Need of integration
This integration technological progress has inevitable educational, industry, market, medical, country progress, .... implications.for example in traditional way if you want to install any Operating system it will take at least 30 min but in same way by using of Docker we can within 2 sec. so its give the boost to industry because time is more important than any thing in corporate world. "As we know that approx 80% ML/AI Project are not completed. why ? most of the reason is lack of knowledge to integrate the technology and related to demand of project for future use"
- Fast growing industry
- Optimization of effort & time
- Continuous updates & integration
- On demand change & Quick response
- Dynamic behavior of corporation & optimization
- Automation & Demand of quick services.... as well many more things
Abstract Overview of integration
Vision like ...
A continuous integration (CI) setup, it's important to note that the Engineering team follows what is known as git hub flow. some few things:
- Long running features are developed on feature branches
- Small changes that can go whenever are pushed to develop
- When features are finished, a pull request is opened to develop for any ad hoc review before merging
- Develop branch is merged to master via pull request in preparation for deployment
- Deployments can happen many times a day! So whenever something is pushed to develop it should be a "potentially shippable" feature.
for What is & how to integrate GitHub & Jenkins ... https://www.youtube.com/watch?v=pSWadwORS8w
Use case of -Continuous Integration (CI) pipeline
->Source control- Version control is a method for tracking and controlling changes within your source code. Today, one of the most popular online version control systems is GitHub. Github provides services for hosting repositories online which you can access at any time, regardless of your location.
->After clicking Create repository the following screen displays the multiple ways that you can view your local repository and how to send your existing repository to GitHub.
->A Pull request is a feature of many online source control solutions that allow you to obtain the updates that others have made to your repository. Once a pull request is created, the owner(s) of the repository will be able to review the changes, and based on the quality of the commit, approve or decline the changes. After clicking, the list of open pull requests displays.
-> Push: The last step of committing the changes that you made on your local repository is to push to the master. Usually the master branch is the branch where the production ready code is located.
-> Jenkins and GitHub webhooks The first step is to install the required plugin for integrating GitHub with Jenkins, configure it, and then at the time of creating jobs, we will use this integration to trigger jobs on each new Git commit.
-> Once Jenkins restarts, we need to enable access to the GitHub API. Under the Manage Jenkins page, click on Configure System and locate the GitHub section.
->Next, click Add GitHub Server button and then click GitHub server item. After that you will notice the new window will come
->Leave the Manage hooks checked, and click the Advanced button on the bottom of this section. Under the new view you will notice that Manage additional GitHub actions button appears. Click it and select Convert login and password to token. Next, under the new view, select from the credentials drop-down box existing login. Or, if you don’t have any existing credentials, click on From login and password and enter your login information on GitHub.
->Now you will be able to select the newly created token from the Credentials drop-down and test it using Test connection button.
->Now we’re ready to create the job which will do the work for us. Click on New Item on the left side menu, and enter the item name as desired job name. Then select the Freestyle project.
Future Deployment..
Well , Now a days the integration of like that technology called DevOps so here I am listing real life project where we can explore integration of technology:
- Application of DevOps in the Online Financial Trading Company
- Use of DevOps in Network cycling
- Application in Car Manufacturing Industries
- Benefits to Airlines Industries
- Application to GM Financial
- Bug Reduction & Benefit
- Less Time for Integration
- Decreased Computation Cost and Operation Time
- Faster Development of Software
- Improvement in Team Collaboration
- Reliable Environments for Operations
- Early Defects Detection
- Faster Correction
- Continuous Operation of Monitoring, Testing, Deployment, and Release
- Increased Focus on Operations
- Automation Testing integration into Dev-ops