SlideShare une entreprise Scribd logo
1  sur  29
Salesforce.com Team Development
Carlos Ramirez Martinez-Eiroa
Index



 Safe Harbor Statement
 Team Development Basics
 Continuous Integration
 Demo
 Non-packaged Development
 Package Development
 Non-packaged Gotchas
 Package Gotchas
 ANT Migration Tool
 Resources
 Q&A
Safe Harbor Statement



 We don’t have all the answers, but… it’s working!


 Also, no need to take notes:


http://www.soliantconsulting.com/blog/2013/03/salesforcecomforceco
m-team-development
Team Development Basics
Team Development Basics



 Version Control (SVN, Git, ...)


 Separate Development Environment for each Developer


 Unit Testing (Salesforce provides JUnit-like framework)


 Continuous Integration (Jenkins/Hudson, Bamboo, ...)
Team Development Process


1. One developer commits all code to a new repo from a project
   connected to the sandbox (1st commit)

2. Other developers in the team check out the project

3. Developers update their local project at the beginning of the day

4. Developers commit code to, and update from, the repo one or
   more times a day

Resource: http://www.soliantconsulting.com/blog/2013/03/working-
forcecom-ide-and-subversion-svn
Repo = Gospel

Developer Org = Scratch Paper
Continuous Integration
What does it do?



1. Pulls the code from the repo (from version control) on
   a scheduled basis

2. Runs all the automated tests

3. Deploys to a Test/UAT environment (ANT Migration
   Tool)

4. Notifies team (by email) if there was any issue
Advantages



 Developers don’t need to be running the tests manually
  every time they change code

 There is no need to manually deploy to a test/UAT org
  for other stakeholders to see the status of the project

 There is immediate feedback to the team if there is any
  issue with the code
Demo

SVN + Bamboo
Development
Scenarios




A. Non-Package Development

B. Package Development
Scenario A: Non-Package Development



 Shared Version Control Repository

 One Developer Sandbox* per Developer

 Possibly one Sandbox for internal testing

 Definitely one Sandbox for UAT
Why Developer Sandboxes?

 If Developer Orgs are free, why do we need a Developer
  Sandbox for each developer?
               because of 3rd party managed packages!

 Usually Salesforce applications have managed packages
  installed, and references to these packages in Apex and/or
  VF.

 Some packages cannot be installed in Developer Orgs
  because:
   They are deprecated

   They ask for credentials

   Dev orgs are just not supported
Main issue to address:

  Cost to purchase additional Developer Sandboxes

    Can we tell clients that this is a requirement*?

               *Only during development
Scenario B: Package Development


 Shared Version Control Repository

 One Developer Org per Developer - connected to repo

 One Partner Developer Org (20 accounts) for Testing/QA -
  connected to repo

 One Developer Org for Packaging - connected to repo

 Up to 4 different edition orgs for UAT - NOT connected to
  repo (deploy code as Managed Package)
Gotchas
Scenario A: Non-Package Gotchas



 All changes in production must be replicated in AT
  LEAST one developer Sandbox

  (they will be pulled from this one and add it to the repo)

 Refresh Sandbox only AFTER all changes have been
  deployed
Scenario B: Package Gotchas I



 Do NOT create the package until the end - creating a
  package will add the namespace prefix to all
  classes, fields, objects, etc.


 To avoid prefix issues (so that code can be deployed to
  multiple Developer Orgs):


     Do not use any prefix in Apex code (apex code will work
      with or without prefix)

     Use try-catch in Javascript calls from buttons (show)
Scenario B: Package Gotchas II



     Use try/catch in webservice calls (same as in
      JavaScript)

       Calls to methods annotated with @webservice
       from either JavaScript or from an external
       application need to use the prefix.

     To call Apex code from JavaScript in a VF page you
      can user $RemoteAction (will automatically
      resolve the namespace)
Namespace Prefix Substitution



Some of the issues mentioned above can be
automatically handled by this project:

    github.com/jordanbaucke/sfdc-namespace-prefix

Glorified search and replace.

Bamboo runs this script after checking out the code from
the repository, but before deploying it to the packaging
org.
Setup & Configuration
Ant Migration Tool



 Used by Jenkins or Bamboo

 Can be used from Force.com
  IDE, MavensMate, Command Line, ...

 Extension to Ant

 Allows you to automate deployment, running
  tests, ...
Ant Migration Tool Config



Build.xml




