SlideShare a Scribd company logo
PowerApps Azure DevOps Build Tools
Automate your Dynamics 365 CE / Powerapps Build and Release process
Joost Veldhuis
PowerApps, Dynamics 365 CE
Technical Consultant
Macaw
@JJJVeldhuis
Joost.Veldhuis@macaw.nl
Linkedin.com/in/JoostVeldhuis
Agenda
• What is Application Lifecycle Management
• Solutions and Layering
• Managed vs Unmanaged
• ALM Health Check
• Source Control
• Azure DevOps
• PowerApps Build Tools
What is Application Lifecycle Management (ALM)?
ALM is an overarching concept that spans multiple teams:
• Admin Services for Environment Management
• Dev Experience and tooling Team
• Makers for citizens developer experience
• Platform for solution model and application install
Why Is ALM important?
• Automate the process
• Less errors while deploying
• All “code” is stored on a managed centralized environment.
• Run tests before the solution is deployed
• Error handling
• Better quality in Production
What is a solution?
Solutions are how customizers and
developers author, package, and
maintain PowerApps and Dynamics
Solutions are created and authored
by a Publisher
Solution
Data Model
Entities
Attributes
Forms
Views
Charts
Relationships
Global Option Sets
User Interface
Web Resources
JavaScript Libraries
Dashboards
Ribbon (command bar)
Sitemap
Dialogs
Process/Code
Assemblies
Custom Activities
Plug-ins
Workflow Definitions
Workflow
Business Process
Rules
Other
Reports
Templates
Security Roles
FLS Profiles
System Settings (transport only)
Virtual Entities
Web Hooks
App Modules
Layering
Application Behaviour
System Layer*
CDS Managed Layer
What the user sees
Managed Layers
1 per managed solution
Unmanaged “layer”
System Solution*
Base CDS entities
Managed Solutions
Unmanaged Customizations
Unmanaged
Solution C Unmanaged
Solution D
Managed Solution B
Managed Solution A
Layering occurs on import of solutions when a
specific component is affected by change
within one or more solution
Layers describe the dependency chain of
component from the root solution introducing
it, through each solution that extends or
changes the component’s behavior
Layers are created through extension of an
existing component (taking a dependency on it)
or through creation of a new component or
version of a solution.
Important:
Layers should be considered on a per-
component basis. Although typically drawn to
convey the effect of a solution on another
solution, this is always at a component or sub-
component level.
Managed vs Unmanaged
• Non development environment
• Test, UAT, Prod
• Generated by Build server
• Based on Build Artifact
• Easily manageable
• Easy Delete of All Components
in the Solution
• Development environment
• Created by “developers”
• Basis for Build Artifact
• The source for Build and Release
pipeline
• Deleting Solution does not delete
Components
Fundamentals: ALM Health Check
 Source Control definitive source of truth
 Are you Releasing as managed?
 Are your Dev environments disposable?
 Developer isolation?
 Using SolutionPackager?
Fundamentals: Solution Health Check
Solution segmentation?
Supported techniques only?
Testing in UC and using AppModules?
Single publisher?
Solution Checker? Only have your managed dependencies installed?
SourceControl
• A central place to store everything you deploy to production-like
environments
• Managed way of making changes
• Ruleset on who and how the changes are implemented
• Centralized vs. Distributed
• Git, Github, BitBucket, Team Foundation Services (TFS)
Azure DevOps
• Plan smarter, collaborate better and ship faster
with a set of modern dev services
• Easy collaboration
• Build/Release
• SourceControl Management
• Agile/Scrum Boards
Getting started, faster
Initiate
Build and Walk away
Build
Automated, Predictive, Repeatable
Release
Run Solution
CheckerPack Solution
Run
Integration
Test
Run Unit TestRun Unit Test
Run Solution
Checker
Export
Solution
Unpack to
Repo
ALM Powered by Azure DevOps
Initial Build Pipeline instantiates pristine
Development Environment daily
Automated Release Pipeline removes manual steps. Weekly, daily or hourly
releases becomes the new standard
Build Pipeline Automates manual steps.
No more upload to Solution checker and
manually export solution, unpack and
push to repo
Provision
Environment
Deploy
Dependencies
Pack Source
Code from
Repo
Import
Solution
Powered by Azure DevOps and Git
Import as
unmanaged
Increment
Version
Export
Managed
PowerApps Build Tools
• Azure DevOps Task for Automating deployments
• Uses Serviceconnections with Environments
• Import, Export, Publish
• (un)Packing, Package Deployer
• Solution Checker
Demo
Creating Build/Release with PowerappsBuild tools
To Conclude
• Use SourceControl to store solutions and customizations
• Automate Build/Release process with PowerApps Build Tools
• Managed on every environment except development
Usefull Links
http://marketresearchjournalist.com/2019/07/02/application-lifecycle-management-market-development-trend-2019-to-2025/
https://www.inflectra.com/spirateam/highlights/understanding-alm-tools.aspx
https://github.com/microsoft/PowerApps-Samples/tree/master/azure/build-tools
https://azure.microsoft.com/en-in/services/devops/
Question?
Taurusavenue 16E | 2132 LS Hoofddorp | +31 23 2060 600 | info@macaw.nl | www.macaw.nl

