How to set up Continuous Integration for Salesforce.com

This beginners tutorial will take you through all the steps you need to perform to set up source control and release management for your Salesforce.com instance with Atlassian Stash and Bamboo.

Up until now, many Salesforce.com partners approach development in a way which means that different versions of code are deployed in different Sandboxes, and changes are made manually between environments using change sets or Eclipse.

Whilst appropriate in certain implementations, this method of managing code often becomes labour intensive when dealing with multiple new features, an expanding code base and changing staff etc. ‘Continuous Integration’ can change all that by creating a central repository for code and automating deployments between environments. It significantly improves the ability to track, remove, merge and deploy changes.

This guide will take you through setting up Source Code and Automated Release Management for Salesforce.com using Atlassian’s Continuous Integration toolset for a sample delivery methodology. This guide does not include any information on Automated Testing.

Continuous Integration Methodology

In this tutorial we will set up a methodology that will work as follows:

  1. Developers will write/test new features in their own developer org (marked DEV below);
  2. When ready the developers will commit new features into Source Control (Stash);
  3. Release management (Bamboo) will automatically build any new features to a CI environment;
  4. Release management (Bamboo) will be used to manually build to UAT and LIVE.

Here is a diagram that shows this model:

CI Tutorial - New Page (1)

 

This guide contains all the information and tutorials you need to set this process up, including instructions on how to set up Bamboo and Stash on Amazon Web Services.

Pre-requisites

This tutorial requires the below pre-requisites both on your machine, and available to you online:

Installed on your local machine

Available to you, with admin rights

  • 1x LIVE instance of Salesforce.com;
  • 3x Sandbox instances of Salesforce.com;
  • For Source Control Repository you have Stash installed and running on the cloud;
  • For Deployment Management, you have Bamboo installed and running on the cloud.

Steps

Setting up Bamboo / Stash

1 – How to set up Atlassian Stash on Amazon EC2 in 15 minutes;

2 – How to set up Atlassian Bamboo on Amazon EC2 in 15 minutes.

Working with Stash and committing Salesforce changes

3 – Setting up Eclipse, and making your first commit to Stash;

4 – Commit your Salesforce.com code base to Stash;

5Developing new features and committing them to Stash;

Automating Deployments using Bamboo

6 – Setting up the pre-requisites for Bamboo to execute Salesforce deployments;

7 – Set up and run your first Bamboo job;

8 – Resolving Salesforce Metadata Deployment Issues;

Further Information

9 – Ideas / hints / tips for advanced use of Stash / Bamboo;

10 – Branching strategies for Salesforce.com development.

 

Notes and Further Links

You may also like...

Seo wordpress plugin by www.seowizard.org.