Continuous delivery. Continuous integration. Even if you’re outside the development team, you’re probably aware that both impact the delivery of apps and software solutions to your customers. The goal of the continuous integration (CI) and continuous delivery (CD) pipeline is to enable teams to get a constant flow of updates — new features, configurations, bug fixes — into production without impacting parallel changes. Do this, and you can deliver a final product to your customers quickly and safely. Microsoft Azure is designed to help you achieve these business goals as you build, test, deploy and manage applications and services through Microsoft-managed data centers.
Here’s the big picture of what Azure can do.
Azure is a flexible public cloud computing platform that provides Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Software as a Service (SaaS). It supports many different programming languages, tools and frameworks including Microsoft-specific and third-party software and systems. Azure’s ever-expanding cloud-based computing services include analytics, virtual computing, storage, networking, and much more. As a cloud service, there is no need to manage hardware or server software.
Azure DevOps empowers you at every step in the application lifecycle.
Now let’s specifically look at the services Azure provides to get your applications from the idea stage to the finish line. For this, you need Azure DevOps services. Simply put, if your business develops and/or hosts web or mobile apps, Azure DevOps services can provide the full visibility across projects that your team needs.
Azure DevOps modern dev services tackle every phase of the application lifecycle to help you plan, collaborate and test to easily deploy your next great solution. We’ll cover the main services below. It is important to note that you can use all these DevOps services together, or mix and match to use only what you need as part of your workflow.
Azure Boards: This is where your team plans, tracks and discusses projects from the idea stage all the way through to the release. Kanban boards and team dashboards help you visualize work and assess how the team is performing. There are also built-in scrum boards for planning meetings and sprints. Your team can stay apprised of any code changes that are linked directly to work items. Backlog tracking and powerful analytics give insight into the status of the project.
Collaborate and Test
Azure Pipelines: Combining continuous integration and continuous delivery, Azure Pipelines include an integrated set of features that allow you to automatically build and test your web, desktop and mobile applications and deploy to any cloud or on-premises. It works with just about any language or project type including Node.js, Python, Java, PHP, Ruby, C/C++, .NET, Android and iOS apps. There is also support for YAML so you can have pipelines versioned with your code, which can also use multiple languages in different editors. Other advanced features include test integration, release gates and reporting.
Azure Pipelines comprise the whole end-to-end story of how you write code and get it into production. You may need a pipeline if you:
Have source code that you own or manage,
Have a developer team or outsource your development needs,
Struggle with the process of getting code from inception to production without errors,
…and/or offer technology solutions that need to be augmented or enhanced with customer business processes or solutions.
Azure Artifacts: Artifacts provide a place to push your packages so that they can be consumed by the rest of the team or partners. Package management with Azure Artifacts simplifies complex build jobs and allows your teams to create and share Maven, npm, NuGet, and Python package feeds. Sources can be public and private. Artifacts can be used with your favorite tools and services and is integrated with Azure Pipelines CI/CD.
Azure Repos: Unlimited, cloud-hosted Git repos allow developers to collaborate on code. This is where your source control is stored whether power shell or scripts that gets published to the artifacts.
Azure Test Plans: This easy-to-use, browser-based test management solution provides all the capabilities so that you can test with confidence before deployment. Azure Test Plans cover planned manual testing, user acceptance testing, exploratory testing, and gathering feedback from stakeholders. You can test across desktop and web apps, as well as capture data as tests are executed.
New to Azure DevOps? A little governance goes a long way.
Before you jump in and start coding and deploying with Azure DevOps tools, you should have a plan in place for how to support and operate services in the cloud. First, you should have a documented tech spec that answers the following questions:
What Azure regions will your company leverage to run assets and services in the cloud?
How many Azure subscriptions will be used and what directory (e.g., Azure Active Directory) will each subscription be associated to?
What roles will you leverage to manage permissions in the Azure subscription?
Will these roles be integrated to Active Directory group membership?
How will services in the cloud be tracked and properly paid for? What “cost code” will it align with (CapEx or OpEx)?
What “guard rails” (Azure management groups) will you apply to Azure resources in different subscriptions to ensure proper tracking and accountability of services in the cloud?
What will your naming standards be for Azure resources? What about “tagging” resources with what tags/values?
What specific Azure services will you use, and which ones will you not use due to security, cost, operational support or maturity?
Don’t let this list intimidate you. JourneyTEAM can help guide and assist you in these foundational prerequisites to make sure you are prepared before you get to production deployments. It is critical that this preparation is tackled up front.
Get Started with JourneyTEAM
As an award-winning Microsoft partner, JourneyTEAM has a proven track record with successful Microsoft technology implementations. Let us help you take the right steps as you explore your options to code, test and deploy with Microsoft Azure DevOps services. Contact JourneyTEAM today!