Build.properties
Resources
 Blog post:
  soliantconsulting.com/blog/2013/03/salesforcecomforcecom-team-
  development

 LinkedIn discussion:
  linkedin.com/groupAnswers?viewQuestionAndAnswers=&discussionI
  D=221804807&gid=142613

 SVN:         subversion.apache.org

 Git:         git-scm.com

 Jenkins:     jenkins-ci.org

 Bamboo:      atlassian.com/software/bamboo
Thank You!
Q&A

Contenu connexe

Tendances

CI-solutions-Versus-AutoRABIT
CI-solutions-Versus-AutoRABITCI-solutions-Versus-AutoRABIT
CI-solutions-Versus-AutoRABIT
alkhan50
 
Release Management for Large Enterprises
Release Management for Large EnterprisesRelease Management for Large Enterprises
Release Management for Large Enterprises
Salesforce Developers
 
Upgrade automatically to Sitecore
Upgrade automatically to SitecoreUpgrade automatically to Sitecore
Upgrade automatically to Sitecore
Jatinder Yadav
 

Tendances (20)

Salesforce Continuous Integration with AutoRABIT
Salesforce Continuous Integration with AutoRABITSalesforce Continuous Integration with AutoRABIT
Salesforce Continuous Integration with AutoRABIT
 
Managing Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox ArchitectureManaging Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox Architecture
 
