SlideShare a Scribd company logo
Automate the
Development
Lifecycle with
CumulusCI
Kitchener, CA Developer Group
Speaker
Date
Venue/Link
David Reed
April 9th, 2020 @ 3:00 PM EST
https://meet.google.com/gog-myop-ige
Meeting Sponsor
Who Am I? Salesforce Technical Architect
Appirio Inc., a Wipro Company
Salesforce Lightning Champion
www.sudipta-deb.in
10x Salesforce Certified Application Architect
Group Leader of Kitchener, CA Developer Group
434 Badges
@sudipta_1984
Automate the App Lifecycle
with CumulusCI
@aoristdual | d.reed@salesforce.com
David Reed, Senior Member of Technical Staff,
Release Engineering | Salesforce.org
David Reed
Senior Member of Technical Staff,
Release Engineering
Salesforce.org
Forward-Looking Statement
Statement under the Private Securities Litigation Reform Act of 1995:
This presentation contains forward-looking statements about the company’s financial and operating results, which may include expected GAAP and non-GAAP financial and other
operating and non-operating results, including revenue, net income, diluted earnings per share, operating cash flow growth, operating margin improvement, expected revenue growth,
expected current remaining performance obligation growth, expected tax rates, the one-time accounting non-cash charge that was incurred in connection with the Salesforce.org
combination; stock-based compensation expenses, amortization of purchased intangibles, shares outstanding, market growth and sustainability goals. The achievement or success of
the matters covered by such forward-looking statements involves risks, uncertainties and assumptions. If any such risks or uncertainties materialize or if any of the assumptions prove
incorrect, the company’s results could differ materially from the results expressed or implied by the forward-looking statements we make.
The risks and uncertainties referred to above include -- but are not limited to -- risks associated with the effect of general economic and market conditions; the impact of geopolitical
events; the impact of foreign currency exchange rate and interest rate fluctuations on our results; our business strategy and our plan to build our business, including our strategy to be
the leading provider of enterprise cloud computing applications and platforms; the pace of change and innovation in enterprise cloud computing services; the seasonal nature of our
sales cycles; the competitive nature of the market in which we participate; our international expansion strategy; the demands on our personnel and infrastructure resulting from significant
growth in our customer base and operations, including as a result of acquisitions; our service performance and security, including the resources and costs required to avoid unanticipated
downtime and prevent, detect and remediate potential security breaches; the expenses associated with new data centers and third-party infrastructure providers; additional data center
capacity; real estate and office facilities space; our operating results and cash flows; new services and product features, including any efforts to expand our services beyond the CRM
market; our strategy of acquiring or making investments in complementary businesses, joint ventures, services, technologies and intellectual property rights; the performance and fair
value of our investments in complementary businesses through our strategic investment portfolio; our ability to realize the benefits from strategic partnerships, joint ventures and
investments; the impact of future gains or losses from our strategic investment portfolio, including gains or losses from overall market conditions that may affect the publicly traded
companies within the company's strategic investment portfolio; our ability to execute our business plans; our ability to successfully integrate acquired businesses and technologies,
including delays related to the integration of Tableau due to regulatory review by the United Kingdom Competition and Markets Authority; our ability to continue to grow unearned
revenue and remaining performance obligation; our ability to protect our intellectual property rights; our ability to develop our brands; our reliance on third-party hardware, software and
platform providers; our dependency on the development and maintenance of the infrastructure of the Internet; the
effect of evolving domestic and foreign government regulations, including those related to the provision of services on the Internet, those related to accessing the Internet, and those
addressing data privacy, cross-border data transfers and import and export controls; the valuation of our deferred tax assets and the release of related valuation allowances; the
potential availability of additional tax assets in the future; the impact of new accounting pronouncements and tax laws; uncertainties affecting our ability to estimate our tax
rate; the impact of expensing stock options and other equity awards; the sufficiency of our capital resources; factors related to our outstanding debt, revolving credit facility, term loan and
loan associated with 50 Fremont; compliance with our debt covenants and lease obligations; current and potential litigation involving us; and the impact of climate change.
Further information on these and other factors that could affect the company’s financial results is included in the reports on Forms 10-K, 10-Q and 8-K and in other filings it makes with
the Securities and Exchange Commission from time to time. These documents are available on the SEC Filings section of the Investor Information section of the company’s website at
www.salesforce.com/investor.
Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements, except as required by law.
Agenda
The trail to production and the org problem
The Salesforce.org solution: portable automation with CumulusCI
Live demo
Metecho: Portable automation for admins
Completing the picture with MetaCI and MetaDeploy
Takeaways
Let’s Get Cost Out of the Way
CumulusCI, MetaCI, Metecho, and MetaDeploy are 100% free and open source.
Salesforce licenses and server infrastructure do cost money.
• You’ll still pay Heroku, CircleCI, Jenkins, et al.
for infrastructure if you wish to use continuous integration
This is not a sales pitch
Support the Salesforce
open source community!
Footer
The Trail to Production
Exploring the app lifecycle
The trail to production
Develop
Feature
Tests
Merge Deploy
Integrati-
on / UAT
Test
Developers
Admins Testers
Testers
End Users
End Users
Demos
Support
CI System
Where do these participants do their work?
Continuous integration must be automated.
Most CI systems do very similar steps:
• Create a Salesforce org.
• Configure the Salesforce org to meet the needs
of the application.
• Deploy the application.
• Execute tests (Apex unit tests, Jest tests, Robot
browser tests…)
• Report results
In many organizations, these steps are so
complex that they end up using a single,
persistent org.
Developers, admins, testers, support, product
managers, and other stakeholders usually
must create environments manually.
Each user has to:
• Create a Salesforce org.
• Configure the Salesforce org to meet the needs
of the application.
• Deploy the application.
In many organizations, these steps are so
expensive that users must make do with
shared, out-of-date, or inconsistent sandboxes.
Building new orgs is hard.
• Traditional tools only do metadata setup.
• What about configuration? Data? Dependency management?
• What about multiple org shapes for different roles?
• CI automation is usually not “portable” (CI only).
Managing persistent orgs’ state is hard.
• Challenging to fully synchronize with source control
• Weak change management
• Users conflicting with one another
All of these roles and systems need Salesforce orgs to work in.
The org problem
Developers
Admins
App Builders
Testers
End Users
Demos
Support
CI System
Some consequences of the org problem
Loss of velocity
• Teams can’t work at capacity because of poor infrastructure
Loss of confidence
• Test results aren’t reliable without repeatable setup
Difficulty implementing modern best practices
• Source control
• Salesforce DX
Limited alternatives
• Automation solutions are too limited, too expensive, or require specialization.
The Salesforce.org Solution:
Portable Automation with
CumulusCI
Portable automation for every role,
everywhere on the trail
Basic framework
Version control as
source of truth.
Salesforce DX scratch
orgs as location of work.
CumulusCI as the
automation engine.
% cci
Same automation, many contexts
Metecho
Command line tool
for developers
Web UI for
continuous
integration
cci MetaCI
Web UI for admins
& app builders
(forthcoming)
Sophisticated
customer delivery
solutions
MetaDeploy
CumulusCI Portable Automation
What CumulusCI does
Builds orgs based on repeatable recipes
• Dependency management
• Package or application installation
• Metadata deployment to tailor org
• Configuration of settings
• Data seeding
• Any task achievable with the Salesforce API
CumulusCI makes it easy to define fully-realized scratch orgs for
each of your roles.
What CumulusCI does
Provides tools for each role to use in their orgs
• Run tests (Apex, Jest, Robot browser and API automation)
• Develop and deploy code and metadata
• Load, modify, and capture data sets
CumulusCI makes it easy for developers, admins, and testers to
do their work and collaborate in version control.
What CumulusCI does
Provides tools to orchestrate the entire development process
• Run continuous integration builds
• Execute Apex, Jest, and Robot Framework browser tests
• Automate parent-child branch merges (CumulusCI Flow)
• Upload and test beta managed packages automatically
• Upload and test managed releases
Continuous integration server recommended but not required:
you can run the entire development process from your local
machine.
Flows and tasks
CumulusCI comes with dozens of built-in
tasks and predefined flows.
Tasks and flows are configurable in simple
text markup.
New capabilities can be added in Python.
Composable building blocks for automation
Install Managed PackagesAutomatically Resolve
Dependencies
Deploy MetadataRun Apex and Jest
Unit Tests
Run Robot Framework
Browser Automation
Seed Org with DataRun Anonymous ApexCapture ChangesRelease Package VersionsMuch More
Customize flows and tasks in version control
cumulusci.yml lives in the repository alongside code
Hands-On Demonstration
The trail to production
Develop
Feature
Tests
Integrate Deploy
Integration
/ UAT Test
dev_org
qa_org
install_beta
regression_org
release_production
ci_release
install_prodci_feature
ci_master
Outcomes of solving the org problem
Increased velocity
• Portable automation means no org blockers or infrastructure dependencies
Increased confidence
• Rely on orgs always being configured exactly as you expect
Modern best practices not just baked-in, but enabled
• Source control
• Salesforce DX
Users get access to holistic environments that encourage collaboration
• CumulusCI makes it easy to capture and share work.
Metecho:
Portable Automation for Admins
No command line? No problem.
Metecho is not yet released.
Functionality may change before release.
Μετέχω: “I share”, Ancient Greek
Metecho
Manage projects and tasks in your repositories
Metecho
Create scratch orgs, capture work into Git with the push of a button
Metecho Integrates with Git and Developers
Bring declarative work fully into your development lifecycle via Portable Automation
Hands-On Demonstration
Metecho is not yet released.
Functionality may change before release.
Completing the Picture
with MetaCI and MetaDeploy
Applying portable automation to continuous integration
and customer delivery
MetaCI
Orchestrate development workflow.
Easily define plans that run CumulusCI automation on specific branches and tags.
Status reported to GitHub for process insights.
Track releases and automatically generate release notes in GitHub.
Continuous integration for Salesforce projects
MetaCI
Create scratch orgs using CumulusCI automation through a web UI.
Support declarative users with web UI
Prefer to bring your own CI?
MetaCI makes it easy to map CumulusCI automation to your GitHub branches and tags and
implement CumulusCI Flow.
CumulusCI works great in other CI systems too.
Use CumulusCI as your build tool in CircleCI, Jenkins, Travis, GitHub Actions, GitLab Pipelines,
or whatever you prefer. Even on-premises!
No lock-in
MetaDeploy
Customer delivery with portable automation
MetaDeploy
Smart, product-oriented installers create a great customer experience
CumulusCI makes sharing and
collaboration easy — in one organization,
across organizations, between roles, and
in the open source community.
Automate the development lifecycle with cumulus ci on april 9th, 2020
Build Applications with CumulusCI:
https://trailhead.salesforce.com/en/content/learn/trails/build-applications-with-cumulusci
Now available on Trailhead!
CumulusCI Documentation: cumulusci.readthedocs.io
CumulusCI on the Trailblazer Community:
https://success.salesforce.com/_ui/core/chatter/groups/GroupProfilePage?g=0F9300000009M9Z
CumulusCI Open Source Project: github.com/SFDO-Tooling/CumulusCI
Salesforce.org Products and the Open Source Commons
• github.com/SalesforceFoundation/NPSP
• github.com/SalesforceFoundation/EDA
• github.com/SFDO-Community
Resources
Ad

