Install Your Customized Project in Production



The time estimate for completing the steps in this unit is just an estimate. Your own installation might take longer, depending on your system configuration and network speed.

Learning Objectives

  • Connect CumulusCI to the org where you’ll install the customizations.
  • Install your customizations in a production org.

Maddie now has a repository that contains all of the metadata and automation needed to set up her food bank org. So how does she actually get it into her production org?

Once again, CumulusCI to the rescue! In addition to running flows in scratch orgs, CumulusCI can connect to persistent orgs—such as a sandbox or production org—and run flows there. This makes it possible to take the same flow that’s been tested in a QA scratch org and deploy it to a sandbox for final testing before taking it live in a production org for all users.

Connect CumulusCI to a Persistent Org

Like Tasha did when she was testing the new Food Bank package in CumulusCI for Managed Packages, Maddie needs to connect CumulusCI to a persistent org. It’s best practice to test out a new package in a sandbox first, but for this example we’ll skip ahead to Maddie connecting to her production org. 

After you’ve read through these steps, continue to the Hands-On Challenge below to try it out.  Maddie is connecting CumulusCI to her production org. In the Hands-On Challenge, you’ll be connecting CumulusCI to your Trailhead Playground.

  1. In GitHub Desktop, make sure Current Repository is set to Food-Bank-Implementation
  2. Open this repository by choosing Repository→Open in Visual Studio Code.
  3. Connect CumulusCI to the production org by typing this command: cci org connect production
  4. This will open the Salesforce login page, Maddie enters the username and password for her org and finishes logging in.
  5. Click the Allow button to authorize CumulusCI to connect to your org.
  6. She knows she’s successful when she sees a blank page with the message “Congratulations! Your authentication succeeded.”
  7. Maddie returns to the VS Code Terminal and types in this command: cci org list

She’ll see her production org in the list of Connected Orgs.

Deploy to a Persistent Org

Now that CumulusCI is connected to her production org, Maddie runs the dev_org flow to deploy the Food-Bank-Implementation project to it.

Maddie follows the steps below.

  1. In GitHub Desktop, make sure Current Repository is set to Food-Bank-Implementation
  2. Open this repository by choosing Repository→Open in Visual Studio Code.
  3. Install the customizations included in the Food-Bank-Implementation repository. In the VS Code Terminal, type in this command: cci flow run dev_org --org production

Maddie is now ready to use Salesforce to track Hunger Northeast’s donors, food deliveries, and report to funders about the organization’s use of local food! Gone are the days of clipboards, sticky notes, and stacks of paper to sift through every time Maddie and her colleagues need to illustrate their impact to donors and their board of directors.

Together, Maddie, Tasha, and Isabel have started an open source project for food banks. This is the beginning of something that will gather contributions from many other food banks and help dozens, hundreds, or even thousands of food security organizations all over the world.

You may not have the same mission as Tasha, Maddie, and Isabel, but with your passion and your new knowledge of CumulusCI, you’ll be able to apply these concepts and tools to your own open source project. A new world of collaboration is now open to you—how will you use it?

Tasha, Maddia, and Isabel sit at the picnic table enjoying eating ice cream.