@ciguru/sfdx-ci-engine v1.2.0
Continuous Delivery Engine, based on SFDX CLI
CI Engine to automate the Salesforce CRM development process. The Engine communicates with Salesforce through the SFDX CLI.
Installation
You can install this using npm installer.
Requirements
To get started, you'll need to install node v16 (LTS) or greater. While this can be done using an installer from nodejs.com or via an OS-specific package manager.
Install package
> npm install --global @ciguru/sfdx-ci-engineUsage
Tools based on adapter
- SFDX Plugin - Provides the ability to use the CI Engine as part of the SFDX CLI.
Import in your own code
// Import CI Engine
import CiEngine from '@ctsoftware/sfdx-ci-engine';
// Set up the CI Engine by specifying the path to the configuration file
const ci = new CiEngine(configurationfile);
// Tune the behaviur of your configuration by providing input
ci.setGlobalInputs({ foo: 'abra', bar: 123 });
// Performing CI steps(actions) according to configuration
await ci.run();
// Get step results(outputs)
const result = ci.getOutputs();CI Configuration
Supported configuration file formats
You can use YAML (.yaml or .yml) or JSON (.json) files to set up the
configuration. You can import JSON Schema in
your IDE to simplify configuration process (guidelines for
WebStorm and
VS Code).
Configuration
Top-level attributes
Input attributes
Variable attributes
Step attributes
Attributes for all steps
Additional attributes for ci.changeSet.create step (since v1.1.0)
Create change sets to deploy and revert Pull Requests
Additional attributes for ci.data.transfer step (since v1.2.0)
Create change sets to deploy and revert Pull Requests
Additional attributes for sObjectItem step (since v1.2.0)
Additional attributes for sfdx.auth.accessToken step
Authorize an org using access token
Additional attributes for sfdx.auth.list step
List auth connection information
Additional attributes for sfdx.auth.logout step
Log out from authorized orgs
Additional attributes for sfdx.auth.sfdxUrl step
Authorize an org using sfdxurl
Additional attributes for sfdx.force.apex.execute step
Executes anonymous Apex code
Additional attributes for sfdx.force.apex.test.run step
Invoke Apex tests
Additional attributes for sfdx.force.data.bulk.delete step
Bulk delete records from a CSV file
Additional attributes for sfdx.force.data.bulk.upsert step
Bulk upsert records from a CSV file
Additional attributes for sfdx.force.data.soql.query.csv step
Bulk upsert records from a CSV file
Additional attributes for sfdx.force.data.tree.import step
Import data into an org
Additional attributes for sfdx.force.mdApi.deploy step
Deploy metadata to an org using Metadata API
Additional attributes for sfdx.force.mdApi.retrieve step
Retrieve metadata from an org using Metadata API
Additional attributes for sfdx.force.org.create.scratch step
Create a scratch org
Additional attributes for sfdx.force.org.delete step
Mark a scratch or sandbox org for deletion
Additional attributes for sfdx.force.org.display step
Get the description for the current or target org
Additional attributes for sfdx.force.package.install step
Install a package in the target org
Additional attributes for sfdx.force.source.push step
Push source to a scratch org from the project
Reference syntax
- $env.ENVIRONMENT_NAME
- $input.INPUT_ID
- $var.VARIABLE_ID
- $step.STEP_ID.outputs