2. About me
• David L. Bojsen – Principal Architect @ Kapacity
• 15+ years experience as BI developer, consultant and
architect
• Originally trainee from retail
• Designed solutions for TELMORE, Carlsberg, FL Smidth,
Mærsk…
• Former Cloud Solution Architect at Microsoft
• Frequent speaker at community and commercial events
• Feel free to reach out:
• www.linkedin.com/in/davidbojsen/
3. Agenda
• What is CI/CD
• Preparation of your Azure / Azure DevOps env.
• Deployment of Infrastructure (Azure Bicep)
• Deployment of SQL DB (if time permits)
• Deployment of ADF
• Introduction to new Azure DevOps Extension
• Deployment of Analysis Services (if time permits)
5. DevOps brings together people, processes, and technology, automating software delivery to provide
continuous value to your users. Using Azure DevOps, you can deliver software faster and more reliably
- no matter how big your IT department or what tools you’re using.
What is CI/CD
Continuous Integration (CI)
• Improve software development
quality and speed.
• When you use Azure Pipelines or
Jenkins to build apps in the cloud
and deploy to Azure, each time
you commit code, it’s
automatically built and tested
and bugs are detected faster.
Continuous Deployment (CD)
• By combining continuous
integration and infrastructure as
code (IaC), you’ll achieve identical
deployments and the confidence
to deploy to production at any
time.
• With continuous deployment, you
can automate the entire process
from code commit to production if
your CI/CD tests are successful.
6. Preparation of environment
• In Azure, for each environment
• 1 Resource Group
• 1 Key Vault inside Resource Group
• 1 Service Principal with Contributor / Owner permission on
Resource Group
• Key Vault access for the Service Principal
• In Azure DevOps, for each environment
• 1 Environment
• 1 Variable group linking to the Key Vault
• 1 service connection linking to the Service Principals
8. Who has worked with Azure
Bicep
Who has worked with other tools for
IaC
Who has worked with ARM
templates
9. Deployment of Infrastructure
• Bicep is a domain-specific language (DSL) that uses
declarative syntax to deploy Azure resources. In a Bicep
file, you define the infrastructure you want to deploy to
Azure, and then use that file throughout the development
lifecycle to repeatedly deploy your infrastructure. Your
resources are deployed in a consistent manner.
• Bicep provides concise syntax, reliable type safety, and
support for code reuse. Bicep offers a first-class
authoring experience for your infrastructure-as-code
solutions in Azure.
13. Deployment of ADF
• Microsofts Best Practice is IMHO not good enough
• Source: https://docs.microsoft.com/en-us/azure/data-
factory/continuous-integration-delivery
• My suggestion for a better approach: Deploy Data Factory
- Visual Studio Marketplace
15. Deployment of Analysis Services
• Recommend to use Tabular Editor for developing
AAS/SSAS/PBI data models
• Use save to folder to have better source code control
• Use Tabular Editor to build and deploy models