Automating the Impossible: End to End Team Development for ISVs (October 14, ...
Automating the Impossible: End to End Team Development for ISVs (October 14, ...Automating the Impossible: End to End Team Development for ISVs (October 14, ...
Automating the Impossible: End to End Team Development for ISVs (October 14, ...
 
Introduction to Enterprise-Release Engineering on the Salesforce Platform
Introduction to Enterprise-Release Engineering on the Salesforce PlatformIntroduction to Enterprise-Release Engineering on the Salesforce Platform
Introduction to Enterprise-Release Engineering on the Salesforce Platform
 
5 Essentials for Simplifiied Release Management and Continuous Delivery
5 Essentials for Simplifiied Release Management and Continuous Delivery5 Essentials for Simplifiied Release Management and Continuous Delivery
5 Essentials for Simplifiied Release Management and Continuous Delivery
 
Salesforce Release Management and Continuous Integration with AutoRABIT
Salesforce Release Management and Continuous Integration with AutoRABITSalesforce Release Management and Continuous Integration with AutoRABIT
Salesforce Release Management and Continuous Integration with AutoRABIT
 
Automating Deployment Between Orgs Using Git & Continuous Integration
Automating Deployment Between Orgs Using Git & Continuous IntegrationAutomating Deployment Between Orgs Using Git & Continuous Integration
Automating Deployment Between Orgs Using Git & Continuous Integration
 
Best Practices for Successful Deployment
Best Practices for Successful DeploymentBest Practices for Successful Deployment
Best Practices for Successful Deployment
 
Continuous Integration In The Cloud Final (1)
Continuous Integration In The Cloud Final (1)Continuous Integration In The Cloud Final (1)
Continuous Integration In The Cloud Final (1)
 
CI-solutions-Versus-AutoRABIT
CI-solutions-Versus-AutoRABITCI-solutions-Versus-AutoRABIT
CI-solutions-Versus-AutoRABIT
 
Release Management for Large Enterprises
Release Management for Large EnterprisesRelease Management for Large Enterprises
Release Management for Large Enterprises
 
Scaling Continuous Integration for Puppet
Scaling Continuous Integration for PuppetScaling Continuous Integration for Puppet
Scaling Continuous Integration for Puppet
 
Release & Change management in salesforce
Release & Change management in salesforceRelease & Change management in salesforce
Release & Change management in salesforce
 
Upgrade automatically to Sitecore
Upgrade automatically to SitecoreUpgrade automatically to Sitecore
Upgrade automatically to Sitecore
 
The definitive guide to salesforce sandbox flosum
The definitive guide to salesforce sandbox flosumThe definitive guide to salesforce sandbox flosum
The definitive guide to salesforce sandbox flosum
 
Best practices for implementing CI/CD on Salesforce
Best practices for implementing CI/CD on SalesforceBest practices for implementing CI/CD on Salesforce
Best practices for implementing CI/CD on Salesforce
 
Continuous Integration for Salesforce1 Platform
Continuous Integration for Salesforce1 PlatformContinuous Integration for Salesforce1 Platform
Continuous Integration for Salesforce1 Platform
 
Continuous Integration and Testing with Branch Orgs
Continuous Integration and Testing with Branch OrgsContinuous Integration and Testing with Branch Orgs
Continuous Integration and Testing with Branch Orgs
 
Webinar: From Sandbox to Production: Demystifying Force.com Release Managemen...
Webinar: From Sandbox to Production: Demystifying Force.com Release Managemen...Webinar: From Sandbox to Production: Demystifying Force.com Release Managemen...
Webinar: From Sandbox to Production: Demystifying Force.com Release Managemen...
 
Salesforce API Series: Release Management with the Metadata API webinar
Salesforce API Series: Release Management with the Metadata API webinarSalesforce API Series: Release Management with the Metadata API webinar
Salesforce API Series: Release Management with the Metadata API webinar
 

Similaire à Team Development & Continuous Integration on the Salesforce Platform

CoC NA 2023 - Reproducible Builds for the JVM and beyond.pptx
CoC NA 2023 - Reproducible Builds for the JVM and beyond.pptxCoC NA 2023 - Reproducible Builds for the JVM and beyond.pptx
CoC NA 2023 - Reproducible Builds for the JVM and beyond.pptx
Hervé Boutemy
 
Apache maven, a software project management tool
Apache maven, a software project management toolApache maven, a software project management tool
Apache maven, a software project management tool
Renato Primavera
 

Similaire à Team Development & Continuous Integration on the Salesforce Platform (20)

Jbossworld Presentation
Jbossworld PresentationJbossworld Presentation
Jbossworld Presentation
 
Application versioning
Application versioningApplication versioning
Application versioning
 
Wonderful World of Maven
Wonderful World of MavenWonderful World of Maven
Wonderful World of Maven
 
IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...
IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...
IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...
 
Exploring Maven SVN GIT
Exploring Maven SVN GITExploring Maven SVN GIT
Exploring Maven SVN GIT
 
CoC NA 2023 - Reproducible Builds for the JVM and beyond.pptx
CoC NA 2023 - Reproducible Builds for the JVM and beyond.pptxCoC NA 2023 - Reproducible Builds for the JVM and beyond.pptx
CoC NA 2023 - Reproducible Builds for the JVM and beyond.pptx
 
BMO - Intelligent Projects with Maven
BMO - Intelligent Projects with MavenBMO - Intelligent Projects with Maven
BMO - Intelligent Projects with Maven
 
What's new in p2 (2009)?
What's new in p2 (2009)?What's new in p2 (2009)?
What's new in p2 (2009)?
 
Apache maven, a software project management tool
Apache maven, a software project management toolApache maven, a software project management tool
Apache maven, a software project management tool
 
Flash Camp Chennai - Build automation of Flex and AIR applications
Flash Camp Chennai - Build automation of Flex and AIR applicationsFlash Camp Chennai - Build automation of Flex and AIR applications
Flash Camp Chennai - Build automation of Flex and AIR applications
 
Azure DevOps for JavaScript Developers
Azure DevOps for JavaScript DevelopersAzure DevOps for JavaScript Developers
Azure DevOps for JavaScript Developers
 
Selenium-Browser-Based-Automated-Testing-for-Grails-Apps
Selenium-Browser-Based-Automated-Testing-for-Grails-AppsSelenium-Browser-Based-Automated-Testing-for-Grails-Apps
Selenium-Browser-Based-Automated-Testing-for-Grails-Apps
 
Maven 3 New Features
Maven 3 New FeaturesMaven 3 New Features
Maven 3 New Features
 
MuleSoft Nashik Virtual Meetup#4 - Implementing CI/CD pipeline for deploying ...
MuleSoft Nashik Virtual Meetup#4 - Implementing CI/CD pipeline for deploying ...MuleSoft Nashik Virtual Meetup#4 - Implementing CI/CD pipeline for deploying ...
MuleSoft Nashik Virtual Meetup#4 - Implementing CI/CD pipeline for deploying ...
 
Intelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest IstanbulIntelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest Istanbul
 
Develop FOSS project using Google Code Hosting
Develop FOSS project using Google Code HostingDevelop FOSS project using Google Code Hosting
Develop FOSS project using Google Code Hosting
 
Maven
MavenMaven
Maven
 
drone continuous Integration
drone continuous Integrationdrone continuous Integration
drone continuous Integration
 
Agile Software Development & Tools
Agile Software Development & ToolsAgile Software Development & Tools
Agile Software Development & Tools
 
Continuous Integration: How I stopped guessing if that merge was bad
Continuous Integration: How I stopped guessing if that merge was badContinuous Integration: How I stopped guessing if that merge was bad
Continuous Integration: How I stopped guessing if that merge was bad
 

Dernier

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Dernier (20)

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
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
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 

Team Development & Continuous Integration on the Salesforce Platform

  • 1. Salesforce.com Team Development Carlos Ramirez Martinez-Eiroa
  • 2. Index  Safe Harbor Statement  Team Development Basics  Continuous Integration  Demo  Non-packaged Development  Package Development  Non-packaged Gotchas  Package Gotchas  ANT Migration Tool  Resources  Q&A
  • 3. Safe Harbor Statement  We don’t have all the answers, but… it’s working!  Also, no need to take notes: http://www.soliantconsulting.com/blog/2013/03/salesforcecomforceco m-team-development
  • 5. Team Development Basics  Version Control (SVN, Git, ...)  Separate Development Environment for each Developer  Unit Testing (Salesforce provides JUnit-like framework)  Continuous Integration (Jenkins/Hudson, Bamboo, ...)
  • 6. Team Development Process 1. One developer commits all code to a new repo from a project connected to the sandbox (1st commit) 2. Other developers in the team check out the project 3. Developers update their local project at the beginning of the day 4. Developers commit code to, and update from, the repo one or more times a day Resource: http://www.soliantconsulting.com/blog/2013/03/working- forcecom-ide-and-subversion-svn
  • 7. Repo = Gospel Developer Org = Scratch Paper
  • 9. What does it do? 1. Pulls the code from the repo (from version control) on a scheduled basis 2. Runs all the automated tests 3. Deploys to a Test/UAT environment (ANT Migration Tool) 4. Notifies team (by email) if there was any issue
  • 10. Advantages  Developers don’t need to be running the tests manually every time they change code  There is no need to manually deploy to a test/UAT org for other stakeholders to see the status of the project  There is immediate feedback to the team if there is any issue with the code
  • 14. Scenario A: Non-Package Development  Shared Version Control Repository  One Developer Sandbox* per Developer  Possibly one Sandbox for internal testing  Definitely one Sandbox for UAT
  • 15. Why Developer Sandboxes?  If Developer Orgs are free, why do we need a Developer Sandbox for each developer?  because of 3rd party managed packages!  Usually Salesforce applications have managed packages installed, and references to these packages in Apex and/or VF.  Some packages cannot be installed in Developer Orgs because:  They are deprecated  They ask for credentials  Dev orgs are just not supported
  • 16. Main issue to address: Cost to purchase additional Developer Sandboxes Can we tell clients that this is a requirement*? *Only during development
  • 17. Scenario B: Package Development  Shared Version Control Repository  One Developer Org per Developer - connected to repo  One Partner Developer Org (20 accounts) for Testing/QA - connected to repo  One Developer Org for Packaging - connected to repo  Up to 4 different edition orgs for UAT - NOT connected to repo (deploy code as Managed Package)
  • 19. Scenario A: Non-Package Gotchas  All changes in production must be replicated in AT LEAST one developer Sandbox (they will be pulled from this one and add it to the repo)  Refresh Sandbox only AFTER all changes have been deployed
  • 20. Scenario B: Package Gotchas I  Do NOT create the package until the end - creating a package will add the namespace prefix to all classes, fields, objects, etc.  To avoid prefix issues (so that code can be deployed to multiple Developer Orgs):  Do not use any prefix in Apex code (apex code will work with or without prefix)  Use try-catch in Javascript calls from buttons (show)
  • 21. Scenario B: Package Gotchas II  Use try/catch in webservice calls (same as in JavaScript) Calls to methods annotated with @webservice from either JavaScript or from an external application need to use the prefix.  To call Apex code from JavaScript in a VF page you can user $RemoteAction (will automatically resolve the namespace)
  • 22. Namespace Prefix Substitution Some of the issues mentioned above can be automatically handled by this project: github.com/jordanbaucke/sfdc-namespace-prefix Glorified search and replace. Bamboo runs this script after checking out the code from the repository, but before deploying it to the packaging org.
  • 24. Ant Migration Tool  Used by Jenkins or Bamboo  Can be used from Force.com IDE, MavensMate, Command Line, ...  Extension to Ant  Allows you to automate deployment, running tests, ...
  • 25. Ant Migration Tool Config Build.xml Build.properties
  • 27.  Blog post: soliantconsulting.com/blog/2013/03/salesforcecomforcecom-team- development  LinkedIn discussion: linkedin.com/groupAnswers?viewQuestionAndAnswers=&discussionI D=221804807&gid=142613  SVN: subversion.apache.org  Git: git-scm.com  Jenkins: jenkins-ci.org  Bamboo: atlassian.com/software/bamboo
  • 29. Q&A

Notes de l'éditeur

  1. 1. Artie makes a change (see change in Artie's dev org) 2. Artie commits the change 3. Run Bamboo build 4. Carlos updates SVN 5. See change in Carlos' dev org 6. See change in Test/UAT org