More Related Content

What's hot

Azure DevOps CI/CD For Beginners
Azure DevOps CI/CD  For BeginnersAzure DevOps CI/CD  For Beginners
Azure DevOps CI/CD For Beginners
Rahul Nath
 
The Power of Azure DevOps
The Power of Azure DevOpsThe Power of Azure DevOps
The Power of Azure DevOps
Jeff Bramwell
 
Why to Cloud Native
Why to Cloud NativeWhy to Cloud Native
Why to Cloud Native
Karthik Gaekwad
 
CI/CD on AWS
CI/CD on AWSCI/CD on AWS
CI/CD on AWS
Amazon Web Services
 
Getting Started with Azure DevOps
Getting Started with Azure DevOpsGetting Started with Azure DevOps
Getting Started with Azure DevOps
Jessica Deen
 
Welcome to Azure Devops
Welcome to Azure DevopsWelcome to Azure Devops
Welcome to Azure Devops
Alessandro Scardova
 
DevOps Best Practices
DevOps Best PracticesDevOps Best Practices
DevOps Best Practices
Giragadurai Vallirajan
 
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
Simplilearn
 
The Cloud Native Journey
The Cloud Native JourneyThe Cloud Native Journey
The Cloud Native Journey
VMware Tanzu
 
Azure dev ops
Azure dev opsAzure dev ops
Azure dev ops
Swaminathan Vetri
 
Azure dev ops
Azure dev opsAzure dev ops
Azure dev ops
Tomy Rhymond
 
Modern CI/CD Pipeline Using Azure DevOps
Modern CI/CD Pipeline Using Azure DevOpsModern CI/CD Pipeline Using Azure DevOps
Modern CI/CD Pipeline Using Azure DevOps
GlobalLogic Ukraine
 
Azure DevOps Best Practices Webinar
Azure DevOps Best Practices WebinarAzure DevOps Best Practices Webinar
Azure DevOps Best Practices Webinar
Cambay Digital
 
DevOps Transformation: Learnings and Best Practices
DevOps Transformation: Learnings and Best PracticesDevOps Transformation: Learnings and Best Practices
DevOps Transformation: Learnings and Best Practices
QBurst
 
Azure DevOps
Azure DevOpsAzure DevOps
Azure DevOps
Juan Fabian
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
Hawkman Academy
 
Benefits of DevSecOps
Benefits of DevSecOpsBenefits of DevSecOps
Azure DevOps
Azure DevOpsAzure DevOps
DevOps Powerpoint Presentation Slides
DevOps Powerpoint Presentation SlidesDevOps Powerpoint Presentation Slides
DevOps Powerpoint Presentation Slides
SlideTeam
 
Azure App Modernization
Azure App ModernizationAzure App Modernization
Azure App Modernization
Phi Huynh
 

What's hot (20)

Azure DevOps CI/CD For Beginners
Azure DevOps CI/CD  For BeginnersAzure DevOps CI/CD  For Beginners
Azure DevOps CI/CD For Beginners
 
The Power of Azure DevOps
The Power of Azure DevOpsThe Power of Azure DevOps
The Power of Azure DevOps
 
Why to Cloud Native
Why to Cloud NativeWhy to Cloud Native
Why to Cloud Native
 
CI/CD on AWS
CI/CD on AWSCI/CD on AWS
CI/CD on AWS
 
Getting Started with Azure DevOps
Getting Started with Azure DevOpsGetting Started with Azure DevOps
Getting Started with Azure DevOps
 
Welcome to Azure Devops
Welcome to Azure DevopsWelcome to Azure Devops
Welcome to Azure Devops
 
