As kids, we’ve always been taught to work in teams. We’ve also been taught to work smarter rather than harder. Do we put these lessons into practice as we grow? Well, DevOps culture definitely used these lessons to its fullest. In this article about Azure DevOps, we’re going to learn how these old school lessons come in handy.
Topics covered:
- What is DevOps?
- What is Azure?
- What is Azure DevOps?
- Components of Azure DevOps
- Demo: Create and demonstrate the working of Azure Pipeline
What is DevOps?
Let’s take the example of baking. Suppose you want to make brownies. You have different ingredients, each of them contributing to the brownie’s taste. You must use different tools like the oven, stove, etc. You have the recipe which should be followed step by step. Without either of these things, you wouldn’t even be close to making brownies.
Let’s compare this with the software development process. Your ingredients represent different teams like Development, Operations, Testing, etc. Baking tools symbolize different DevOps tools like Git, Jenkins, Docker, etc which makes the process easier. The recipe symbolizes the process of the software development which should be followed step by step to get the best results.
DevOps can be considered as a union of People, Process and Product.
DevOps is a collaborative approach to developing and deploying software. It brings together the Development team (Dev) and the Operations team (Ops) to cooperate and work together making the entire software development process faster and efficient.
What is Azure?
Microsoft Azure is a cloud computing platform created by Microsoft. It provides various services which are easily accessible. In addition to easy accessibility, the number of resources can be dynamically scaled.
What are these services? So basically when you try to build an application and expose it on the internet for people to use, you need way more things than you’ve imagined. You need servers, virtual machines, storage facility, databases, and a full-fledged infrastructure. Now instead of creating them from scratch or spending a ton on buying them, what if you could borrow them? Services are basically these requirements that you need which can be rented from cloud service providers like Azure.
Azure DevOps Tutorial | Developing CI/ CD Pipelines On Azure | Edureka
What is Azure DevOps?
A company called DORA(DevOps Research and Assessment), researches on high performance in the context of software companies. It discovers the factors that fuel it and has come up with the following report(2018) about companies using DevOps:
- 46x Higher Deployment Frequency
- Faster time to market
- 7x Lower Change Failure Rate
- 2,555x Faster Lead time for changes
- Increased Revenue
- 2,604x Faster mean time to recover
Microsoft Azure came up with a new product called Azure DevOps which can certainly help any organization achieve the above-mentioned stats. As you know, DevOps is the union of people, process and products. Obviously, Microsoft is not going to provide you people and the process but it certainly can provide the products. Azure allows you to implement DevOps practices so that you gain more confidence in your deployment pipeline and keep you prepared for a wide variety of scenarios. Enroll in our Azure DevOps Certification and Azure architect certification program to learn more.
Azure DevOps Components
Azure DevOps consists of 5 main components:
Azure Boards:
Azure Boards lets you track your work with configurable boards, interactive backlogs, and powerful planning tools. It lets you track all your ideas at every development stage and keeps your team synced with all the code changes. It keeps you forever scrum ready. It also helps you get a good insight into the health and status of your project with amazing analytical tools.
Azure Pipeline:
This is a widely used tool. Azure pipeline lets you build, test, and deploy in any language, on any platform or to any cloud. Even though its called Azure Pipeline, it actually lets you deploy anywhere you wish, be it AWS, GCP, Raspberry Pi or even your own platform. It supports containers and easy integration with containerization platforms like Kubernetes. One of the most vibrant features about Azure pipeline is that if you are working on an open source or a public project from GitHub or anywhere for a matter of fact, it gives you free builds, tests, and releases.
I’m going to show you a demonstration on the working of this Azure Pipeline further in this blog. You can even check out Azure Cloud Engineer Certification, which will help you get certified, and thus help you chase your dream work profile.
Azure Repos:
Gives you flexible, powerful, Git hosting with amazing code reviews and unlimited free repositories for all your ideas. Lets you connect with any IDE, Git client or an editor. Supports Web Hooks and API Integration. Also gives a cool feature of semantic code search as it understands variables and classes.
Azure Test Plans:
Provides a wide variety of manual and exploratory testing tools. It lets you test your application on desktops or web apps. It captures data while you execute tests to make the defects actionable. This helps in making releases faster and with confidence.
Azure Artifacts:
Azure Artifacts lets you share Maven, NuGet and Python packages from public and private sources with the entire team. It lets you integrate packages with your CI/CD pipeline in the most efficient, scalable and simple way. Lets you keep your packages safe and secure.
Demo: Create and demonstrate the working of Azure Pipeline
In this section, I’m going to show you how to create an Azure pipeline and use it for CI/CD. Just follow these steps:
Step 1: Create an Azure DevOps Organization. To do so visit the official Azure DevOps website and click on New Organization.
Add the organization name and the region you’d want your project to be in. In this case, I’ve named the organization Kalgi and region South India.
Step 2: Once you’ve created an organization, you’ll be prompted to create a project. Enter your Project Name. The description will include a small description of the project. There are two kinds of projects you can create, one that is visible to everybody(public) and the other one which is not visible to everybody(private). In a private project, you can add people who can view or make changes to your project. In this case, I’ve created a private project. Once you’ve filled all the details, click on Create.
Step 3: Let’s get started by creating a pipeline. You’ll be directed to your project directory. You’ll have the option of creating Boards, Repos, Pipelines, Test Plans or Artifacts. Click on Pipelines.
Then click on New Pipeline.
You’ll be asked where your code is. In my case, It’s stored on GitHub and hence I select GitHub. You can select accordingly.
You’ll then be prompted to insert your GitHub password. Enter the password and click on the Confirm password. You are now connected to your GitHub account.
You’ll then be prompted to Authorize AzurePipeline. Just click on Authorize AzurePipeline.
Select the GitHub repository you’d like to use for the project. For this demonstration purpose, I’ve forked Microsoft’s sample repository called pipelines-python-django and will be using that in this Azure Pipeline demo.
Check Only Select Repositories and click on Approve and Install.
Finally, click on Authorize Azure Pipeline with Microsoft
Review the pipeline and click on Run.
When you run the Pipeline, you’ll start seeing the logs of different jobs being performed.
Once the agent is ready, the jobs will start getting executed and you’ll see their status(success or failure).
You’ll see something similar to the below-displayed screenshot once all your jobs have been executed.
Now when you go to pipelines, you’ll see the pipeline you just built. It also shows the build status.
Now let’s go ahead and edit the code and see if the changes are reflected in the pipeline. Make changes to your code according to yours or the organization’s requirement. In this case, I’ve made changes to the README file.
Save the changes by clicking on Commit Changes.
You can now check your pipeline and it will show an update in the README.md file.
That’s how CI/CD Pipelines work and I personally feel Microsoft Azure has done an amazing job at this service.
This brings us to the end of this article. Ready to test your Azure DevOps knowledge? Explore our comprehensive tutorial and ace your interview with our curated collection of top Azure DevOps interview questions!
Ready to take your career to the next level in the world of DevOps? Join our comprehensive DevOps Engineer Course today and become a master of automation, continuous integration, and continuous delivery. Unlock the skills and knowledge needed to excel in this high-demand field. Don’t miss out on this opportunity to transform your career. Enroll now and embark on your journey to becoming a DevOps expert!
Also, If you’re in search of a career that’s both demanding and rewarding. No matter whether you’ve worked in DevOps or are new to the field, the Post Graduate Program in DevOps is precisely the thing you need to learn the methods to be successful. From the basic to the most advanced methods, we cover everything.