More Related Content

What's hot (20)

Linux network file system (nfs)
Linux   network file system (nfs)Linux   network file system (nfs)
Linux network file system (nfs)
Raghu nath
 
An introduction to SOC (Security Operation Center)
An introduction to SOC (Security Operation Center)An introduction to SOC (Security Operation Center)
An introduction to SOC (Security Operation Center)
Ahmad Haghighi
 
DTS Solution - Building a SOC (Security Operations Center)
DTS Solution - Building a SOC (Security Operations Center)DTS Solution - Building a SOC (Security Operations Center)
DTS Solution - Building a SOC (Security Operations Center)
Shah Sheikh
 
SOC presentation- Building a Security Operations Center
SOC presentation- Building a Security Operations CenterSOC presentation- Building a Security Operations Center
SOC presentation- Building a Security Operations Center
Michael Nickle
 
Cybersecurity Frameworks and You: The Perfect Match
Cybersecurity Frameworks and You: The Perfect MatchCybersecurity Frameworks and You: The Perfect Match
Cybersecurity Frameworks and You: The Perfect Match
McKonly & Asbury, LLP
 
Logging and observability
Logging and observabilityLogging and observability
Logging and observability
Anton Drukh
 
Low level design template (1)
Low level design template (1)Low level design template (1)
Low level design template (1)
anosha jamshed
 
Penetration Testing Basics
Penetration Testing BasicsPenetration Testing Basics
Penetration Testing Basics
Rick Wanner
 
OWASP Top Ten in Practice
OWASP Top Ten in PracticeOWASP Top Ten in Practice
OWASP Top Ten in Practice
Security Innovation
 
Threat Hunting Web Shells Using Splunk
Threat Hunting Web Shells Using SplunkThreat Hunting Web Shells Using Splunk
Threat Hunting Web Shells Using Splunk
jamesmbower
 
