Using CircleCI for Salesforce - Part 2

In this post we conclude the setting up of CircleCI for Salesforce.

Overview

The diagram below highlights how the different components are connected to enable the workflow described in part 1.

CI Overview

Force.com Migration Tool

The force.com migration tool is a Ant based utility that essentially allows us to automate the process of fetching components from one org and deploy to a target org. For more details check out the official documentation.

Package.xml

Defines which components to retrieve from a particular org or deploy to a particular org. For more information check out the official documentation.

Circle.yml

Since our app is not a standard web app, we need to tell CircleCI how to build our app i.e. how to run the migration tool so that the build process is kicked off. That is the purpose of this yml file. Below is an example

test:
  override:
    - ant -f build/build.xml -lib build/lib/ test:
        timeout: 600

Environment Variables

Since we are deploying to a another org, we need a mechanism for storing the login credentials for the target org. You can reference environment variables in the build.xml using the syntax below.

<sf:deploy username="${env.username}" password="${env.password}" serverurl="${env.serverurl}"

Below is a screenshot of the corresponding environment variables in CircleCI.

Environment Variables in CircleCI

Show Comments

Get the latest posts delivered right to your inbox.