SlideShare ist ein Scribd-Unternehmen logo
1 von 21
Managing the SharePoint Application Lifecycle – beyond version 1.0.0.0PART 2 DEV108 Chris O’Brien - MVP
Chris O’Brien, MVP, MCSD.Net, MCTS www.sharepointnutsandbolts.com Twitter: @ChrisO_Brien Hands-on developer Author of ALM chapter in MVP book Creator of Content Deployment Wizard tool Regular speaker at UK user group
Last time.. Initial build ,[object Object]
Leveraging WSP importUpgrading a SharePoint application ,[object Object]
How to version a Feature
Using code/XML to upgrade,[object Object]
Changes to WSP framework
Assembly versioning in SP2010
Versioning recommendationsUpgrading a SharePoint application
Recap – Feature upgrade
Versioning/upgrading Features Version attribute now has a purpose! Define what should occur in 1.0.0.0-2.0.0.0 UpgradeActions element XML – some new XML for common scenarios Code – specify method/parameters in CustomUpgradeActions element New FeatureUpgrading method – add logic here
Feature upgrade XML ApplyElementManifests Integrate new artifacts into existing Feature Sometimes all you need! AddContentTypeField Add columns to content type MapFile Repoint a file to new location on filesystem (uncustomized files only)
UPGRADING A FEATURE Updating functionality
Artifact upgrade
Upgrade - ‘provisioned’ artifacts Typically must use API: ‘Standard’ cases ,[object Object]
Use APIContent type ,[object Object]
Overwrite file on filesystem
Use MapFile
Customized:
Overwrite file in libraryModule (file)
Upgrade - ‘declarative’ artifacts Typically update file on filesystem: ‘Standard’ cases List definition ,[object Object]

Weitere ähnliche Inhalte

Was ist angesagt?

VCS_QAPerformanceSlides
VCS_QAPerformanceSlidesVCS_QAPerformanceSlides
VCS_QAPerformanceSlides
Michael Cowan
 

Was ist angesagt? (20)

Continuous delivery & Alfresco - Living in the fast lane
Continuous delivery & Alfresco - Living in the fast lane Continuous delivery & Alfresco - Living in the fast lane
Continuous delivery & Alfresco - Living in the fast lane
 
Continuous Delivery with Elastic Beanstalk And CodePipeline on AWS
Continuous Delivery with Elastic Beanstalk And CodePipeline on AWSContinuous Delivery with Elastic Beanstalk And CodePipeline on AWS
Continuous Delivery with Elastic Beanstalk And CodePipeline on AWS
 
Biwug 20180410 - I developed a SharePoint Framework solution, what to do next...
Biwug 20180410 - I developed a SharePoint Framework solution, what to do next...Biwug 20180410 - I developed a SharePoint Framework solution, what to do next...
Biwug 20180410 - I developed a SharePoint Framework solution, what to do next...
 
Running JMeter Tests In Appvance PerformanceCloud
Running JMeter Tests In Appvance PerformanceCloudRunning JMeter Tests In Appvance PerformanceCloud
Running JMeter Tests In Appvance PerformanceCloud
 
Kovair 2014 at a Glance 11215
Kovair 2014  at a Glance 11215Kovair 2014  at a Glance 11215
Kovair 2014 at a Glance 11215
 
Service Fabric Deployments
Service Fabric DeploymentsService Fabric Deployments
Service Fabric Deployments
 
Server Tools New approach
Server Tools New approachServer Tools New approach
Server Tools New approach
 
Infinite Scale - Introduction to Google App Engine
Infinite Scale - Introduction to Google App EngineInfinite Scale - Introduction to Google App Engine
Infinite Scale - Introduction to Google App Engine
 
Year in Review: Perforce 2014 Product Updates
Year in Review: Perforce 2014 Product UpdatesYear in Review: Perforce 2014 Product Updates
Year in Review: Perforce 2014 Product Updates
 
AventX: A New Wave of Functionality
AventX: A New Wave of FunctionalityAventX: A New Wave of Functionality
AventX: A New Wave of Functionality
 
VCS_QAPerformanceSlides
VCS_QAPerformanceSlidesVCS_QAPerformanceSlides
VCS_QAPerformanceSlides
 
Kovair at STeP-IN Summit 2014 Conference
Kovair at STeP-IN Summit 2014 ConferenceKovair at STeP-IN Summit 2014 Conference
Kovair at STeP-IN Summit 2014 Conference
 
