Dev-Test deployment for testing PaaS solutions
If you'd like to see us expand this article with more information (implementation details, pricing guidance, code examples, etc), let us know with GitHub Feedback!
This architecture represents how to configure your infrastructure for development and testing of a standard PaaS-style system.
This solution is built on the Azure managed services: Azure DevOps, Azure SQL Database, Azure Cache for Redis and Application Insights. These services run in a high-availability environment, patched and supported, allowing you to focus on your solution instead of the environment they run in.
- Azure DevOps manage the development process.
- The Microsoft Release Management build and release agents deploy the Azure Resource Manager template and associated code to the various environments.
- Resource Groups: AzureDevOps resource groups are used to define all the services required to deploy the solution into a dev-test or production environment.
- Web Apps: A web app runs the website and is deployed to all environments. Staging slots are used to swap pre-production and production versions.
- Azure SQL Database maintains data for the website. Copies are deployed in the dev, test, and production environments.
- Azure Cache for Redis is used in each environment to improve performance of the website.
- Application Insights: Application Insights monitors the web application during development and test runs, and then monitors the full production system when it’s released.
- Set up Azure DevOps
- Configure Microsoft Release Management agents
- Deploy using Azure Resource Groups
- Deploy an ASP.NET web app to Azure App Service, using Visual Studio
- SQL Database tutorial: Create a SQL database in minutes by using the Azure portal
- How to create a web app with Azure Cache for Redis
- Set up Application Insights for ASP.NET