Skip to content

Latest commit

 

History

History
35 lines (18 loc) · 2.52 KB

clbloy7s101o4rwnv430d5co1.md

File metadata and controls

35 lines (18 loc) · 2.52 KB

Why GitHub as CI/CD

Today I am going to tell you about one amazing feature of Github which is CI/CD of course, which I use daily for my integration and deployment works, but why I chose Github?, plenty of brilliant and dedicated tools are there for Integration and Deployment.

Brief intro of Github as a CI/CD tool:-

Continuous integration (CI) automatically builds, tests, and integrates code changes within a shared repository. Continuous deployment (CD) automatically deploys code changes to customers directly.

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1670872010394/hStFJQ17-.png align="center")

To start your Integration and deployment process, you need to have a repository on GitHub in which your all working files(requirements, config etc) and folders will be present.

Then, to create a workflow, you need to have a YAML file that consists of all workflows(step-wise installation and other configurations).

But don't worry, you don't have to write that on your own, GitHub will do it for you and has many options for you in its Actions segment, just choose your language or frameworks or tools for your project to start the process of CI/CD.

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1670873346543/_WQcCpj6-.png align="center")

Then you can modify this auto-generated YAML file as per your need and requirements, then commit to your master branch or through any other branch as a pull request. Start running workflow after commit.

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1670872079736/Ydo5qhreJ.png align="center")

It will take some to build all dependencies as specified in your YAML file, if your YAML file has any error in it then you can check the logs and can fix it through its suggestion.

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1670871640730/JDuXyBBJu.png align="center")

Why I chose Github as CI/CD:-

  • I don't want to look for other tools as I need to consider 2-3 tools minimum to complete CI/CD process which Github can do alone.

  • I need to learn other tools by putting in extra effort and time.

  • I am doing CI/CD activity for my personal projects and work, so there is no platform bound for me, I can choose any tool (so I chose an easy and best one).

  • GitHub provides all the required tools and various platform extensions in one place, so you can save time.