Devops led infrastructure transformation for a leading medical imaging soluti...
Devops led infrastructure transformation for a leading medical imaging soluti...Devops led infrastructure transformation for a leading medical imaging soluti...
Devops led infrastructure transformation for a leading medical imaging soluti...
 
DevOps Roadshow - continuous delivery and release management
DevOps Roadshow - continuous delivery and release managementDevOps Roadshow - continuous delivery and release management
DevOps Roadshow - continuous delivery and release management
 
SpringPeople Introduction to iOS Apps Development
SpringPeople Introduction to iOS Apps DevelopmentSpringPeople Introduction to iOS Apps Development
SpringPeople Introduction to iOS Apps Development
 
Deployingmuleapplications 160903085602
Deployingmuleapplications 160903085602Deployingmuleapplications 160903085602
Deployingmuleapplications 160903085602
 
Modern App Development with the SharePoint Framework
Modern App Development with the SharePoint FrameworkModern App Development with the SharePoint Framework
Modern App Development with the SharePoint Framework
 
Continuous Delivery in a Complex S.O.A.
Continuous Delivery in a Complex S.O.A.Continuous Delivery in a Complex S.O.A.
Continuous Delivery in a Complex S.O.A.
 
CloudBees Continuous Integration and Test with Appvance PerformanceCloud
CloudBees Continuous Integration and Test with Appvance PerformanceCloudCloudBees Continuous Integration and Test with Appvance PerformanceCloud
CloudBees Continuous Integration and Test with Appvance PerformanceCloud
 
Selenium
SeleniumSelenium
Selenium
 

Ähnlich wie Managing the SharePoint 2010 Application Lifecycle - Part 2

Database Change Management
Database Change Management Database Change Management
Database Change Management
headspringlabs
 
SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1
SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1
SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1
Knut Relbe-Moe [MVP, MCT]
 
Share point guidance package
Share point guidance packageShare point guidance package
Share point guidance package
Senthamil Selvan
 
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
 

Ähnlich wie Managing the SharePoint 2010 Application Lifecycle - Part 2 (20)

Managing the SharePoint 2010 Application Lifecycle - Part 1
Managing the SharePoint 2010 Application Lifecycle - Part 1Managing the SharePoint 2010 Application Lifecycle - Part 1
Managing the SharePoint 2010 Application Lifecycle - Part 1
 
Developer application lifecycle process and tools - v.5
Developer application lifecycle process and tools - v.5Developer application lifecycle process and tools - v.5
Developer application lifecycle process and tools - v.5
 
SharePoint Connections Coast to Coast Migrating SharePoint 2007 Solutions to ...
SharePoint Connections Coast to Coast Migrating SharePoint 2007 Solutions to ...SharePoint Connections Coast to Coast Migrating SharePoint 2007 Solutions to ...
SharePoint Connections Coast to Coast Migrating SharePoint 2007 Solutions to ...
 
Best practices for share point solution deployment
Best practices for share point solution deploymentBest practices for share point solution deployment
Best practices for share point solution deployment
 
Siebel Upgrade Best Practices & Processes V2
Siebel Upgrade Best Practices & Processes V2Siebel Upgrade Best Practices & Processes V2
Siebel Upgrade Best Practices & Processes V2
 
Upgrade to SharePoint 2010, Shai Petel SharePoint Conference Las Vegas Sep 2009
Upgrade to SharePoint 2010, Shai Petel SharePoint Conference Las Vegas Sep 2009Upgrade to SharePoint 2010, Shai Petel SharePoint Conference Las Vegas Sep 2009
Upgrade to SharePoint 2010, Shai Petel SharePoint Conference Las Vegas Sep 2009
 
Database Change Management
Database Change Management Database Change Management
Database Change Management
 
Azure DevOps for JavaScript Developers
Azure DevOps for JavaScript DevelopersAzure DevOps for JavaScript Developers
Azure DevOps for JavaScript Developers
 
Upgrading SLFE from 2007 to 2010
Upgrading SLFE from 2007 to 2010Upgrading SLFE from 2007 to 2010
Upgrading SLFE from 2007 to 2010
 
DevOps and Build Automation
DevOps and Build AutomationDevOps and Build Automation
DevOps and Build Automation
 
SharePoint 2010: What's New For Developers
SharePoint 2010: What's New For DevelopersSharePoint 2010: What's New For Developers
SharePoint 2010: What's New For Developers
 
Devops
DevopsDevops
Devops
 