AWS BaseCamp: AWS Architecture Fundamentals
AWS BaseCamp: AWS  Architecture FundamentalsAWS BaseCamp: AWS  Architecture Fundamentals
AWS BaseCamp: AWS Architecture Fundamentals
Nicole Maus
 
Security Operation Center Fundamental
Security Operation Center FundamentalSecurity Operation Center Fundamental
Security Operation Center Fundamental
Amir Hossein Zargaran
 
Information Security Blueprint
Information Security BlueprintInformation Security Blueprint
Information Security Blueprint
Zefren Edior
 
Introduction to DevOps slides.pdf
Introduction to DevOps slides.pdfIntroduction to DevOps slides.pdf
Introduction to DevOps slides.pdf
BoreVishnusai
 
Active directory
Active directory Active directory
Active directory
deshvikas
 
Devops ppt copy
Devops ppt   copyDevops ppt   copy
Devops ppt copy
saigowsi
 
Introduction To Vulnerability Assessment & Penetration Testing
Introduction To Vulnerability Assessment & Penetration TestingIntroduction To Vulnerability Assessment & Penetration Testing
Introduction To Vulnerability Assessment & Penetration Testing
Raghav Bisht
 
Burpsuite 101
Burpsuite 101Burpsuite 101
Burpsuite 101
n|u - The Open Security Community
 
DevSecOps: Taking a DevOps Approach to Security
DevSecOps: Taking a DevOps Approach to SecurityDevSecOps: Taking a DevOps Approach to Security
DevSecOps: Taking a DevOps Approach to Security
Alert Logic
 
DevOps Presentation.pptx
DevOps Presentation.pptxDevOps Presentation.pptx
DevOps Presentation.pptx
Abdullah al Mamun
 
Linux network file system (nfs)
Linux   network file system (nfs)Linux   network file system (nfs)
Linux network file system (nfs)
Raghu nath
 
An introduction to SOC (Security Operation Center)
An introduction to SOC (Security Operation Center)An introduction to SOC (Security Operation Center)
An introduction to SOC (Security Operation Center)
Ahmad Haghighi
 
DTS Solution - Building a SOC (Security Operations Center)
DTS Solution - Building a SOC (Security Operations Center)DTS Solution - Building a SOC (Security Operations Center)
DTS Solution - Building a SOC (Security Operations Center)
Shah Sheikh
 
SOC presentation- Building a Security Operations Center
SOC presentation- Building a Security Operations CenterSOC presentation- Building a Security Operations Center
SOC presentation- Building a Security Operations Center
Michael Nickle
 
Cybersecurity Frameworks and You: The Perfect Match
Cybersecurity Frameworks and You: The Perfect MatchCybersecurity Frameworks and You: The Perfect Match
Cybersecurity Frameworks and You: The Perfect Match
McKonly & Asbury, LLP
 
Logging and observability
Logging and observabilityLogging and observability
Logging and observability
Anton Drukh
 
Low level design template (1)
Low level design template (1)Low level design template (1)
Low level design template (1)
anosha jamshed
 
Penetration Testing Basics
Penetration Testing BasicsPenetration Testing Basics
Penetration Testing Basics
Rick Wanner
 
Threat Hunting Web Shells Using Splunk
Threat Hunting Web Shells Using SplunkThreat Hunting Web Shells Using Splunk
Threat Hunting Web Shells Using Splunk
jamesmbower
 
AWS BaseCamp: AWS Architecture Fundamentals
AWS BaseCamp: AWS  Architecture FundamentalsAWS BaseCamp: AWS  Architecture Fundamentals
AWS BaseCamp: AWS Architecture Fundamentals
Nicole Maus
 
Security Operation Center Fundamental
Security Operation Center FundamentalSecurity Operation Center Fundamental
Security Operation Center Fundamental
Amir Hossein Zargaran
 
Information Security Blueprint
Information Security BlueprintInformation Security Blueprint
Information Security Blueprint
Zefren Edior
 
Introduction to DevOps slides.pdf
Introduction to DevOps slides.pdfIntroduction to DevOps slides.pdf
Introduction to DevOps slides.pdf
BoreVishnusai
 
Active directory
Active directory Active directory
Active directory
deshvikas
 
Devops ppt copy
Devops ppt   copyDevops ppt   copy
Devops ppt copy
saigowsi
 
Introduction To Vulnerability Assessment & Penetration Testing
Introduction To Vulnerability Assessment & Penetration TestingIntroduction To Vulnerability Assessment & Penetration Testing
Introduction To Vulnerability Assessment & Penetration Testing
Raghav Bisht
 
DevSecOps: Taking a DevOps Approach to Security
DevSecOps: Taking a DevOps Approach to SecurityDevSecOps: Taking a DevOps Approach to Security
DevSecOps: Taking a DevOps Approach to Security
Alert Logic
 

Similar to Automate the development lifecycle with cumulus ci on april 9th, 2020 (20)

MuleSoft Composer - OKC Oklahoma City MuleSoft Meetup 11/11/21
MuleSoft Composer - OKC Oklahoma City MuleSoft Meetup 11/11/21MuleSoft Composer - OKC Oklahoma City MuleSoft Meetup 11/11/21
MuleSoft Composer - OKC Oklahoma City MuleSoft Meetup 11/11/21
DianeKesler2
 
Local development with Open Source Base Components
Local development with Open Source Base ComponentsLocal development with Open Source Base Components
Local development with Open Source Base Components
Salesforce Developers
 
Orchestrator and Flow in Slack: Antoine Cabot - Jacksonville Architects - Sal...
Orchestrator and Flow in Slack: Antoine Cabot - Jacksonville Architects - Sal...Orchestrator and Flow in Slack: Antoine Cabot - Jacksonville Architects - Sal...
Orchestrator and Flow in Slack: Antoine Cabot - Jacksonville Architects - Sal...
A. Engin Utkan
 
Sample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce DevelopersSample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce Developers
Salesforce Developers
 
Composer Overview Meetup.pdf
Composer Overview Meetup.pdfComposer Overview Meetup.pdf
Composer Overview Meetup.pdf
Jimmy Attia
 
TDX Global Gathering - Wellington UG
TDX Global Gathering - Wellington UGTDX Global Gathering - Wellington UG
TDX Global Gathering - Wellington UG
Stephan Chandler-Garcia
 
Bangkok Admin Group TrailheaDX 2020 Global Gathering v2
Bangkok Admin Group TrailheaDX 2020 Global Gathering v2Bangkok Admin Group TrailheaDX 2020 Global Gathering v2
Bangkok Admin Group TrailheaDX 2020 Global Gathering v2
Jihun Jung
 
