Most major organisations are utilising a cloud provider for most of their infrastructure because of the cost and efficiency benefits. At Flying Donkey we prefer using Microsoft Azure for our Infrastructure as a Service(IaaS) provider on projects unless clients request otherwise. Azure is the second largest cloud platform behind Amazon Web Services and should be familiar to most teams that have been together during the time Microsoft was the dominant technology company. We’re going to discuss topics such:
- Everything in One Spot
- Azure DevOps Pipelines
- Pull Request Process (including the mobile experience)
Everything in One Spot
I can’t stress how important this is. When developing, going back and forth from multiple different tabs or browsers wastes time. Using any cloud solution should make it where you can keep all you dev tools in one tech stack. The code, the servers, the development pipelines, and the technical information(wikis) all in one place makes working easier. To me this is the best part of a service like Azure. If you need more memory, more processing power, or more storage you can change it.
Azure DevOps Pipelines
Azure Pipelines is an Azure DevOps tool that helps us perform continuous integration and continuous delivery for our clients. As long as your code is stored in a version control system and the organisation has an Azure Devops account you can get up to 30 hours a month of pipeline for free. Its really helpful because it:
- Works with any language or platform
- Deploys to different types of targets at the same time
- Integrates with Azure deployments
- Builds on Windows, Linux, or Mac machines
- Integrates with GitHub
- Works with open-source projects.
This is really useful because it works with almost anything you have to do. You can learn more information about it at Azure DevOps Documentation.
Both Amazon and Google offer similar services. AWS uses codecommit, while Google offers Cloud Source Repositories. Both of these work similar to Azure DevOps Pipelines, but each places emphasis on different priorities. Amazon focuses most on how it works with their software, while Google focuses more on how easy it is to collaborate. Azure has more integration functionality and a better user interface making it more intuitive to use.
Azure DevOps Pull Request Process
Pull Requests are best practice for all software development so that a second person can review the development work before deployment. Azure DevOps provides great control during the pull request process. It performs various checks and validations prior to merging. The levels of permissioning make it where it is easy to prevent devs from merging the newly developed software before the checks and validations are performed.
Another great aspect of the code review that we really love is the mobile layout. It is the best I have seen. Given our developers are working remotely and frequently on the go important to us. The mobile layout makes it easy to review code and add comments from anywhere. This helps our Pull Requests to progress more quickly, because whether a dev is at their computer is no longer a road block to our sprint or deployments.
To summarise, Azure Devops is a great all in one place to store your code, documentation, deploy and review code. We use it as part of wider Azure infrastructure plan for our clients, we use it to keep infrastructure and code in one place
If you are looking to migrate to azure or shift where your code is stored, feel free to reach out!