DevOps Best Practices
DevOps Best PracticesDevOps Best Practices
DevOps Best Practices
 
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
 
The Cloud Native Journey
The Cloud Native JourneyThe Cloud Native Journey
The Cloud Native Journey
 
Azure dev ops
Azure dev opsAzure dev ops
Azure dev ops
 
Azure dev ops
Azure dev opsAzure dev ops
Azure dev ops
 
Modern CI/CD Pipeline Using Azure DevOps
Modern CI/CD Pipeline Using Azure DevOpsModern CI/CD Pipeline Using Azure DevOps
Modern CI/CD Pipeline Using Azure DevOps
 
Azure DevOps Best Practices Webinar
Azure DevOps Best Practices WebinarAzure DevOps Best Practices Webinar
Azure DevOps Best Practices Webinar
 
DevOps Transformation: Learnings and Best Practices
DevOps Transformation: Learnings and Best PracticesDevOps Transformation: Learnings and Best Practices
DevOps Transformation: Learnings and Best Practices
 
Azure DevOps
Azure DevOpsAzure DevOps
Azure DevOps
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
Benefits of DevSecOps
Benefits of DevSecOpsBenefits of DevSecOps
Benefits of DevSecOps
 
Azure DevOps
Azure DevOpsAzure DevOps
Azure DevOps
 
DevOps Powerpoint Presentation Slides
DevOps Powerpoint Presentation SlidesDevOps Powerpoint Presentation Slides
DevOps Powerpoint Presentation Slides
 
Azure App Modernization
Azure App ModernizationAzure App Modernization
Azure App Modernization
 

Similar to Azure Devops Build Tools for Powerapps

Dev ops != Dev+Ops
Dev ops != Dev+OpsDev ops != Dev+Ops
Dev ops != Dev+Ops
Shalu Ahuja
 
DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own words
SUBHENDU KARMAKAR
 
Developer Group - Sitecore Application Lifecycle Management
Developer Group - Sitecore Application Lifecycle ManagementDeveloper Group - Sitecore Application Lifecycle Management
Developer Group - Sitecore Application Lifecycle ManagementThomas Eldblom
 
DevOps Simplex Services .pdf
DevOps Simplex Services .pdfDevOps Simplex Services .pdf
DevOps Simplex Services .pdf
Debasish Das
 
DevOps CD and Multispeed IT in regulated industries (FUG Presentation)
DevOps CD and Multispeed IT in regulated industries (FUG Presentation)DevOps CD and Multispeed IT in regulated industries (FUG Presentation)
DevOps CD and Multispeed IT in regulated industries (FUG Presentation)
Serena Software
 
Salesforce Continuous Integration with AutoRABIT
Salesforce Continuous Integration with AutoRABITSalesforce Continuous Integration with AutoRABIT
Salesforce Continuous Integration with AutoRABIT
Vishnu Raju Datla
 
Testing in the new age of DevOps
Testing in the new age of DevOpsTesting in the new age of DevOps
Testing in the new age of DevOps
Moataz Mahmoud
 
Session on evaluation of DevSecOps
Session on evaluation of DevSecOpsSession on evaluation of DevSecOps
Session on evaluation of DevSecOps
Abdullah al Mamun
 
DevOps Presentation.pptx
DevOps Presentation.pptxDevOps Presentation.pptx
DevOps Presentation.pptx
Abdullah al Mamun
 
DevOps
DevOpsDevOps
Crm saturday madrid 2017 razwan - d365 solution release management
Crm saturday madrid 2017   razwan - d365 solution release managementCrm saturday madrid 2017   razwan - d365 solution release management
Crm saturday madrid 2017 razwan - d365 solution release management
Demian Raschkovan
 
Introduction to devops
Introduction to devopsIntroduction to devops
Introduction to devops
UtpalenduChakrobortt1
 
Devops Mindset Essentials
Devops Mindset EssentialsDevops Mindset Essentials
Devops Mindset Essentials
Willy-Peter Schaub
 
Lucas Gravley - HP - Self-Healing And Monitoring in a DevOps world
Lucas Gravley - HP - Self-Healing And Monitoring in a DevOps worldLucas Gravley - HP - Self-Healing And Monitoring in a DevOps world
Lucas Gravley - HP - Self-Healing And Monitoring in a DevOps world
DevOps Enterprise Summit
 
