macaw platform

cfxDimensions Platform services management:

'macaw platform' command is used to deploy and manage cfxDimensions platform services. Run the below command to view available CLI options.

macaw platform --help
usage: platform [--insecure] [-h] [--debug] {} ...

Manage the Macaw Platform

positional arguments:
  {}                    commands
    dbinit              Initialize the platform database
    add-service-host    Add extra service vm
    resource-profile    Manages the resource profile operations
    access-key-gen      Generate an access-keyfor a user
    status              Status of the macaw Platform
    start               Start the macaw Platform Containers
    stop                Stop the macaw Platform Containers
    install             Install the macaw platform containers
    generate-certs      Generate certificates for hosts belonging to this
                        installation
    remove-stopped-containers
                        Remove platform containers that have exited
    rolling-update      Upgrade the platform services to a new version

optional arguments:
  --insecure            Ignore SSL certificate issues when communicating with
                        various hosts
  -h, --help            show this help message and exit
  --debug               Enable debug logs for the CLI operations

'macaw platform install' command is used to deploy/install cfxDimensions platform services. Run the below command to view the available options.

macaw platform install --help
usage: platform install [-h] --tag TAG [--refresh-auth] [--service SERVICES]

optional arguments:
  -h, --help          show this help message and exit
  --tag TAG           Tag to be pulled from the Docker registry
  --refresh-auth      Refresh Authentication to Docker Registry.
  --service SERVICES  Restrict the scope of the command to specific service

Run the below command to initialize MariaDB database (MariaDB service was deployed part of cfxDimensions infrastructure service installation). This step is a pre-requisite before installing cfxDimensions platform services.

(Note: Below shown tag name is a sample for a reference only, for actual tag name, please contact CloudFabrix support/sales team.)

macaw platform dbinit --tag macaw-2.2.17

Run the below command to deploy all cfxDimensions platform services. (Note: Below shown tag name is a sample for a reference only, for actual tag name, please contact CloudFabrix support/sales team.)

macaw platform install --tag macaw-2.2.17

Run the below command to install a specific cfxDimensions platform service. Below are the supported/available platform services. (Note: Below shown tag name is a sample for a reference only, for actual tag, please contact CloudFabrix support/sales team.)

  • service-registry

  • notification-manager

  • identity

  • provisioner

  • user-preferences

  • locker

  • console-ui

macaw platform install --service service-registry --tag macaw-2.2.17

Upgrading the cfxDimensions platform services: Run the below command to upgrade all platform services. (Note: Below shown tag name is a sample for a reference only, for actual tag, please contact CloudFabrix support/sales team.)

Warning: It is a disruptive operation, please take a full backup of your data before you perform this operation on a Production environment. Also, stop the platform services using 'macaw platform stop' command first before executing the upgrade command.

macaw platform rolling-update --tag macaw-2.2.18

Deleting the cfxDimensions platform services: Run the below command to delete all cfxDimensions platform services.

Warning: It is a disruptive operation, please take a full backup of your data before you perform this operation on a Production environment.

macaw platform stop --remove-container

Run the below command to delete a specific cfxDimensions platform service. Below are the list of platform services.

  • service-registry

  • notification-manager

  • identity

  • provisioner

  • user-preferences

  • locker

  • console-ui

Warning: It is a disruptive operation, please take a full backup of your data before you perform this operation on a Production environment.

macaw platform stop --service <service-name> --remove-container

Run the below commands to start/stop cfxDimensions platform services.

macaw platform start
macaw platform stop

Run the below commands to start/stop a specific cfxDimensions platform service.

macaw platform start --service <service-name>
macaw platform stop --service <service-name>

Delete older or previous version of Platform Service: Run the below command to clean up the platform service images.

macaw platform remove-stopped-containers

Generate self-signed certificates: Self-signed certificates are used for cfxDimensions infrastructure, platform services and for macaw CLI as well. This manual step is not usually needed as it will be run automatically during 'macaw setup' execution.

macaw platform generate-certs

For additional options, run the below command.

macaw platform generate-certs --help
usage: platform generate-certs [-h] [--dir CERT_ROOT_DIR] [--overwrite]

optional arguments:
  -h, --help           show this help message and exit
  --dir CERT_ROOT_DIR  The directory where the certificates will be generated
  --overwrite          Overwrite the certificates if they already exist

Accessing cfxDimensions Platform APIs from CLI:

Macaw CLI provides an ability to call cfxDimensions Platform service APIs which allows user to query/configure/update/provision/de-provision application services. It is also used to execute any automated scripts if/when needed.

Below step is a pre-requisite to execute API calls from CLI.

Run the below command to generate an API key for Platform admin user and the generated key is stored inside platform.cfg file which will be used while making API calls from CLI.

Use --insecure option as shown below when the cfxDimensions platform is NOT deployed with CA signed certificates. --insecure option works with self-signed certificates which are installed by default during cfxDimensions platform setup and configuration.

macaw platform --insecure access-key-gen --user admin@cloudfabrix.com --password macaw1234 --store-config
macaw platform access-key-gen --help

usage: macaw platform access-key-gen [-h] [--debug] --user USER --password
                                     PASSWORD [--store-config]

optional arguments:
  -h, --help           show this help message and exit
  --debug              Enable debug logs
  --user USER          User for whom the access-key is to be generated
  --password PASSWORD  Password to use for login during access-key generation
  --store-config       Store the generated access key into the platform
                       configuration

Last updated