Deployment strategy: change sets, pipelines and rollback
How change sets work and where they stop scaling, when to move to CLI deployments from Git or package versions, the components of a gated pipeline, monitoring with Deployment Status, and how tested rollback and feature flags in custom metadata separate deploying from releasing.
Given a scenario, compare, contrast and recommend the components and tools of a successful deployment strategy.
~8 min read · 12 practice questions ·
What the exam expects
- Explain how change sets work: deployment connections, outbound and inbound sets, whole-set deploys, org locks, the 10,000-file limit and what they can't carry.
- Recommend change sets, CLI deployments from Git, Lifecycle Center or package versions for a team's size, tooling and risk.
- Name the core components of a gated pipeline: source control as source of truth, automated validation and tested rollback.
- Monitor Metadata API deployments in Setup and stop parallel streams from overwriting each other.
- Roll metadata back by redeploying a known version, and use feature flags to separate deploying from releasing.
Key terms: deployment connection (authorization for change sets between related orgs); inbound change set (a change set received from another org, deployed as a whole); package version (an immutable artifact installed in each environment); rollback procedure (a documented, tested way to restore the previous version); feature flag (configuration that keeps deployed functionality switched off until release).
Key facts
- Detail
- Setup customizations only, never records
- Detail
- Only orgs affiliated with the same production org, over a deployment connection
- Detail
- As a whole, not component by component
- Detail
- Data still read and written; metadata changes blocked
- Detail
- 10,000 files per change set
- Detail
- Production with Apex: all local tests by default; sandbox: none automatically
- Detail
- Setup page showing Metadata API deployments that are in progress, waiting or completed
- Detail
- Immutable; usable as a CI and CD artifact
- Detail
sf project deploy start --dry-run
- Detail
- Executable in under 30 minutes, tested in non-production
Sources for this section (6)
- Change Setshelp.salesforce.com (opens in a new tab)
- Change Sets Best Practiceshelp.salesforce.com (opens in a new tab)
- Deploy Your Changeshelp.salesforce.com (opens in a new tab)
- What's an Unlocked Package?developer.salesforce.com (opens in a new tab)
- project deploy startdeveloper.salesforce.com (opens in a new tab)
- DevOps Patternsarchitect.salesforce.com (opens in a new tab)
- Why can't a change set replace a test-data load into a new sandbox?
- When should a release manager apply a custom field type change by hand instead of in the change set?
- Why does a package-based pipeline remove the "what passed UAT isn't what shipped" problem?
- Where in Setup can a non-CLI user see whether a pipeline's deployment is still waiting?
The questions are free to read. Answers with their sources and self-grading are included with the pack.
Keep reading with the Platform Development Lifecycle and Deployment Architect pack
- Core concepts
- Exam traps
- Worked scenario
The pack includes:
- All 26 lessons of the Platform Development Lifecycle and Deployment Architect guide, with reading progress
- Interactive decision walks and step-by-step sequence steppers
- Inline practice questions and one-click topic practice (12 questions for this lesson)
- An official source cited for every claim
- An AI tutor that answers from the guide
- Unlimited timed practice exams