Intro to Tableau - SL Dev Group.pdf
Intro to Tableau - SL Dev Group.pdfIntro to Tableau - SL Dev Group.pdf
Intro to Tableau - SL Dev Group.pdf
Salesforce.com Developer Community
 
London Salesforce Developers TDX 20 Global Gathering
London Salesforce Developers TDX 20 Global GatheringLondon Salesforce Developers TDX 20 Global Gathering
London Salesforce Developers TDX 20 Global Gathering
Keir Bowden
 
DevOps 101
DevOps 101DevOps 101
DevOps 101
Sudipta Deb ☁
 
TrailheadX Presentation - 2020 Cluj
TrailheadX Presentation -  2020 ClujTrailheadX Presentation -  2020 Cluj
TrailheadX Presentation - 2020 Cluj
Arpad Komaromi
 
Austin Developers - New Lighting Web Component Features & #TDX22 Updates
Austin Developers - New Lighting Web Component Features & #TDX22 UpdatesAustin Developers - New Lighting Web Component Features & #TDX22 Updates
Austin Developers - New Lighting Web Component Features & #TDX22 Updates
NadinaLisbon1
 
#ImpactSalesforceSaturday: Prepare for Salesforce Certified Heroku Architectu...
#ImpactSalesforceSaturday: Prepare for Salesforce Certified Heroku Architectu...#ImpactSalesforceSaturday: Prepare for Salesforce Certified Heroku Architectu...
#ImpactSalesforceSaturday: Prepare for Salesforce Certified Heroku Architectu...
New Delhi Salesforce Developer Group
 
Letterkenny TrailheaDX 2020 Global Gathering
Letterkenny TrailheaDX 2020 Global GatheringLetterkenny TrailheaDX 2020 Global Gathering
Letterkenny TrailheaDX 2020 Global Gathering
Nishant Singh Panwar
 
[Madrid-Meetup April 22] UAPIM.pptx
[Madrid-Meetup April 22] UAPIM.pptx[Madrid-Meetup April 22] UAPIM.pptx
[Madrid-Meetup April 22] UAPIM.pptx
jorgelebrato
 
Lightning Components 101: An Apex Developer's Guide
Lightning Components 101: An Apex Developer's GuideLightning Components 101: An Apex Developer's Guide
Lightning Components 101: An Apex Developer's Guide
Adam Olshansky
 
Mulesoft RPA & The Last Mile Problem (Dreamforce 22 ) | MuleSoft Mysore Meetu...
Mulesoft RPA & The Last Mile Problem (Dreamforce 22 ) | MuleSoft Mysore Meetu...Mulesoft RPA & The Last Mile Problem (Dreamforce 22 ) | MuleSoft Mysore Meetu...
Mulesoft RPA & The Last Mile Problem (Dreamforce 22 ) | MuleSoft Mysore Meetu...
MysoreMuleSoftMeetup
 
Turbocharging AppExchange
Turbocharging AppExchangeTurbocharging AppExchange
Turbocharging AppExchange
dreamforce2006
 
MuleSoft Composer - 09122021 - Virtual Muleys
MuleSoft Composer - 09122021 - Virtual Muleys MuleSoft Composer - 09122021 - Virtual Muleys
MuleSoft Composer - 09122021 - Virtual Muleys
Angel Alberici
 
Nonprofit User Group.pdf
Nonprofit User Group.pdfNonprofit User Group.pdf
Nonprofit User Group.pdf
MarianaLemus7
 
MuleSoft Composer - OKC Oklahoma City MuleSoft Meetup 11/11/21
MuleSoft Composer - OKC Oklahoma City MuleSoft Meetup 11/11/21MuleSoft Composer - OKC Oklahoma City MuleSoft Meetup 11/11/21
MuleSoft Composer - OKC Oklahoma City MuleSoft Meetup 11/11/21
DianeKesler2
 
Local development with Open Source Base Components
Local development with Open Source Base ComponentsLocal development with Open Source Base Components
Local development with Open Source Base Components
Salesforce Developers
 
Orchestrator and Flow in Slack: Antoine Cabot - Jacksonville Architects - Sal...
Orchestrator and Flow in Slack: Antoine Cabot - Jacksonville Architects - Sal...Orchestrator and Flow in Slack: Antoine Cabot - Jacksonville Architects - Sal...
Orchestrator and Flow in Slack: Antoine Cabot - Jacksonville Architects - Sal...
A. Engin Utkan
 
Sample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce DevelopersSample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce Developers
Salesforce Developers
 
Composer Overview Meetup.pdf
Composer Overview Meetup.pdfComposer Overview Meetup.pdf
Composer Overview Meetup.pdf
Jimmy Attia
 
Bangkok Admin Group TrailheaDX 2020 Global Gathering v2
Bangkok Admin Group TrailheaDX 2020 Global Gathering v2Bangkok Admin Group TrailheaDX 2020 Global Gathering v2
Bangkok Admin Group TrailheaDX 2020 Global Gathering v2
Jihun Jung
 
London Salesforce Developers TDX 20 Global Gathering
London Salesforce Developers TDX 20 Global GatheringLondon Salesforce Developers TDX 20 Global Gathering
London Salesforce Developers TDX 20 Global Gathering
Keir Bowden
 
TrailheadX Presentation - 2020 Cluj
TrailheadX Presentation -  2020 ClujTrailheadX Presentation -  2020 Cluj
TrailheadX Presentation - 2020 Cluj
Arpad Komaromi
 
Austin Developers - New Lighting Web Component Features & #TDX22 Updates
Austin Developers - New Lighting Web Component Features & #TDX22 UpdatesAustin Developers - New Lighting Web Component Features & #TDX22 Updates
Austin Developers - New Lighting Web Component Features & #TDX22 Updates
NadinaLisbon1
 
#ImpactSalesforceSaturday: Prepare for Salesforce Certified Heroku Architectu...
#ImpactSalesforceSaturday: Prepare for Salesforce Certified Heroku Architectu...#ImpactSalesforceSaturday: Prepare for Salesforce Certified Heroku Architectu...
#ImpactSalesforceSaturday: Prepare for Salesforce Certified Heroku Architectu...
New Delhi Salesforce Developer Group
 
Letterkenny TrailheaDX 2020 Global Gathering
Letterkenny TrailheaDX 2020 Global GatheringLetterkenny TrailheaDX 2020 Global Gathering
Letterkenny TrailheaDX 2020 Global Gathering
Nishant Singh Panwar
 
[Madrid-Meetup April 22] UAPIM.pptx
[Madrid-Meetup April 22] UAPIM.pptx[Madrid-Meetup April 22] UAPIM.pptx
[Madrid-Meetup April 22] UAPIM.pptx
jorgelebrato
 