What is DevOps? What is DevOps CoE?
What is DevOps? What is DevOps CoE? What is DevOps? What is DevOps CoE?
What is DevOps? What is DevOps CoE?
7Targets AI Sales Assistants
 
Dev ops concept
Dev ops conceptDev ops concept
Dev ops concept
Professional Guru
 
Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...
Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...
Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...
Sam Garforth
 
The QA/Testing Process
The QA/Testing ProcessThe QA/Testing Process
The QA/Testing Process
Synerzip
 
Dev ops developer (session 3)
Dev ops developer (session 3)Dev ops developer (session 3)
Dev ops developer (session 3)
MSDEVMTL
 

Similar to Azure Devops Build Tools for Powerapps (20)

release management
release managementrelease management
release management
 
Dev ops != Dev+Ops
Dev ops != Dev+OpsDev ops != Dev+Ops
Dev ops != Dev+Ops
 
DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own words
 
Developer Group - Sitecore Application Lifecycle Management
Developer Group - Sitecore Application Lifecycle ManagementDeveloper Group - Sitecore Application Lifecycle Management
Developer Group - Sitecore Application Lifecycle Management
 
DevOps Simplex Services .pdf
DevOps Simplex Services .pdfDevOps Simplex Services .pdf
DevOps Simplex Services .pdf
 
DevOps CD and Multispeed IT in regulated industries (FUG Presentation)
DevOps CD and Multispeed IT in regulated industries (FUG Presentation)DevOps CD and Multispeed IT in regulated industries (FUG Presentation)
DevOps CD and Multispeed IT in regulated industries (FUG Presentation)
 
Salesforce Continuous Integration with AutoRABIT
Salesforce Continuous Integration with AutoRABITSalesforce Continuous Integration with AutoRABIT
Salesforce Continuous Integration with AutoRABIT
 
Testing in the new age of DevOps
Testing in the new age of DevOpsTesting in the new age of DevOps
Testing in the new age of DevOps
 
Session on evaluation of DevSecOps
Session on evaluation of DevSecOpsSession on evaluation of DevSecOps
Session on evaluation of DevSecOps
 
DevOps Presentation.pptx
DevOps Presentation.pptxDevOps Presentation.pptx
DevOps Presentation.pptx
 
DevOps
DevOpsDevOps
DevOps
 
Crm saturday madrid 2017 razwan - d365 solution release management
Crm saturday madrid 2017   razwan - d365 solution release managementCrm saturday madrid 2017   razwan - d365 solution release management
Crm saturday madrid 2017 razwan - d365 solution release management
 
Introduction to devops
Introduction to devopsIntroduction to devops
Introduction to devops
 
Devops Mindset Essentials
Devops Mindset EssentialsDevops Mindset Essentials
Devops Mindset Essentials
 
Lucas Gravley - HP - Self-Healing And Monitoring in a DevOps world
Lucas Gravley - HP - Self-Healing And Monitoring in a DevOps worldLucas Gravley - HP - Self-Healing And Monitoring in a DevOps world
Lucas Gravley - HP - Self-Healing And Monitoring in a DevOps world
 
What is DevOps? What is DevOps CoE?
What is DevOps? What is DevOps CoE? What is DevOps? What is DevOps CoE?
What is DevOps? What is DevOps CoE?
 
Dev ops concept
Dev ops conceptDev ops concept
Dev ops concept
 
Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...
Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...
Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...
 
The QA/Testing Process
The QA/Testing ProcessThe QA/Testing Process
The QA/Testing Process
 
Dev ops developer (session 3)
Dev ops developer (session 3)Dev ops developer (session 3)
Dev ops developer (session 3)
 

Recently uploaded

Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
WSO2
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
kalichargn70th171
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
Cyanic lab
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
AMB-Review
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
Tier1 app
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
vrstrong314
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
takuyayamamoto1800
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
XfilesPro
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 

Recently uploaded (20)

Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 

