Michael Stephenson DevOps empowered by Microsoft Flow Cloud & Integration Architect DevOps empowered by Microsoft Flow
About me… Cloud & Integration Architect Integration Monday!!! Twitter = @michael_Stephen Microsoft MVP = 9 years Entering UK Truck Pulling Championship for Charity – August 2018
Context Global Integration Platform Big Multi-Business Multi-Geo CRM implementation Users based on Azure AD B2B Federation Cross business integration 3rd party B2B integration API and Portal work Global Integration Platform
Background Common Theme Support processes which need to be actioned by team Image – http://coach-agile.com/speed-boat/
DevOps Cool Wall Example: User onboarding Sub-Zero Fridge Bar Sub Zero Undecided Uncool Seriously Uncool Way Beyond Seriously Uncool Incremental testing Continuous delivery Adhoc Support Processes Continuous build Example: User onboarding Automated provisioning Continuous integration Automated release management
Azure AD B2B Setup Multi-Region Group Solutions Regional Businesses GroupTenant Multi-Region Group Solutions Authenticate Azure AD Access Federate AcmeGroup.onmicrosoft.com Owning tenant Owning tenant Owning tenant Regional Businesses Acme-UK.onmicrosoft.com Acme-US.onmicrosoft.com Acme-HK.onmicrosoft.com
Major Release User Creation Tag your turn Azure AD Admin User CRM Admin Powershell CSV containing users B2B User Email Invite Bulk creation of 000’s of new users at a major release Azure AD
Real-world Transition Problems But I can’t do what you guys do Cross Team Friction!!!! Support User Concerns Skill and experience concerns Lack of tooling Scripts require elevated privileges Admin Concerns We cant transition low value tasks We never have time because we are doing basic admin We don’t want 2nd line support accidently killing the system CRM Admin Support User Azure AD Admin User Project Team BAU Support Team
Can I use Microsoft Flow in DevOps? Automate support tasks I hate Automate tasks that waste team time Human interacts with support process Approvals Power Apps Flow Azure Functions Azure Automation + Powershell
Planned Process Flow Capture user details Add to SharePoint list that we are going to add user Send invite from Azure AD to B2B user Add user to Azure AD groups Set user location Assign user CRM license Wait until Azure AD and CRM sync so the user is available In CRM set the users business unit In CRM assign the correct security roles to the user Update SharePoint list so we know the user is complete Send an email to tell everyone the user is setup
Architecture – Part 1 CRM Admin Support User Exchange Online Add User Flow B2B User Power App Email Invite SharePoint Online Azure Automation Azure AD
Architecture – Part 2 Azure Functions Exchange Online Support User CRM Admin Add User Flow B2B User Power App Email Invite SharePoint Online Azure Automation Azure AD
Demo
Architecture – Part 3 Support User Request Permission End User Self Service Approve Azure Functions Add User Flow B2B User Email Invite SharePoint Online Azure Automation Azure AD
Where’s the value? Area Value Security Allow support user to do actions in a controlled and secure way Removes risk of untrained support user accidently breaking something (eg: giving direct powershell access) Cost Saving Stop requiring high cost resources to do simple tasks Saves approx. 100GBP+ per month Cost 200GBP to build solution Cost 1GBP per month to run solution User Experience No bottleneck waiting for resource to add users New users setup in a few minutes vs hours/days Happy Staff Don’t frustrate high skilled staff with monotonous repetitive low value admin tasks Flow and Power Apps empowers skilled staff to off load tasks in a friendly secure way
Takeaways What we should do What are the results Automate Repetitive Tasks in your Team with Flow Allow users to interact with process via Power Apps (or Minecraft) Run IT Pro tasks in Azure Automation Run developer tasks in Azure Functions Easily Automate low value support processes Developer + IT Admin can develop the widgets DevOps Team can own the process IT support team can use the process
Technologies Used Power Apps Simple Forms and UI codeless GUI Web and Mobile capable Flow Workflow for the Power User IFTTT like but for the enterprise Automate me, Automate my team Azure Automation IT Pro automation platform Run powershell, python and other scripts Azure Functions Serverless compute Run code functions C#, python, Node.js, etc Azure AD B2B Cloud Directory of users B2B allows to federate with users in other tenants
Questions