Lightning Components 101: An Apex Developer's Guide
Lightning Components 101: An Apex Developer's GuideLightning Components 101: An Apex Developer's Guide
Lightning Components 101: An Apex Developer's Guide
Adam Olshansky
 
Mulesoft RPA & The Last Mile Problem (Dreamforce 22 ) | MuleSoft Mysore Meetu...
Mulesoft RPA & The Last Mile Problem (Dreamforce 22 ) | MuleSoft Mysore Meetu...Mulesoft RPA & The Last Mile Problem (Dreamforce 22 ) | MuleSoft Mysore Meetu...
Mulesoft RPA & The Last Mile Problem (Dreamforce 22 ) | MuleSoft Mysore Meetu...
MysoreMuleSoftMeetup
 
Turbocharging AppExchange
Turbocharging AppExchangeTurbocharging AppExchange
Turbocharging AppExchange
dreamforce2006
 
MuleSoft Composer - 09122021 - Virtual Muleys
MuleSoft Composer - 09122021 - Virtual Muleys MuleSoft Composer - 09122021 - Virtual Muleys
MuleSoft Composer - 09122021 - Virtual Muleys
Angel Alberici
 
Nonprofit User Group.pdf
Nonprofit User Group.pdfNonprofit User Group.pdf
Nonprofit User Group.pdf
MarianaLemus7
 
Ad

More from Sudipta Deb ☁ (15)

Kitchener Canada Developer Group Event: From Admin to Certified Technical Arc...
Kitchener Canada Developer Group Event: From Admin to Certified Technical Arc...Kitchener Canada Developer Group Event: From Admin to Certified Technical Arc...
Kitchener Canada Developer Group Event: From Admin to Certified Technical Arc...
Sudipta Deb ☁
 
Kitchener Developer Group's session on "All about events"
Kitchener Developer Group's session on "All about events"Kitchener Developer Group's session on "All about events"
Kitchener Developer Group's session on "All about events"
Sudipta Deb ☁
 
Learn how Source Tracking can keep metadata changes in sync between your loca...
Learn how Source Tracking can keep metadata changes in sync between your loca...Learn how Source Tracking can keep metadata changes in sync between your loca...
Learn how Source Tracking can keep metadata changes in sync between your loca...
Sudipta Deb ☁
 
Orchestrate all of your salesforce automation with the trigger actions framework
Orchestrate all of your salesforce automation with the trigger actions frameworkOrchestrate all of your salesforce automation with the trigger actions framework
Orchestrate all of your salesforce automation with the trigger actions framework
Sudipta Deb ☁
 
Let's Learn About Heroku and How to Integrate with Salesforce
Let's Learn About Heroku and How to Integrate with SalesforceLet's Learn About Heroku and How to Integrate with Salesforce
Let's Learn About Heroku and How to Integrate with Salesforce
Sudipta Deb ☁
 
Using Styling Hooks to Customize Your LWC
Using Styling Hooks to Customize Your LWCUsing Styling Hooks to Customize Your LWC
Using Styling Hooks to Customize Your LWC
Sudipta Deb ☁
 
Shadow DOM, CSS and Styling Hooks in LWC what you need to know
Shadow DOM, CSS and Styling Hooks in LWC  what you need to knowShadow DOM, CSS and Styling Hooks in LWC  what you need to know
Shadow DOM, CSS and Styling Hooks in LWC what you need to know
Sudipta Deb ☁
 
Algorithms design and analysis, part 1
Algorithms  design and analysis, part 1Algorithms  design and analysis, part 1
Algorithms design and analysis, part 1
Sudipta Deb ☁
 
Functional programming principles in scala
Functional programming principles in scalaFunctional programming principles in scala
Functional programming principles in scala
Sudipta Deb ☁
 
Principles of reactive programming
Principles of reactive programmingPrinciples of reactive programming
Principles of reactive programming
Sudipta Deb ☁
 
Dreamforce Global Gathering
Dreamforce Global GatheringDreamforce Global Gathering
Dreamforce Global Gathering
Sudipta Deb ☁
 
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Sudipta Deb ☁
 
Introduction to lightning web component
Introduction to lightning web component Introduction to lightning web component
Introduction to lightning web component
Sudipta Deb ☁
 
Kitchener CA Developer Group Presents Everything you need to know about Einst...
Kitchener CA Developer Group Presents Everything you need to know about Einst...Kitchener CA Developer Group Presents Everything you need to know about Einst...
Kitchener CA Developer Group Presents Everything you need to know about Einst...
Sudipta Deb ☁
 
Building lightning apps by Daniel Peter
Building lightning apps by Daniel PeterBuilding lightning apps by Daniel Peter
Building lightning apps by Daniel Peter
Sudipta Deb ☁
 
Kitchener Canada Developer Group Event: From Admin to Certified Technical Arc...
Kitchener Canada Developer Group Event: From Admin to Certified Technical Arc...Kitchener Canada Developer Group Event: From Admin to Certified Technical Arc...
Kitchener Canada Developer Group Event: From Admin to Certified Technical Arc...
Sudipta Deb ☁
 
Kitchener Developer Group's session on "All about events"
Kitchener Developer Group's session on "All about events"Kitchener Developer Group's session on "All about events"
Kitchener Developer Group's session on "All about events"
Sudipta Deb ☁
 
Learn how Source Tracking can keep metadata changes in sync between your loca...
Learn how Source Tracking can keep metadata changes in sync between your loca...Learn how Source Tracking can keep metadata changes in sync between your loca...
Learn how Source Tracking can keep metadata changes in sync between your loca...
Sudipta Deb ☁
 
Orchestrate all of your salesforce automation with the trigger actions framework
Orchestrate all of your salesforce automation with the trigger actions frameworkOrchestrate all of your salesforce automation with the trigger actions framework
Orchestrate all of your salesforce automation with the trigger actions framework
Sudipta Deb ☁
 
Let's Learn About Heroku and How to Integrate with Salesforce
Let's Learn About Heroku and How to Integrate with SalesforceLet's Learn About Heroku and How to Integrate with Salesforce
Let's Learn About Heroku and How to Integrate with Salesforce
Sudipta Deb ☁
 
Using Styling Hooks to Customize Your LWC
Using Styling Hooks to Customize Your LWCUsing Styling Hooks to Customize Your LWC
Using Styling Hooks to Customize Your LWC
Sudipta Deb ☁
 
Shadow DOM, CSS and Styling Hooks in LWC what you need to know
Shadow DOM, CSS and Styling Hooks in LWC  what you need to knowShadow DOM, CSS and Styling Hooks in LWC  what you need to know
Shadow DOM, CSS and Styling Hooks in LWC what you need to know
Sudipta Deb ☁
 
