A plugin for the Salesforce CLI that enables and enhances implementation of the SFDX-Falcon family of projects, including the AppExchange Demo Kit (ADK) and AppExchange Package Kit (APK).
Installing the SFDX-Falcon Plugin is easy if you have already installed the Salesforce CLI.
Open a terminal window (command prompt) and enter the following:
$ sfdx plugins:install sfdx-falcon
You should see something similar to this:
Important Notes:
- The command
sfdx plugins:install
pulls the plugin source code directly from the sfdx-falcon package, hosted by NPM - The SFDX-Falcon Plugin has not been digitially signed (yet), so you will need to acknowledge the warning to continue the installation
The AppExchange Demo Kit (ADK) allows Salesforce Developers to build and share rich, dynamic demo orgs in a source-centric manner without requiring batch files or shell scripts.
The AppExchange Package Kit (APK) builds on the SFDX-Falcon Template to provide tools and frameworks tailored specifically for developing Managed Packages in agile, continuously-building, team-based envrionments using Salesforce DX.
Important Notes:
- The command
sfdx plugins:install
lets the Salesforce CLI know that you want to install a plugin - The SFDX-Falcon plugin has not been digitially signed (yet), so you will need to acknowledge the warning to continue the installation
sfdx-falcon falcon:adk:clone [-d <directory>] [--falcondebug <array>] [--falcondebugerror] [--falcondebugsuccess] [--falcondebugdepth <number>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]
sfdx-falcon falcon:adk:create [-d <directory>] [--falcondebug <array>] [--falcondebugerror] [--falcondebugsuccess] [--falcondebugdepth <number>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]
sfdx-falcon falcon:adk:install [-d <directory>] [-f <string>] [-x <string>] [--falcondebug <array>] [--falcondebugerror] [--falcondebugsuccess] [--falcondebugdepth <number>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]
sfdx-falcon falcon:apk:clone [-d <directory>] [--falcondebug <array>] [--falcondebugerror] [--falcondebugsuccess] [--falcondebugdepth <number>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]
sfdx-falcon falcon:apk:create [-d <directory>] [--falcondebug <array>] [--falcondebugerror] [--falcondebugsuccess] [--falcondebugdepth <number>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]
sfdx-falcon falcon:adk:clone [-d <directory>] [--falcondebug <array>] [--falcondebugerror] [--falcondebugsuccess] [--falcondebugdepth <number>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]
Clones an AppExchange Demo Kit (ADK) project from a remote Git repository.
USAGE
$ sfdx-falcon falcon:adk:clone [-d <directory>] [--falcondebug <array>] [--falcondebugerror] [--falcondebugsuccess]
[--falcondebugdepth <number>] [--json] [--loglevel
trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]
ARGUMENTS
GIT_REMOTE_URI URI (https only) of the Git repository to clone (eg. https://github.com/GitHubUser/my-repository.git)
GIT_CLONE_DIR Directory name of the cloned repository (defaults to repo name if not specified)
OPTIONS
-d, --outputdir=outputdir [default: .] Directory to clone the
AppExchange Demo Kit (ADK) project
into
--falcondebug=falcondebug [default: ] List of debug namespaces
which should render output
--falcondebugdepth=falcondebugdepth [default: 2] Sets the depth of
object inspection when debug output
is displayed
--falcondebugerror Display extended information for
uncaught Errors
--falcondebugsuccess Display extended information upon
successful command completion
--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
EXAMPLES
$ sfdx falcon:adk:clone https://github.com/GitHubUser/my-repository.git
$ sfdx falcon:adk:clone https://github.com/GitHubUser/my-repository.git MyRepoDirName
$ sfdx falcon:adk:clone https://github.com/GitHubUser/my-repository.git MyRepoDirName \
--outputdir ~/demos/appexchange-demo-kit-projects
See code: src/commands/falcon/adk/clone.ts
sfdx-falcon falcon:adk:create [-d <directory>] [--falcondebug <array>] [--falcondebugerror] [--falcondebugsuccess] [--falcondebugdepth <number>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]
Creates an AppExchange Demo Kit (ADK) project
USAGE
$ sfdx-falcon falcon:adk:create [-d <directory>] [--falcondebug <array>] [--falcondebugerror] [--falcondebugsuccess]
[--falcondebugdepth <number>] [--json] [--loglevel
trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]
OPTIONS
-d, --outputdir=outputdir [default: .] Directory where your
ADK project will be created
--falcondebug=falcondebug [default: ] List of debug namespaces
which should render output
--falcondebugdepth=falcondebugdepth [default: 2] Sets the depth of
object inspection when debug output
is displayed
--falcondebugerror Display extended information for
uncaught Errors
--falcondebugsuccess Display extended information upon
successful command completion
--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
EXAMPLES
$ sfdx falcon:adk:create
$ sfdx falcon:adk:create --outputdir ~/ADK-Projects
See code: src/commands/falcon/adk/create.ts
sfdx-falcon falcon:adk:install [-d <directory>] [-f <string>] [-x <string>] [--falcondebug <array>] [--falcondebugerror] [--falcondebugsuccess] [--falcondebugdepth <number>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]
Reads an AppExchange Demo Kit (ADK) Recipe and builds a customized org
USAGE
$ sfdx-falcon falcon:adk:install [-d <directory>] [-f <string>] [-x <string>] [--falcondebug <array>]
[--falcondebugerror] [--falcondebugsuccess] [--falcondebugdepth <number>] [--json] [--loglevel
trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]
OPTIONS
-d, --projectdir=projectdir [default: .] Path to a directory
that contains a fully-configured ADK
project
-f, --recipefile=recipefile Overrides 'demoRecipes' setting from
sfdx-project.json to run a specific
Recipe
-x, --extendedoptions=extendedoptions [default: {}] Options for overriding
internal settings passed as a JSON
string
--falcondebug=falcondebug [default: ] List of debug namespaces
which should render output
--falcondebugdepth=falcondebugdepth [default: 2] Sets the depth of
object inspection when debug output
is displayed
--falcondebugerror Display extended information for
uncaught Errors
--falcondebugsuccess Display extended information upon
successful command completion
--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
EXAMPLES
$ sfdx falcon:adk:install
$ sfdx falcon:adk:install --projectdir ~/demos/adk-projects/my-adk-project
$ sfdx falcon:adk:install --projectdir ~/demos/adk-projects/my-adk-project \
--configfile my-alternate-demo-config.json
See code: src/commands/falcon/adk/install.ts
sfdx-falcon falcon:apk:clone [-d <directory>] [--falcondebug <array>] [--falcondebugerror] [--falcondebugsuccess] [--falcondebugdepth <number>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]
Clones an SFDX-Falcon project from a remote Git repository.
USAGE
$ sfdx-falcon falcon:apk:clone [-d <directory>] [--falcondebug <array>] [--falcondebugerror] [--falcondebugsuccess]
[--falcondebugdepth <number>] [--json] [--loglevel
trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]
ARGUMENTS
GIT_REMOTE_URI URI (https only) of the Git repository to clone (eg. https://github.com/GitHubUser/my-repository.git)
GIT_CLONE_DIR Directory name of the cloned repository (defaults to repo name if not specified)
OPTIONS
-d, --outputdir=outputdir [default: .] Directory to clone the
project into
--falcondebug=falcondebug [default: ] List of debug namespaces
which should render output
--falcondebugdepth=falcondebugdepth [default: 2] Sets the depth of
object inspection when debug output
is displayed
--falcondebugerror Display extended information for
uncaught Errors
--falcondebugsuccess Display extended information upon
successful command completion
--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
EXAMPLES
$ sfdx falcon:apk:clone git@github.com:GitHubUser/my-repository.git
$ sfdx falcon:apk:clone https://github.com/GitHubUser/my-repository.git MyRepoDirName
$ sfdx falcon:apk:clone https://github.com/GitHubUser/my-repository.git MyRepoDirName \
--outputdir ~/projects/appexchange-package-kit-projects
See code: src/commands/falcon/apk/clone.ts
sfdx-falcon falcon:apk:create [-d <directory>] [--falcondebug <array>] [--falcondebugerror] [--falcondebugsuccess] [--falcondebugdepth <number>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]
Creates an AppExchange Package Kit (APK) project
USAGE
$ sfdx-falcon falcon:apk:create [-d <directory>] [--falcondebug <array>] [--falcondebugerror] [--falcondebugsuccess]
[--falcondebugdepth <number>] [--json] [--loglevel
trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]
OPTIONS
-d, --outputdir=outputdir [default: .] Directory where your
APK project will be created
--falcondebug=falcondebug [default: ] List of debug namespaces
which should render output
--falcondebugdepth=falcondebugdepth [default: 2] Sets the depth of
object inspection when debug output
is displayed
--falcondebugerror Display extended information for
uncaught Errors
--falcondebugsuccess Display extended information upon
successful command completion
--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
EXAMPLES
$ sfdx falcon:apk:create
$ sfdx falcon:apk:create --outputdir ~/projects/sfdx-falcon-projects
See code: src/commands/falcon/apk/create.ts
To report bugs or request new features, create an issue in this repository.
Additional help is available to Salesforce ISV Partners by visiting the SFDX-Falcon Chatter Group in the Partner Community and posting questions there.
SFDX-Falcon, the SFDX-Falcon Plugin, and the AppExchange Demo Kit were created by Vivek M. Chawla LinkedIn | Twitter.
The SFDX-Falcon Plugin is made available under the MIT License - see the LICENSE file for details.