What is DevOps?
DevOps is the union of people, process, and products to enable continuous delivery of value to our customers. DevOps is a methodology or a practice that brings together development (Dev) and operations (Ops) teams for deploying efficient applications while shortening the development life cycle overall.
DevOps helps to fix the challenges experienced by a development team who follows waterfall model approach. Though the Waterfall Model was great and is still the foundation on which applications are made to this day. But, the major problems of this model were as follows:
Abel Wang, a Cloud Advocate at Microsoft, has a great set of videos with quick answers to some of our big questions. Let's see how Abel defines DevOps.
Now, it is clear why DevOps came into the picture. Now let us see how we can utilize DevOps with Azure Cloud Solution.
What is Azure DevOps?
Azure DevOps (formerly Visual Studio Team Services) is a hosted service providing development and collaboration tools.
With a Free tier to get started and no need to run your own agents you can quickly get up and running with the many tools available.
Components of Azure DevOps
1. Azure Boards
Azure boards make it easy to track tasks, bugs, and features. There are three types of work items:
2. Azure Repos
Before talking about Azure Repos, let’s, first, discuss what a version control system is.
Version control systems are software that help you track changes that you have made in your code, by taking snapshots of your files. One popular example is Git.
Azure Repos is a collection of version control tools which are used to manage your code and provides two types of version control:
3. Azure Pipelines
Azure Pipeline is a combination of continuous integration (CI) and continuous delivery (CD) which you can use to create and test your code automatically and give access to other users. You can produce consistent and quality code with CI and CD.
You can work with programming languages like Python, Ruby, Java, PHP, C#, and Go. To use Azure Pipelines, your source code must be stored in a version control system such as Git.
Coming to the pricing, private projects can work up to 30 hours for free, every month, and for public projects it is free.
4. Azure Test Plans
You can improve the quality of your code by testing it. With Azure Test Plans, you can test your code manually or exploratorily as well. You can request, provide, and track feedbacks also. You can perform unit and functional testing. Running tests continuously is also possible with Continuous testing.
5. Azure Artifacts
Azure Artifacts is a store that has all your artifacts that were produced while developing and deploying. In simple terms, Artifacts are executable files, i.e., they do not contain any code. You can use multiple feeds to organize and control access to your packages. Are wondering what a feed is? A feed is a container for packages that helps in consuming and publishing. Azure Artifacts provide a fast, secure, and easy feed of binary packages.
Azure Artifacts ensure that your pipelines are fully integrated package management. You can also create packages like Maven, npm, and NuGet. It includes a free usage tier of 2 GB.
Here's a short video where Abel explains the first four essential parts of Azure DevOps.
Mohammad Al Rousan is a Solution Architect @ Diyar United Company. My technology focus as a Cloud nowadays includes Docker, Kubernetes Service, Container, Azure DevOps, IaaS, PaaS, DBaaS, as well Terraform and other serverless components in Azure e.g. Logic Apps and Functions
Top 10 Microsoft Azure Blogs