Algorithms design and analysis, part 1
Algorithms  design and analysis, part 1Algorithms  design and analysis, part 1
Algorithms design and analysis, part 1
Sudipta Deb ☁
 
Functional programming principles in scala
Functional programming principles in scalaFunctional programming principles in scala
Functional programming principles in scala
Sudipta Deb ☁
 
Principles of reactive programming
Principles of reactive programmingPrinciples of reactive programming
Principles of reactive programming
Sudipta Deb ☁
 
Dreamforce Global Gathering
Dreamforce Global GatheringDreamforce Global Gathering
Dreamforce Global Gathering
Sudipta Deb ☁
 
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Sudipta Deb ☁
 
Introduction to lightning web component
Introduction to lightning web component Introduction to lightning web component
Introduction to lightning web component
Sudipta Deb ☁
 
Kitchener CA Developer Group Presents Everything you need to know about Einst...
Kitchener CA Developer Group Presents Everything you need to know about Einst...Kitchener CA Developer Group Presents Everything you need to know about Einst...
Kitchener CA Developer Group Presents Everything you need to know about Einst...
Sudipta Deb ☁
 
Building lightning apps by Daniel Peter
Building lightning apps by Daniel PeterBuilding lightning apps by Daniel Peter
Building lightning apps by Daniel Peter
Sudipta Deb ☁
 
Ad

Recently uploaded (20)

Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Library Association of Ireland
 
To study the nervous system of insect.pptx
To study the nervous system of insect.pptxTo study the nervous system of insect.pptx
To study the nervous system of insect.pptx
Arshad Shaikh
 
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public SchoolsK12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
dogden2
 
How to Subscribe Newsletter From Odoo 18 Website
How to Subscribe Newsletter From Odoo 18 WebsiteHow to Subscribe Newsletter From Odoo 18 Website
How to Subscribe Newsletter From Odoo 18 Website
Celine George
 
Multi-currency in odoo accounting and Update exchange rates automatically in ...
Multi-currency in odoo accounting and Update exchange rates automatically in ...Multi-currency in odoo accounting and Update exchange rates automatically in ...
Multi-currency in odoo accounting and Update exchange rates automatically in ...
Celine George
 
Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...
Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...
Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...
Library Association of Ireland
 
Operations Management (Dr. Abdulfatah Salem).pdf
Operations Management (Dr. Abdulfatah Salem).pdfOperations Management (Dr. Abdulfatah Salem).pdf
Operations Management (Dr. Abdulfatah Salem).pdf
Arab Academy for Science, Technology and Maritime Transport
 
LDMMIA Reiki Master Spring 2025 Mini Updates
LDMMIA Reiki Master Spring 2025 Mini UpdatesLDMMIA Reiki Master Spring 2025 Mini Updates
LDMMIA Reiki Master Spring 2025 Mini Updates
LDM Mia eStudios
 
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACYUNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
DR.PRISCILLA MARY J
 
Social Problem-Unemployment .pptx notes for Physiotherapy Students
Social Problem-Unemployment .pptx notes for Physiotherapy StudentsSocial Problem-Unemployment .pptx notes for Physiotherapy Students
Social Problem-Unemployment .pptx notes for Physiotherapy Students
DrNidhiAgarwal
 
Presentation on Tourism Product Development By Md Shaifullar Rabbi
Presentation on Tourism Product Development By Md Shaifullar RabbiPresentation on Tourism Product Development By Md Shaifullar Rabbi
Presentation on Tourism Product Development By Md Shaifullar Rabbi
Md Shaifullar Rabbi
 
2541William_McCollough_DigitalDetox.docx
2541William_McCollough_DigitalDetox.docx2541William_McCollough_DigitalDetox.docx
2541William_McCollough_DigitalDetox.docx
contactwilliamm2546
 
Marie Boran Special Collections Librarian Hardiman Library, University of Gal...
Marie Boran Special Collections Librarian Hardiman Library, University of Gal...Marie Boran Special Collections Librarian Hardiman Library, University of Gal...
Marie Boran Special Collections Librarian Hardiman Library, University of Gal...
Library Association of Ireland
 
World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...
World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...
World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...
larencebapu132
 
YSPH VMOC Special Report - Measles Outbreak Southwest US 5-3-2025.pptx
YSPH VMOC Special Report - Measles Outbreak  Southwest US 5-3-2025.pptxYSPH VMOC Special Report - Measles Outbreak  Southwest US 5-3-2025.pptx
YSPH VMOC Special Report - Measles Outbreak Southwest US 5-3-2025.pptx
Yale School of Public Health - The Virtual Medical Operations Center (VMOC)
 
GDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptxGDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptx
azeenhodekar
 
To study Digestive system of insect.pptx
To study Digestive system of insect.pptxTo study Digestive system of insect.pptx
To study Digestive system of insect.pptx
Arshad Shaikh
 
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - WorksheetCBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
Sritoma Majumder
 
apa-style-referencing-visual-guide-2025.pdf
apa-style-referencing-visual-guide-2025.pdfapa-style-referencing-visual-guide-2025.pdf
apa-style-referencing-visual-guide-2025.pdf
Ishika Ghosh
 
The ever evoilving world of science /7th class science curiosity /samyans aca...
The ever evoilving world of science /7th class science curiosity /samyans aca...The ever evoilving world of science /7th class science curiosity /samyans aca...
The ever evoilving world of science /7th class science curiosity /samyans aca...
Sandeep Swamy
 
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Library Association of Ireland
 
To study the nervous system of insect.pptx
To study the nervous system of insect.pptxTo study the nervous system of insect.pptx
To study the nervous system of insect.pptx
Arshad Shaikh
 
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public SchoolsK12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
dogden2
 
How to Subscribe Newsletter From Odoo 18 Website
How to Subscribe Newsletter From Odoo 18 WebsiteHow to Subscribe Newsletter From Odoo 18 Website
How to Subscribe Newsletter From Odoo 18 Website
Celine George
 
Multi-currency in odoo accounting and Update exchange rates automatically in ...
Multi-currency in odoo accounting and Update exchange rates automatically in ...Multi-currency in odoo accounting and Update exchange rates automatically in ...
Multi-currency in odoo accounting and Update exchange rates automatically in ...
Celine George
 
Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...
Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...
Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...
Library Association of Ireland
 
LDMMIA Reiki Master Spring 2025 Mini Updates
LDMMIA Reiki Master Spring 2025 Mini UpdatesLDMMIA Reiki Master Spring 2025 Mini Updates
LDMMIA Reiki Master Spring 2025 Mini Updates
LDM Mia eStudios
 
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACYUNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
DR.PRISCILLA MARY J
 
