Topics Discussed:
- Introduction : What is GitOps
- GitOps evolution
- Gitops Use Case : Infrastucture deployment
- Tools : Git / Git ops / Terraform
Introduction
Devops culture main part is source code
Development, CI/CD pipeline ti push and deploy app to the infra
Started a plan to use the developer’s maximum capacity
The strategy to immediate deploy of the app to infra and timeless consumption lead to Gitops approach
Tools
ArgoCD: to check and sync desired state and original state
Travis: A similar to do the sync activity
By using these tools we can track the source code from Git and also we can maintain the infra sync state.
Benefits
1. Devops will reduce the timespan of software development cycles.
2. Devops practice started around 2008.
3. GitOps is very similar to DevOps. Devops core practice leverages GitOps.
Key Features Infrastructure automation is one of the key parts of GitOps.
Agent GitOps: Gitops framework can use to implement entire automation
Agentless GitOps: We can use Git and other tools to integrate gitops but in the traditional ways using other tools.
CI/CD is fully integrated with git.
Infra can provision using terraform. Or json can be used.
Nomad or K8s can be used as a platform of app infra.
What is Git and Github?
Git is a version control management system.
Git is the technology and github is the tool.
Git installation is a simple process in both windows and linux.
Git init and it will create a git kore folder.
Git operational strategie
Branching is a method to improve the development process and co-ordination between multiple personalities.
When we are working in a repository, suppose it has files.
Multiple people can work from a repo using this strategy using individual branches.
And once work is finished, the developer can come back to the master branch.
Create multiple branches and add file changes in different branches.
Git creates logical containers for the branches we create.
All the files get compressed and stored in the git root folder. Git will create indexes for all the files we create and it will help us to manage.
Pull request: Its a notification says I made a change , will you accept it.
Forking : is a process to clone a git repo to a personal namespace.
Github actions: release in 2019
Pull request and git pull are two different operations in git. Git pull will clone the latest changes from the remote branch and pull request will create a request from abranch to compare and update the changes to wherever it wants to merge.
Github features:
Projects > templates > We can set a kanban based template to create tasks and assign to devs
Github wiki > we can create documentation for the project in wiki pages and can use it to create documentations
Githubactions > workflows will help us to define workflows for Ci/CD
AzureDevops > And workflows a similar feature in Azure devops