.. This work is licensed under a Creative Commons Attribution 4.0 International License. | |
.. http://creativecommons.org/licenses/by/4.0 | |
.. _dcae_cli_commands: | |
dcae_cli Commands | |
================= | |
The dcae_cli tool has four command groups. Each has several | |
sub-commands. | |
``catalog`` | |
----------- | |
The ``catalog`` command lists and shows resources (components and | |
data_formats) in the ‘onboarding’ catalog (regardless of the owner). A | |
resource can have a status of ``staged`` or ``published``. By default, | |
only ``published`` resources are displayed. To see ``staged`` resources, | |
add the –expanded argument. | |
+------------------------------+----------------------------------------+ | |
| Catalog Status | Meaning | | |
+==============================+========================================+ | |
| staged | resource has be added | | |
| | (and validated), but | | |
| | is under development | | |
+------------------------------+----------------------------------------+ | |
| staged | data_formats can only be referenced in | | |
| | their owners component specs | | |
+------------------------------+----------------------------------------+ | |
| staged | components can only be deployed by | | |
| | their owners | | |
+------------------------------+----------------------------------------+ | |
| published | resource has been | | |
| | tested and can be | | |
| | shared | | |
+------------------------------+----------------------------------------+ | |
| | published data_formats can be used in | | |
| | anyone's component spec | | |
+------------------------------+----------------------------------------+ | |
| | published components and be deployed by| | |
| | anyone | | |
+------------------------------+----------------------------------------+ | |
:: | |
$ dcae_cli catalog --help | |
Usage: dcae_cli catalog [OPTIONS] COMMAND [ARGS]... | |
Options: | |
--help Show this message and exit. | |
Commands: | |
list Lists resources in the onboarding catalog | |
show Provides more information about resource | |
List onboarding catalog contents | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
:: | |
$ dcae_cli catalog list | |
Components: | |
+--------------------------------+---------+--------+---------------------------------------------------------------------+--------+-----------+------------+ | |
| Name | Version | Type | Description | Owner | Status | Published | | |
+--------------------------------+---------+--------+---------------------------------------------------------------------+--------+-----------+------------+ | |
| DcaeSyslogCollector | 2.0.0 | docker | DCAE Control Plane Syslog Collector | sh1986 | published | 2017-08-04 | | |
| cdap.dmaap.spec.example | 0.2.0 | cdap | dmaap spec example. Not a functioning application, only for showing | tc677g | published | 2017-07-24 | | |
| | | | how to pub/sub dmaap. Pretend this is like MAP with VES in and ou.. | | | | | |
| cdap.event.proc.enrich.app | 1.0.3 | cdap | CDAP Event Processing Enrich application | an4828 | published | 2017-09-20 | | |
| cdap.event.proc.map.app | 1.0.3 | cdap | CDAP Event Processing Map application | an4828 | published | 2017-09-20 | | |
... | |
Data formats: | |
+--------------------------------------------+---------+-----------------------------------------------------------------------+--------+-----------+------------+ | |
| Name | Version | Description | Owner | Status | Published | | |
+--------------------------------------------+---------+-----------------------------------------------------------------------+--------+-----------+------------+ | |
| FOI_PM_VHSS_data_format | 1.0.0 | CSV pipe delimited data format for VHSS PM files | sr229c | published | 2017-09-05 | | |
| Map_input | 1.0.0 | The input format for Mapper, that in 1707 is the UCSNMP Collector | an4828 | published | 2017-07-18 | | |
| | | output format, but will support more formats later | | | | | |
| Syslog Collector Parsed Json Message | 1.0.0 | Post processed/parsed collected syslog message | sh1986 | published | 2017-08-04 | | |
| Syslog Collector Syslog Message Input | 1.0.0 | The input message for the DCAE syslog collector is free/unstructured | sh1986 | published | 2017-08-04 | | |
| | | text | | | | | |
| myapp Alert Definition | 1.0.0 | The format of the output event from myapp | an4828 | published | 2017-08-10 | | |
| VES_specification | 5.28.4 | VES spec for 5.4 | vv770d | published | 2017-09-19 | | |
... | |
Show the contents of an item in the catalog | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
:: | |
$ dcae_cli catalog show FOI_PM_VHSS_data_format | |
Data format | |
----------- | |
{ | |
"dataformatversion": "1.0.0", | |
"delimitedschema": { | |
"delimiter": "|", | |
"fields": [ | |
{ | |
"description": "System ID", | |
"fieldtype": "string", | |
"name": "SYSTEM" | |
}, | |
{ | |
"description": "Date", | |
"fieldtype": "string", | |
"name": "DATE" | |
}, | |
{ | |
"description": "Time", | |
"fieldtype": "string", | |
"name": "TIME" | |
}, | |
... | |
.. _dcae_cli_component_commands: | |
-------------- | |
``component`` | |
------------- | |
The ``component`` command is for validating (adding), listing, showing, | |
verifying generated configuration, running, undeploying, and publishing | |
components that YOU own. | |
:: | |
$ dcae_cli component --help | |
Usage: dcae_cli component [OPTIONS] COMMAND [ARGS]... | |
Options: | |
--help Show this message and exit. | |
Commands: | |
add | |
dev Set up component in development for... | |
list Lists components in the onboarding catalog. | |
publish Pushes COMPONENT to the onboarding catalog | |
run Runs the latest version of COMPONENT. | |
show Provides more information about COMPONENT | |
undeploy Undeploys the latest version of COMPONENT. | |
-------------- | |
.. _dcae_cli_add_a_component: | |
Add a Component | |
~~~~~~~~~~~~~~~ | |
A component must be added to the onboarding catalog in order to be | |
tested by the dcae_cli tool. The process of adding a component also | |
validates it’s component specification. In order to add a component, the | |
component docker image (or CDAP jar) must exist locally. | |
Components in the onboarding catalog can be run by others, once they are | |
``published.`` ``Published`` components cannot be modified or deleted. | |
Rather a new version can be created instead. | |
Validated component specs are used later to generate Tosca models and | |
Cloudify Blueprints for the component, which makes them available for | |
use in the SDC Tool for creating services. | |
:: | |
$ dcae_cli component add --help | |
Usage: dcae_cli component add [OPTIONS] COMPONENT-SPECIFICATION | |
Options: | |
--update Updates a previously added component if it has not been already | |
published | |
--help Show this message and exit. | |
:: | |
$ dcae_cli component add component-spec.json | |
-------------- | |
List Components | |
~~~~~~~~~~~~~~~ | |
List components in the onboarding catalog that owned by YOUR userid.. | |
:: | |
$ dcae_cli component list | |
Active profile: solutioning | |
+-------------------------+---------+--------+---------------------------------------------------------------+--------+----------------------------+-----------+ | |
| Name | Version | Type | Description | Status | Modified | #Deployed | | |
+-------------------------+---------+--------+---------------------------------------------------------------+--------+----------------------------+-----------+ | |
| cdap.helloworld.endnode | 0.8.0 | cdap | cdap test component | staged | 2017-05-23 04:14:35.588075 | 0 | | |
| sandbox.platform.yourapp| 0.5.0 | docker | Web service used as a stand-alone test DCAE service compone.. | staged | 2017-05-23 04:07:44.065610 | 0 | | |
+-------------------------+---------+--------+---------------------------------------------------------------+--------+----------------------------+-----------+ | |
The fields ``Name``, ``Version``, ``Type``, ``Description`` are | |
referenced from the component specification’s ``self`` JSON. Use the | |
“–deployed” argument to see more details on deployed components | |
-------------- | |
.. _dcae_cli_run_a_component: | |
Run a Component | |
~~~~~~~~~~~~~~~ | |
The ``run`` operation is to be used for running your application in its | |
container remotely on the activated environment. Docker containers have | |
the additional option to run locally on your development machine. If the | |
component uses Dmaap, you can specify the Dmaap Connection Object as | |
well. Refer to :doc:`Dmaap Connection Object <../component-specification/dmaap-connection-objects>`. | |
When you run a component via the dcae_cli Tool, remember the blueprint | |
has not been created and is not used for deployment. | |
In order to run the component, the data formats and component must have | |
been added to the onboarding catalog. | |
**DOCKER NOTE:** Make sure the Docker image has been uploaded to the | |
shared registry. | |
A docker component can be run in either ``attached`` or ``unattached`` | |
mode. (Default is unattached). | |
+------------------+---------------------------------------------------+ | |
| Mode | Description | | |
+==================+===================================================+ | |
| attached | component is run in the ‘foreground’, container | | |
| | logs are streamed to stdout. Ctrl-C is used to | | |
| | terminate the dcae_cli session. | | |
+------------------+---------------------------------------------------+ | |
| unattached | component is run in the ‘background’, container | | |
| | logs are viewed via ``docker logs`` command, | | |
| | container runs until undeployed with dcae_cli | | |
| | ``undeploy`` command. | | |
+------------------+---------------------------------------------------+ | |
Run a component in attached mode: | |
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
:: | |
$ dcae_cli -v component run --attached sandbox.platform.yourapp:0.5.0 | |
DCAE.Docker | INFO | Running image 'registry.proto.server.com/dcae-rework/yourapp:0.4.0' as 'user1.b7287639-37f5-4f25-8d54-8a2087f4c8da.0-5-0.sandbox-platform-yourapp' | |
DCAE.Docker.user1.b7287639-37f5-4f25-8d54-8a2087f4c8da.0-5-0.sandbox-platform-yourapp | INFO | Consul host: yourconsulhost.com | |
DCAE.Docker.user1.b7287639-37f5-4f25-8d54-8a2087f4c8da.0-5-0.sandbox-platform-yourapp | INFO | service name: mh677g.b7287639-37f5-4f25-8d54-8a2087f4c8da.0-5-0.sandbox-platform-yourapp | |
DCAE.Docker.user1.b7287639-37f5-4f25-8d54-8a2087f4c8da.0-5-0.sandbox-platform-yourapp | INFO | Generated config: {'multiplier': 3} | |
DCAE.Docker.user1.b7287639-37f5-4f25-8d54-8a2087f4c8da.0-5-0.sandbox-platform-yourapp | INFO | * Running on http://0.0.0.0:8080/ (Press CTRL+C to quit) | |
DCAE.Docker.user1.b7287639-37f5-4f25-8d54-8a2087f4c8da.0-5-0.sandbox-platform-yourapp | INFO | 135.205.226.140 - - [24/May/2017 03:37:57] "GET /health HTTP/1.1" 200 - | |
DCAE.Docker.user1.b7287639-37f5-4f25-8d54-8a2087f4c8da.0-5-0.sandbox-platform-yourapp | INFO | 135.205.226.140 - - [24/May/2017 03:38:12] "GET /health HTTP/1.1" 200 - | |
Hit Ctrl-C to terminate session. | |
:: | |
^CDCAE.Docker | INFO | Stopping container 'user1.b7287639-37f5-4f25-8d54-8a2087f4c8da.0-5-0.sandbox-platform-yourapp' and cleaning up... | |
Run a component in unattached mode: | |
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
:: | |
$ dcae_cli -v component run sandbox.platform.yourapp:0.5.0 | |
DCAE.Docker | INFO | Running image 'registry.proto.server.com/dcae-rework/yourapp:0.4.0' as 'user1.4811da0e-08d5-429f-93bf-bf6814924577.0-5-0.sandbox-platform-yourapp' | |
DCAE.Run | INFO | Deployed /user1.4811da0e-08d5-429f-93bf-bf6814924577.0-5-0.sandbox-platform-yourapp | |
**NOTE** You must undeploy this component when finished testing. This is | |
important to conserve resources in the environment. | |
Run a component that subscribes to Dmaap MR or DR | |
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
:: | |
$ dcae_cli -v component run --attached --dmaap-file $dmaap-connection-file sandbox.platform.yourapp:0.5.0 | |
-------------- | |
Undeploy a Component | |
~~~~~~~~~~~~~~~~~~~~ | |
The ``undeploy`` command is used to undeploy any instance of a specified | |
component/version that you have deployed. This includes cleaning up the | |
configuration. | |
:: | |
$ dcae_cli component undeploy sandbox.platform.yourapp:0.5.0 | |
DCAE.Undeploy | WARNING | Undeploying components: 1 | |
DCAE.Undeploy | WARNING | Undeployed components: 1 | |
-------------- | |
Publish a component | |
~~~~~~~~~~~~~~~~~~~ | |
| Once a component has been tested, it should be published in the | |
onboarding catalog using the ``publish`` sub-command . | |
| Publishing will change the status of the component (from ``staged`` to | |
``published``), indicating that it has been tested, and making it | |
accessible for other developers to use. | |
**Note** Before a component can be published, all data_formats that it | |
references must be published. | |
:: | |
dcae_cli component publish sandbox.platform.yourapp:0.5.0 | |
-------------- | |
Show a Component | |
~~~~~~~~~~~~~~~~ | |
This will print out the contents of a component and is useful to copy a | |
component spec. | |
:: | |
$ dcae_cli component show | |
-------------- | |
.. _dcae-cli-run-the-dev-command: | |
Run the ``dev`` command | |
~~~~~~~~~~~~~~~~~~~~~~~ | |
The ``dev`` command is used as part of a process to see the platform | |
generated configuration. It established the environment variables and is | |
best explained | |
:any:`here <dcae-cli-view-the-platform>`. | |
:: | |
$ dcae_cli component dev component-spec.json | |
Ready for component development | |
-------------- | |
.. _dcae_cli_data_format: | |
``data_format`` | |
--------------- | |
The ``data_format`` command is for validating (adding), listing, | |
showing, publishing data_formats that YOU own. data_formats can also be | |
generated with this command. | |
:: | |
$ dcae_cli data_format --help | |
Usage: dcae_cli data_format [OPTIONS] COMMAND [ARGS]... | |
Options: | |
--help Show this message and exit. | |
Commands: | |
add Tracks a data format file DATA_FORMAT-SPECIFICATION... | |
generate Create schema from a file or directory... | |
list Lists all your data formats | |
publish Publishes data format to make available to others... | |
show Provides more information about FORMAT | |
-------------- | |
.. _dcae_cli_add_a_data_format: | |
Add a Data Format | |
~~~~~~~~~~~~~~~~~ | |
A data_format must be in the onboarding catalog in order to be | |
referenced in the component specification. The process of adding a | |
data_format also validates it. Data_formats in the onboarding catalog | |
can be run by others, once they are ``published.`` ``Published`` | |
data_formats cannot be modified or deleted. Rather a new version can be | |
created instead. | |
:: | |
$ dcae_cli data_format add --help | |
Usage: dcae_cli data_format add [OPTIONS] DATA_FORMAT-SPECIFICATION | |
Options: | |
--update Updates a previously added data_format if it has not been already | |
published | |
--help Show this message and exit. | |
:: | |
dcae_cli data_format add health.json | |
-------------- | |
List Data Formats | |
~~~~~~~~~~~~~~~~~ | |
Only data_formats owned by YOUR userid will be shown. | |
:: | |
$ dcae_cli data_format list | |
Data formats for user1 | |
+---------------------------------+---------+-------------------------------------------+--------+----------------------------+ | |
| Name | Version | Description | Status | Modified | | |
+---------------------------------+---------+-------------------------------------------+--------+----------------------------+ | |
| sandbox.platform.yourapp.health | 0.1.0 | Data format used for the /health endpoint | staged | 2017-05-23 04:02:38.952799 | | |
+---------------------------------+---------+-------------------------------------------+--------+----------------------------+ | |
The fields ``name``, ``version``, ``description`` are referenced from | |
the data format specification’s ``self`` JSON. ``Status`` represents the | |
status of the data format in the catalog. See `Publish a Data | |
Format <#publish-a-data-format>`__ for more info. | |
-------------- | |
Show a Data Format | |
~~~~~~~~~~~~~~~~~~ | |
This will print out the contents of a data_format and is useful for | |
copying a data_format. | |
:: | |
$ dcae_cli data_format show | |
-------------- | |
Publish a Data Format | |
~~~~~~~~~~~~~~~~~~~~~ | |
| Once a data_format has been tested (by referencing it in a component | |
spec that has been tested), it should be published in the onboarding | |
catalog using the ``publish`` sub-command . | |
| Publishing will change the status of the data_format (from ``staged`` | |
to ``published``), indicating that it has been tested, and making it | |
accessible for other developers to use. | |
:: | |
$ dcae_cli data_format publish data_format.json | |
-------------- | |
Generate a Data Format | |
~~~~~~~~~~~~~~~~~~~~~~ | |
If you already have a valid input or output file, you can use the | |
generate command to create the it’s data format specification. | |
:: | |
$ dcae_cli data_format generate name:version file-or-dir-path | |
-------------- | |
``profiles`` | |
------------ | |
The\ ``profiles`` command is for creating, deleting, listing, showing, | |
activating, and updating (set) profiles. The profile contains | |
environment variables used to connect to different environments. This is | |
used in the running and deployment of a component using the | |
``dcae_cli component run`` or ``dev`` command. | |
:: | |
$ dcae_cli profiles --help | |
Usage: dcae_cli profiles [OPTIONS] COMMAND [ARGS]... | |
Options: | |
--help Show this message and exit. | |
Commands: | |
activate Sets profile NAME as the active profile | |
create Creates a new profile NAME initialized with... | |
delete Deletes profile NAME | |
list Lists available profiles | |
set Updates profile NAME such that KEY=VALUE | |
show Prints the profile dictionary | |
-------------- | |
List the available profiles | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
:: | |
$ dcae_cli profiles list | |
* solutioning | |
1710 | |
1802 | |
The \* identifies the active profile. ``dcae-cli`` is currently | |
installed with profiles for the ``solutioning``, ``1710``, and ``1802`` | |
environments. They are intended for the following: | |
+-----------------------------------+-----------------------------------+ | |
| Environment | Description | | |
+===================================+===================================+ | |
| solutioning | default environment; used for | | |
| | initial component developer | | |
| | testing with the dcae_cli tool. | | |
+-----------------------------------+-----------------------------------+ | |
| 1710 | FTL3 (Functional Testing Lab 3) | | |
| | environment, which represents the | | |
| | 1710 release. | | |
+-----------------------------------+-----------------------------------+ | |
| 1802 | FTL3a (Functional Testing Lab 3a) | | |
| | environment, which represents the | | |
| | 1802 release. | | |
+-----------------------------------+-----------------------------------+ | |
-------------- | |
Show the details of a profile | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
:: | |
$ dcae_cli profiles show solutioning | |
{ | |
"cdap_broker": "cdap_broker", | |
"config_binding_service": "config_binding_service", | |
"consul_host": "yourconsulhost.com", | |
"docker_host": "yourdockerhost.com:2376" | |
} | |
-------------- | |
.. _dcae_cli_activate_profile: | |
Activate a profile | |
~~~~~~~~~~~~~~~~~~ | |
To switch among profiles, use the activate sub-command. A subsequent | |
``list`` will reveal the change made. | |
:: | |
$ dcae_cli profiles activate test | |
-------------- | |
Create a new profile | |
~~~~~~~~~~~~~~~~~~~~ | |
If you want to work in a different environment using the dcae_cli tool, | |
you can make your own profile. (The environment must be a working DCAE | |
Platform environment). | |
:: | |
$ dcae_cli profiles create new-profile | |
After creating you would assign the variables with the ``set`` | |
sub-command. Then activate it to use. | |
-------------- | |
Set variables in a profile | |
~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
:: | |
$ dcae_cli profiles set $profile $key $value | |
-------------- | |
Delete a profile | |
~~~~~~~~~~~~~~~~ | |
:: | |
$ dcae_cli profiles delete new-profile | |