PluginBench
Skill
Review
Audit score 70

deploying-omnistudio-datapacks

forcedotcom/sf-skills

Automate Vlocity DataPack deployment, validation, and retry workflows for OmniStudio/Industries configurations.

What is deploying-omnistudio-datapacks?

This skill orchestrates Salesforce Industries DataPack deployment using Vlocity Build commands (packDeploy, packRetry, packExport, packGetDiffs). Use it when deploying or validating OmniStudio/Vlocity DataPacks, setting up DataPack CI/CD pipelines, or troubleshooting migration errors. Do not use for standard metadata deployment, OmniStudio artifact authoring, or Apex/LWC code generation.

  • Execute Vlocity DataPack export, deploy, retry, and diff operations with org-to-org migration
  • Validate DataPack integrity locally before deployment using validateLocalData quality gates
  • Design and manage job files with manifest-driven scope control for deterministic deployments
  • Diagnose and resolve DataPack dependency, matching-key, and GlobalKey issues
  • Orchestrate CI/CD pipelines with pre-deploy validation, staged deployment, and post-deploy verification
  • Continue interrupted DataPack jobs and optimize incremental deployments using git-based change detection

How to install deploying-omnistudio-datapacks

npx skills add https://github.com/forcedotcom/sf-skills --skill deploying-omnistudio-datapacks
Prerequisites
  • Vlocity Build tool installed globally (npm install --global vlocity)
  • Salesforce CLI (sf) installed and authenticated with source and target org aliases
  • Valid job file (.yaml) with project path, expansion path, and deployment scope defined
  • Access to both source and target Salesforce orgs with appropriate DataPack permissions
Claude Code
Cursor
Windsurf
Cline

How to use deploying-omnistudio-datapacks

  1. 1.Install Vlocity Build globally and verify readiness with 'vlocity help' and 'sf org list'
  2. 2.Gather required context: source/target org aliases, job file path, deployment scope, and namespace model
  3. 3.Run validateLocalData to perform pre-deploy quality checks on local DataPack data
  4. 4.Execute packExport from source org if exporting new or changed DataPacks
  5. 5.Run packDeploy to deploy DataPacks to target org, then packRetry repeatedly until error counts stabilize
  6. 6.Execute packGetDiffs to verify post-deploy parity and generate deployment report
  7. 7.For interrupted jobs, use packContinue to resume from the last checkpoint

Use cases

Good for
  • Migrating OmniStudio configurations (OmniScripts, FlexCards, Integration Procedures) between Salesforce orgs using DataPacks
  • Setting up automated DataPack CI/CD pipelines with validation gates and retry loops
  • Troubleshooting DataPack deployment failures caused by missing dependencies, duplicate records, or matching-key mismatches
  • Exporting DataPacks from a source org and deploying to sandbox or production targets with manifest-driven scope control
  • Recovering from partial DataPack deployments using packContinue and packRetry until stability is achieved
Who it's for
  • Salesforce Industries/OmniStudio administrators managing cross-org configuration migrations
  • DevOps engineers building CI/CD pipelines for DataPack deployments
  • Salesforce architects designing DataPack job files and deployment strategies
  • Integration specialists troubleshooting DataPack dependency and matching-key issues

deploying-omnistudio-datapacks FAQ

When should I use deploying-omnistudio-datapacks vs. deploying-metadata?

Use deploying-omnistudio-datapacks for Vlocity DataPack operations (packDeploy, packExport, packRetry) and OmniStudio configurations. Use deploying-metadata for standard Salesforce metadata deployed via 'sf project deploy'.

What does validateLocalData do and when should I run it?

validateLocalData performs pre-deploy quality checks on local DataPack data, validating integrity before deployment. Always run it as the first step in the recommended workflow before packDeploy.

How do I handle 'No match found' or 'Duplicate Results found' errors?

'No match found' indicates missing dependencies in the target org—include the missing DataPack key and redeploy. 'Duplicate Results found' means duplicate records exist in the target—clean duplicates and re-run the deploy.

Should I use packRetry multiple times?

Yes, use packRetry repeatedly when error counts are dropping. Stop retrying when subsequent retries no longer improve results, indicating the issue requires manual intervention or dependency resolution.

How do I set up a DataPack CI/CD pipeline?

Follow the default pipeline shape: authenticate orgs, validate with validateLocalData, export changed scope, deploy with packDeploy, retry until stable, and compare with packGetDiffs. Use job-file options like gitCheck for incremental optimization.

Full instructions (SKILL.md)

Source of truth, from forcedotcom/sf-skills.


name: deploying-omnistudio-datapacks description: "Salesforce Industries DataPack deployment automation using Vlocity Build. TRIGGER when: user deploys or validates OmniStudio/Vlocity DataPacks with vlocity commands (packDeploy/packRetry/packExport/packGetDiffs), sets up DataPack CI/CD pipelines, or troubleshoots DataPack migration errors. DO NOT TRIGGER when: deploying Salesforce metadata with sf project deploy (use deploying-metadata), authoring OmniStudio artifacts (use building-omnistudio-*), or writing Apex/LWC business logic (use generating-apex/generating-lwc-components)." metadata: version: "1.0"

deploying-omnistudio-datapacks: Vlocity Build DataPack Deployment

Use this skill when the user needs Vlocity DataPack deployment orchestration: export/deploy workflow, manifest-driven deploys, failure triage, and CI/CD sequencing for OmniStudio/Industries DataPacks.


Scope