Social Problem-Unemployment .pptx notes for Physiotherapy Students
Social Problem-Unemployment .pptx notes for Physiotherapy StudentsSocial Problem-Unemployment .pptx notes for Physiotherapy Students
Social Problem-Unemployment .pptx notes for Physiotherapy Students
DrNidhiAgarwal
 
Presentation on Tourism Product Development By Md Shaifullar Rabbi
Presentation on Tourism Product Development By Md Shaifullar RabbiPresentation on Tourism Product Development By Md Shaifullar Rabbi
Presentation on Tourism Product Development By Md Shaifullar Rabbi
Md Shaifullar Rabbi
 
2541William_McCollough_DigitalDetox.docx
2541William_McCollough_DigitalDetox.docx2541William_McCollough_DigitalDetox.docx
2541William_McCollough_DigitalDetox.docx
contactwilliamm2546
 
Marie Boran Special Collections Librarian Hardiman Library, University of Gal...
Marie Boran Special Collections Librarian Hardiman Library, University of Gal...Marie Boran Special Collections Librarian Hardiman Library, University of Gal...
Marie Boran Special Collections Librarian Hardiman Library, University of Gal...
Library Association of Ireland
 
World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...
World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...
World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...
larencebapu132
 
GDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptxGDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptx
azeenhodekar
 
To study Digestive system of insect.pptx
To study Digestive system of insect.pptxTo study Digestive system of insect.pptx
To study Digestive system of insect.pptx
Arshad Shaikh
 
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - WorksheetCBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
Sritoma Majumder
 
apa-style-referencing-visual-guide-2025.pdf
apa-style-referencing-visual-guide-2025.pdfapa-style-referencing-visual-guide-2025.pdf
apa-style-referencing-visual-guide-2025.pdf
Ishika Ghosh
 
The ever evoilving world of science /7th class science curiosity /samyans aca...
The ever evoilving world of science /7th class science curiosity /samyans aca...The ever evoilving world of science /7th class science curiosity /samyans aca...
The ever evoilving world of science /7th class science curiosity /samyans aca...
Sandeep Swamy
 