Azure Devops Build Tools for Powerapps

  • 1. PowerApps Azure DevOps Build Tools Automate your Dynamics 365 CE / Powerapps Build and Release process
  • 2. Joost Veldhuis PowerApps, Dynamics 365 CE Technical Consultant Macaw @JJJVeldhuis Joost.Veldhuis@macaw.nl Linkedin.com/in/JoostVeldhuis
  • 3. Agenda • What is Application Lifecycle Management • Solutions and Layering • Managed vs Unmanaged • ALM Health Check • Source Control • Azure DevOps • PowerApps Build Tools
  • 4. What is Application Lifecycle Management (ALM)? ALM is an overarching concept that spans multiple teams: • Admin Services for Environment Management • Dev Experience and tooling Team • Makers for citizens developer experience • Platform for solution model and application install
  • 5. Why Is ALM important? • Automate the process • Less errors while deploying • All “code” is stored on a managed centralized environment. • Run tests before the solution is deployed • Error handling • Better quality in Production
  • 6. What is a solution? Solutions are how customizers and developers author, package, and maintain PowerApps and Dynamics Solutions are created and authored by a Publisher Solution Data Model Entities Attributes Forms Views Charts Relationships Global Option Sets User Interface Web Resources JavaScript Libraries Dashboards Ribbon (command bar) Sitemap Dialogs Process/Code Assemblies Custom Activities Plug-ins Workflow Definitions Workflow Business Process Rules Other Reports Templates Security Roles FLS Profiles System Settings (transport only) Virtual Entities Web Hooks App Modules
  • 7. Layering Application Behaviour System Layer* CDS Managed Layer What the user sees Managed Layers 1 per managed solution Unmanaged “layer” System Solution* Base CDS entities Managed Solutions Unmanaged Customizations Unmanaged Solution C Unmanaged Solution D Managed Solution B Managed Solution A Layering occurs on import of solutions when a specific component is affected by change within one or more solution Layers describe the dependency chain of component from the root solution introducing it, through each solution that extends or changes the component’s behavior Layers are created through extension of an existing component (taking a dependency on it) or through creation of a new component or version of a solution. Important: Layers should be considered on a per- component basis. Although typically drawn to convey the effect of a solution on another solution, this is always at a component or sub- component level.
  • 8. Managed vs Unmanaged • Non development environment • Test, UAT, Prod • Generated by Build server • Based on Build Artifact • Easily manageable • Easy Delete of All Components in the Solution • Development environment • Created by “developers” • Basis for Build Artifact • The source for Build and Release pipeline • Deleting Solution does not delete Components
  • 9. Fundamentals: ALM Health Check  Source Control definitive source of truth  Are you Releasing as managed?  Are your Dev environments disposable?  Developer isolation?  Using SolutionPackager?
  • 10. Fundamentals: Solution Health Check Solution segmentation? Supported techniques only? Testing in UC and using AppModules? Single publisher? Solution Checker? Only have your managed dependencies installed?
  • 11. SourceControl • A central place to store everything you deploy to production-like environments • Managed way of making changes • Ruleset on who and how the changes are implemented • Centralized vs. Distributed • Git, Github, BitBucket, Team Foundation Services (TFS)
  • 12. Azure DevOps • Plan smarter, collaborate better and ship faster with a set of modern dev services • Easy collaboration • Build/Release • SourceControl Management • Agile/Scrum Boards
  • 13. Getting started, faster Initiate Build and Walk away Build Automated, Predictive, Repeatable Release Run Solution CheckerPack Solution Run Integration Test Run Unit TestRun Unit Test Run Solution Checker Export Solution Unpack to Repo ALM Powered by Azure DevOps Initial Build Pipeline instantiates pristine Development Environment daily Automated Release Pipeline removes manual steps. Weekly, daily or hourly releases becomes the new standard Build Pipeline Automates manual steps. No more upload to Solution checker and manually export solution, unpack and push to repo Provision Environment Deploy Dependencies Pack Source Code from Repo Import Solution Powered by Azure DevOps and Git Import as unmanaged Increment Version Export Managed
  • 14. PowerApps Build Tools • Azure DevOps Task for Automating deployments • Uses Serviceconnections with Environments • Import, Export, Publish • (un)Packing, Package Deployer • Solution Checker
  • 15. Demo Creating Build/Release with PowerappsBuild tools
  • 16. To Conclude • Use SourceControl to store solutions and customizations • Automate Build/Release process with PowerApps Build Tools • Managed on every environment except development
  • 19. Taurusavenue 16E | 2132 LS Hoofddorp | +31 23 2060 600 | info@macaw.nl | www.macaw.nl

Editor's Notes

  1. Unmanaged Solutions are to be used in development environments while you are making configuration changes to your application. Solutions are exported as unmanaged and checked into your source control system. Unmanaged solutions should be considered your source. Managed solutions are used to deploy to any environment outside of development. This includes test, UAT, and production environments. Managed solutions should be generated by a build server and considered as a build artifact.