You are on page 1of 4

Study of any Open source tools in DevOps for Infrastructure Automation,

Configuration
Management, Deployment Automation, Performance Management, Log
Management. Monitoring.
DevOps Tool: GitHub
GitHub, Inc. is an Internet hosting service for software development and version control
using Git. It provides the distributed version control of Git plus access control, bug tracking,
software feature requests, task management, continuous integration, and wikis for every
project. Headquartered in California, it has been a subsidiary of Microsoft since 2018.
GitHub offers an end-to-end DevOps platform with cloud-hosted Git services—i.e., source
code management (SCM) and versioning control. GitHub also includes project management,
CI/CD, automation, enterprise-grade security scanning, and more to serve all software
development needs.

1GitHub logo

It is commonly used to host open source software development projects. As of June 2022,
GitHub reported having over 83 million developers and more than 200 million repositories,
including at least 28 million public repositories. It is the largest source code host as of
November 2021.

Major services provided by GitHub:


In addition to the features available with GitHub Free for personal accounts, GitHub Pro
includes:

• GitHub Support via email


• 3,000 GitHub Actions minutes per month
• 2 GB GitHub Packages storage
• 180 GitHub Codespaces core hours per month
• 20 GB GitHub Codespaces storage per month
• Advanced tools and insights in private repositories:
o Required pull request reviewers
o Multiple pull request reviewers
o Protected branches
o Code owners
o Auto-linked references
o GitHub Pages
o Wikis
o Repository insights graphs: Pulse, contributors, traffic, commits, code
frequency, network, and forks

It's used for storing, tracking, and collaborating on software projects. It makes it easy for
developers to share code files and collaborate with fellow developers on open-source
projects. GitHub also serves as a social networking site where developers can openly
network, collaborate, and pitch their work.

Creating Organizations with GitHub


When thinking about Organizations on GitHub, it helps to compare it to the concept of
Organization concept in Azure DevOps.
Organization in GitHub is a feature where businesses and open-source project maintainers
can collaborate across many projects at once.

About GitHub Enterprise Cloud and Server


GitHub Enterprise is available today both as a cloud service and as a self-hosted server.
1. GitHub Enterprise Cloud (GHEC) is a fully GitHub-managed SaaS solution. This
cloud service runs on the same powerful infrastructure as the GitHub platform.
2. GitHub Enterprise Server (GHES) is a great option for enterprises that need to host
their own data. This is a scalable solution that is installed on-premises in a self-hosted
cloud infrastructure.
GHES is also available for federal and heavily regulated customer bases that store data within
an Azure Government Cloud data center. It offers controllable scaling, monitoring
capabilities, and support for very large user bases.

About GitHub repository


• Repositories in GIT contain a collection of files of various different versions of a
Project. These files are imported from the repository into the local server of the user
for further updations and modifications in the content of the file.
• A VCS or the Version Control System is used to create these versions and store them
in a specific place termed a repository.
• The process of copying the content from an existing Git Repository with the help of
various Git Tools is termed cloning. Once the cloning process is done, the user gets
the complete repository on his local machine.
• Git by default assumes the work to be done on the repository is as a user, once the
cloning is done. Users can also create a new repository or delete an existing
repository. To delete a repository, the simpler way is to just delete the folder
containing the repository.

GitHub Actions

Continuous Integration and Delivery are also part of DevOps best practices. With GitHub Actions, it is
possible to set up automatic builds for different types of applications (like web or mobile).

During the build phase, you can also apply additional verification, like a security scan, to detect
vulnerabilities in the source code.

If you use Azure DevOps to implement CI/CD pipelines, you will quickly discover that GitHub Actions is
very similar. You can set up GitHub action to build the package with your application, deploy its package
to Azure (or another) cloud, or publish unit tests results.

You can also define environments to make sure that source code from a specific branch will be deployed to
a specific environment type: dev, test, or prod. With this approach, you can be sure that deployments are
done in a secure and predictable way.

For each environment, GitHub allows you to define separate secrets to make sure that they will be used
only when necessary.

There are more than 10,000 GitHub Actions available today in the GitHub Marketplace. The best thing
about them is that if there isn’t a solution available today that addresses your workflow automation needs,
it is very simple to create your own.

Security features with GitHub Advanced Security


GitHub Advanced Security supplies a rich set of capabilities for securing every part of your
software development, e.g.:
• scanning and protecting code in your repositories and packages
• creating code-to-cloud DevSecOps workflows
• understanding and securing your software supply chain.
It includes the industry-leading code vulnerability analysis capabilities of Semmle’s CodeQL,
automatic security flows, secret scanning, and more.
These tools connect every enterprise with the work of security researchers across the world,
and they provide secure workflows for producing and consuming code.
This is not everything. With GitHub Dependency Graph we can also automatically scan our
source code repository to detect all dependencies (libraries) used in our project. Here is an
example:

GitHub Dependency Graph example

You might also like