Git and GitFlow branching model
Git and GitFlow branching modelGit and GitFlow branching model
Git and GitFlow branching model
 
SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1
SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1
SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1
 
AppStream repositories with CLM filters
AppStream repositories with CLM filtersAppStream repositories with CLM filters
AppStream repositories with CLM filters
 
Share point guidance package
Share point guidance packageShare point guidance package
Share point guidance package
 
Simplifying RCP Update and Install
Simplifying RCP Update and InstallSimplifying RCP Update and Install
Simplifying RCP Update and Install
 
MidSem
MidSemMidSem
MidSem
 
Azure DevOps for Developers
Azure DevOps for DevelopersAzure DevOps for Developers
Azure DevOps for Developers
 
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...
 

Mehr von Chris O'Brien

Mehr von Chris O'Brien (20)

Chris O'Brien - Building AI into Power Platform solutions
Chris O'Brien - Building AI into Power Platform solutionsChris O'Brien - Building AI into Power Platform solutions
Chris O'Brien - Building AI into Power Platform solutions
 
Chris OBrien - Azure DevOps for managing work
Chris OBrien - Azure DevOps for managing workChris OBrien - Azure DevOps for managing work
Chris OBrien - Azure DevOps for managing work
 
Chris O'Brien - Ignite 2019 announcements and selected roadmaps
Chris O'Brien - Ignite 2019 announcements and selected roadmapsChris O'Brien - Ignite 2019 announcements and selected roadmaps
Chris O'Brien - Ignite 2019 announcements and selected roadmaps
 
COB ESPC18 - Rich PowerApps with offline support
COB ESPC18 - Rich PowerApps with offline supportCOB ESPC18 - Rich PowerApps with offline support
COB ESPC18 - Rich PowerApps with offline support
 
COB - Azure Functions for Office 365 developers
COB - Azure Functions for Office 365 developersCOB - Azure Functions for Office 365 developers
COB - Azure Functions for Office 365 developers
 
COB - PowerApps - the good, the bad and the ugly - early 2018
COB - PowerApps - the good, the bad and the ugly - early 2018COB - PowerApps - the good, the bad and the ugly - early 2018
COB - PowerApps - the good, the bad and the ugly - early 2018
 
Chris OBrien - Pitfalls when developing with the SharePoint Framework (SPFx)
Chris OBrien - Pitfalls when developing with the SharePoint Framework (SPFx)Chris OBrien - Pitfalls when developing with the SharePoint Framework (SPFx)
Chris OBrien - Pitfalls when developing with the SharePoint Framework (SPFx)
 
Chris O'Brien - Best bits of Azure for Office 365/SharePoint developers
Chris O'Brien - Best bits of Azure for Office 365/SharePoint developersChris O'Brien - Best bits of Azure for Office 365/SharePoint developers
Chris O'Brien - Best bits of Azure for Office 365/SharePoint developers
 
Chris O'Brien - Intro to Power BI for Office 365 devs (March 2017)
Chris O'Brien - Intro to Power BI for Office 365 devs (March 2017)Chris O'Brien - Intro to Power BI for Office 365 devs (March 2017)
Chris O'Brien - Intro to Power BI for Office 365 devs (March 2017)
 
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - referenceChris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
 
Chris O'Brien - Introduction to the SharePoint Framework for developers
Chris O'Brien - Introduction to the SharePoint Framework for developersChris O'Brien - Introduction to the SharePoint Framework for developers
Chris O'Brien - Introduction to the SharePoint Framework for developers
 
Application Lifecycle Management for Office 365 development
Application Lifecycle Management for Office 365 developmentApplication Lifecycle Management for Office 365 development
Application Lifecycle Management for Office 365 development
 
Do's and don'ts for Office 365 development
Do's and don'ts for Office 365 developmentDo's and don'ts for Office 365 development
Do's and don'ts for Office 365 development
 
Chris O'Brien - Comparing SharePoint add-ins (apps) with Office 365 apps
Chris O'Brien - Comparing SharePoint add-ins (apps) with Office 365 appsChris O'Brien - Comparing SharePoint add-ins (apps) with Office 365 apps
Chris O'Brien - Comparing SharePoint add-ins (apps) with Office 365 apps
 
Chris OBrien - Weaving Enterprise Solutions into Office Products
Chris OBrien - Weaving Enterprise Solutions into Office ProductsChris OBrien - Weaving Enterprise Solutions into Office Products
Chris OBrien - Weaving Enterprise Solutions into Office Products
 
