Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
www.sharepointnutsandbolts.com
@ChrisO_Brien
http://cob-sp.com/COBLinkedIn
ALM focuses on:
• Efficient team development, with quality outputs
• Planning for application upgrades
• Predictable deplo...
http://sharepointci.codeplex.com
ALM for ASP.NET apps is MUCH
easier 
Worth considering Azure for ALM in dev phase, even
if not real target
Type
Office 365 app
SharePoint Add-In/Office Add-In
...
Developer checks-in
Build runs on hosted
build controller
Output automatically
deployed to Azure
Web App
Configure project for Office 365 integration
Add solution to source control
Create Azure Web App, select “publish from sou...
Some features not yet in both
In spring 2015, use:
* Specifically Office 365 apps i.e.
- Apps which use the Office 365 APIs
- Apps which use Azure AD auth (for SSO)
Office 365 apps need to be
registered in the “correct”
Azure AD (tied to O365
tenancy)
So, app needs to be
registered/depl...
BUT: often, “test” Office 365 tenancies do not have:






Azure Deployment Slots!
Define additional
“instances” of an Azure
Web App (site)
Allow you to test purely
in production Office 365
environment, BU...
Each site gets:




http://mysite.azurewebsites.net
http://mysite-dev.azurewebsites.net
http://mysite-test.azurewebsit...
In Azure
portal:
PowerShell:
Slots can be swapped to
deploy updates
Process: Switch-
AzureWebsiteSlot
–Name ‘COB website’
...
Create additional deployment slots
Register separate instance of app in Azure AD:
https://msdn.microsoft.com/en-us/office/...
1. Continuous build deploys to DEV slot
2. When ready, swap DEV and TEST
1.
2.
3. When ready, swap TEST and PROD
1.
2.
Traffic Routing - send
some traffic to another
slot
Uses:
Testing new functionality on small number
of users
A/B testing
Very easy to deploy/test against Office 365
Very similar to Office 365 apps (especially provider-
hosted), but:
Trusting the app:
Same as for O365 app:
SharePoint app specific:
http://blogs.msdn.com/b/kaevans
/archive/2014/04/02
/deploying-a-sharepoint...
1. Can’t use Visual
Studio Online?
2. Need to use an
on-prem TFS build
server?
http://officesharepointci.codeplex.com
Test the application
Check code quality
http://docs.spcaf.com/v5/SPCAF_OVERVIEW_660_HOWTO
RUNSPCAFINTEAMBUILD.html
Invalid credentials in
O365 deployment site
(build config)
App previously deployed
not by build
Kirk Evans (Microsoft) http://blogs.msdn.com/b/kaevans
Matthias Einig (SPCAF) http://www.matthiaseinig.de
Jeremy Thake (Mi...
Never done automated builds before? Well, NOW is
the time!
Application Lifecycle Management for Office 365 development
Application Lifecycle Management for Office 365 development
Application Lifecycle Management for Office 365 development
Application Lifecycle Management for Office 365 development
Application Lifecycle Management for Office 365 development
Application Lifecycle Management for Office 365 development
Application Lifecycle Management for Office 365 development
Application Lifecycle Management for Office 365 development
Upcoming SlideShare
Loading in …5
×

Application Lifecycle Management for Office 365 development

698 views

Published on

For teams doing cloud-friendly SharePoint or Office 365 development, apps will be a key area of focus - be they SharePoint add-ins or the newer Office 365/Azure AD apps. ASP.NET (typically MVC) is a common platform here, and fortunately ALM and Continuous Integration become MUCH easier - finally, an end to "it’s harder because it's SharePoint!" We'll demonstrate how Visual Studio Online and Azure Web Apps are a winning combination for “continuous deployment”, and also how features such as "Deployment Slots" in Azure can help with dev and test environments, and also the upgrade/push-to-live process. Several demos will ensure you’re covered for developing both SharePoint add-ins and Office 365 apps.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Application Lifecycle Management for Office 365 development

  1. 1. www.sharepointnutsandbolts.com @ChrisO_Brien http://cob-sp.com/COBLinkedIn
  2. 2. ALM focuses on: • Efficient team development, with quality outputs • Planning for application upgrades • Predictable deployments Things like: • Continuous Integration/Continuous Deployment • Packages not built on dev machines • Code quality checks • Structured deployment process
  3. 3. http://sharepointci.codeplex.com
  4. 4. ALM for ASP.NET apps is MUCH easier 
  5. 5. Worth considering Azure for ALM in dev phase, even if not real target Type Office 365 app SharePoint Add-In/Office Add-In Hosting Azure Other cloud On-prem IIS servers
  6. 6. Developer checks-in Build runs on hosted build controller Output automatically deployed to Azure Web App
  7. 7. Configure project for Office 365 integration Add solution to source control Create Azure Web App, select “publish from source control” DONE!
  8. 8. Some features not yet in both In spring 2015, use:
  9. 9. * Specifically Office 365 apps i.e. - Apps which use the Office 365 APIs - Apps which use Azure AD auth (for SSO)
  10. 10. Office 365 apps need to be registered in the “correct” Azure AD (tied to O365 tenancy) So, app needs to be registered/deployed to EACH Azure subscription behind your tenancies
  11. 11. BUT: often, “test” Office 365 tenancies do not have:      
  12. 12. Azure Deployment Slots!
  13. 13. Define additional “instances” of an Azure Web App (site) Allow you to test purely in production Office 365 environment, BUT with dev/test/prod separation for apps (Azure sites)
  14. 14. Each site gets:     http://mysite.azurewebsites.net http://mysite-dev.azurewebsites.net http://mysite-test.azurewebsites.net
  15. 15. In Azure portal: PowerShell: Slots can be swapped to deploy updates Process: Switch- AzureWebsiteSlot –Name ‘COB website’ -Slot1 'Production' -Slot2 <slotName>
  16. 16. Create additional deployment slots Register separate instance of app in Azure AD: https://msdn.microsoft.com/en-us/office/office365/howto/add-common-consent-manually Configure “slot-specific” ClientID and Password Deploy app to slot DONE!
  17. 17. 1. Continuous build deploys to DEV slot 2. When ready, swap DEV and TEST 1. 2. 3. When ready, swap TEST and PROD 1. 2.
  18. 18. Traffic Routing - send some traffic to another slot Uses: Testing new functionality on small number of users A/B testing
  19. 19. Very easy to deploy/test against Office 365 Very similar to Office 365 apps (especially provider- hosted), but:
  20. 20. Trusting the app:
  21. 21. Same as for O365 app: SharePoint app specific: http://blogs.msdn.com/b/kaevans /archive/2014/04/02 /deploying-a-sharepoint-app-to- azure-as-part-of-a-build.aspx
  22. 22. 1. Can’t use Visual Studio Online?
  23. 23. 2. Need to use an on-prem TFS build server? http://officesharepointci.codeplex.com
  24. 24. Test the application Check code quality http://docs.spcaf.com/v5/SPCAF_OVERVIEW_660_HOWTO RUNSPCAFINTEAMBUILD.html
  25. 25. Invalid credentials in O365 deployment site (build config) App previously deployed not by build
  26. 26. Kirk Evans (Microsoft) http://blogs.msdn.com/b/kaevans Matthias Einig (SPCAF) http://www.matthiaseinig.de Jeremy Thake (Microsoft) http://www.jeremythake.com
  27. 27. Never done automated builds before? Well, NOW is the time!

×