sfciutils

1.3.5 • Public • Published

sfciutils

Salesforce DX plugin for centralising utilities for CI/CD

Version CircleCI Appveyor CI Greenkeeper Known Vulnerabilities Downloads/week License

$ npm install -g sfciutils
$ sfdx COMMAND
running command...
$ sfdx (--version)
sfciutils/1.3.5 darwin-x64 node-v19.3.0
$ sfdx --help [COMMAND]
USAGE
  $ sfdx COMMAND
...

sfdx ciutils:deployment:getDeploymentId [-p <string>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

Analyses and returns the ID of a deployment request performed with sfdx.

USAGE
  $ sfdx ciutils:deployment:getDeploymentId [-p <string>] [--json] [--loglevel
    trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

FLAGS
  -p, --path=<value>                                                                the path of the json file resulting
                                                                                    from sfdx force:source:deploy
                                                                                    command
  --json                                                                            format output as json
  --loglevel=(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)  [default: warn] logging level for
                                                                                    this command invocation

DESCRIPTION
  Analyses and returns the ID of a deployment request performed with sfdx.

EXAMPLES
  $ sfdx ciutils:deployment:getDeloymentId --path [path to JSON result from sfdx force:source:deploy]

See code: src/commands/ciutils/deployment/getDeploymentId.ts

sfdx ciutils:deployment:reportOnDeployment [-d <id>] [-f] [-u <string>] [--apiversion <string>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

Generates a report based on a deployment ID.

USAGE
  $ sfdx ciutils:deployment:reportOnDeployment [-d <id>] [-f] [-u <string>] [--apiversion <string>] [--json] [--loglevel
    trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

FLAGS
  -d, --deploymentid=<value>                                                        The ID of the deployment to reprort
                                                                                    on
  -f, --untildone                                                                   will print status updates every 30s
                                                                                    until the deployment is finished
  -u, --targetusername=<value>                                                      username or alias for the target
                                                                                    org; overrides default target org
  --apiversion=<value>                                                              override the api version used for
                                                                                    api requests made by this command
  --json                                                                            format output as json
  --loglevel=(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)  [default: warn] logging level for
                                                                                    this command invocation

DESCRIPTION
  Generates a report based on a deployment ID.

EXAMPLES
  $ sfdx ciutils:deployment:reportOnDeployment --deploymentId [Id of a deployment]

See code: src/commands/ciutils/deployment/reportOnDeployment.ts

sfdx ciutils:entitlement:removeIfEqual [-r <string>] [-u <string>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

removes components from the deployment folder in case they already exist and are the same.

USAGE
  $ sfdx ciutils:entitlement:removeIfEqual [-r <string>] [-u <string>] [--json] [--loglevel
    trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

FLAGS
  -r, --retrieved=<value>                                                           path to component retrieved from
                                                                                    destination org for comparison
  -u, --toupload=<value>                                                            path to component that are going to
                                                                                    be deployed
  --json                                                                            format output as json
  --loglevel=(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)  [default: warn] logging level for
                                                                                    this command invocation

DESCRIPTION
  removes components from the deployment folder in case they already exist and are the same.

EXAMPLES
  $ sfdx ciutils:entitlement:removeIfEqual --retrieved --toupload
    Class1,Class2,Class3

See code: src/commands/ciutils/entitlement/removeIfEqual.ts

sfdx ciutils:flow:removeIfEqual [-r <string>] [-u <string>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

removes components from the deployment folder in case they already exist and are the same.

USAGE
  $ sfdx ciutils:flow:removeIfEqual [-r <string>] [-u <string>] [--json] [--loglevel
    trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

FLAGS
  -r, --retrieved=<value>                                                           path to component retrieved from
                                                                                    destination org for comparison
  -u, --toupload=<value>                                                            path to component that are going to
                                                                                    be deployed
  --json                                                                            format output as json
  --loglevel=(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)  [default: warn] logging level for
                                                                                    this command invocation

DESCRIPTION
  removes components from the deployment folder in case they already exist and are the same.

EXAMPLES
  $ sfdx ciutils:entitlement:removeIfEqual --retrieved --toupload
    Class1,Class2,Class3

See code: src/commands/ciutils/flow/removeIfEqual.ts

sfdx ciutils:profiles:split -i <string> -o <string> [-d] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

Split profiles into smaller parts.

USAGE
  $ sfdx ciutils:profiles:split -i <string> -o <string> [-d] [--json] [--loglevel
    trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

FLAGS
  -d, --delete                                                                      Delete the existing profiles once
                                                                                    converted?
  -i, --input=<value>                                                               (required) [default:
                                                                                    force-app/main/default/profiles] the
                                                                                    input directory where the full
                                                                                    profiles exist.
  -o, --output=<value>                                                              (required) [default:
                                                                                    force-app/main/default/profiles] the
                                                                                    output directory to store the
                                                                                    chunked profiles.
  --json                                                                            format output as json
  --loglevel=(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)  [default: warn] logging level for
                                                                                    this command invocation

DESCRIPTION
  Split profiles into smaller parts.

EXAMPLES
          sfdx metadata:profiles:split -i force-app/main/default/profiles -o force-app/main/default/test
          //Splits profiles located in specified input dir and copies them into the output dir.

See code: src/commands/ciutils/profiles/split.ts

sfdx ciutils:testclass:generateList [-p <string>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

generates a comma separated string with all the names of test classes in the referred folder

USAGE
  $ sfdx ciutils:testclass:generateList [-p <string>] [--json] [--loglevel
    trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

FLAGS
  -p, --path=<value>                                                                path to Apex classes
  --json                                                                            format output as json
  --loglevel=(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)  [default: warn] logging level for
                                                                                    this command invocation

DESCRIPTION
  generates a comma separated string with all the names of test classes in the referred folder

EXAMPLES
  $ sfdx ciutils:testclass:generateList --path
    Class1,Class2,Class3

See code: src/commands/ciutils/testclass/generateList.ts

Debugging your plugin

We recommend using the Visual Studio Code (VS Code) IDE for your plugin development. Included in the .vscode directory of this plugin is a launch.json config file, which allows you to attach a debugger to the node process when running your commands.

To debug the hello:org command:

  1. Start the inspector

If you linked your plugin to the sfdx cli, call your command with the dev-suspend switch:

$ sfdx hello:org -u myOrg@example.com --dev-suspend

Alternatively, to call your command using the bin/run script, set the NODE_OPTIONS environment variable to --inspect-brk when starting the debugger:

$ NODE_OPTIONS=--inspect-brk bin/run hello:org -u myOrg@example.com
  1. Set some breakpoints in your command code
  2. Click on the Debug icon in the Activity Bar on the side of VS Code to open up the Debug view.
  3. In the upper left hand corner of VS Code, verify that the "Attach to Remote" launch configuration has been chosen.
  4. Hit the green play button to the left of the "Attach to Remote" launch configuration window. The debugger should now be suspended on the first line of the program.
  5. Hit the green play button at the top middle of VS Code (this play button will be to the right of the play button that you clicked in step #5).

    Congrats, you are debugging!

Readme

Keywords

Package Sidebar

Install

npm i sfciutils

Weekly Downloads

67

Version

1.3.5

License

MIT

Unpacked Size

82.6 kB

Total Files

33

Last publish

Collaborators

  • marsson
  • adambestsf