SlideShare a Scribd company logo
1 of 12
SharePoint Action Framework

http://saf.codeplex.com
By Collaboris



   01 March 2010
What is SAF?

   SAF is the “SharePoint Action Framework”
   It’s Open Source, hosted on Codeplex
   Automates and repeats configuration changes in
    SharePoint via “Macros”
   Easy to run from Msbuild, Stsadm, Feature
    receiver (and very soon WIX/MSI)
   It’s an engine written in C#
   It allows 3rd party actions to be written


              Collaboris Consultancy Services    2

              Collaboris
What Problems does SAF Solve ?
   Replaces manual effort and non-standard scripts
       This can saves months of dev effort!
   Allows you create Macros once, and re-use in the
    technology that fits best
       e.g Msbuild, Feature Receiver, Stsadm, WIX
   Allows a common approach to scripting SharePoint
       .net Actions, stsadm, powershell, batch
   Makes SharePoint Deployments standardised and
    simpler
   Allows “Environment-aware” scripts through dynamic
    property placeholders.
                                                         3

                 Collaboris
SAF Architecture Diagram




                           4

        Collaboris
What is a Macro ?
   Is the top-level container in SAF
   A Macro contains one or more Actions
       Examples :
         Deploy Solution (Add Solution, Deploy Solution)
         Create Farm (Create a SharePoint Farm)
         Configure Search (install & configure search service)
   A Macro is authored as XML using Spring.Net
   A Macro can be a template (parameterised) or instance
   Macro can substitute Properties at run time
   Macro’s can easily be reused by sharing XML


                                                                 5

                  Collaboris
What is an Action
   An Action is a unit of work to execute in SharePoint
       Examples :
         Add Lookup Column to List
         Create Publishing Page
         Add Web Parts to Page
   An action is written in managed .Net code
   3rd Party Custom Actions can easily be added to SAF
   An action implements 3 methods
       DoAction()
       UndoAction()
       IsValid()

                                                           6

                    Collaboris
Properties and Expressions
   A Property passes information to the Action
       e.g. Site Name, Urls, Titles, and so on.
   A Property (for an Action) can be set
       literally:
         <property name=“SiteTitle” value=“Accounts”/>
       via a runtime Placeholder:
         <property name=“SiteTitle” value=“${SiteName}”/>
       via an expression:
         <property name=“Date” expression=“date('1974-08-24') + 5” />




                                                                        7

                     Collaboris
What is a SAF Context?
   A property bag that is passed into every Action
   Contains resolved Properties
   Created by the SAF Engine at start-up
   Contains references to the current SharePoint Context
       e.g Farm, Web Application, SPSite, SPWeb




                                                            8

                  Collaboris
Do you want to
make your SharePoint deployments
        run smoothly?...




                                   9

      Collaboris
...let’s get started...




                            10

Collaboris
Getting Started ?
   Download the latest version from here:
        http://saf.codeplex.com
   Download working samples:
        http://collaboris.co.uk/saf/doc
   Read the WIKI
        http://www.collaboris.co.uk/Projects/SafWiki/SAF_WIKI/Contents_Pa
         ge.aspx
   Read the blog
        http://www.collaboris.co.uk/blogs.aspx?CntCatID=dc5a1df9-790f-
         43ee-b3e8-c0124927b7af
   Follow me on Twitter
        http://twitter.com/MarkQJones


                                                                             11

                     Collaboris
SAF Road Map 2010
   Version 2.1 (mid March)
       Tight WIX Integration (MSI’s)
       More Actions
       WCF Service beta
   Version 2.5 (end June)
       SAF working in SharePoint 2010
       XML-less configuration
       GUI to create Macros visually
       WCF Service releases


                                         12

                 Collaboris

More Related Content

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Recently uploaded (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

Featured

Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Featured (20)

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 

Share Point Action Framework

  • 2. What is SAF?  SAF is the “SharePoint Action Framework”  It’s Open Source, hosted on Codeplex  Automates and repeats configuration changes in SharePoint via “Macros”  Easy to run from Msbuild, Stsadm, Feature receiver (and very soon WIX/MSI)  It’s an engine written in C#  It allows 3rd party actions to be written Collaboris Consultancy Services 2 Collaboris
  • 3. What Problems does SAF Solve ?  Replaces manual effort and non-standard scripts  This can saves months of dev effort!  Allows you create Macros once, and re-use in the technology that fits best  e.g Msbuild, Feature Receiver, Stsadm, WIX  Allows a common approach to scripting SharePoint  .net Actions, stsadm, powershell, batch  Makes SharePoint Deployments standardised and simpler  Allows “Environment-aware” scripts through dynamic property placeholders. 3 Collaboris
  • 5. What is a Macro ?  Is the top-level container in SAF  A Macro contains one or more Actions  Examples : Deploy Solution (Add Solution, Deploy Solution) Create Farm (Create a SharePoint Farm) Configure Search (install & configure search service)  A Macro is authored as XML using Spring.Net  A Macro can be a template (parameterised) or instance  Macro can substitute Properties at run time  Macro’s can easily be reused by sharing XML 5 Collaboris
  • 6. What is an Action  An Action is a unit of work to execute in SharePoint  Examples : Add Lookup Column to List Create Publishing Page Add Web Parts to Page  An action is written in managed .Net code  3rd Party Custom Actions can easily be added to SAF  An action implements 3 methods  DoAction()  UndoAction()  IsValid() 6 Collaboris
  • 7. Properties and Expressions  A Property passes information to the Action  e.g. Site Name, Urls, Titles, and so on.  A Property (for an Action) can be set  literally: <property name=“SiteTitle” value=“Accounts”/>  via a runtime Placeholder: <property name=“SiteTitle” value=“${SiteName}”/>  via an expression: <property name=“Date” expression=“date('1974-08-24') + 5” /> 7 Collaboris
  • 8. What is a SAF Context?  A property bag that is passed into every Action  Contains resolved Properties  Created by the SAF Engine at start-up  Contains references to the current SharePoint Context  e.g Farm, Web Application, SPSite, SPWeb 8 Collaboris
  • 9. Do you want to make your SharePoint deployments run smoothly?... 9 Collaboris
  • 10. ...let’s get started... 10 Collaboris
  • 11. Getting Started ?  Download the latest version from here:  http://saf.codeplex.com  Download working samples:  http://collaboris.co.uk/saf/doc  Read the WIKI  http://www.collaboris.co.uk/Projects/SafWiki/SAF_WIKI/Contents_Pa ge.aspx  Read the blog  http://www.collaboris.co.uk/blogs.aspx?CntCatID=dc5a1df9-790f- 43ee-b3e8-c0124927b7af  Follow me on Twitter  http://twitter.com/MarkQJones 11 Collaboris
  • 12. SAF Road Map 2010  Version 2.1 (mid March)  Tight WIX Integration (MSI’s)  More Actions  WCF Service beta  Version 2.5 (end June)  SAF working in SharePoint 2010  XML-less configuration  GUI to create Macros visually  WCF Service releases 12 Collaboris