Introduction to Azure DevOps
Hi DevOps people, this is my new article on Azure DevOps series.
What is Azure DevOps
Azure DevOps is a platform where you can do end-to-end deployment processes. It allows the developer team to build their code using Git or GitHub, test the application using Azure build and release pipeline(CI/CD Framework), deploy the code by an automated process.
We all are familiar with the word i.e.(DEV+OPS = DEVOPS), now the question is how Microsoft Azure brings in DevOps. For that Azure DevOps offers a range of services i.e.; Azure Repo where in Developer can write the code and store, they have Azure pipelines that will perform the Integration/build task, they have Azure Artifacts that can be used in pipelines, Azure Monitor to monitor the pipeline, GitHub Integration is allowed and many more services that we will be discussing in our article that brings in Azure DevOps.
Main Features of Azure DevOps
Azure Boards
Azure Pipeline
Azure Repo
Azure Artifact
Azure Test Plans
Benefits of Azure DevOps
Easy to Install
Customize your Application
Azure DevOps is compatible with most of the DevOps tools such as Ansible, Docker, and many more
Let's get started with Azure DevOps
Configuring Azure is easy.
The first step is to sign in to Microsoft Account, for this just type dev.azure.com in google chrome and you will be directed to a page as shown below then click sign in to Azure DevOps.
Once you enter your Email-id and password for sign in, you will be directed to a page as shown below where an organization will be created based on your account which you used to sign in.
Your Azure DevOps would look like as shown below
Next step is you can create a number of projects under the organization and within that project we can create numbers of Azure pipelines.
Now we will see how to create project in Azure DevOps - click on New Project
Fill in the details that are required, then click on create option which will create a new project in your Azure DevOps Organization.
Once created we will be directed to a page where we can see various Azure service that are offered, like Azure Repo, Azure Boards and many more.
Now lets understand what all these Azure Features are
AZURE BOARD
It helps us to track our work, gives us an insight of what task is pending, helps in tracking user stories, bugs associated with projects, allows us to create issues that need to be tracked, Test Cases we can create, Bug, User story and many more.
One thing I would like to say here is that Microsoft Azure is very user friendly. It helps us to understand things easily just the way we saw Azure board one of the features of Azure.
AZURE REPO
For the first time when we click on Azure repo we will be directed to a page as shown below.
Here we can create our repository that contains the code, we can even import a repository. We can configure our projects in such a way that if any changes are made in repo or any new code is pushed the Azure pipelines can be triggered automatically.
AZURE PIPELINES
For me its like the heart of Azure DevOps.
Using this feature we can create Build pipeline by using classic editor option or YAML pipeline format. We can configure the pipeline to be scheduled triggered or manual triggered as per our requirement.
If we are creating a pipeline for the first time we will be directed to a page as shown below.
Recommended by LinkedIn
Click on create pipeline.
Next step is to select the platform where our code is present, if your code is present in GitHub then select GitHub option or else we can select Azure Repo option also.
Click on classic editor option.
Then select a source, select the project where this pipeline needs to be created and finally select the branch. Then click continue.
Next we can select Empty job or YAML as per our requirement.
So, if we select Empty job our build pipeline configuration page would look like as shown below.
Let's go through the various fields that are used in the build pipeline configuration.
If we click on Agent job, here we can specify the name that should be displayed while the build pipeline gets triggered, also we can select our agent pool.
Click on the + sign which is used to select the task as per our requirement.
For eg: - in the search bar we can specify the task name such as command line, script, python version where in we can specify the version.
If we select the Variables option, here we can mention the secret values such as password, username and will be used in the pipeline.
If we select the Triggers option, here we can schedule the pipeline as per our requirement by providing the timing and date details.
At the end we can select the Save and queue option that will trigger the build pipeline.
Coming to release pipeline - This is where we proceed to deploy in various environments like QA, Pre-PROD, Dev and PROD.
Let us see how to configure Release pipeline in Azure.
Under Pipeline option select release and click on new pipeline.
Select Empty job option
Here you can provide the stage name, you can change it as per your requirement Then click on (1job, 0 task) under stage1.
It will direct you to release pipeline, where in we can configure our release pipeline.
Click on + sign same way as we configured build pipeline.
In release pipeline we can configure artifacts, in such a way that the output of build pipeline will be stored as artifact and it will trigger our release pipeline.
Click on add artifact. It will ask for source type, depending on our project and requirement we can setup the source type.
AZURE TEST PLANS
Azure test plan service provides options like creating test plans, test suits, test cases.
Its like working for a project where in we have test plans ready and a collection of test cases created. Using Azure test plan we can populate the number of test cases failing/passed.
Recording the tests, their results, and observations for each test cases is possible.
---------------------------------------------------------------------------------------------------------------
Hope you like my article on Azure basics. I'll be coming up with the next article soon.
DevOps Engineer | 1 x AWS | Kubernetes | Docker | Terraform
2yGreat
Good information well crafted !!!!!!!
Staff Engineer @ Okta || Tech With Humour || Ex-Walmart || 15K+ || 15M+ Imp || Web3 || Azure || GCP || AWS || DevOps || Kubernetes || HFT || Distributed Systems || Big Data || DataOps || MLOPS || Security || Trainer
2yGreat Megha S.K 👏🏼