Use deploying-omnistudio-datapacks when work involves:

  • vlocity packDeploy, packRetry, packContinue, packExport, packGetDiffs, validateLocalData
  • DataPack job-file design (projectPath, expansionPath, manifest, queries)
  • org-to-org DataPack migration and retry loops
  • troubleshooting DataPack dependency, matching-key, and GlobalKey issues

Delegate elsewhere when the user is:

  • deploying standard metadata with sf project deploy -> deploying-metadata
  • building OmniScripts, FlexCards, IPs, or Data Mappers -> building-omnistudio-*
  • designing Product2 EPC bundles -> modeling-omnistudio-epc-catalog
  • writing Apex/LWC code -> generating-apex, generating-lwc-components

Critical Operating Rules

  • Use Vlocity Build (vlocity) commands for DataPacks, not sf project deploy.
  • Prefer Salesforce CLI auth integration (-sfdx.username <alias>) over username/password files when available.
  • Always run a pre-deploy quality gate before full deploy:
    1. validateLocalData
    2. optional packGetDiffs
    3. then packDeploy
  • Use packRetry repeatedly when error counts are dropping; stop when retries no longer improve results.
  • Keep matching-key strategy and GlobalKey integrity consistent across source and target orgs.

Required Context to Gather First

Ask for or infer:

  • source org and target org aliases
  • job file path and DataPack project path
  • deployment scope (full project, manifest subset, or specific -key)
  • whether this is export, deploy, retry, continue, or diff-only
  • namespace model (%vlocity_namespace%, vlocity_cmt, or core)
  • known constraints (new sandbox bootstrap, trigger behavior, matching key customizations)

Preflight checks:

vlocity help
sf org list
sf org display --target-org <alias> --json
test -f <job-file>.yaml

Recommended Workflow

1. Ensure tool readiness

npm install --global vlocity
vlocity help

2. Validate project data locally

vlocity -sfdx.username <source-alias> -job <job-file>.yaml validateLocalData

Use --fixLocalGlobalKeys only when explicitly requested and after explaining impact.

3. Export from source (when needed)

vlocity -sfdx.username <source-alias> -job <job-file>.yaml packExport
vlocity -sfdx.username <source-alias> -job <job-file>.yaml packRetry

4. Deploy to target

vlocity -sfdx.username <target-alias> -job <job-file>.yaml packDeploy
vlocity -sfdx.username <target-alias> -job <job-file>.yaml packRetry

5. Continue interrupted jobs

vlocity -sfdx.username <target-alias> -job <job-file>.yaml packContinue

6. Verify post-deploy parity

vlocity -sfdx.username <target-alias> -job <job-file>.yaml packGetDiffs

Job-file starter: references/job-file-template.md


Gotchas

Error / symptomLikely causeDefault fix direction
No match found for ...missing dependency in target orginclude missing DataPack key and redeploy
Duplicate Results found for ... GlobalKeyduplicate records in targetclean duplicates and re-run deploy
Multiple Imported Records ... same Salesforce Recordsource duplicate matching-key recordsremove duplicates in source and re-export
No Configuration Foundoutdated DataPack settingsrun packUpdateSettings or enable autoUpdateSettings
Some records were not processedsettings mismatch / partial dependency staterefresh settings both orgs, then retry
SASS / template compile failuresmissing referenced UI template assetsexport/deploy referenced template dependencies first

Detailed matrix: references/troubleshooting-matrix.md


CI/CD Guidance

Default pipeline shape:

  1. authenticate orgs (sf org login ...)
  2. validate local DataPack integrity (validateLocalData)
  3. export changed scope (packExport or manifest-driven export)
  4. deploy (packDeploy)
  5. retry loop (packRetry) until stable
  6. compare (packGetDiffs) and publish deployment report

For incremental deploy optimization, use job-file options such as:

  • gitCheck: true
  • gitCheckKey: <folder>
  • manifest for deterministic scope control

Cross-Skill Integration

NeedDelegate toReason
metadata deploy outside DataPacksdeploying-metadataMetadata API workflows
OmniStudio component authoringbuilding-omnistudio-*build artifacts before deploy
EPC product and offer payload authoringmodeling-omnistudio-epc-catalogProduct2/DataPack model quality
Apex trigger/log error diagnosisdebugging-apex-logs, generating-apexautomation-side root-cause fixes

Output Expectations

After completing a DataPack operation, deliver a completion block:

DataPack goal: <export / deploy / retry / diff / ci-cd>
Source org: <alias or N/A>
Target org: <alias or N/A>
Scope: <job file + manifest/key/full>
Result: <passed / failed / partial>
Key findings: <errors, dependencies, retries, diffs>
Next step: <safe follow-up action>

Reference File Index

FileWhen to read
references/job-file-template.mdBefore advising on job file structure — load as baseline configuration reference
references/troubleshooting-matrix.mdWhen user reports deploy failures — load to diagnose DataPack errors and apply fix directions
examples/business-internet-plus-bundle/TRANSCRIPT.mdExample of validation planning and execution for a Product2 bundle
examples/business-internet-plus-bundle/deploy-business-internet-plus-bundle.yamlExample job file for scope-limited validateLocalData run
examples/business-internet-plus-bundle-deploy/TRANSCRIPT.mdExample of full deploy cycle including packDeploy and packRetry outcomes
examples/business-internet-plus-bundle-deploy/deploy-business-internet-plus-bundle.yamlExample job file for staged deployment with manifest targeting