Automate the development lifecycle with cumulus ci on april 9th, 2020

  • 1. Automate the Development Lifecycle with CumulusCI Kitchener, CA Developer Group Speaker Date Venue/Link David Reed April 9th, 2020 @ 3:00 PM EST https://meet.google.com/gog-myop-ige
  • 3. Who Am I? Salesforce Technical Architect Appirio Inc., a Wipro Company Salesforce Lightning Champion www.sudipta-deb.in 10x Salesforce Certified Application Architect Group Leader of Kitchener, CA Developer Group 434 Badges @sudipta_1984
  • 4. Automate the App Lifecycle with CumulusCI @aoristdual | [email protected] David Reed, Senior Member of Technical Staff, Release Engineering | Salesforce.org
  • 5. David Reed Senior Member of Technical Staff, Release Engineering Salesforce.org
  • 6. Forward-Looking Statement Statement under the Private Securities Litigation Reform Act of 1995: This presentation contains forward-looking statements about the company’s financial and operating results, which may include expected GAAP and non-GAAP financial and other operating and non-operating results, including revenue, net income, diluted earnings per share, operating cash flow growth, operating margin improvement, expected revenue growth, expected current remaining performance obligation growth, expected tax rates, the one-time accounting non-cash charge that was incurred in connection with the Salesforce.org combination; stock-based compensation expenses, amortization of purchased intangibles, shares outstanding, market growth and sustainability goals. The achievement or success of the matters covered by such forward-looking statements involves risks, uncertainties and assumptions. If any such risks or uncertainties materialize or if any of the assumptions prove incorrect, the company’s results could differ materially from the results expressed or implied by the forward-looking statements we make. The risks and uncertainties referred to above include -- but are not limited to -- risks associated with the effect of general economic and market conditions; the impact of geopolitical events; the impact of foreign currency exchange rate and interest rate fluctuations on our results; our business strategy and our plan to build our business, including our strategy to be the leading provider of enterprise cloud computing applications and platforms; the pace of change and innovation in enterprise cloud computing services; the seasonal nature of our sales cycles; the competitive nature of the market in which we participate; our international expansion strategy; the demands on our personnel and infrastructure resulting from significant growth in our customer base and operations, including as a result of acquisitions; our service performance and security, including the resources and costs required to avoid unanticipated downtime and prevent, detect and remediate potential security breaches; the expenses associated with new data centers and third-party infrastructure providers; additional data center capacity; real estate and office facilities space; our operating results and cash flows; new services and product features, including any efforts to expand our services beyond the CRM market; our strategy of acquiring or making investments in complementary businesses, joint ventures, services, technologies and intellectual property rights; the performance and fair value of our investments in complementary businesses through our strategic investment portfolio; our ability to realize the benefits from strategic partnerships, joint ventures and investments; the impact of future gains or losses from our strategic investment portfolio, including gains or losses from overall market conditions that may affect the publicly traded companies within the company's strategic investment portfolio; our ability to execute our business plans; our ability to successfully integrate acquired businesses and technologies, including delays related to the integration of Tableau due to regulatory review by the United Kingdom Competition and Markets Authority; our ability to continue to grow unearned revenue and remaining performance obligation; our ability to protect our intellectual property rights; our ability to develop our brands; our reliance on third-party hardware, software and platform providers; our dependency on the development and maintenance of the infrastructure of the Internet; the effect of evolving domestic and foreign government regulations, including those related to the provision of services on the Internet, those related to accessing the Internet, and those addressing data privacy, cross-border data transfers and import and export controls; the valuation of our deferred tax assets and the release of related valuation allowances; the potential availability of additional tax assets in the future; the impact of new accounting pronouncements and tax laws; uncertainties affecting our ability to estimate our tax rate; the impact of expensing stock options and other equity awards; the sufficiency of our capital resources; factors related to our outstanding debt, revolving credit facility, term loan and loan associated with 50 Fremont; compliance with our debt covenants and lease obligations; current and potential litigation involving us; and the impact of climate change. Further information on these and other factors that could affect the company’s financial results is included in the reports on Forms 10-K, 10-Q and 8-K and in other filings it makes with the Securities and Exchange Commission from time to time. These documents are available on the SEC Filings section of the Investor Information section of the company’s website at www.salesforce.com/investor. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements, except as required by law.
  • 7. Agenda The trail to production and the org problem The Salesforce.org solution: portable automation with CumulusCI Live demo Metecho: Portable automation for admins Completing the picture with MetaCI and MetaDeploy Takeaways
  • 8. Let’s Get Cost Out of the Way CumulusCI, MetaCI, Metecho, and MetaDeploy are 100% free and open source. Salesforce licenses and server infrastructure do cost money. • You’ll still pay Heroku, CircleCI, Jenkins, et al. for infrastructure if you wish to use continuous integration This is not a sales pitch Support the Salesforce open source community! Footer
  • 9. The Trail to Production Exploring the app lifecycle
  • 10. The trail to production Develop Feature Tests Merge Deploy Integrati- on / UAT Test Developers Admins Testers Testers End Users End Users Demos Support CI System
  • 11. Where do these participants do their work? Continuous integration must be automated. Most CI systems do very similar steps: • Create a Salesforce org. • Configure the Salesforce org to meet the needs of the application. • Deploy the application. • Execute tests (Apex unit tests, Jest tests, Robot browser tests…) • Report results In many organizations, these steps are so complex that they end up using a single, persistent org. Developers, admins, testers, support, product managers, and other stakeholders usually must create environments manually. Each user has to: • Create a Salesforce org. • Configure the Salesforce org to meet the needs of the application. • Deploy the application. In many organizations, these steps are so expensive that users must make do with shared, out-of-date, or inconsistent sandboxes.
  • 12. Building new orgs is hard. • Traditional tools only do metadata setup. • What about configuration? Data? Dependency management? • What about multiple org shapes for different roles? • CI automation is usually not “portable” (CI only). Managing persistent orgs’ state is hard. • Challenging to fully synchronize with source control • Weak change management • Users conflicting with one another All of these roles and systems need Salesforce orgs to work in. The org problem Developers Admins App Builders Testers End Users Demos Support CI System
  • 13. Some consequences of the org problem Loss of velocity • Teams can’t work at capacity because of poor infrastructure Loss of confidence • Test results aren’t reliable without repeatable setup Difficulty implementing modern best practices • Source control • Salesforce DX Limited alternatives • Automation solutions are too limited, too expensive, or require specialization.
  • 14. The Salesforce.org Solution: Portable Automation with CumulusCI Portable automation for every role, everywhere on the trail
  • 15. Basic framework Version control as source of truth. Salesforce DX scratch orgs as location of work. CumulusCI as the automation engine. % cci
  • 16. Same automation, many contexts Metecho Command line tool for developers Web UI for continuous integration cci MetaCI Web UI for admins & app builders (forthcoming) Sophisticated customer delivery solutions MetaDeploy CumulusCI Portable Automation
  • 17. What CumulusCI does Builds orgs based on repeatable recipes • Dependency management • Package or application installation • Metadata deployment to tailor org • Configuration of settings • Data seeding • Any task achievable with the Salesforce API CumulusCI makes it easy to define fully-realized scratch orgs for each of your roles.
  • 18. What CumulusCI does Provides tools for each role to use in their orgs • Run tests (Apex, Jest, Robot browser and API automation) • Develop and deploy code and metadata • Load, modify, and capture data sets CumulusCI makes it easy for developers, admins, and testers to do their work and collaborate in version control.
  • 19. What CumulusCI does Provides tools to orchestrate the entire development process • Run continuous integration builds • Execute Apex, Jest, and Robot Framework browser tests • Automate parent-child branch merges (CumulusCI Flow) • Upload and test beta managed packages automatically • Upload and test managed releases Continuous integration server recommended but not required: you can run the entire development process from your local machine.
  • 20. Flows and tasks CumulusCI comes with dozens of built-in tasks and predefined flows. Tasks and flows are configurable in simple text markup. New capabilities can be added in Python. Composable building blocks for automation Install Managed PackagesAutomatically Resolve Dependencies Deploy MetadataRun Apex and Jest Unit Tests Run Robot Framework Browser Automation Seed Org with DataRun Anonymous ApexCapture ChangesRelease Package VersionsMuch More
  • 21. Customize flows and tasks in version control cumulusci.yml lives in the repository alongside code
  • 23. The trail to production Develop Feature Tests Integrate Deploy Integration / UAT Test dev_org qa_org install_beta regression_org release_production ci_release install_prodci_feature ci_master
  • 24. Outcomes of solving the org problem Increased velocity • Portable automation means no org blockers or infrastructure dependencies Increased confidence • Rely on orgs always being configured exactly as you expect Modern best practices not just baked-in, but enabled • Source control • Salesforce DX Users get access to holistic environments that encourage collaboration • CumulusCI makes it easy to capture and share work.
  • 25. Metecho: Portable Automation for Admins No command line? No problem. Metecho is not yet released. Functionality may change before release. Μετέχω: “I share”, Ancient Greek
  • 26. Metecho Manage projects and tasks in your repositories
  • 27. Metecho Create scratch orgs, capture work into Git with the push of a button
  • 28. Metecho Integrates with Git and Developers Bring declarative work fully into your development lifecycle via Portable Automation
  • 29. Hands-On Demonstration Metecho is not yet released. Functionality may change before release.
  • 30. Completing the Picture with MetaCI and MetaDeploy Applying portable automation to continuous integration and customer delivery
  • 31. MetaCI Orchestrate development workflow. Easily define plans that run CumulusCI automation on specific branches and tags. Status reported to GitHub for process insights. Track releases and automatically generate release notes in GitHub. Continuous integration for Salesforce projects
  • 32. MetaCI Create scratch orgs using CumulusCI automation through a web UI. Support declarative users with web UI
  • 33. Prefer to bring your own CI? MetaCI makes it easy to map CumulusCI automation to your GitHub branches and tags and implement CumulusCI Flow. CumulusCI works great in other CI systems too. Use CumulusCI as your build tool in CircleCI, Jenkins, Travis, GitHub Actions, GitLab Pipelines, or whatever you prefer. Even on-premises! No lock-in
  • 34. MetaDeploy Customer delivery with portable automation
  • 35. MetaDeploy Smart, product-oriented installers create a great customer experience
  • 36. CumulusCI makes sharing and collaboration easy — in one organization, across organizations, between roles, and in the open source community.
  • 38. Build Applications with CumulusCI: https://trailhead.salesforce.com/en/content/learn/trails/build-applications-with-cumulusci Now available on Trailhead!
  • 39. CumulusCI Documentation: cumulusci.readthedocs.io CumulusCI on the Trailblazer Community: https://success.salesforce.com/_ui/core/chatter/groups/GroupProfilePage?g=0F9300000009M9Z CumulusCI Open Source Project: github.com/SFDO-Tooling/CumulusCI Salesforce.org Products and the Open Source Commons • github.com/SalesforceFoundation/NPSP • github.com/SalesforceFoundation/EDA • github.com/SFDO-Community Resources