Facets CLI

Learn how to use facetsctl Command Line Tool

This documentation provides a quick reference guide for using the facetsctl CLI tool. It's an easy-to-use alternative to Facets APIs that allows users to push new docker artifacts to the Facets Control Plane and refresh Kubernetes credentials for the user in a specified environment.

NPM Page

You can view and download the latest facetsctl package from its NPM page.

Commands

facetsctl provides the following commands for users.

facetsctl help

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

ARGUMENTS
COMMAND: Command to show help for.

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> -c <value>

FLAGS

FlagRequiredWhat does it do?
-c, --cp-url = <value>YesDefines the URL of the Control plane
-t, --access-token = <value>YesDefines the personal token generated for the user
-u, --username = <value>YesDefines the username of the user

facetsctl register

Register docker images from an external repository into the Facets Control Plane.

$ facetsctl register -i <value> -s <value> -e <value> --git-ref <value> [-d <value>]
[--registry <value>] [--registration-type CLUSTER|RELEASE_STREAM] 
[--blueprint-name <value>] [--debug <value>]

FLAGS

FlagRequiredWhat does it do?
-d, --description=<value>NoDefines the description of the build if any.
-e, --external-id=<value>YesDefines the external identifier for the artifact.
-i, --docker-image=<value>YesDefines the docker image URL in the external registry.
-s, --service=<value>YesDefines the name of the CI Integration for which the artifact needs to be registered.
--blueprint-name=<value>NoDefines the Blueprint name in which the CI Integration will be created if not present already.
--git-ref=<value>YesDefines the git ref provided in CI Rule.
--registration-type=<option>NoDefines the mode of registration for CI integration.
Used as <options: ENVIRONMENT | RELEASE_STREAM>
--registry=<value>NoDefines the artifactory where the image will be pushed.
--debug=<value>NoDefines if you want to view the original error message thrown.
[default: false]

facetsctl register by env

Register already pushed images from the external repository to the Facets Control Plane using the environment name.

  $ facetsctl register-by-env -i <value> -s <value> -e <value> --environment-name <value>
  --blueprint-name <value> [-d <value>] [--registry <value>] [--debug <value>]

FLAGS

FlagRequiredWhat does it do?
-d, --description=<value>NoDefines the description of the build if any.
-e, --external-id=<value>YesDefines the external identifier for the artifact.
-i, --docker-image=<value>YesDefines the docker image URL in the external registry.
-s, --service=<value>YesDefines the name of the CI integration for which the artifact needs to be registered.
--blueprint-name=<value>YesDefines the Blueprint name in which the given environment is present.
--debug=<value>NoDefines if you want to view the original error message thrown. [default: false]
--environment-name=<value>YesDefines the environment name in which the artifact will be registered.
--registry=<value>NoDefines the artifactory where the images will be pushed.

facetsctl register by releasestream

Register already pushed images from the external repository to the Facets control plane through the release stream.

$ facetsctl register-by-releasestream -i <value> -s <value> -e <value> --release-stream <value> 
[-d <value>] [--registry <value>] [--blueprint-name <value>] [--debug <value>]
FlagRequiredWhat does it do?
-d, --description=<value>NoDefines the description of the build if any.
-e, --external-id=<value>YesDefines the external identifier for the artifact.
-i, --docker-image=<value>YesDefines the docker image URL in the external registry.
-s, --service=<value>YesDefines the name of the CI integration for which the artifact needs to be registered.
--blueprint-name=<value>YesDefines the Blueprint name in which the given environment is present.
--debug=<value>NoDefines if you want to view the original error message thrown. [default: false]
--release-stream=<value>YesDefines the git ref provided in CI Rule.
--registry=<value>NoDefines the artifactory where the images will be pushed.

facetsctl push

The following command enables users to push new docker artifacts to specific release streams or environments in the Facets Control Plane:

$ facetsctl push -i <value> -a <value> --registration-type CLUSTER|RELEASE_STREAM --registration-value  
    <value> -e <value> [-d <value>] [--artifactory <value>]

The following command can be used to push an image to Facets and leverage the benefits of CI Rules for automatic classification:

$ facetsctl push --ci <ci_integration_name> --image <docker_image_name> --git-ref
  <git reference> -e <external_id_here> -d <your_build_description> --artifactory default

FLAGS

FlagRequiredWhat does it do?
-a, --artifact-name = <value>YesDefines the name of the artifact as mentioned in the Blueprint.
-d, --description = <value>NoDefines the description of the build, if any.
-e, --external-id = <value>YesDefines the external identifier for the artifact.
-i, --docker-image = <value>YesDefines the image location.
Used as <IMAGE:TAG>.
--artifactory = <value>NoDefines the artifactory where the image will be pushed.
--registration-type = <option>YesDefines the mode of registration.
Used as <options: CLUSTER|RELEASE_STREAM>.
--registration-value = <value>YesDefines the value for release stream or cluster id, based on mode of registration.

facetsctl refresh

This command will refresh the Kubernetes credentials for the user in the specified environment.

facetsctl refresh -e <value> 
#or 
facetsctl refresh --blueprint-name <value> --environment-name <value>

FLAGS

FlagRequired?What does it do?
-e, --environment-idYesDefines the unique ID for the environment.
--blueprint-nameYesDefines the unique name of the defined blueprint.
--environment-nameYesDefines the name of the environment in the defined blueprint.

facetsctl download-kubeconfig

This command can be used to download kubeconfig files for an Environment. You can either download it using the environment ID or retrieve it by specifying the blueprint name and environment name.

$ facetsctl download-kubeconfig -e <value>
#or
$ facetsctl download-kubeconfig --environment-name <value>  --blueprint-name ‹value>

FLAGS

FlagRequiredWhat does it do?
-e, --environment-idYesDefines the Environment ID for downloading kubeconfig.
--environment-nameYesDefines the Environment name for downloading kubeconfig.
--blueprint-nameYesDefines the Blueprint name using which environment was launched.

Facets CLI version v1.0.9

For Mac Os

For Linux

For Windows