facetsctl Commands

Pre-requisite Ensure you run the login and artifact init commands before using the push, register, or upload commands.

facetsctlv3 provides the following commands for users:

facetsctl help

This command displays the help for facetsctlv3. You can use it to get information about a specific command by providing the command name as an argument.

 $ facetsctl help [COMMAND...] [-n]

FLAGS

FlagRequiredWhat does it do?
-n, --nested-commandsNoDefines if all nested commands should be included in the output.

facetsctl login

This command allows the user to log in to the Facets Control Plane.

$ facetsctl login -u <value> -t <value> -f <value>
$ facetsctl login --username my-user --token my-token --facets-url https://facets-control-plane.example.com

FLAGS

FlagRequiredWhat does it do?
-f, --facets-url=<value>YesDefines the URL of the Control plane.
-t, --token=<value>YesDefines the Personal token.
-u, --username=<value>YesDefines the Username.

facetsctl artifact init

This command allows you to initialize the artifact information.

$ facetsctl artifact init -p <value> -s <value> -a <value>
$ facetsctl artifact init --project my-project --service my-service --artifactory my-artifactory

FLAGS

FlagRequiredWhat does it do?
-a, --artifactory=<value>YesDefines the Container Registry name.
-p, --project=<value>YesDefines the Project name.
-s, --service=<value> = <value>YesDefines the Service name.

facetsctl artifact push

$ facetsctl artifact push -d <value>
$ facetsctl artifact push --docker-image my-docker-image:latest

FLAGS

FlagRequiredWhat does it do?
-d, --docker-image=<value>YesDefines the URL of the Docker image to push.

facetsctl artifact register

This command allows you to register a Docker image with the specified type and value.

$ facetsctl artifact register -t GIT_REF|ENVIRONMENT|RELEASE_STREAM -i <value> -v <value> [-r <value>]
$ facetsctl artifact register --type GIT_REF --docker-image my-docker-image:latest --value my-git-ref

FLAGS

FlagRequiredWhat does it do?
-i, --docker-image=<value>YesDefines the Docker image to register.
-r, --runId=<value>NoUsed to corelate to your CI system.
-t, --type=<option>YesDefines the Type (GIT_REF, ENVIRONMENT, RELEASE_STREAM).
<options: GIT_REF|ENVIRONMENT|RELEASE_STREAM>
-v, --value=<value>YesDefines the value of the specified type.

facetsctl artifact upload

This command allows you to directly upload application build files to an s3 bucket in your organisation's AWS account. You can then reference this file in your Azure Function or your AWS Lambda resource.

Once the zip file has been uploaded, you need to specify the zip_path in your AWS Lambda or Azure Functions resource. You can find the path from the CI Integration page of the Project where it is uploaded.

$ facetsctl artifact upload -t GIT_REF|ENVIRONMENT|RELEASE_STREAM -f <value> -v <value> [-r <value>]
 $ facetsctl artifact upload --type GIT_REF --file-path file-to-upload --value my-git-ref

FLAGS

FlagRequiredWhat does it do?
-f, --file-path=<value>YesDefines the path to the application build file (e.g., WAR, JAR, ZIP) on your local system.
-r, --runId=<value>NoUsed to corelate to your CI system.
-t, --type=<option>YesDefines the Type (GIT_REF, ENVIRONMENT, RELEASE_STREAM).
<options: GIT_REF|ENVIRONMENT|RELEASE_STREAM>
-v, --value=<value>YesDefines the value of the specified type.

facetsctl release sync APPS

This command allows you to sync out-of-sync apps to match their desired state with the deployed state.

$ facetsctl release sync APPS -p <value> -e <value>

ARGUMENTS

APPS: List of app names to sync (comma-separated | example: ... sync app1,app2,app3 -p ...)

FLAGS

FlagRequiredWhat does it do?
-e, --environment=<value>YesDefines the Environment name.
-p, --project=<value>YesDefines the Project name.

facetsctl release wait APPS

This command allows you to wait for the sync status of the specified apps, and trigger sync if --sync is provided

  $ facetsctl release wait APPS -p <value> -e <value> [--sync]

ARGUMENTS

APPS: List of app names to wait for (comma-separated | example: ... sync app1,app2,app3 -p ...)

FLAGS

FlagRequiredWhat does it do?
-e, --environment=<value>YesDefines the Environment name.
-p, --project=<value>YesDefines the Project name.
--syncNoTriggers a sync if apps are out-of-sync