Chris O'Brien - Modern SharePoint development: techniques for moving code off...
Chris O'Brien - Modern SharePoint development: techniques for moving code off...Chris O'Brien - Modern SharePoint development: techniques for moving code off...
Chris O'Brien - Modern SharePoint development: techniques for moving code off...
 
Chris O'Brien - Customizing the SharePoint/Office 365 UI with JavaScript (ESP...
Chris O'Brien - Customizing the SharePoint/Office 365 UI with JavaScript (ESP...Chris O'Brien - Customizing the SharePoint/Office 365 UI with JavaScript (ESP...
Chris O'Brien - Customizing the SharePoint/Office 365 UI with JavaScript (ESP...
 
Deep dive into SharePoint 2013 hosted apps - Chris OBrien
Deep dive into SharePoint 2013 hosted apps - Chris OBrienDeep dive into SharePoint 2013 hosted apps - Chris OBrien
Deep dive into SharePoint 2013 hosted apps - Chris OBrien
 
Customizing the SharePoint 2013 user interface with JavaScript - Chris OBrien
Customizing the SharePoint 2013 user interface with JavaScript - Chris OBrienCustomizing the SharePoint 2013 user interface with JavaScript - Chris OBrien
Customizing the SharePoint 2013 user interface with JavaScript - Chris OBrien
 
SP2013 for Developers - Chris O'Brien
SP2013 for Developers - Chris O'BrienSP2013 for Developers - Chris O'Brien
SP2013 for Developers - Chris O'Brien
 

Managing the SharePoint 2010 Application Lifecycle - Part 2

  • 1. Managing the SharePoint Application Lifecycle – beyond version 1.0.0.0PART 2 DEV108 Chris O’Brien - MVP
  • 2. Chris O’Brien, MVP, MCSD.Net, MCTS www.sharepointnutsandbolts.com Twitter: @ChrisO_Brien Hands-on developer Author of ALM chapter in MVP book Creator of Content Deployment Wizard tool Regular speaker at UK user group
  • 3.
  • 4.
  • 5. How to version a Feature
  • 6.
  • 7. Changes to WSP framework
  • 9. Versioning recommendationsUpgrading a SharePoint application
  • 10. Recap – Feature upgrade
  • 11. Versioning/upgrading Features Version attribute now has a purpose! Define what should occur in 1.0.0.0-2.0.0.0 UpgradeActions element XML – some new XML for common scenarios Code – specify method/parameters in CustomUpgradeActions element New FeatureUpgrading method – add logic here
  • 12. Feature upgrade XML ApplyElementManifests Integrate new artifacts into existing Feature Sometimes all you need! AddContentTypeField Add columns to content type MapFile Repoint a file to new location on filesystem (uncustomized files only)
  • 13. UPGRADING A FEATURE Updating functionality
  • 15.
  • 16.
  • 17. Overwrite file on filesystem
  • 20. Overwrite file in libraryModule (file)
  • 21.
  • 22.
  • 23. Existing sites – activate Feature (script?)
  • 24.
  • 26. Solution framework changes Resource files Resx files can now target App_GlobalResources folder Solution dependencies But not solution receivers  Assembly binding redirects
  • 27. Dealing with shared assemblies Solutiondependencies: Does not deploy dependent solution Only checks at deployment time – possible to retract a depended on solution Redirects help for versioning assemblies: Version numbers stored everywhere! Redirect = one place to update
  • 29. Versioning strategies - ?.?.?.? Assembly versioning – tracing back: Main thing is to increment in some way  Common plans - Major.Minor.Build.Revision: Change severity (breaking/major/minor) Shipping/non-shipping (product-oriented) Incorporate sprint/iteration Incorporate changeset number Other custom Consider ‘File version’ for internal versioning
  • 30. Versioning strategies - ?.?.?.? Feature versioning: Main purpose - identify which version is where across farm Use similar principles as assemblies: Increment major for large/new release changes Assembly/Feature versions willdiverge Keep release notes to track
  • 31. Summary Now have standardized framework for upgrading applications New XML e.g. AddFieldToContentType Implement code in FeatureUpgrading event Use the new capabilities! WSP import Solution dependencies for shared assemblies
  • 32. Closing thoughts If you didn’t before, now is the time to do versioning! Assemblies -> AssembyBindingRedirect Features -> Feature upgrade code/XML Some extra considerations, but big benefits for non-trivial apps
  • 33. Thank you for attending!