28
Sponsored & Brought to you by Logic Apps – Deployments Mattias Lögdberg https://twitter.com/MLogdberg https://se.linkedin.com/in/logdberg

Logic Apps – Deployments

Embed Size (px)

Citation preview

Page 1: Logic Apps – Deployments

Sponsored & Brought to you by

Logic Apps – Deployments

Mattias Lögdberg

https://twitter.com/MLogdberg

https://se.linkedin.com/in/logdberg

Page 2: Logic Apps – Deployments

Logic Apps Deployments

Integration Monday DatumMattias Lögdberg 2016-06-27

Page 3: Logic Apps – Deployments

Mattias Lögdberg

Solution ArchitectAzure Advisor/InsiderTalker/Inspirer at Microsoft Events

MLogdberg

MLogdberg

https://se.linkedin.com/in/logdberg

Page 4: Logic Apps – Deployments

Agenda

• Setting the Scen• Develpoment• Version control using Visual Studio Team Services (TFS Online)• Build using Visual Studio Team Services (TFS Online) • Deployment and Release Managemet using TFS Online• Deployment using GitHub

Page 5: Logic Apps – Deployments

• Azure Services– Blobb Storage

• Logic Apps• Visual Studio 2015• Visual Studio Team Services (TFS Online)• PowerShell• Logic Apps Template Creator (@Github by Jeff Hollan)– https://github.com/jeffhollan/LogicAppTemplateCreator

• Azure Deploy @ GitHub

Page 6: Logic Apps – Deployments

BuildVersion Control

Develop Delpoy

Page 7: Logic Apps – Deployments

The Logic App

• Recieve HTTP call• Upload content to blobbstorage

Page 8: Logic Apps – Deployments

Developing Logic Apps

• Browser• Templates• JSON

Page 9: Logic Apps – Deployments

Demo

• Creating Azure Service, Storage and prepare for blobb upload• Creating a Logic App to send File to Blobb Storage• Preparing for deployment– Identifying the ”hard coded” parts– Parameterize

Page 10: Logic Apps – Deployments

What we created

App Service PlanResource Group

Logic App

Storage Account

Connection

Page 11: Logic Apps – Deployments

BuildVersion Control

Develop Delpoy

Page 12: Logic Apps – Deployments

Version Control

• Keeping track of changes• Build• Test• Deployment and Release handling

Page 13: Logic Apps – Deployments

Demo – Source Control

• Extracting the Logic App Template• https://github.com/jeffhollan/LogicAppTemplateCreator

• Create Visual Studio Project• Add template, environment and parameter files• Create a script to manipulate the Azure resources– Creating the Container if needed

• Adding the Solution to TFS

Page 14: Logic Apps – Deployments

What we created

• Template for creating all ”needed” resources– Creating the Storage Account

• Automated creation of Connection(s)– Creating the connection with key and name

• Script for creating Container in Blobb Storage• Version control

Page 15: Logic Apps – Deployments

BuildVersion Control

Develop Delpoy

Page 16: Logic Apps – Deployments

Building Logic Apps

• Copy template and parameter files• Copy powershell script files

Page 17: Logic Apps – Deployments

Demo – Create Build

• Create Build definition• Build

Page 18: Logic Apps – Deployments

What we created

• Copying Artifacts to be used with deployments

Page 19: Logic Apps – Deployments

BuildVersion Control

Develop Delpoy

Page 20: Logic Apps – Deployments

Deployment

• Template deploy– Resource Group– Azure Resources (App Service Plan, Logic App etc)

• Powershell for administrating Azure Resources– Create the Container for Blobb Storage

App Service PlanResource Group

Logic App

Storage Account

Connection

Page 21: Logic Apps – Deployments

Demo – Create Releases

• Create Release from Build• Add stepp for template deploy• Add Script for creating the container if not created

Page 22: Logic Apps – Deployments

What we created

• Release handling– Easy release to mutilpe environments

• Control over what is released in what environment• 100% automated deploy

Storage Account Logic App

$(containername)

Page 23: Logic Apps – Deployments

Summary

• Fully automated Deployment– Logic App– Other Azure Resources

• Unified Deployment regardless of Azure Resource or Logic App.• Reusable templates, parameterize.• Make a plan for shared resources

Page 24: Logic Apps – Deployments

Alternatives

• Github– Azure Deploy

• Other build engines – Requirements Azure Powershell or Azure CLI– Recomendation: Create login credentials and load in script• Save-AzureRmProfile• Select-AzureRmProfile

– Recomendation: Create small reusable powershell script and execute in sequence at deployment

Page 25: Logic Apps – Deployments

Github Deployments

• Azure DeployExample athttps://github.com/MLogdberg/LogicAppTemplates

Page 26: Logic Apps – Deployments

Wrap Up

Pros• Template deploy for unified deployment. (Azure resources)• Once over the ”bump” it’s easy• Everything can be solved via powershellCons• Native template export missed!• Hard to find error causes• Steap learning curve

Page 27: Logic Apps – Deployments
Page 28: Logic Apps – Deployments

Thank you for your attention!Mattias Lögdberg, Solutions ArchitectEmail: Mattias. [email protected]: +46 (0)70 556 75 56

MLogdbergMLogdberghttps://se.linkedin.com/in/logdberg