Skip to main content

Universal Command Line Interface for Yeedu.

Project description

Yeedu Command-Line-Interface

Yeedu CLI(Command Line Interface) is a standard CLI to run interactively with Yeedu’s RESTful-API.

Table of Contents

Requirements

The yeedu-cli package works on Python version:

  • 3.8.x and greater

CLI Setup

Need to run below command from the project directory to setup the yeedu CLI on the environment.

PyPI

pip install yeedu-cli

Windows

pip install --editable .

Generate Executable file for yeedu CLI

  • Need to install pyinstaller using below mentioned command

pip install pyinstaller
  • From project directory execute below mention command

pyinstaller --onefile yeedu.py

Traverse to \dist directory and get the executable file yeedu.exe

  • The yeedu.exe commands can be formed as shown below:

yeedu.exe [-h]
yeedu.exe <command> [-h]
yeedu.exe <command> <subcommand> [-h]
  • Example of yeedu CLI command using executable file

yeedu.exe resource list-providers

Linux

  • WSL

sudo apt install python3-pip
pip3 install --editable .
  • Bash

sudo python3 setup.py develop

Environment Variable Setup

Create a .env file in the project directory and provide below environment variables.

# Below mentioned values are the default values of Environment Variables
YEEDU_RESTAPI_URL="http://localhost:8080"
YEEDU_CLI_LOG_DIR=~/.yeedu/cli/logs/
YEEDU_CLI_MAX_LOG_FILES=5         # Number 0f log files as an integer
YEEDU_CLI_MAX_LOG_FILE_SIZE=30    # Log file size in MB as an integer
YEEDU_USERNAME=USER
YEEDU_PASSWORD=PASS
YEEDU_RESTAPI_TOKEN=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFiY2RlZiIsImlkIjoiMSIsImlhdCI6MTY2NzgwOTYwMX0.HwhdTHBttnR0NFtmUDjcxTLMSLfyNuBs7t7GO9zOf08
YEEDU_RESTAPI_TOKEN_FILE_PATH=/home/user/yeedu_cli.config

Alternative of .env file

  • Windows CMD

SET YEEDU_RESTAPI_URL="http://localhost:8080"
SET YEEDU_CLI_LOG_DIR=~/.yeedu/cli/logs/
SET YEEDU_CLI_MAX_LOG_FILES=5
SET YEEDU_CLI_MAX_LOG_FILE_SIZE=30
SET YEEDU_USERNAME=USER
SET YEEDU_PASSWORD=PASS
SET YEEDU_RESTAPI_TOKEN=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFiY2RlZiIsImlkIjoiMSIsImlhdCI6MTY2NzgwOTYwMX0.HwhdTHBttnR0NFtmUDjcxTLMSLfyNuBs7t7GO9zOf08
SET YEEDU_RESTAPI_TOKEN_FILE_PATH=/home/user/yeedu_cli.config
  • Linux

export YEEDU_RESTAPI_URL="http://localhost:8080"
export YEEDU_CLI_LOG_DIR=~/.yeedu/cli/logs/
export YEEDU_CLI_MAX_LOG_FILES=5
export YEEDU_CLI_MAX_LOG_FILE_SIZE=30
export YEEDU_USERNAME=USER
export YEEDU_PASSWORD=PASS
export YEEDU_RESTAPI_TOKEN=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFiY2RlZiIsImlkIjoiMSIsImlhdCI6MTY2NzgwOTYwMX0.HwhdTHBttnR0NFtmUDjcxTLMSLfyNuBs7t7GO9zOf08
export YEEDU_RESTAPI_TOKEN_FILE_PATH=/home/user/yeedu_cli.config

Authentication Setup

  • Below mentions ways of storing the credentials which will be used [Environment Variables will be given a priority] to generate the token.

Storing the credentials as Environment Variables

YEEDU_USERNAME=USER
YEEDU_PASSWORD=PASS

Storing the credentials inside a yeedu_credentials.config file

  • The yeedu_credentials.config file needs to be created inside the directory home/user/.yeedu/ which consists of JSON as shown below:

{
  "YEEDU_USERNAME": "USER",
  "YEEDU_PASSWORD": "PASS"
}

Storing the Yeedu Session Token inside a file

  • If the user is already having the Yeedu Session Token. Then user can save the token at the any location and provide the file path in enviroment variable YEEDU_RESTAPI_TOKEN_FILE_PATH

    • For example YEEDU_RESTAPI_TOKEN_FILE_PATH="/home/user/Documents/YeeduToken/{FileName}"

  • Format to store the token is as shown below:

{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoxLCJpYXQiOjE2ODg3MjA0MjIsImV4cCI6MTY4ODg5MzIyMn0.EfxuXKPBISQB4ep-sPQbo6R7tg2irlnAC_krqnuXJ5Q"
}

Command Name

Utility

configure

Used to generate the token.

list-tenants

To list all the available tenants for the session user.

associate-tenant

To associate tenant with the current users session Token.

configure

yeedu configure -h
Yeedu CLI

positional arguments:
  {configure}

options:
  -h, --help            Show this help message and exit.
  --timeout [TIMEOUT]   Provide token expiration timeout in hour Example: --timeout=24,
                        --timeout=infinity (infinity for no expiration time) to
                        generate Yeedu Token. (default: 48)
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • User can provide the file path to stored the configured token using the environment variable YEEDU_RESTAPI_TOKEN_FILE_PATH.

    • For example YEEDU_RESTAPI_TOKEN_FILE_PATH="/home/user/Documents/YeeduToken/{FileName}"

  • configure example with optional argument passed.

yeedu configure --timeout=72
  • Console output

{
  "message": "The token has been configured for the username: USER and stored at location: /home/user/.yeedu/yeedu_cli.config"
}

The generated token will be used internally for accessing the yeedu features based on the acess level provided to the given username

  • To list the tenants a user has access to, execute the yeedu iam list-tenants command.

list-tenants

yeedu iam list-tenants -h
usage:  list-tenants [-h] [--json-output [{pretty,default}]]
                     [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-tenants example without optional arguments passed for output format.

yeedu iam list-tenants
  • Console output

[
  {
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
    "name": "tenant1",
    "description": "Yeedu Tenant 1"
  },
  {
    "tenant_id": "066a702d-6b9d-4176-afc5-51c24a651739",
    "name": "tenant2",
    "description": "Yeedu Tenant 2"
  },
  {
    "tenant_id": "328aba9a-92ac-458d-8c27-fe9ea6e5e9ab",
    "name": "tenant3",
    "description": "Yeedu Tenant 3"
  },
  {
    "tenant_id": "6b682ef1-ede4-4d96-bab6-cd008aadd534",
    "name": "tenant4",
    "description": "Yeedu Tenant 4"
  }
]
  • Execute yeedu iam associate-tenant --tenant_id={tenant_id} to associate a tenant id from the yeedu iam list-tenants response to the session token.

associate-tenant

yeedu iam associate-tenant -h
usage:  associate-tenant [-h] --tenant_id TENANT_ID [--json-output [{pretty,default}]]
                         [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide tenant_id to associate it with session token
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • associate-tenant example with required argument ‘–tenant_id’ passed.

yeedu iam associate-tenant --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538"
  • Console output

{
  "message": "Successfully associated Tenant"
}

Resources

Lookup

Command Name

Utility

list-providers

To get information about all Cloud Providers.

get-provider

To get information about a specific Cloud Provider.

list-provider-availability-zones

To get information about Availability Zones for a specific Cloud Provider.

get-provider-availability-zone

To get information about a specific Availability Zone for a specific Cloud Provider.

list-provider-machine-types

To get information about Machine Types for a specific Cloud Provider.

get-provider-machine-type

To get information about a specific Machine Type for a specific Cloud Provider.

list-disk-machine-types

To get information about all disk machine types.

list-credential-types

To get information about all credential types.

list-engine-cluster-instance-status

To get information about available engine cluster instance status.

list-spark-compute-types

To get information about all spark compute types.

list-spark-infra-versions

To get information about spark infra version.

list-spark-job-status

To get information about spark job status.

list-workflow-execution-states

To get information about workflow execution state.

list-workflow-types

To get information about workflow type.

list-providers

yeedu resource list-providers -h
usage:  list-providers [-h] [--json-output [{pretty,default}]]
                       [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-providers example without any optional argument passed for output format.

yeedu resource list-providers
  • Console output

[
  {
    "cloud_provider_id": "0",
    "name": "gcp",
    "description": "Provider for creating infrastructure on Google Cloud Platform",
    "from_date": "2023-07-14T13:44:16.300Z",
    "to_date": null
  },
  {
    "cloud_provider_id": "1",
    "name": "aws",
    "description": "Provider for creating infrastructure on Amazon Web Services",
    "from_date": "2023-07-14T13:44:16.300Z",
    "to_date": null
  },
  {
    "cloud_provider_id": "2",
    "name": "azure",
    "description": "Provider for creating infrastructure on Azure Cloud Platform",
    "from_date": "2023-07-14T13:44:16.300Z",
    "to_date": null
  }
]

get-provider

yeedu resource get-provider -h
usage:  get-provider [-h] --cloud_provider_id CLOUD_PROVIDER_ID
                     [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cloud_provider_id CLOUD_PROVIDER_ID
                        Provide specific cloud provider id to get-provider.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-provider example with required ‘–cloud_provider_id’ argument passed.

yeedu resource get-provider --cloud_provider_id=0
  • Console output

{
  "cloud_provider_id": "0",
  "name": "gcp",
  "description": "Provider for creating infrastructure on Google Cloud Platform",
  "from_date": "2023-07-14T13:44:16.300Z",
  "to_date": null
}

list-provider-availability-zones

yeedu resource list-provider-availability-zones -h
usage:  list-provider-availability-zones [-h] --cloud_provider_id CLOUD_PROVIDER_ID
                                         [--json-output [{pretty,default}]]
                                         [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cloud_provider_id CLOUD_PROVIDER_ID
                        Provide specific Cloud Provider id to list-provider-
                        availability-zones.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-provider-availability-zones example with required ‘–cloud_provider_id’ argument passed.

yeedu resource list-provider-availability-zones --cloud_provider_id=0
  • Console output

[
  {
    "availability_zone_id": "0",
    "cloud_provider": {
      "name": "gcp",
      "description": "Provider for creating infrastructure on Google Cloud Platform"
    },
    "name": "asia-east1-a",
    "region": "asia-east1",
    "description": "Changhua County, Taiwan, APAC",
    "from_date": "2023-07-14T13:44:19.583Z",
    "to_date": null
  },
  ...
  {
    "availability_zone_id": "102",
    "cloud_provider": {
      "name": "gcp",
      "description": "Provider for creating infrastructure on Google Cloud Platform"
    },
    "name": "us-south1-c",
    "region": "us-south1",
    "description": "Dallas, Texas, North America",
    "from_date": "2023-07-14T13:44:19.583Z",
    "to_date": null
  }
]

get-provider-availability-zone

yeedu resource get-provider-availability-zone -h
usage:  get-provider-availability-zone [-h] --cloud_provider_id CLOUD_PROVIDER_ID
                                       --availability_zone_id AVAILABILITY_ZONE_ID
                                       [--json-output [{pretty,default}]]
                                       [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cloud_provider_id CLOUD_PROVIDER_ID
                        Provide specific cloud provider id to get-provider-availability-
                        zone.
  --availability_zone_id AVAILABILITY_ZONE_ID
                        Provide specific Availability Zone id to get-provider-
                        availability-zone.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-provider-availability-zone example with required arguments passed.

yeedu resource get-provider-availability-zone --cloud_provider_id=1 --availability_zone_id=116
  • Console output

{
  "availability_zone_id": "116",
  "cloud_provider": {
    "name": "aws",
    "description": "Provider for creating infrastructure on Amazon Web Services"
  },
  "name": "Canada",
  "region": "ca-central-1",
  "description": "central",
  "from_date": "2023-07-14T13:44:19.583Z",
  "to_date": null
}

list-provider-machine-types

yeedu resource list-provider-machine-types -h
usage:  list-provider-machine-types [-h] --cloud_provider_id CLOUD_PROVIDER_ID
                                    [--json-output [{pretty,default}]]
                                    [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cloud_provider_id CLOUD_PROVIDER_ID
                        Provide specific cloud provider id to list-provider-machine-
                        types.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-provider-machine-types example with required ‘–cloud_provider_id’ argument passed.

yeedu resource list-provider-machine-types --cloud_provider_id=0
  • Console output

[
  {
    "machine_type_id": "0",
    "cloud_provider": {
      "name": "gcp",
      "description": "Provider for creating infrastructure on Google Cloud Platform"
    },
    "name": "a2-highgpu-1g",
    "vcpus": 12,
    "memory": "85 GiB",
    "has_cuda": false,
    "gpu_model": null,
    "gpus": null,
    "gpu_memory": null,
    "from_date": "2023-07-14T13:44:18.310Z",
    "to_date": null
  },
  ...
  {
    "machine_type_id": "723",
    "cloud_provider": {
      "name": "gcp",
      "description": "Provider for creating infrastructure on Google Cloud Platform"
    },
    "name": "n1-standard-4-4g",
    "vcpus": 4,
    "memory": "15 GiB",
    "has_cuda": true,
    "gpu_model": "nvidia-tesla-t4",
    "gpus": 4,
    "gpu_memory": "64 GB GDDR6",
    "from_date": "2023-07-14T13:44:18.310Z",
    "to_date": null
  }
]

get-provider-machine-type

yeedu resource get-provider-machine-type -h
usage:  get-provider-machine-type [-h] --cloud_provider_id CLOUD_PROVIDER_ID
                                  --machine_type_id MACHINE_TYPE_ID
                                  [--json-output [{pretty,default}]]
                                  [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cloud_provider_id CLOUD_PROVIDER_ID
                        Provide specific cloud provider id to get-provider-machine-type.
  --machine_type_id MACHINE_TYPE_ID
                        Provide specific machine type id to get-provider-machine-type.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-provider-machine-type example with all the required arguments passed.

yeedu resource get-provider-machine-type --cloud_provider_id=0 --machine_type_id=108
  • Console output

{
  "machine_type_id": "108",
  "cloud_provider": {
    "name": "gcp",
    "description": "Provider for creating infrastructure on Google Cloud Platform"
  },
  "name": "n2d-highmem-64",
  "vcpus": 64,
  "memory": "512 GiB",
  "has_cuda": false,
  "gpu_model": null,
  "gpus": null,
  "gpu_memory": null,
  "from_date": "2023-07-14T13:44:18.310Z",
  "to_date": null
}

list-disk-machine-types

yeedu resource list-disk-machine-types -h
usage:  list-disk-machine-types [-h] [--json-output [{pretty,default}]]
                                [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-disk-machine-types example without optional argument passed for output format.

yeedu resource list-disk-machine-types
  • Console output

[
  {
    "disk_type_id": "0",
    "cloud_provider": {
      "name": "gcp",
      "description": "Provider for creating infrastructure on Google Cloud Platform"
    },
    "name": "pd-ssd",
    "has_fixed_size": false,
    "min_size": 10,
    "max_size": 64000,
    "from_date": "2023-07-14T13:44:19.081Z",
    "to_date": null
  },
  ...
  {
    "disk_type_id": "15",
    "cloud_provider": {
      "name": "azure",
      "description": "Provider for creating infrastructure on Azure Cloud Platform"
    },
    "name": "UltraSSD_LRS",
    "has_fixed_size": false,
    "min_size": 4,
    "max_size": 65536,
    "from_date": "2023-07-14T13:44:19.081Z",
    "to_date": null
  }
]

list-credential-types

yeedu resource list-credential-types -h
usage:  list-credential-types [-h] [--json-output [{pretty,default}]]
                              [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-credential-types example without optional argument passed for output format.

yeedu resource list-credential-types
  • Console output

[
  {
    "credential_type_id": "0",
    "name": "gcp",
    "cloud_provider": {
      "name": "gcp",
      "description": "Provider for creating infrastructure on Google Cloud Platform"
    },
    "from_date": "2023-07-14T13:44:17.305Z",
    "to_date": null
  },
  {
    "credential_type_id": "1",
    "name": "aws",
    "cloud_provider": {
      "name": "aws",
      "description": "Provider for creating infrastructure on Amazon Web Services"
    },
    "from_date": "2023-07-14T13:44:17.305Z",
    "to_date": null
  },
  {
    "credential_type_id": "2",
    "name": "azure",
    "cloud_provider": {
      "name": "azure",
      "description": "Provider for creating infrastructure on Azure Cloud Platform"
    },
    "from_date": "2023-07-14T13:44:17.305Z",
    "to_date": null
  }
]

list-engine-cluster-instance-status

yeedu resource list-engine-cluster-instance-status -h
usage:  list-engine-cluster-instance-status [-h] [--json-output [{pretty,default}]]
                                            [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-engine-cluster-instance-status example without optional argument passed for output format.

yeedu resource list-engine-cluster-instance-status
  • Console output

[
  {
    "engine_cluster_instance_status_id": "0",
    "name": "INITIATING",
    "description": "Cluster will be eventually created",
    "from_date": "2023-07-14T13:44:16.802Z",
    "to_date": null
  },
  ...
  {
    "engine_cluster_instance_status_id": "8",
    "name": "RESIZING_DOWN",
    "description": "The cluster instance will scale down",
    "from_date": "2023-07-14T13:44:16.802Z",
    "to_date": null
  }
]

list-spark-compute-types

yeedu resource list-spark-compute-types -h
usage:  list-spark-compute-types [-h] [--json-output [{pretty,default}]]
                                 [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-spark-compute-types example without optional argument passed for output format.

yeedu resource list-spark-compute-types
  • Console output

[
  {
    "spark_compute_type_id": "0",
    "name": "YEEDU",
    "description": null,
    "from_date": "2023-07-14T13:44:21.102Z",
    "to_date": null
  }
]

list-spark-infra-versions

yeedu resource list-spark-infra-versions -h
usage:  list-spark-infra-versions [-h] [--json-output [{pretty,default}]]
                                  [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-spark-infra-versions example without optional argument passed for output format.

yeedu resource list-spark-infra-versions
  • Console output

[
  {
    "spark_infra_version_id": "0",
    "spark_version": "2.4.8",
    "hive_version": "3.2.3",
    "hadoop_version": "2.10.1",
    "scala_version": "2.11.10",
    "from_date": "2023-07-14T13:44:17.808Z",
    "to_date": null
  },
  {
    "spark_infra_version_id": "1",
    "spark_version": "3.2.2",
    "hive_version": "3.2.3",
    "hadoop_version": "3.2.4",
    "scala_version": "2.12.15",
    "from_date": "2023-07-14T13:44:17.808Z",
    "to_date": null
  }
]

list-spark-job-status

yeedu resource list-spark-job-status -h
usage:  list-spark-job-status [-h] [--json-output [{pretty,default}]]
                              [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-spark-job-status example without optional argument passed for output format.

yeedu resource list-spark-job-status
  • Console output

[
  {
    "spark_job_status_id": "0",
    "name": "SUBMITTED",
    "description": "Job was submitted, waiting for Application ID",
    "from_date": "2023-07-14T13:44:21.604Z",
    "to_date": null
  },
  ...
  {
    "spark_job_status_id": "8",
    "name": "KILLED",
    "description": "The process was killed",
    "from_date": "2023-07-14T13:44:21.604Z",
    "to_date": null
  }
]

list-workflow-execution-states

yeedu resource list-workflow-execution-states -h
usage:  list-workflow-execution-states [-h] [--json-output [{pretty,default}]]
                                       [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-workflow-execution-states example without optional argument passed for output format.

yeedu resource list-workflow-execution-states
  • Console output

[
  {
    "workflow_execution_state_id": -1,
    "name": "NONE",
    "description": "NONE",
    "from_date": "2023-07-14T13:44:20.097Z",
    "to_date": null
  },
  ...
  {
    "workflow_execution_state_id": 99,
    "name": "DONE",
    "description": "NONE",
    "from_date": "2023-07-14T13:44:20.097Z",
    "to_date": null
  }
]

list-workflow-types

yeedu resource list-workflow-types -h
usage:  list-workflow-types [-h] [--json-output [{pretty,default}]]
                            [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-workflow-types example without optional argument passed for output format.

yeedu resource list-workflow-types
  • Console output

[
  {
    "workflow_type_id": "0",
    "name": "spark_start",
    "queue_name": "yeedu.workflows.usi.start",
    "description": null,
    "from_date": "2023-07-14T13:44:20.600Z",
    "to_date": null
  },
  ...
  {
    "workflow_type_id": "8",
    "name": "cosi_resize_down",
    "queue_name": "yeedu.workflows.cosi",
    "description": null,
    "from_date": "2023-07-14T13:44:20.600Z",
    "to_date": null
  }
]

Volume Configuration

Command Name

Utility

create-volume-conf

To create the Volume Configuration.

list-volume-confs

To list all the available Volume Configurations.

get-volume-conf

To get information about a specific Volume Configuration.

edit-volume-conf

To edit a specific Volume Configuration.

create-volume-conf

yeedu resource create-volume-conf -h
usage:  create-volume-conf [-h] --name [NAME] --availability_zone_id
                           AVAILABILITY_ZONE_ID --encrypted true,false [--size [SIZE]]
                           --disk_type_id DISK_TYPE_ID --machine_volume_num
                           MACHINE_VOLUME_NUM --machine_volume_strip_num
                           MACHINE_VOLUME_STRIP_NUM [--json-output [{pretty,default}]]
                           [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --name [NAME]         Provide name to create-volume-conf.
  --availability_zone_id AVAILABILITY_ZONE_ID
                        Provide availability_zone_id to create-volume-conf.
  --encrypted true,false
                        Provide encrypted to create-volume-conf.
  --size [SIZE]         Provide size to create-volume-conf.
  --disk_type_id DISK_TYPE_ID
                        Provide disk_type to create-volume-conf.
  --machine_volume_num MACHINE_VOLUME_NUM
                        Provide machine_volume_num to create-volume-conf.
  --machine_volume_strip_num MACHINE_VOLUME_STRIP_NUM
                        Provide machine_volume_strip_num to create-volume-conf.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create-volume-conf example with all the required arguments passed.

yeedu resource create-volume-conf --name="yeedu volume" --availability_zone_id=75 --encrypted=false --disk_type_id=4  --machine_volume_num=1 --machine_volume_strip_num=1
  • Console output

{
  "volume_conf_id": "1",
  "name": "yeedu volume",
  "availability_zone_id": "75",
  "encrypted": false,
  "size": "375",
  "disk_type_id": "4",
  "disk_type_name": "local-ssd",
  "machine_volume_num": 1,
  "machine_volume_strip_num": 1,
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T10:57:08.387Z",
  "from_date": "2023-07-20T10:57:08.387Z",
  "to_date": null
}

list-volume-confs

yeedu resource list-volume-confs -h
usage:  list-volume-confs [-h] [--cloud_provider [{GCP,AWS,AZURE}]]
                          [--json-output [{pretty,default}]]
                          [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cloud_provider [{GCP,AWS,AZURE}]
                        Cloud Provider that will be used for filtering list.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-volume-confs example with optional arguments passed for output format.

yeedu resource list-volume-confs --cloud_provider="GCP"
  • Console output

[
  {
    "volume_conf_id": "1",
    "name": "yeedu volume",
    "availability_zone": {
      "name": "us-central1-a",
      "region": "us-central1",
      "description": "Council Bluffs, Iowa, North America"
    },
    "encrypted": false,
    "size": "375",
    "disk_type": {
      "name": "local-ssd",
      "has_fixed_size": true,
      "min_size": 375,
      "max_size": 375
    },
    "machine_volume_num": 1,
    "machine_volume_strip_num": 1,
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
    "created_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "modified_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "last_update_date": "2023-07-20T10:57:08.387Z",
    "from_date": "2023-07-20T10:57:08.387Z",
    "to_date": null
  }
]

get-volume-conf

yeedu resource get-volume-conf -h
usage:  get-volume-conf [-h] --volume_conf_id VOLUME_CONF_ID
                        [--json-output [{pretty,default}]]
                        [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --volume_conf_id VOLUME_CONF_ID
                        Provide volume_conf_id to get information about a specific
                        Volume Configuration.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-volume-conf example with the required argument ‘–volume_conf_id’ passed.

yeedu resource get-volume-conf --volume_conf_id=1
  • Console output

{
  "volume_conf_id": "1",
  "name": "yeedu volume",
  "availability_zone": {
    "name": "us-central1-a",
    "region": "us-central1",
    "description": "Council Bluffs, Iowa, North America"
  },
  "encrypted": false,
  "size": "375",
  "disk_type": {
    "name": "local-ssd",
    "has_fixed_size": true,
    "min_size": 375,
    "max_size": 375
  },
  "machine_volume_num": 1,
  "machine_volume_strip_num": 1,
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "modified_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "last_update_date": "2023-07-20T10:57:08.387Z",
  "from_date": "2023-07-20T10:57:08.387Z",
  "to_date": null
}

edit-volume-conf

yeedu resource edit-volume-conf -h
usage:  edit-volume-conf [-h] --volume_conf_id VOLUME_CONF_ID [--name [NAME]]
                         [--encrypted [true,false]]
                         [--machine_volume_num MACHINE_VOLUME_NUM]
                         [--machine_volume_strip_num MACHINE_VOLUME_STRIP_NUM]
                         [--json-output [{pretty,default}]]
                         [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --volume_conf_id VOLUME_CONF_ID
                        Provide specific volume_conf_id to edit-volume-conf.
  --name [NAME]         Provide name to edit-volume-conf.
  --encrypted [true,false]
                        Provide encrypted to edit-volume-conf.
  --machine_volume_num MACHINE_VOLUME_NUM
                        Provide machine_volume_num to edit-volume-conf.
  --machine_volume_strip_num MACHINE_VOLUME_STRIP_NUM
                        Provide machine_volume_strip_num to edit-volume-conf.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • edit-volume-conf example with the required ‘–volume_conf_id’ argument and other optional argument is passed which is to be updated.

yeedu resource edit-volume-conf --volume_conf_id=1 --encrypted=true
  • Console output

{
  "volume_conf_id": "1",
  "name": "yeedu volume",
  "availability_zone_id": "75",
  "encrypted": true,
  "size": "375",
  "disk_type_id": "4",
  "disk_type_name": "local-ssd",
  "machine_volume_num": 1,
  "machine_volume_strip_num": 1,
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T10:59:12.499Z",
  "from_date": "2023-07-20T10:57:08.387Z",
  "to_date": null
}

Network Configuration

Command Name

Utility

create-network-conf

To create the Network Configuration.

list-network-confs

To get information about Network Configurations for a specific Cloud Provider.

get-network-conf

To get information about a specific Network Configuration for a specific Cloud Provider.

edit-network-conf

To edit a specific Network Configuration based on cloud provider Id and network Id.

create-network-conf

yeedu resource create-network-conf -h
usage:  create-network-conf [-h] --network_project_id NETWORK_PROJECT_ID --network_name
                            NETWORK_NAME --subnet SUBNET --availability_zone_id
                            AVAILABILITY_ZONE_ID --cloud_provider_id CLOUD_PROVIDER_ID
                            [--json-output [{pretty,default}]]
                            [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --network_project_id NETWORK_PROJECT_ID
                        Provide network_project_id to create-network-conf.
  --network_name NETWORK_NAME
                        Provide network_name to create-network-conf.
  --subnet SUBNET       Provide subnet to create-network-conf.
  --availability_zone_id AVAILABILITY_ZONE_ID
                        Provide availability_zone_id to create-network-conf.
  --cloud_provider_id CLOUD_PROVIDER_ID
                        Provide cloud_provider_id to create-network-conf.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create-network-conf example with all the required and optional arguments passed.

yeedu resource create-network-conf --network_project_id="yeedu" --network_name='yeedu-spark-vpc' --subnet='custom-subnet-yeedu' --availability_zone_id=75 --cloud_provider_id=0
  • Console output

{
  "network_conf_id": "1",
  "network_project_id": "yeedu",
  "network_name": "yeedu-spark-vpc",
  "subnet": "custom-subnet-yeedu",
  "availability_zone_id": "75",
  "cloud_provider_id": "0",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:00:14.845Z",
  "from_date": "2023-07-20T11:00:14.845Z",
  "to_date": null
}

list-network-confs

yeedu resource list-network-confs -h
usage:  list-network-confs [-h] [--cloud_provider [{GCP,AWS,AZURE}]]
                           [--json-output [{pretty,default}]]
                           [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cloud_provider [{GCP,AWS,AZURE}]
                        Provide specific cloud_provider_id to get information about
                        related Network Configurations.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-network-confs example with the --cloud_provider_id required arguments passed.

yeedu resource list-network-confs --cloud_provider="GCP"
  • Console output

[
  {
    "network_conf_id": "1",
    "network_project_id": "yeedu",
    "network_name": "yeedu-spark-vpc",
    "subnet": "custom-subnet-yeedu",
    "availability_zone": {
      "name": "us-central1-a",
      "region": "us-central1",
      "description": "Council Bluffs, Iowa, North America"
    },
    "cloud_provider": {
      "name": "gcp",
      "description": "Provider for creating infrastructure on Google Cloud Platform"
    },
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
    "created_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "modified_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "last_update_date": "2023-07-20T11:00:14.845Z",
    "from_date": "2023-07-20T11:00:14.845Z",
    "to_date": null
  }
]

get-network-conf

yeedu resource get-network-conf -h
usage:  get-network-conf [-h] --network_conf_id NETWORK_CONF_ID
                         [--json-output [{pretty,default}]]
                         [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --network_conf_id NETWORK_CONF_ID
                        Provide id to get information about a specific network
                        Configuration.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-network-conf example with the required ‘–network_conf_id’ and optional ‘–cloud_provider_id’ argument passed.

yeedu resource get-network-conf --network_conf_id=1
  • Console output

{
  "network_conf_id": "1",
  "network_project_id": "yeedu",
  "network_name": "yeedu-spark-vpc",
  "subnet": "custom-subnet-yeedu",
  "availability_zone": {
    "name": "us-central1-a",
    "region": "us-central1",
    "description": "Council Bluffs, Iowa, North America"
  },
  "cloud_provider": {
    "name": "gcp",
    "description": "Provider for creating infrastructure on Google Cloud Platform"
  },
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "modified_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "last_update_date": "2023-07-20T11:00:14.845Z",
  "from_date": "2023-07-20T11:00:14.845Z",
  "to_date": null
}

edit-network-conf

yeedu resource edit-network-conf -h
usage:  edit-network-conf [-h] --network_conf_id NETWORK_CONF_ID
                          [--network_name [NETWORK_NAME]] [--subnet [SUBNET]]
                          [--json-output [{pretty,default}]]
                          [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --network_conf_id NETWORK_CONF_ID
                        Provide a specific Network Configuration id to edit-network-
                        conf.
  --network_name [NETWORK_NAME]
                        Provide network_name to edit-network-conf.
  --subnet [SUBNET]     Provide subnet to edit-network-conf.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • edit-network-conf example with the required ‘–network_conf_id’ and ‘–cloud_provider_id’ argument and other optional argument is passed which is to be updated.

yeedu resource edit-network-conf --network_conf_id=1 --network_name="yeedu-spark-vpc"
  • Console output

{
  "network_conf_id": "1",
  "network_project_id": "yeedu",
  "network_name": "yeedu-spark-vpc",
  "subnet": "custom-subnet-yeedu",
  "availability_zone_id": "75",
  "cloud_provider_id": "0",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:02:57.824Z",
  "from_date": "2023-07-20T11:00:14.845Z",
  "to_date": null
}

Boot Disk Image Config

Command Name

Utility

create-boot-disk-image-conf

To create a Boot Disk Image Configuration.

get-boot-disk-image-conf

To get the information about a specific Boot Disk Image Configuration.

list-boot-disk-image-confs

To list all the available Boot Disk Image Configurations.

create-boot-disk-image-conf

yeedu resource create-boot-disk-image-conf -h
usage:  create-boot-disk-image-conf [-h] --cloud_provider_id CLOUD_PROVIDER_ID
                                    --boot_disk_image BOOT_DISK_IMAGE
                                    [--json-output [{pretty,default}]]
                                    [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cloud_provider_id CLOUD_PROVIDER_ID
                        Provide boot_disk_image_config to create-boot-disk-image-conf.
  --boot_disk_image BOOT_DISK_IMAGE
                        Provide boot_disk_image to create-boot-disk-image-conf.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create-boot-disk-image-conf example with all the required arguments passed.

yeedu resource create-boot-disk-image-conf --cloud_provider_id=0 --boot_disk_image="ubuntu-os-cloud/ubuntu-2004-lts"
  • Console output

{
  "boot_disk_image_id": "1",
  "boot_disk_image": "ubuntu-os-cloud/ubuntu-2004-lts",
  "cloud_provider_id": "0",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:04:02.811Z",
  "from_date": "2023-07-20T11:04:02.811Z",
  "to_date": null
}

get-boot-disk-image-conf

yeedu resource get-boot-disk-image-conf -h
usage:  get-boot-disk-image-conf [-h] --boot_disk_image_id BOOT_DISK_IMAGE_ID
                                 [--json-output [{pretty,default}]]
                                 [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --boot_disk_image_id BOOT_DISK_IMAGE_ID
                        Provide Boot Disk Image Id to get information about a specific
                        Boot Disk Image Configuration.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-boot-disk-image-conf example with required arguments passed.

yeedu resource get-boot-disk-image-conf --boot_disk_image_id=1
  • Console output

{
  "boot_disk_image_id": "1",
  "boot_disk_image": "ubuntu-os-cloud/ubuntu-2004-lts",
  "cloud_provider": {
    "name": "gcp",
    "description": "Provider for creating infrastructure on Google Cloud Platform"
  },
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "modified_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "last_update_date": "2023-07-20T11:04:02.811Z",
  "from_date": "2023-07-20T11:04:02.811Z",
  "to_date": null
}

list-boot-disk-image-confs

yeedu resource list-boot-disk-image-confs -h
usage:  list-boot-disk-image-confs [-h] [--cloud_provider [{GCP,AWS,AZURE}]]
                                   [--json-output [{pretty,default}]]
                                   [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cloud_provider [{GCP,AWS,AZURE}]
                        Provide cloud_provider to list all the related boot disk image
                        configs for a specific Cloud Provider.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-boot-disk-image-confs example with all the required arguments passed.

yeedu resource list-boot-disk-image-confs --cloud_provider="GCP"
  • Console output

[
  {
    "boot_disk_image_id": "1",
    "boot_disk_image": "ubuntu-os-cloud/ubuntu-2004-lts",
    "cloud_provider": {
      "name": "gcp",
      "description": "Provider for creating infrastructure on Google Cloud Platform"
    },
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
    "created_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "modified_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "last_update_date": "2023-07-20T11:04:02.811Z",
    "from_date": "2023-07-20T11:04:02.811Z",
    "to_date": null
  }
]

Machine Configuration

Command Name

Utility

create-machine-conf

To create the Machine Configuration.

list-machine-confs

To list all the available Machine Configurations.

get-machine-conf

To get information about a specific Machine Configuration.

edit-machine-conf

To edit a specific Machine Configuration.

create-machine-conf

yeedu resource create-machine-conf -h
usage:  create-machine-conf [-h] [--network_tags ['value1,value2']]
                            [--labels LABELS [LABELS ...]]
                            --service_account_instance_profile
                            SERVICE_ACCOUNT_INSTANCE_PROFILE --boot_disk_image_id
                            BOOT_DISK_IMAGE_ID --machine_type_id MACHINE_TYPE_ID
                            [--is_spot_instance [true,false]]
                            [--enable_public_ip [true,false]]
                            [--block_project_ssh_keys [true,false]]
                            [--bootstrap_shell_script_file_path BOOTSTRAP_SHELL_SCRIPT_FILE_PATH]
                            --network_conf_id NETWORK_CONF_ID --volume_conf_id
                            VOLUME_CONF_ID [--json-output [{pretty,default}]]
                            [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --network_tags ['value1,value2']
                        Provide network_tags to create-machine-conf. (default: [])
  --labels LABELS [LABELS ...]
                        Provide labels to create-machine-conf.
  --service_account_instance_profile SERVICE_ACCOUNT_INSTANCE_PROFILE
                        Provide service_account_instance_profile to create-machine-
                        conf.
  --boot_disk_image_id BOOT_DISK_IMAGE_ID
                        Provide boot_disk_image_id to create-machine-conf.
  --machine_type_id MACHINE_TYPE_ID
                        Provide machine_type_id to create-machine-conf.
  --is_spot_instance [true,false]
                        Provide is_spot_instance to create-machine-conf. (default:
                        false)
  --enable_public_ip [true,false]
                        Provide enable_public_ip to create-machine-conf. (default:
                        false)
  --block_project_ssh_keys [true,false]
                        Provide block_project_ssh_keys to create-machine-conf.
                        (default: true)
  --bootstrap_shell_script_file_path BOOTSTRAP_SHELL_SCRIPT_FILE_PATH
                        Provide bootstrap_shell_script_file_path to create-machine-conf.
  --network_conf_id NETWORK_CONF_ID
                        Provide network_conf_id to create-machine-conf.
  --volume_conf_id VOLUME_CONF_ID
                        Provide volume_conf_id to create-machine-conf.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create-machine-conf example with all the required and optional arguments passed.

yeedu resource create-machine-conf --network_tags="yeedu,iap-allow" --labels="env=test" --labels="test=dev" --service_account_instance_profile="yeedu@yeedu.iam.gserviceaccount.com" --boot_disk_image_id=1 --machine_type_id=15 --is_spot_instance=false --enable_public_ip=true --block_project_ssh_keys=true --network_conf_id=1 --volume_conf_id=1
  • Console output

{
  "machine_conf_id": "1",
  "network_tags": [
    "yeedu",
    "iap-allow"
  ],
  "labels": {
    "env": "test",
    "test": "dev",
    "resource": "yeedu",
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538"
  },
  "service_account_instance_profile": "yeedu@yeedu.iam.gserviceaccount.com",
  "boot_disk_image_id": "1",
  "machine_type_id": "15",
  "is_spot_instance": false,
  "enable_public_ip": true,
  "block_project_ssh_keys": true,
  "bootstrap_shell_script": null,
  "network_conf_id": "1",
  "volume_conf_id": "1",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:06:21.454Z",
  "from_date": "2023-07-20T11:06:21.454Z",
  "to_date": null
}

list-machine-confs

yeedu resource list-machine-confs -h
usage:  list-machine-confs [-h] [--cloud_provider [{GCP,AWS,AZURE}]]
                           [--json-output [{pretty,default}]]
                           [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cloud_provider [{GCP,AWS,AZURE}]
                        Cloud Provider that will be used for filtering list.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-machine-confs example without optional arguments passed for output format.

yeedu resource list-machine-confs --cloud_provider="GCP"
  • Console output

[
  {
    "machine_conf_id": "1",
    "network_tags": [
      "yeedu",
      "iap-allow"
    ],
    "labels": {
      "env": "test",
      "test": "dev",
      "resource": "yeedu",
      "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538"
    },
    "service_account_instance_profile": "yeedu@yeedu.iam.gserviceaccount.com",
    "boot_disk_image_config": {
      "boot_disk_image_id": "1",
      "boot_disk_image": "ubuntu-os-cloud/ubuntu-2004-lts",
      "cloud_provider": {
        "name": "gcp",
        "description": "Provider for creating infrastructure on Google Cloud Platform"
      }
    },
    "machine_type": {
      "machine_type_id": "15",
      "name": "c2d-highcpu-16",
      "vcpus": 16,
      "memory": "32 GiB",
      "has_cuda": false,
      "gpu_model": null,
      "gpus": null,
      "gpu_memory": null
    },
    "is_spot_instance": false,
    "enable_public_ip": true,
    "block_project_ssh_keys": true,
    "bootstrap_shell_script": null,
    "machine_network": {
      "network_conf_id": "1",
      "network_project_id": "yeedu",
      "network_name": "yeedu-spark-vpc",
      "subnet": "custom-subnet-yeedu",
      "availability_zone": {
        "name": "us-central1-a",
        "region": "us-central1",
        "description": "Council Bluffs, Iowa, North America"
      }
    },
    "machine_volume_config": {
      "volume_conf_id": "1",
      "name": "yeedu volume",
      "encrypted": false,
      "size": "375",
      "machine_volume_num": 1,
      "machine_volume_strip_num": 1,
      "availability_zone": {
        "name": "us-central1-a",
        "region": "us-central1",
        "description": "Council Bluffs, Iowa, North America"
      },
      "disk_type": {
        "name": "local-ssd",
        "has_fixed_size": true,
        "min_size": 375,
        "max_size": 375
      }
    },
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
    "created_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "modified_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "last_update_date": "2023-07-20T11:06:21.454Z",
    "from_date": "2023-07-20T11:06:21.454Z",
    "to_date": null
  }
]

get-machine-conf

yeedu resource get-machine-conf -h
usage:  get-machine-conf [-h] --machine_conf_id MACHINE_CONF_ID
                         [--json-output [{pretty,default}]]
                         [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --machine_conf_id MACHINE_CONF_ID
                        Provide machine config id to get information about a specific
                        Machine Configuration.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-machine-conf example with the required ‘–machine_conf_id’ arguments passed.

yeedu resource get-machine-conf --machine_conf_id=1
  • Console output

{
  "machine_conf_id": "1",
  "network_tags": [
    "yeedu",
    "iap-allow"
  ],
  "labels": {
    "env": "test",
    "test": "dev",
    "resource": "yeedu",
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538"
  },
  "service_account_instance_profile": "yeedu@yeedu.iam.gserviceaccount.com",
  "boot_disk_image_config": {
    "boot_disk_image_id": "1",
    "boot_disk_image": "ubuntu-os-cloud/ubuntu-2004-lts",
    "cloud_provider": {
      "name": "gcp",
      "description": "Provider for creating infrastructure on Google Cloud Platform"
    }
  },
  "machine_type": {
    "machine_type_id": "15",
    "name": "c2d-highcpu-16",
    "vcpus": 16,
    "memory": "32 GiB",
    "has_cuda": false,
    "gpu_model": null,
    "gpus": null,
    "gpu_memory": null
  },
  "is_spot_instance": false,
  "enable_public_ip": true,
  "block_project_ssh_keys": true,
  "bootstrap_shell_script": null,
  "machine_network": {
    "network_conf_id": "1",
    "network_project_id": "yeedu",
    "network_name": "yeedu-spark-vpc",
    "subnet": "custom-subnet-yeedu",
    "availability_zone": {
      "name": "us-central1-a",
      "region": "us-central1",
      "description": "Council Bluffs, Iowa, North America"
    }
  },
  "machine_volume_config": {
    "volume_conf_id": "1",
    "name": "yeedu volume",
    "encrypted": false,
    "size": "375",
    "machine_volume_num": 1,
    "machine_volume_strip_num": 1,
    "availability_zone": {
      "name": "us-central1-a",
      "region": "us-central1",
      "description": "Council Bluffs, Iowa, North America"
    },
    "disk_type": {
      "name": "local-ssd",
      "has_fixed_size": true,
      "min_size": 375,
      "max_size": 375
    }
  },
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "modified_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "last_update_date": "2023-07-20T11:06:21.454Z",
  "from_date": "2023-07-20T11:06:21.454Z",
  "to_date": null
}

edit-machine-conf

yeedu resource edit-machine-conf -h
usage:  edit-machine-conf [-h] --machine_conf_id MACHINE_CONF_ID
                          [--network_tags ['value1,value2']]
                          [--labels LABELS [LABELS ...]]
                          [--service_account_instance_profile [SERVICE_ACCOUNT_INSTANCE_PROFILE]]
                          [--is_spot_instance [true,false]]
                          [--enable_public_ip [true,false]]
                          [--block_project_ssh_keys [true,false]]
                          [--bootstrap_shell_script_file_path [BOOTSTRAP_SHELL_SCRIPT_FILE_PATH]]
                          [--json-output [{pretty,default}]]
                          [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --machine_conf_id MACHINE_CONF_ID
                        Provide a specific machine configuration id to edit-machine-
                        conf.
  --network_tags ['value1,value2']
                        Provide network_tags to edit-machine-conf.
  --labels LABELS [LABELS ...]
                        Provide labels to edit-machine-conf.
  --service_account_instance_profile [SERVICE_ACCOUNT_INSTANCE_PROFILE]
                        Provide service_account_instance_profile to edit-machine-conf.
  --is_spot_instance [true,false]
                        Provide is_spot_instance to edit-machine-conf.
  --enable_public_ip [true,false]
                        Provide enable_public_ip to edit-machine-conf.
  --block_project_ssh_keys [true,false]
                        Provide block_project_ssh_keys to edit-machine-conf.
  --bootstrap_shell_script_file_path [BOOTSTRAP_SHELL_SCRIPT_FILE_PATH]
                        Provide bootstrap_shell_script_file_path to edit-machine-conf.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • edit-machine-conf example with the required ‘–machine_conf_id’ argument argument and other optional argument is passed which is to be updated.

yeedu resource edit-machine-conf --machine_conf_id=1 --network_tags='yeedu,network'
  • Console output

{
  "machine_conf_id": "1",
  "network_tags": [
    "yeedu",
    "network"
  ],
  "labels": {
    "env": "test",
    "test": "dev",
    "resource": "yeedu",
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538"
  },
  "service_account_instance_profile": "yeedu@yeedu.iam.gserviceaccount.com",
  "boot_disk_image_id": "1",
  "machine_type_id": "15",
  "is_spot_instance": false,
  "enable_public_ip": true,
  "block_project_ssh_keys": true,
  "bootstrap_shell_script": null,
  "network_conf_id": "1",
  "volume_conf_id": "1",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:11:29.210Z",
  "from_date": "2023-07-20T11:06:21.454Z",
  "to_date": null
}

Credentials Configuration

Command Name

Utility

create-credential-conf

To create a Credential Configuration.

list-credential-confs

To list all the available Credential Configurations.

get-credential-conf

To get the information about a specific Credential Configuration.

edit-credential-conf

To edit a specific Credential Configuration.

delete-credential-conf

To delete a specific Credential Configuration.

create-credential-conf

yeedu resource create-credential-conf -h
usage:  create-credential-conf [-h] --credential_type_id CREDENTIAL_TYPE_ID
                               --base64_encoded_credentials BASE64_ENCODED_CREDENTIALS
                               --name NAME [--json-output [{pretty,default}]]
                               [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --credential_type_id CREDENTIAL_TYPE_ID
                        Provide credential_type_id to create-credential-conf.
  --base64_encoded_credentials BASE64_ENCODED_CREDENTIALS
                        Provide base64_encoded_credentials to create-credential-conf.
  --name NAME           Provide name to create-credential-conf.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create-credential-conf example with all the required arguments passed.

yeedu resource create-credential-conf --credential_type_id=0 --base64_encoded_credentials='ew0KICAieWVlZHVfY3JlZGVudGlhbHMiOiAiRHVtbXkgQ3JlZGVudGlhbHMgQ29uZmlndXJhdGlvbiINCn0' --name='yeedu'
  • Console output

{
  "credentials_conf_id": "1",
  "credential_type_id": "0",
  "name": "yeedu",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:14:16.832Z",
  "from_date": "2023-07-20T11:14:16.832Z",
  "to_date": null
}

list-credential-confs

yeedu resource list-credential-confs -h
usage:  list-credential-confs [-h] [--cloud_provider [{GCP,AWS,AZURE}]]
                              [--json-output [{pretty,default}]]
                              [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cloud_provider [{GCP,AWS,AZURE}]
                        Cloud Provider that will be used for filtering list.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-credential-confs example without optional arguments passed for output format.

yeedu resource list-credential-confs --cloud_provider="GCP"
  • Console output

[
  {
    "credentials_conf_id": "1",
    "credential_type": {
      "name": "gcp",
      "cloud_provider": {
        "name": "gcp",
        "description": "Provider for creating infrastructure on Google Cloud Platform"
      }
    },
    "name": "yeedu",
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
    "created_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "modified_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "last_update_date": "2023-07-20T11:14:16.832Z",
    "from_date": "2023-07-20T11:14:16.832Z",
    "to_date": null
  }
]

get-credential-conf

yeedu resource get-credential-conf -h
usage:  get-credential-conf [-h] --credentials_conf_id CREDENTIALS_CONF_ID
                            [--json-output [{pretty,default}]]
                            [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --credentials_conf_id CREDENTIALS_CONF_ID
                        Provide credentials_conf_id to get information about a specific
                        credential configuration.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-credential-conf example with the required ‘–credentials_conf_id’ arguments passed.

yeedu resource get-credential-conf --credentials_conf_id=1
  • Console output

{
  "credentials_conf_id": "1",
  "credential_type": {
    "name": "gcp",
    "cloud_provider": {
      "name": "gcp",
      "description": "Provider for creating infrastructure on Google Cloud Platform"
    }
  },
  "name": "yeedu",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "modified_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "last_update_date": "2023-07-20T11:14:16.832Z",
  "from_date": "2023-07-20T11:14:16.832Z",
  "to_date": null
}

edit-credential-conf

yeedu resource edit-credential-conf -h
usage:  edit-credential-conf [-h] --credentials_conf_id CREDENTIALS_CONF_ID
                             [--base64_encoded_credentials BASE64_ENCODED_CREDENTIALS]
                             [--name [NAME]] [--json-output [{pretty,default}]]
                             [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --credentials_conf_id CREDENTIALS_CONF_ID
                        Provide a specific credentials cofig id to edit-credential-
                        conf.
  --base64_encoded_credentials BASE64_ENCODED_CREDENTIALS
                        Provide base64_encoded_credentials to edit-credential-conf.
  --name [NAME]         Provide name to edit-credential-conf.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • edit-credential-conf example with the required ‘–credentials_conf_id’ argument and other optional argument is passed which is to be updated.

yeedu resource edit-credential-conf --credentials_conf_id=1 --name='yeedu-svc'
  • Console output

{
  "credentials_conf_id": "1",
  "credential_type_id": "0",
  "name": "yeedu-svc",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:16:35.568Z",
  "from_date": "2023-07-20T11:14:16.832Z",
  "to_date": null
}

delete-credential-conf

yeedu resource delete-credential-conf -h
usage:  delete-credential-conf [-h] --credentials_conf_id CREDENTIALS_CONF_ID
                               [--json-output [{pretty,default}]]
                               [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --credentials_conf_id CREDENTIALS_CONF_ID
                        Provide credentials_conf_id to delete a specific Credential
                        Configuration.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • delete-credential-conf example with the required ‘–credentials_conf_id’ argument passed.

yeedu resource delete-credential-conf --credentials_conf_id=1
  • Console output

{
  "message": "Deleted Credentials Configuration: 1"
}

Object Storage Manager

Command Name

Utility

create-object-storage-manager

To create a Object Storage Manager.

list-object-storage-managers

To list all the available Object Storage Manager Configurations.

get-object-storage-manager

To get information about a specific Object Storage Manager.

edit-object-storage-manager

To edit a specific Object Storage Manager Configuration.

delete-object-storage-manager

To delete a specific Object Storage Manager.

create-object-storage-manager

yeedu resource create-object-storage-manager -h
usage:  create-object-storage-manager [-h] --name NAME --credentials_conf_id
                                      CREDENTIALS_CONF_ID --object_storage_bucket_name
                                      OBJECT_STORAGE_BUCKET_NAME
                                      [--json-output [{pretty,default}]]
                                      [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --name NAME           Provide name to create-object-storage-manager.
  --credentials_conf_id CREDENTIALS_CONF_ID
                        Provide credentials_conf_id to create-object-storage-manager.
  --object_storage_bucket_name OBJECT_STORAGE_BUCKET_NAME
                        Provide object_storage_bucket_name to create-object-storage-
                        manager.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create-object-storage-manager example with all the required arguments passed.

yeedu resource create-object-storage-manager --name="Yeedu Object Storage Manager" --credentials_conf_id=1 --object_storage_bucket_name="yeedu"
  • Console output

{
  "object_storage_manager_id": "1",
  "name": "Yeedu Object Storage Manager",
  "credentials_conf_id": "1",
  "object_storage_bucket_name": "yeedu",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:17:58.442Z",
  "from_date": "2023-07-20T11:17:58.442Z",
  "to_date": null
}

list-object-storage-managers

yeedu resource list-object-storage-managers -h
usage:  list-object-storage-managers [-h] [--cloud_provider [{GCP,AWS,AZURE}]]
                                     [--json-output [{pretty,default}]]
                                     [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cloud_provider [{GCP,AWS,AZURE}]
                        Cloud Provider that will be used for filtering list.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-object-storage-managers example with all the required arguments passed.

yeedu resource list-object-storage-managers --cloud_provider="GCP"
  • Console output

[
  {
    "object_storage_manager_id": "1",
    "name": "Yeedu Object Storage Manager",
    "credentials_config": {
      "name": "yeedu-svc",
      "credential_type": {
        "name": "gcp",
        "cloud_provider": {
          "name": "gcp",
          "description": "Provider for creating infrastructure on Google Cloud Platform"
        }
      }
    },
    "object_storage_bucket_name": "yeedu",
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
    "created_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "modified_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "last_update_date": "2023-07-20T11:17:58.442Z",
    "from_date": "2023-07-20T11:17:58.442Z",
    "to_date": null
  }
]

get-object-storage-manager

yeedu resource get-object-storage-manager -h
usage:  get-object-storage-manager [-h] --object_storage_manager_id
                                   OBJECT_STORAGE_MANAGER_ID
                                   [--json-output [{pretty,default}]]
                                   [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --object_storage_manager_id OBJECT_STORAGE_MANAGER_ID
                        Provide Object Storage Manager Id to get information about a
                        specific Object Storage Manager.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-object-storage-manager example with required arguments passed.

yeedu resource get-object-storage-manager --object_storage_manager_id=1
  • Console output

{
  "object_storage_manager_id": "1",
  "name": "Yeedu Object Storage Manager",
  "credentials_config": {
    "name": "yeedu-svc",
    "credential_type": {
      "name": "gcp",
      "cloud_provider": {
        "name": "gcp",
        "description": "Provider for creating infrastructure on Google Cloud Platform"
      }
    }
  },
  "object_storage_bucket_name": "yeedu",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "modified_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "last_update_date": "2023-07-20T11:17:58.442Z",
  "from_date": "2023-07-20T11:17:58.442Z",
  "to_date": null
}

edit-object-storage-manager

yeedu resource edit-object-storage-manager -h
usage:  edit-object-storage-manager [-h] --object_storage_manager_id
                                    OBJECT_STORAGE_MANAGER_ID [--name NAME]
                                    [--object_storage_bucket_name [OBJECT_STORAGE_BUCKET_NAME]]
                                    [--json-output [{pretty,default}]]
                                    [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --object_storage_manager_id OBJECT_STORAGE_MANAGER_ID
                        Provide object_storage_manager_id to edit information about a
                        specific Object Storage Manager.
  --name NAME           Provide name to edit-object-storage-manager.
  --object_storage_bucket_name [OBJECT_STORAGE_BUCKET_NAME]
                        Provide object_storage_bucket_name to edit-object-storage-
                        manager.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • edit-object-storage-manager example with all the required arguments passed which needs to be updated.

yeedu resource edit-object-storage-manager --object_storage_manager_id=1 --object_storage_bucket_name="yeedu-test"
  • Console output

{
  "object_storage_manager_id": "1",
  "name": "Yeedu Object Storage Manager",
  "credentials_conf_id": "1",
  "object_storage_bucket_name": "yeedu-test",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:20:36.654Z",
  "from_date": "2023-07-20T11:17:58.442Z",
  "to_date": null
}

delete-object-storage-manager

yeedu resource delete-object-storage-manager -h
usage:  delete-object-storage-manager [-h] --object_storage_manager_id
                                      OBJECT_STORAGE_MANAGER_ID
                                      [--json-output [{pretty,default}]]
                                      [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --object_storage_manager_id OBJECT_STORAGE_MANAGER_ID
                        Provide object_storage_manager_id to delete a specific Object
                        Storage Manager.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • delete-object-storage-manager example with required arguments passed.

yeedu resource delete-object-storage-manager --object_storage_manager_id=1
  • Console output

{
  "message": "Deleted Object Storage Manager Configuration: 1"
}

Object Storage Manager Files

Command Name

Utility

create-object-storage-manager-file

To create a Object Storage Manager Files.

list-object-storage-manager-files

To list all the available Object Storage Manager Files.

get-object-storage-manager-file

To get information about a specific Object Storage Manager File.

delete-object-storage-manager-file

To delete a specific Object Storage Manager File.

create-object-storage-manager-file

yeedu resource create-object-storage-manager-file -h
usage:  create-object-storage-manager-file [-h] --object_storage_manager_id
                                           OBJECT_STORAGE_MANAGER_ID --local_file_path
                                           LOCAL_FILE_PATH
                                           [--preserve_path [{true,false}]]
                                           [--overwrite [{true,false}]]
                                           [--json-output [{pretty,default}]]
                                           [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --object_storage_manager_id OBJECT_STORAGE_MANAGER_ID
                        Provide credential_fileig_id to create-object-storage-manager-
                        file.
  --local_file_path LOCAL_FILE_PATH
                        Provide local_file_path to create-object-storage-manager-file.
  --preserve_path [{true,false}]
                        Provide preserve_path to create-object-storage-manager-file.
                        (default: false)
  --overwrite [{true,false}]
                        Provide overwrite to create-object-storage-manager-file.
                        (default: false)
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create-object-storage-manager-file example with all the required arguments passed.

yeedu resource create-object-storage-manager-file --object_storage_manager_id=1 --local_file_path='/home/user/spark-examples_2.11-2.4.8.jar'
  • Console output

{
  "object_storage_manager_file_id": "1",
  "object_storage_manager_id": "1",
  "file_name": "spark-examples_2.11-2.4.8.jar",
  "full_file_path": "file:///yeedu/object-storage-manager/spark-examples_2.11-2.4.8.jar",
  "file_size_bytes": "2017856",
  "file_type": "jar",
  "local_file_path": null,
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:22:40.313Z",
  "from_date": "2023-07-20T11:22:40.313Z",
  "to_date": null
}

list-object-storage-manager-files

yeedu resource list-object-storage-manager-files -h
usage:  list-object-storage-manager-files [-h] --object_storage_manager_id
                                          OBJECT_STORAGE_MANAGER_ID
                                          [--json-output [{pretty,default}]]
                                          [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --object_storage_manager_id OBJECT_STORAGE_MANAGER_ID
                        Provide Object Storage Manager Id to list all the available
                        Object Storage Manager Files.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-object-storage-manager-files example with required arguments passed.

yeedu resource list-object-storage-manager-files --object_storage_manager_id=1
  • Console output

[
  {
    "object_storage_manager_file_id": "1",
    "object_storage_manager": {
      "object_storage_manager_id": "1",
      "object_storage_bucket_name": "yeedu",
      "credentials_config": {
        "name": "yeedu-svc",
        "credential_type": {
          "name": "gcp"
        }
      }
    },
    "file_name": "spark-examples_2.11-2.4.8.jar",
    "full_file_path": "file:///yeedu/object-storage-manager/spark-examples_2.11-2.4.8.jar",
    "file_size_bytes": "2017856",
    "file_type": "jar",
    "local_file_path": null,
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
    "created_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "modified_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "last_update_date": "2023-07-20T11:22:40.313Z",
    "from_date": "2023-07-20T11:22:40.313Z",
    "to_date": null
  }
]

get-object-storage-manager-file

yeedu resource get-object-storage-manager-file -h
usage:  get-object-storage-manager-file [-h] --object_storage_manager_id
                                        OBJECT_STORAGE_MANAGER_ID --file_id FILE_ID
                                        [--json-output [{pretty,default}]]
                                        [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --object_storage_manager_id OBJECT_STORAGE_MANAGER_ID
                        Provide Object Storage Manager Id to get information about a
                        specific Object Storage Manager Files.
  --file_id FILE_ID     Provide File Id to get information about a specific Object
                        Storage Manager Files.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-object-storage-manager-file example with all the required arguments passed.

yeedu resource get-object-storage-manager-file --object_storage_manager_id=1 --file_id=1
  • Console output

{
  "object_storage_manager_file_id": "1",
  "object_storage_manager": {
    "object_storage_manager_id": "1",
    "object_storage_bucket_name": "yeedu",
    "credentials_config": {
      "name": "yeedu-svc",
      "credential_type": {
        "name": "gcp"
      }
    }
  },
  "file_name": "spark-examples_2.11-2.4.8.jar",
  "full_file_path": "file:///yeedu/object-storage-manager/spark-examples_2.11-2.4.8.jar",
  "file_size_bytes": "2017856",
  "file_type": "jar",
  "local_file_path": null,
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "modified_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "last_update_date": "2023-07-20T11:22:40.313Z",
  "from_date": "2023-07-20T11:22:40.313Z",
  "to_date": null
}

delete-object-storage-manager-file

yeedu resource delete-object-storage-manager-file -h
usage:  delete-object-storage-manager-file [-h] --object_storage_manager_id
                                           OBJECT_STORAGE_MANAGER_ID --file_id FILE_ID
                                           [--json-output [{pretty,default}]]
                                           [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --object_storage_manager_id OBJECT_STORAGE_MANAGER_ID
                        Provide Object Storage Manager Id to delete a specific Object
                        Storage Manager File.
  --file_id FILE_ID     Provide File Id to delete a specific Object Storage Manager
                        Files.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • delete-object-storage-manager-file example with all the required arguments passed.

yeedu resource delete-object-storage-manager-file --object_storage_manager_id=1 --file_id=1
  • Console output

{
  "message": "The File spark-examples_2.11-2.4.8.jar has been deleted."
}

Hive Metastore Configuration

Command Name

Utility

create-hive-metastore-conf

To create a Hive Metastore Configuration.

list-hive-metastore-confs

To list all the available Hive Metastore Configurations.

get-hive-metastore-conf

To get the information about a specific Hive Metastore Configuration.

edit-hive-metastore-conf

To edit a specific Hive Metastore Configuration.

delete-hive-metastore-conf

To delete a specific Hive Metastore Configuration.

create-hive-metastore-conf

yeedu resource create-hive-metastore-conf -h
usage:  create-hive-metastore-conf [-h]
                                   [--hive_site_xml_file_path HIVE_SITE_XML_FILE_PATH]
                                   [--core_site_xml_file_path CORE_SITE_XML_FILE_PATH]
                                   [--hdfs_site_xml_file_path HDFS_SITE_XML_FILE_PATH]
                                   [--krb5_conf_file_path KRB5_CONF_FILE_PATH]
                                   [--json-output [{pretty,default}]]
                                   [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --hive_site_xml_file_path HIVE_SITE_XML_FILE_PATH
                        Provide hive_site_xml_file_path to create-hive-metastore-conf.
  --core_site_xml_file_path CORE_SITE_XML_FILE_PATH
                        Provide core_site_xml_file_path to create-hive-metastore-conf.
  --hdfs_site_xml_file_path HDFS_SITE_XML_FILE_PATH
                        Provide hdfs_site_xml_file_path to create-hive-metastore-conf.
  --krb5_conf_file_path KRB5_CONF_FILE_PATH
                        Provide krb5_conf_file_path to create-hive-metastore-conf.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create-hive-metastore-conf example with all the required arguments passed.

yeedu resource create-hive-metastore-conf --hive_site_xml_file_path="/home/user/Documents/hive-site.xml" --core_site_xml_file_path="/home/user/Documents/core-site.xml" --hdfs_site_xml_file_path="/home/user/Documents/hdfs-site.xml"
  • Console output

{
  "hive_metastore_conf_id": "1",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:34:53.896Z",
  "from_date": "2023-07-20T11:34:53.896Z",
  "to_date": null
}

list-hive-metastore-confs

yeedu resource list-hive-metastore-confs -h
usage:  list-hive-metastore-confs [-h] [--json-output [{pretty,default}]]
                                  [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-hive-metastore-confs example without any optional argument passed for output format.

yeedu resource list-hive-metastore-confs
  • Console output

[
  {
    "hive_metastore_conf_id": "1",
    "hive-site.xml": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<?xml-stylesheet type=\"text/xsl\" href=\"configuration.xsl\"?>\n<configuration>\n  <property>\n    <name>javax.jdo.option.ConnectionURL</name>\n    <value>jdbc:postgresql://localhost:5432/metastore</value>\n    <description>JDBC connect string for a JDBC metastore</description>\n  </property>\n  <property>\n    <name>javax.jdo.option.ConnectionDriverName</name>\n    <value>org.postgresql.Driver</value>\n    <description>Driver class name for a JDBC metastore</description>\n  </property>\n  <property>\n    <name>javax.jdo.option.ConnectionUserName</name>\n    <value>hive</value>\n    <description>username to use against metastore database</description>\n  </property>\n  <property>\n    <name>javax.jdo.option.ConnectionPassword</name>\n    <value>hive</value>\n    <description>password to use against metastore database</description>\n  </property>\n  <property>\n    <name>hive.metastore.schema.verification</name>\n    <value>false</value>\n  </property>\n  <property>\n     <name>datanucleus.autoCreateSchema</name>\n     <value>false</value>\n     <description>Creates necessary schema on a startup if one doesn't exist</description>\n  </property>\n  <property>\n     <name>hive.server2.enable.doAs </name>\n     <value>false</value>\n  </property>\n  <property>\n         <name>hive.security.authorization.enabled</name>\n         <value>false</value>\n </property>\n</configuration>\n\n",
    "core-site.xml": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<?xml-stylesheet type=\"text/xsl\" href=\"configuration.xsl\"?>\n<!--\n  Licensed under the Apache License, Version 2.0 (the \"License\");\n  you may not use this file except in compliance with the License.\n  You may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\n  Unless required by applicable law or agreed to in writing, software\n  distributed under the License is distributed on an \"AS IS\" BASIS,\n  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n  See the License for the specific language governing permissions and\n  limitations under the License. See accompanying LICENSE file.\n-->\n\n<!-- Put site-specific property overrides in this file. -->\n\n<configuration>\n    <property>\n        <name>hadoop.tmp.dir</name>\n        <value>/usr/bin/data/tmp</value>\n    </property>\n    <property>\n        <name>fs.defaultFS</name>\n        <value>hdfs://localhost:9000</value>\n    </property>\n    <property>\n        <name>fs.default.name</name>\n        <value>hdfs://localhost:9000</value>\n    </property>\n        <property>\n            <name>hadoop.proxyuser.username.groups</name>\n        <value>*</value>\n        </property>\n        <property>\n                <name>hadoop.proxyuser.username.hosts</name>\n                <value>*</value>\n        </property>\n                <property>\n            <name>hadoop.proxyuser.hue.groups</name>\n        <value>*</value>\n        </property>\n        <property>\n                <name>hadoop.proxyuser.hue.hosts</name>\n                <value>*</value>\n        </property>\n</configuration>\n\n",
    "hdfs-site.xml": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<?xml-stylesheet type=\"text/xsl\" href=\"configuration.xsl\"?>\n<!--\n  Licensed under the Apache License, Version 2.0 (the \"License\");\n  you may not use this file except in compliance with the License.\n  You may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\n  Unless required by applicable law or agreed to in writing, software\n  distributed under the License is distributed on an \"AS IS\" BASIS,\n  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n  See the License for the specific language governing permissions and\n  limitations under the License. See accompanying LICENSE file.\n-->\n\n<!-- Put site-specific property overrides in this file. -->\n\n<configuration>\n    <property>\n                <name>dfs.permissions</name>\n                <value>false</value>\n        </property>\n    <property>\n            <name>dfs.namenode.name.dir</name>\n            <value>/usr/bin/data/nameNode</value>\n    </property>\n    <property>\n            <name>dfs.datanode.data.dir</name>\n            <value>/usr/bin/data/dataNode</value>\n    </property>\n    <property>\n                <name>dfs.datanode.max.transfer.threads</name>\n                <value>8192</value>\n        </property>\n    <property>\n          <name>dfs.namenode.checkpoint.dir</name>\n          <value>/usr/bin/data/nameNodeSecondary</value>\n    </property>\n    <property>\n        <name>dfs.safemode.threshold.pct</name>\n        <value>0</value>\n    </property>\n        <property>\n                <name>dfs.namenode.http-address</name>\n                <value>localhost:50070</value>\n        </property>\n    <property>\n                <name>dfs.namenode.secondary.http-address</name>\n                <value>localhost:50090</value>\n        </property>\n    <property>\n        <name>dfs.namenode.acls.enabled</name>\n        <value>true</value>\n    </property>\n    <property>\n        <name>dfs.replication</name>\n        <value>1</value>\n    </property>\n        <property>\n                <name>dfs.webhdfs.enabled</name>\n                <value>true</value>\n        </property>\n</configuration>\n\n",
    "krb5.conf": null,
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
    "created_by": {
      "user_id": 1,
      "username": "YSU0000"
    },
    "modified_by": {
      "user_id": 1,
      "username": "YSU0000"
    },
    "last_update_date": "2023-07-20T11:34:53.896774+00:00",
    "from_date": "2023-07-20T11:34:53.896774+00:00",
    "to_date": "infinity"
  }
]

get-hive-metastore-conf

yeedu resource get-hive-metastore-conf -h
usage:  get-hive-metastore-conf [-h] --hive_metastore_conf_id HIVE_METASTORE_CONF_ID
                                [--json-output [{pretty,default}]]
                                [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --hive_metastore_conf_id HIVE_METASTORE_CONF_ID
                        Provide hive_metastore_conf_id to get information about a
                        specific Hive Metastore Configuration.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-hive-metastore-conf example with the required ‘–hive_metastore_conf_id’ argument passed.

yeedu resource get-hive-metastore-conf --hive_metastore_conf_id=1
  • Console output

{
  "hive_metastore_conf_id": "1",
  "hive-site.xml": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<?xml-stylesheet type=\"text/xsl\" href=\"configuration.xsl\"?>\n<configuration>\n  <property>\n    <name>javax.jdo.option.ConnectionURL</name>\n    <value>jdbc:postgresql://localhost:5432/metastore</value>\n    <description>JDBC connect string for a JDBC metastore</description>\n  </property>\n  <property>\n    <name>javax.jdo.option.ConnectionDriverName</name>\n    <value>org.postgresql.Driver</value>\n    <description>Driver class name for a JDBC metastore</description>\n  </property>\n  <property>\n    <name>javax.jdo.option.ConnectionUserName</name>\n    <value>hive</value>\n    <description>username to use against metastore database</description>\n  </property>\n  <property>\n    <name>javax.jdo.option.ConnectionPassword</name>\n    <value>hive</value>\n    <description>password to use against metastore database</description>\n  </property>\n  <property>\n    <name>hive.metastore.schema.verification</name>\n    <value>false</value>\n  </property>\n  <property>\n     <name>datanucleus.autoCreateSchema</name>\n     <value>false</value>\n     <description>Creates necessary schema on a startup if one doesn't exist</description>\n  </property>\n  <property>\n     <name>hive.server2.enable.doAs </name>\n     <value>false</value>\n  </property>\n  <property>\n         <name>hive.security.authorization.enabled</name>\n         <value>false</value>\n </property>\n</configuration>\n\n",
  "core-site.xml": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<?xml-stylesheet type=\"text/xsl\" href=\"configuration.xsl\"?>\n<!--\n  Licensed under the Apache License, Version 2.0 (the \"License\");\n  you may not use this file except in compliance with the License.\n  You may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\n  Unless required by applicable law or agreed to in writing, software\n  distributed under the License is distributed on an \"AS IS\" BASIS,\n  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n  See the License for the specific language governing permissions and\n  limitations under the License. See accompanying LICENSE file.\n-->\n\n<!-- Put site-specific property overrides in this file. -->\n\n<configuration>\n    <property>\n        <name>hadoop.tmp.dir</name>\n        <value>/usr/bin/data/tmp</value>\n    </property>\n    <property>\n        <name>fs.defaultFS</name>\n        <value>hdfs://localhost:9000</value>\n    </property>\n    <property>\n        <name>fs.default.name</name>\n        <value>hdfs://localhost:9000</value>\n    </property>\n        <property>\n            <name>hadoop.proxyuser.username.groups</name>\n        <value>*</value>\n        </property>\n        <property>\n                <name>hadoop.proxyuser.username.hosts</name>\n                <value>*</value>\n        </property>\n                <property>\n            <name>hadoop.proxyuser.hue.groups</name>\n        <value>*</value>\n        </property>\n        <property>\n                <name>hadoop.proxyuser.hue.hosts</name>\n                <value>*</value>\n        </property>\n</configuration>\n\n",
  "hdfs-site.xml": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<?xml-stylesheet type=\"text/xsl\" href=\"configuration.xsl\"?>\n<!--\n  Licensed under the Apache License, Version 2.0 (the \"License\");\n  you may not use this file except in compliance with the License.\n  You may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\n  Unless required by applicable law or agreed to in writing, software\n  distributed under the License is distributed on an \"AS IS\" BASIS,\n  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n  See the License for the specific language governing permissions and\n  limitations under the License. See accompanying LICENSE file.\n-->\n\n<!-- Put site-specific property overrides in this file. -->\n\n<configuration>\n    <property>\n                <name>dfs.permissions</name>\n                <value>false</value>\n        </property>\n    <property>\n            <name>dfs.namenode.name.dir</name>\n            <value>/usr/bin/data/nameNode</value>\n    </property>\n    <property>\n            <name>dfs.datanode.data.dir</name>\n            <value>/usr/bin/data/dataNode</value>\n    </property>\n    <property>\n                <name>dfs.datanode.max.transfer.threads</name>\n                <value>8192</value>\n        </property>\n    <property>\n          <name>dfs.namenode.checkpoint.dir</name>\n          <value>/usr/bin/data/nameNodeSecondary</value>\n    </property>\n    <property>\n        <name>dfs.safemode.threshold.pct</name>\n        <value>0</value>\n    </property>\n        <property>\n                <name>dfs.namenode.http-address</name>\n                <value>localhost:50070</value>\n        </property>\n    <property>\n                <name>dfs.namenode.secondary.http-address</name>\n                <value>localhost:50090</value>\n        </property>\n    <property>\n        <name>dfs.namenode.acls.enabled</name>\n        <value>true</value>\n    </property>\n    <property>\n        <name>dfs.replication</name>\n        <value>1</value>\n    </property>\n        <property>\n                <name>dfs.webhdfs.enabled</name>\n                <value>true</value>\n        </property>\n</configuration>\n\n",
  "krb5.conf": null,
 "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by": {
    "user_id": 1,
    "username": "YSU0000"
  },
  "modified_by": {
    "user_id": 1,
    "username": "YSU0000"
  },
  "last_update_date": "2023-07-20T11:34:53.896774+00:00",
  "from_date": "2023-07-20T11:34:53.896774+00:00",
  "to_date": "infinity"
}

edit-hive-metastore-conf

yeedu resource edit-hive-metastore-conf -h
usage:  edit-hive-metastore-conf [-h] --hive_metastore_conf_id HIVE_METASTORE_CONF_ID
                                 [--hive_site_xml_file_path HIVE_SITE_XML_FILE_PATH]
                                 [--core_site_xml_file_path CORE_SITE_XML_FILE_PATH]
                                 [--hdfs_site_xml_file_path HDFS_SITE_XML_FILE_PATH]
                                 [--krb5_conf_file_path KRB5_CONF_FILE_PATH]
                                 [--json-output [{pretty,default}]]
                                 [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --hive_metastore_conf_id HIVE_METASTORE_CONF_ID
                        Provide a specific hive_metastore_conf_id to edit-hive-
                        metastore-conf.
  --hive_site_xml_file_path HIVE_SITE_XML_FILE_PATH
                        Provide hive_site_xml_file_path to edit-hive-metastore-conf.
  --core_site_xml_file_path CORE_SITE_XML_FILE_PATH
                        Provide core_site_xml_file_path to edit-hive-metastore-conf.
  --hdfs_site_xml_file_path HDFS_SITE_XML_FILE_PATH
                        Provide hdfs_site_xml_file_path to edit-hive-metastore-conf.
  --krb5_conf_file_path KRB5_CONF_FILE_PATH
                        Provide krb5_conf_file_path to edit-hive-metastore-conf.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • edit-hive-metastore-conf example with the required ‘–hive_metastore_conf_id’ argument and other optional argument is passed which is to be updated.

yeedu resource edit-hive-metastore-conf --hive_metastore_conf_id=1 --krb5_conf_file_path="/home/user/Documents/krb5.conf"
  • Console output

{
  "hive_metastore_conf_id": "1",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:37:08.322Z",
  "from_date": "2023-07-20T11:34:53.896Z",
  "to_date": null
}

delete-hive-metastore-conf

yeedu resource delete-hive-metastore-conf -h
usage:  delete-hive-metastore-conf [-h] --hive_metastore_conf_id HIVE_METASTORE_CONF_ID
                                   [--json-output [{pretty,default}]]
                                   [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --hive_metastore_conf_id HIVE_METASTORE_CONF_ID
                        Provide hive_metastore_conf_id to delete a specific Hive
                        Metastore Configuration.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • delete-hive-metastore-conf example with the required ‘–hive_metastore_conf_id’ argument passed.

yeedu resource delete-hive-metastore-conf --hive_metastore_conf_id=1
  • Console output

{
  "message": "Deleted Hive Metastore Configuration: 1"
}

Cluster

Cluster Configuration

Command Name

Utility

create-conf

To create the Cluster Configuration.

list-confs

To list all the available Cluster Configurations.

get-conf

To get the information about a specific Cluster Configuration.

edit-conf

To edit a specific Cluster Configuration.

create-conf

yeedu cluster create-conf -h
usage:  create-conf [-h] --name NAME --description DESCRIPTION --cloud_project_id
                    CLOUD_PROJECT_ID --object_storage_manager_id
                    OBJECT_STORAGE_MANAGER_ID --credentials_conf_id CREDENTIALS_CONF_ID
                    --machine_conf_id MACHINE_CONF_ID
                    [--spark_config_id [SPARK_CONFIG_ID]]
                    [--hive_metastore_conf_id [HIVE_METASTORE_CONF_ID]]
                    --cloud_provider_id CLOUD_PROVIDER_ID --spark_infra_version_id
                    SPARK_INFRA_VERSION_ID
                    [--max_parallel_spark_job_execution_per_instance [MAX_PARALLEL_SPARK_JOB_EXECUTION_PER_INSTANCE]]
                    [--standalone_workers_number [STANDALONE_WORKERS_NUMBER]]
                    --cluster_type YEEDU, STANDALONE, CLUSTER --min_instances
                    MIN_INSTANCES --max_instances MAX_INSTANCES --is_cuda true,false
                    [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --name NAME           Provide name to create-conf.
  --description DESCRIPTION
                        Provide description to create-conf.
  --cloud_project_id CLOUD_PROJECT_ID
                        Provide cloud_project_id to create-conf.
  --object_storage_manager_id OBJECT_STORAGE_MANAGER_ID
                        Provide object_storage_manager_id to create-conf.
  --credentials_conf_id CREDENTIALS_CONF_ID
                        Provide credentials_conf_id to create-conf.
  --machine_conf_id MACHINE_CONF_ID
                        Provide machine_conf_id to create-conf.
  --spark_config_id [SPARK_CONFIG_ID]
                        Provide spark_config_id to create-conf.
  --hive_metastore_conf_id [HIVE_METASTORE_CONF_ID]
                        Provide hive_metastore_conf_id to create-conf.
  --cloud_provider_id CLOUD_PROVIDER_ID
                        Provide cloud_provider_id to create-conf.
  --spark_infra_version_id SPARK_INFRA_VERSION_ID
                        Provide spark_infra_version_id to create-conf.
  --max_parallel_spark_job_execution_per_instance [MAX_PARALLEL_SPARK_JOB_EXECUTION_PER_INSTANCE]
                        Provide max_parallel_spark_job_execution_per_instance to
                        create-conf. (default: 5)
  --standalone_workers_number [STANDALONE_WORKERS_NUMBER]
                        Provide standalone_workers_number to create-conf.
  --cluster_type YEEDU, STANDALONE, CLUSTER
                        Provide cluster_type to create-conf.
  --min_instances MIN_INSTANCES
                        Provide min_instances to create-conf.
  --max_instances MAX_INSTANCES
                        Provide max_instances to create-conf.
  --is_cuda true,false  Provide is_cuda to create-conf.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create-conf example with all the required arguments passed.

yeedu cluster create-conf --name="yeedu_cluster" --description="Cluster Configurations test" --cloud_project_id="yeedu" --object_storage_manager_id=1 --credentials_conf_id=1 --machine_conf_id=1 --cloud_provider_id=0 --spark_infra_version_id=0 --max_parallel_spark_job_execution_per_instance=5 --cluster_type="YEEDU" --min_instances=1 --max_instances=2 --is_cuda=false
  • Console output

{
  "cluster_conf_id": "1",
  "name": "yeedu_cluster",
  "description": "Cluster Configurations test",
  "cloud_project_id": "yeedu",
  "object_storage_manager_id": "1",
  "credentials_conf_id": "1",
  "machine_conf_id": "1",
  "spark_config_id": null,
  "hive_metastore_conf_id": null,
  "cloud_provider_id": "0",
  "spark_infra_version_id": "0",
  "engine_cluster_spark_config": {
    "max_parallel_spark_job_execution_per_instance": 5
  },
  "cluster_type": "YEEDU",
  "min_instances": 1,
  "max_instances": 2,
  "is_cuda": false,
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:38:27.321Z",
  "from_date": "2023-07-20T11:38:27.321Z",
  "to_date": null
}

list-confs

yeedu cluster list-confs -h
usage:  list-confs [-h] [--cloud_provider [{GCP,AWS,AZURE}]]
                   [--page_number PAGE_NUMBER] [--limit LIMIT]
                   [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cloud_provider [{GCP,AWS,AZURE}]
                        Cloud Provider that will be used for filtering list.
  --page_number PAGE_NUMBER
                        To list Engine Cluser Configuration for a specific page_number.
                        (default: 1)
  --limit LIMIT         Provide limit to list number of Engine Cluser Configuration.
                        (default: 100)
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-confs example without optional arguments passed for output format.

yeedu cluster list-confs --cloud_provider="GCP" --limit=2
  • Console output

{
  "data": [
    {
      "cluster_conf_id": "1",
      "name": "yeedu_cluster",
      "description": "Cluster Configurations test",
      "cloud_project_id": "yeedu",
      "object_storage_manager": {
        "object_storage_manager_id": "1",
        "credentials_conf_id": "1",
        "object_storage_bucket_name": "yeedu"
      },
      "credentials_conf_id": "1",
      "machine_config": {
        "machine_conf_id": "1",
        "network_tags": [
          "yeedu",
          "iap-allow"
        ],
        "labels": {
          "env": "test",
          "test": "dev",
          "resource": "yeedu",
          "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538"
        },
        "is_spot_instance": false,
        "enable_public_ip": true,
        "block_project_ssh_keys": true,
        "bootstrap_shell_script": null,
        "boot_disk_image_config": {
          "boot_disk_image_id": "1",
          "boot_disk_image": "ubuntu-os-cloud/ubuntu-2004-lts",
          "cloud_provider": {
            "name": "gcp"
          }
        },
        "machine_type": {
          "machine_type_id": "15",
          "name": "c2d-highcpu-16",
          "vcpus": 16,
          "memory": "32 GiB",
          "has_cuda": false,
          "gpu_model": null,
          "gpus": null,
          "gpu_memory": null
        },
        "machine_network": {
          "network_conf_id": "1",
          "network_project_id": "yeedu",
          "network_name": "yeedu-spark-vpc",
          "subnet": "custom-subnet-yeedu",
          "availability_zone": {
            "name": "us-central1-a",
            "region": "us-central1",
            "description": "Council Bluffs, Iowa, North America"
          }
        },
        "machine_volume_config": {
          "volume_conf_id": "1",
          "name": "yeedu volume",
          "encrypted": false,
          "size": "375",
          "machine_volume_num": 1,
          "machine_volume_strip_num": 1,
          "availability_zone": {
            "name": "us-central1-a",
            "region": "us-central1"
          },
          "disk_type": {
            "name": "local-ssd",
            "has_fixed_size": true,
            "min_size": 375,
            "max_size": 375
          }
        }
      },
      "spark_config": null,
      "hive_metastore": null,
      "cloud_provider": {
        "name": "gcp",
        "description": "Provider for creating infrastructure on Google Cloud Platform"
      },
      "spark_infra_version": {
        "spark_version": "2.4.8",
        "hive_version": "3.2.3",
        "hadoop_version": "2.10.1",
        "scala_version": "2.11.10"
      },
      "engine_cluster_spark_config": {
        "max_parallel_spark_job_per_instance": 5,
        "standalone_workers_number": null
      },
      "cluster_type": "YEEDU",
      "min_instances": 1,
      "max_instances": 2,
      "is_cuda": false,
      "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
      "created_by": {
        "user_id": "1",
        "username": "YSU0000"
      },
      "modified_by": {
        "user_id": "1",
        "username": "YSU0000"
      },
      "last_update_date": "2023-07-20T11:38:27.321Z",
      "from_date": "2023-07-20T11:38:27.321Z",
      "to_date": null
    }
  ],
  "result_set": {
    "current_page": 1,
    "total_objects": 1,
    "total_pages": 1,
    "limit": 2
  }
}

get-conf

yeedu cluster get-conf -h
usage:  get-conf [-h] [--cluster_conf_id CLUSTER_CONF_ID]
                 [--cluster_conf_name CLUSTER_CONF_NAME]
                 [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cluster_conf_id CLUSTER_CONF_ID
                        Provide Cluster Conf Id to get information about a specific
                        Cluster Configuration.
  --cluster_conf_name CLUSTER_CONF_NAME
                        Provide Engine Cluster Config Name to get information about a
                        specific Cluster Configuration.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-conf example with one of the optional ‘–cluster_conf_id’ argument passed.

yeedu cluster get-conf --cluster_conf_id=1
  • Console output

{
  "cluster_conf_id": "1",
  "name": "yeedu_cluster",
  "description": "Cluster Configurations test",
  "cloud_project_id": "yeedu",
  "object_storage_manager": {
    "object_storage_manager_id": "1",
    "credentials_conf_id": "1",
    "object_storage_bucket_name": "yeedu"
  },
  "credentials_conf_id": "1",
  "machine_config": {
    "machine_conf_id": "1",
    "network_tags": [
      "yeedu",
      "iap-allow"
    ],
    "labels": {
      "env": "test",
      "test": "dev",
      "resource": "yeedu",
      "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538"
    },
    "is_spot_instance": false,
    "enable_public_ip": true,
    "block_project_ssh_keys": true,
    "bootstrap_shell_script": null,
    "boot_disk_image_config": {
      "boot_disk_image_id": "1",
      "boot_disk_image": "ubuntu-os-cloud/ubuntu-2004-lts",
      "cloud_provider": {
        "name": "gcp"
      }
    },
    "machine_type": {
      "machine_type_id": "15",
      "name": "c2d-highcpu-16",
      "vcpus": 16,
      "memory": "32 GiB",
      "has_cuda": false,
      "gpu_model": null,
      "gpus": null,
      "gpu_memory": null
    },
    "machine_network": {
      "network_conf_id": "1",
      "network_project_id": "yeedu",
      "network_name": "yeedu-spark-vpc",
      "subnet": "custom-subnet-yeedu",
      "availability_zone": {
        "name": "us-central1-a",
        "region": "us-central1",
        "description": "Council Bluffs, Iowa, North America"
      }
    },
    "machine_volume_config": {
      "volume_conf_id": "1",
      "name": "yeedu volume",
      "encrypted": false,
      "size": "375",
      "machine_volume_num": 1,
      "machine_volume_strip_num": 1,
      "availability_zone": {
        "name": "us-central1-a",
        "region": "us-central1"
      },
      "disk_type": {
        "name": "local-ssd",
        "has_fixed_size": true,
        "min_size": 375,
        "max_size": 375
      }
    }
  },
  "spark_config": null,
  "hive_metastore": null,
  "cloud_provider": {
    "name": "gcp",
    "description": "Provider for creating infrastructure on Google Cloud Platform"
  },
  "spark_infra_version": {
    "spark_version": "2.4.8",
    "hive_version": "3.2.3",
    "hadoop_version": "2.10.1",
    "scala_version": "2.11.10"
  },
  "engine_cluster_spark_config": {
    "max_parallel_spark_job_per_instance": 5,
    "standalone_workers_number": null
  },
  "cluster_type": "YEEDU",
  "min_instances": 1,
  "max_instances": 2,
  "is_cuda": false,
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "modified_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "last_update_date": "2023-07-20T11:38:27.321Z",
  "from_date": "2023-07-20T11:38:27.321Z",
  "to_date": null
}

edit-conf

yeedu cluster edit-conf -h
usage:  edit-conf [-h] [--cluster_conf_id CLUSTER_CONF_ID]
                  [--cluster_conf_name CLUSTER_CONF_NAME] [--name [NAME]]
                  [--description [DESCRIPTION]] [--cloud_project_id [CLOUD_PROJECT_ID]]
                  [--max_parallel_spark_job_execution_per_instance [MAX_PARALLEL_SPARK_JOB_EXECUTION_PER_INSTANCE]]
                  [--standalone_workers_number [STANDALONE_WORKERS_NUMBER]]
                  [--cluster_type YEEDU, STANDALONE, CLUSTER]
                  [--min_instances [MIN_INSTANCES]] [--max_instances [MAX_INSTANCES]]
                  [--is_cuda [true,false]] [--json-output [{pretty,default}]]
                  [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cluster_conf_id CLUSTER_CONF_ID
                        Provide a specific Cluster Conf Id to edit-conf.
  --cluster_conf_name CLUSTER_CONF_NAME
                        Provide a specific Engine Cluster Config Name to edit-conf.
  --name [NAME]         Provide name to edit-conf.
  --description [DESCRIPTION]
                        Provide description to edit-conf.
  --cloud_project_id [CLOUD_PROJECT_ID]
                        Provide cloud_project_id to edit-conf.
  --max_parallel_spark_job_execution_per_instance [MAX_PARALLEL_SPARK_JOB_EXECUTION_PER_INSTANCE]
                        Provide max_parallel_spark_job_execution_per_instance to edit-conf.
  --standalone_workers_number [STANDALONE_WORKERS_NUMBER]
                        Provide standalone_workers_number to edit-conf.
  --cluster_type YEEDU, STANDALONE, CLUSTER
                        Provide cluster_type to edit-conf.
  --min_instances [MIN_INSTANCES]
                        Provide min_instances to edit-conf.
  --max_instances [MAX_INSTANCES]
                        Provide max_instances to edit-conf.
  --is_cuda [true,false]
                        Provide is_cuda to edit-conf.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • edit-conf example with the required ‘–cluster_conf_id’ argument and other optional argument is passed which is to be updated.

yeedu cluster edit-conf --cluster_conf_id=1 --name='yeedu_cluster_1'
  • Console output

{
  "cluster_conf_id": "1",
  "name": "yeedu_cluster_1",
  "description": "Cluster Configurations test",
  "cloud_project_id": "yeedu",
  "object_storage_manager_id": "1",
  "credentials_conf_id": "1",
  "machine_conf_id": "1",
  "spark_config_id": null,
  "hive_metastore_conf_id": null,
  "cloud_provider_id": "0",
  "spark_infra_version_id": "0",
  "engine_cluster_spark_config": {
    "max_parallel_spark_job_execution_per_instance": 5,
    "standalone_workers_number": null
  },
  "cluster_type": "YEEDU",
  "min_instances": 1,
  "max_instances": 2,
  "is_cuda": false,
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:42:41.921Z",
  "from_date": "2023-07-20T11:38:27.321Z",
  "to_date": null
}

Cluster Instance

Command Name

Utility

create

To create the Cluster Instance.

list

To list all the available Cluster Instances.

get

To get the information about a specific Cluster Instance.

edit

To edit a specific Cluster Instance.

start

To start a specific Cluster Instance.

stop

To stop a specific Cluster Instance.

destroy

To destroy a specific Cluster Instance.

get-stats

To get the Spark Job Statistics of an Cluster Instance.

logs

To download Cluster Instance logs for specific Cluster Instance Id.

create

yeedu cluster create -h
usage:  create [-h] [--instance_name [INSTANCE_NAME]] --idle_timeout_ms
               [IDLE_TIMEOUT_MS] [--auto_shutdown [true,false]] --cluster_conf_id
               CLUSTER_CONF_ID [--json-output [{pretty,default}]]
               [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --instance_name [INSTANCE_NAME]
                        Provide instance_name to create.
  --idle_timeout_ms [IDLE_TIMEOUT_MS]
                        Provide idle_timeout_ms to create.
  --auto_shutdown [true,false]
                        Provide auto_shutdown to create. (default: true)
  --cluster_conf_id CLUSTER_CONF_ID
                        Provide cluster_conf_id to create.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create example with all the required and optional arguments passed.

yeedu cluster create --instance_name="yeedu_instance" --idle_timeout_ms=300000 --auto_shutdown=true --cluster_conf_id=1
  • Console output

{
  "cluster_id": "34",
  "instance_name": "yeedu_instance",
  "idle_timeout_ms": "300000",
  "auto_shutdown": true,
  "cluster_conf_id": "1",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:44:07.355Z",
  "from_date": "2023-07-20T11:44:07.355Z",
  "to_date": null
}

list

yeedu cluster list -h
usage:  list [-h] [--cluster_status [CLUSTER_STATUS]]
             [--cluster_conf_id CLUSTER_CONF_ID]
             [--cluster_conf_name CLUSTER_CONF_NAME] [--page_number PAGE_NUMBER]
             [--limit LIMIT] [--json-output [{pretty,default}]]
             [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cluster_status [CLUSTER_STATUS]
                        Provide Cluster Instance Status from ["INITIATING", "RUNNING",
                        "STOPPING", "STOPPED", "DESTROYING", "DESTROYED", "ERROR",
                        "RESIZING_UP", "RESIZING_DOWN"] to list, For example
                        --cluster_status="RUNNING,DESTROYED".
  --cluster_conf_id CLUSTER_CONF_ID
                        Provide Cluster Conf Id to list all the Cluster Instances.
  --cluster_conf_name CLUSTER_CONF_NAME
                        Provide Engine Cluster Config Name to list all the Cluster
                        Instances.
  --page_number PAGE_NUMBER
                        To list Cluster Instance for a specific page_number. (default:
                        1)
  --limit LIMIT         Provide limit to list number of Cluster Instance. (default:
                        100)
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list example passing the optional output arguments.

yeedu cluster list --cluster_status="RUNNING" --cluster_conf_name="yeedu_cluster" --limit=5
  • Console output

{
  "data": [
    {
      "cluster_id": 34,
      "instance_name": "yeedu_instance",
      "idle_timeout_ms": 300000,
      "auto_shutdown": true,
      "cluster_conf_id": 1,
      "cluster_status": "RUNNING",
      "compute_engine_id": 34,
      "instance_size": 1,
      "workflow_job_instance_details": {
        "workflow_job_instance_status": {
          "workflow_job_instance_id": 61982,
          "workflow_job_id": 61982,
          "status": "DONE",
          "from_date": "2023-07-20T11:44:07.355757+00:00",
          "to_date": "2023-07-20T11:44:47.959702+00:00"
        }
      },
      "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
      "created_by": {
        "user_id": 1,
        "username": "YSU0000"
      },
      "modified_by": {
        "user_id": 1,
        "username": "YSU0000"
      },
      "last_update_date": "2023-07-20T11:44:07.355757+00:00",
      "from_date": "2023-07-20T11:44:07.355757+00:00",
      "to_date": "infinity"
    }
  ],
  "result_set": {
    "current_page": 1,
    "total_objects": 1,
    "total_pages": 1,
    "limit": 5
  }
}

get

yeedu cluster get -h
usage:  get [-h] [--cluster_id CLUSTER_ID] [--cluster_name CLUSTER_NAME]
            [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cluster_id CLUSTER_ID
                        Provide Cluster Instance Id to get information about a specific
                        Cluster Instance.
  --cluster_name CLUSTER_NAME
                        Provide Cluster Instance Name to get information about a
                        specific Cluster Instance.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get example with one of the optional arguments ‘–cluster_instance_name’ passed.

yeedu cluster get --cluster_name="yeedu_instance"
  • Console output

{
  "cluster_id": 34,
  "instance_name": "yeedu_instance",
  "idle_timeout_ms": 300000,
  "auto_shutdown": true,
  "cluster_conf_id": 1,
  "cluster_status": "RUNNING",
  "compute_engine_id": 34,
  "instance_size": 1,
  "workflow_job_instance_details": {
    "workflow_job_instance_status": {
      "workflow_job_instance_id": 61982,
      "workflow_job_id": 61982,
      "status": "DONE",
      "from_date": "2023-07-20T11:44:07.355757+00:00",
      "to_date": "2023-07-20T11:44:47.959702+00:00"
    }
  },
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by": {
    "user_id": 1,
    "username": "YSU0000"
  },
  "modified_by": {
    "user_id": 1,
    "username": "YSU0000"
  },
  "last_update_date": "2023-07-20T11:44:07.355757+00:00",
  "from_date": "2023-07-20T11:44:07.355757+00:00",
  "to_date": "infinity"
}

edit

yeedu cluster edit -h
usage:  edit [-h] [--cluster_id CLUSTER_ID] [--cluster_name CLUSTER_NAME]
             [--idle_timeout_ms [IDLE_TIMEOUT_MS]] [--auto_shutdown [true,false]]
             [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cluster_id CLUSTER_ID
                        Provide a specific Cluster Instance Id to edit.
  --cluster_name CLUSTER_NAME
                        Provide a specific Cluster Instance Name to edit.
  --idle_timeout_ms [IDLE_TIMEOUT_MS]
                        Provide idle_timeout_ms to edit.
  --auto_shutdown [true,false]
                        Provide auto_shutdown to edit.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • edit example with one of the required ‘–cluster_id’ argument and other optional argument is passed which is to be updated.

yeedu cluster edit --cluster_id=34 --idle_timeout_ms=600000
  • Console output

{
  "cluster_id": "34",
  "instance_name": "yeedu_instance",
  "idle_timeout_ms": "600000",
  "auto_shutdown": true,
  "cluster_conf_id": "1",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:46:35.401Z",
  "from_date": "2023-07-20T11:44:07.355Z",
  "to_date": null
}

start

yeedu cluster start -h
usage:  start [-h] [--cluster_id CLUSTER_ID] [--cluster_name CLUSTER_NAME]
              [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cluster_id CLUSTER_ID
                        Provide Cluster Instance Id to start an Cluster Instance.
  --cluster_name CLUSTER_NAME
                        Provide Cluster Instance Name to start an Cluster Instance.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • start example with one of the required argument ‘–cluster_id’ passed.

yeedu cluster start --cluster_id=1
  • Console output

{
  "CosiStart": {
    "workflow_job_id": "61988",
    "workflow_job_instance_id": "61988",
    "engine_cluster_instance_id": "34"
  }
}

stop

yeedu cluster stop -h
usage:  stop [-h] [--cluster_id CLUSTER_ID] [--cluster_name CLUSTER_NAME]
             [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cluster_id CLUSTER_ID
                        Provide Cluster Instance Id to stop an Cluster Instance.
  --cluster_name CLUSTER_NAME
                        Provide Cluster Instance Name to stop an Cluster Instance.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • stop example with one of the required argument ‘–cluster_id’ passed.

yeedu cluster stop --cluster_id=34
  • Console output

{
  "CosiStop": {
    "workflow_job_id": "61984",
    "workflow_job_instance_id": "61984",
    "engine_cluster_instance_id": 34
  }
}

destroy

yeedu cluster destroy -h
usage:  destroy [-h] [--cluster_id CLUSTER_ID] [--cluster_name CLUSTER_NAME]
                [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cluster_id CLUSTER_ID
                        Provide Cluster Instance Id to destroy an Cluster Instance.
  --cluster_name CLUSTER_NAME
                        Provide Cluster Instance Name to destroy an Cluster Instance.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • destroy example with one of the required argument ‘–cluster_id’ passed.

yeedu cluster destroy --cluster_id=1
  • Console output

{
  "CosiDestroy": {
    "workflow_job_id": "62047",
    "workflow_job_instance_id": "62047",
    "engine_cluster_instance_id": 34
  }
}

get-stats

yeedu cluster get-stats -h
usage:  get-stats [-h] [--cluster_id CLUSTER_ID] [--cluster_name CLUSTER_NAME]
                  [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cluster_id CLUSTER_ID
                        Provide Cluster Instance Id to get the Spark Job Statistics of
                        an Cluster Instance.
  --cluster_name CLUSTER_NAME
                        Provide Cluster Instance Name to get the Spark Job Statistics
                        of an Cluster Instance.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-stats example with one of the optional arguments ‘–cluster_instance_name’ passed.

yeedu cluster get-stats --cluster_name="yeedu_instance"
  • Console output

{
  "SUBMITTED": 1,
  "RUNNING": 3,
  "DONE": 4,
  "ERROR": 0,
  "TERMINATED": 0,
  "KILLING": 0,
  "KILLED": 1,
  "TOTAL_JOB_COUNT": 9
}

logs

yeedu cluster logs -h
usage:  logs [-h] [--cluster_id CLUSTER_ID] [--cluster_name CLUSTER_NAME]
             [--log_type {stdout,stderr}] [--json-output [{pretty,default}]]
             [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cluster_id CLUSTER_ID
                        Provide Cluster Instance Id to download log records.
  --cluster_name CLUSTER_NAME
                        Provide Cluster Instance Name to download log records.
  --log_type {stdout,stderr}
                        Provide log_type to download Cluster Instance log records.
                        (default: stdout)
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • logs example with one of the required ‘–cluster_id’ argument passed.

yeedu cluster logs --cluster_id=34
  • Console output

Initializing modules...
- local-node in module
- master-standalone-cluster in module
- standalone-node in module
- worker-standalone-cluster in module
Initializing the backend...

Successfully configured the backend "pg"! Terraform will automatically
use this backend unless the backend configuration changes.
Initializing provider plugins...
- Reusing previous version of hashicorp/random from the dependency lock file
- Reusing previous version of hashicorp/template from the dependency lock file
- Reusing previous version of hashicorp/aws from the dependency lock file
- Using hashicorp/aws v5.3.0 from the shared cache directory
- Using hashicorp/random v3.5.1 from the shared cache directory
- Using hashicorp/template v2.2.0 from the shared cache directory
Terraform has been successfully initialized!

You may now begin working with Terraform. Try running "terraform plan" to see
any changes that are required for your infrastructure. All Terraform commands
should now work.
If you ever set or change modules or backend configuration for Terraform,
rerun this command to reinitialize your working directory. If you forget, other
commands will detect it and remind you to do so if necessary.
Success! The configuration is valid.

Switched to workspace "34".
module.local-node[0].random_uuid.instance_uuid: Refreshing state... [id=b91924dd-615f-e137-8059-710cd9fd57ad]
module.local-node[0].aws_key_pair.deployer: Refreshing state... [id=yeedu34-b91924dd-615f-e137-8059-710cd9fd57ad-ssh-key]
module.local-node[0].aws_instance.vm[0]: Refreshing state... [id=i-081774035e3470cd6]

Note: Objects have changed outside of Terraform
Terraform detected the following changes made outside of Terraform since the
last "terraform apply":
  # module.local-node[0].aws_key_pair.deployer has been changed
  ~ resource "aws_key_pair" "deployer" {
        id          = "yeedu34-b91924dd-615f-e137-8059-710cd9fd57ad-ssh-key"
      + tags        = {}
        # (7 unchanged attributes hidden)
    }
Unless you have made equivalent changes to your configuration, or ignored the
relevant attributes using ignore_changes, the following plan may include
actions to undo or respond to these changes.

Job

Spark Job Configuration

Command Name

Utility

create-conf

To create a Spark Job Configuration.

list-confs

To list all the available Spark Job Configurations.

get-conf

To get information about a specific Spark Job Configuration.

edit-conf

To edit a Spark Job Configuration.

delete-conf

To delete a specific Spark Job Configuration.

create-conf

yeedu job create-conf -h
usage:  create-conf [-h] --cluster_id CLUSTER_ID --name NAME [--files [FILES]]
                    [--properties-file [PROPERTIES_FILE]] [--conf CONF [CONF ...]]
                    [--packages [PACKAGES]] [--repositories [REPOSITORIES]]
                    [--jars [JARS]] [--archives [ARCHIVES]] --deploy-mode client,cluster
                    [--driver-memory [DRIVER_MEMORY]]
                    [--driver-java-options [DRIVER_JAVA_OPTIONS]]
                    [--driver-library-path [DRIVER_LIBRARY_PATH]]
                    [--driver-class-path [DRIVER_CLASS_PATH]]
                    [--executor-memory [EXECUTOR_MEMORY]]
                    [--driver-cores [DRIVER_CORES]]
                    [--total-executor-cores [TOTAL_EXECUTOR_CORES]]
                    [--executor-cores [EXECUTOR_CORES]]
                    [--num-executors [NUM_EXECUTORS]] [--principal [PRINCIPAL]]
                    [--keytab [KEYTAB]] [--queue [QUEUE]] [--class-name [CLASS_NAME]]
                    [--command [COMMAND]] [--arguments [ARGUMENTS]]
                    [--raw-scala-code RAW_SCALA_CODE]
                    [--max_concurrency MAX_CONCURRENCY]
                    [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cluster_id CLUSTER_ID
                        Provide cluster_id to create a Spark Job Configuration.
  --name NAME           Provide name to create a Spark Job Configuration.
  --files [FILES]       Provide files to create a Spark Job Configuration.
  --properties-file [PROPERTIES_FILE]
                        Provide properties-file to create a Spark Job Configuration.
  --conf CONF [CONF ...]
                        Provide conf to create a Spark Job Configuration.
  --packages [PACKAGES]
                        Provide packages to create a Spark Job Configuration.
  --repositories [REPOSITORIES]
                        Provide repositories to create a Spark Job Configuration.
  --jars [JARS]         Provide jars to create a Spark Job Configuration.
  --archives [ARCHIVES]
                        Provide archives to create a Spark Job Configuration.
  --deploy-mode client,cluster
                        Provide deploy-mode to create a Spark Job Configuration.
  --driver-memory [DRIVER_MEMORY]
                        Provide driver-memory to create a Spark Job Configuration.
  --driver-java-options [DRIVER_JAVA_OPTIONS]
                        Provide driver-java-options to create a Spark Job Configuration.
  --driver-library-path [DRIVER_LIBRARY_PATH]
                        Provide driver-library-path to create a Spark Job Configuration.
  --driver-class-path [DRIVER_CLASS_PATH]
                        Provide driver-class-path to create a Spark Job Configuration.
  --executor-memory [EXECUTOR_MEMORY]
                        Provide executor-memory to create a Spark Job Configuration.
  --driver-cores [DRIVER_CORES]
                        Provide driver-cores to create a Spark Job Configuration.
  --total-executor-cores [TOTAL_EXECUTOR_CORES]
                        Provide total-executor-cores to create a Spark Job
                        Configuration.
  --executor-cores [EXECUTOR_CORES]
                        Provide executor-cores to create a Spark Job Configuration.
  --num-executors [NUM_EXECUTORS]
                        Provide num-executors to create a Spark Job Configuration.
  --principal [PRINCIPAL]
                        Provide principal to create a Spark Job Configuration.
  --keytab [KEYTAB]     Provide keytab to create a Spark Job Configuration.
  --queue [QUEUE]       Provide queue to create a Spark Job Configuration.
  --class-name [CLASS_NAME]
                        Provide class-name to create a Spark Job Configuration.
  --command [COMMAND]   Provide command to create a Spark Job Configuration.
  --arguments [ARGUMENTS]
                        Provide arguments to create a Spark Job Configuration.
  --raw-scala-code RAW_SCALA_CODE
                        Provide raw-scala-code file path to create a Spark Job
                        Configuration.
  --max_concurrency MAX_CONCURRENCY
                        Provide max_concurrency number to limit the number of jobs
                        submitted.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create-conf example with all the required and optional arguments passed.

yeedu job create-conf --cluster_id=34 --name="spark_examples" --deploy-mode="client" --class-name="org.apache.spark.examples.SparkPi" --command="file:///yeedu/object-storage-manager/spark-examples_2.11-2.4.8.jar" --arguments=500
  • Console output

{
  "job_conf_id": "63498",
  "name": "spark_examples",
  "cluster_id": "34",
  "max_concurrency": "0",
  "deploy_mode": "client",
  "class_name": "org.apache.spark.examples.SparkPi",
  "command": "file:///yeedu/object-storage-manager/spark-examples_2.11-2.4.8.jar",
  "arguments": "500",
  "rawScalaCode": null,
  "files": null,
  "properties_file": null,
  "conf": null,
  "packages": null,
  "repositories": null,
  "jars": null,
  "archives": null,
  "driver_memory": null,
  "driver_java_options": null,
  "driver_library_path": null,
  "driver_class_path": null,
  "executor_memory": null,
  "driver_cores": null,
  "total_executor_cores": null,
  "executor_cores": null,
  "num_executors": null,
  "principal": null,
  "keytab": null,
  "queue": null,
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:52:46.836Z",
  "from_date": "2023-07-20T11:52:46.836Z",
  "to_date": null
}

list-confs

yeedu job list-confs -h
usage:  list-confs [-h] [--page_number PAGE_NUMBER] [--limit LIMIT]
                   [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --page_number PAGE_NUMBER
                        To list Spark Job Configurations for a specific page_number.
                        (default: 1)
  --limit LIMIT         Provide limit to list number of Spark Job Configurations.
                        (default: 100)
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-confs example with optional arguments passed.

yeedu job list-confs --limit=2
  • Console output

{
  "data": [
    {
      "job_conf_id": "63498",
      "name": "spark_examples",
      "cluster_id": "34",
      "deploy_mode": "client",
      "max_concurrency": "0",
      "class_name": "org.apache.spark.examples.SparkPi",
      "command": "file:///yeedu/object-storage-manager/spark-examples_2.11-2.4.8.jar",
      "arguments": "500",
      "rawScalaCode": null,
      "files": null,
      "properties_file": null,
      "conf": null,
      "packages": null,
      "repositories": null,
      "jars": null,
      "archives": null,
      "driver_memory": null,
      "driver_java_options": null,
      "driver_library_path": null,
      "driver_class_path": null,
      "executor_memory": null,
      "driver_cores": null,
      "total_executor_cores": null,
      "executor_cores": null,
      "num_executors": null,
      "principal": null,
      "keytab": null,
      "queue": null,
      "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
      "created_by": {
        "user_id": "1",
        "username": "YSU0000"
      },
      "modified_by": {
        "user_id": "1",
        "username": "YSU0000"
      },
      "last_update_date": "2023-07-20T11:52:46.836Z",
      "from_date": "2023-07-20T11:52:46.836Z",
      "to_date": null
    }
  ],
  "result_set": {
    "current_page": 1,
    "total_objects": 1,
    "total_pages": 1,
    "limit": 2
  }
}

get-conf

yeedu job get-conf -h
usage:  get-conf [-h] [--job_conf_id JOB_CONF_ID] [--job_conf_name JOB_CONF_NAME]
                 [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --job_conf_id JOB_CONF_ID
                        Provide an id to get information about a specific Spark Job
                        Configuration.
  --job_conf_name JOB_CONF_NAME
                        Provide name to get information about a specific Spark Job
                        Configuration.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-conf example with one of the required ‘–job_conf_id’ arguments passed.

yeedu job get-conf --job_conf_id=63498
  • Console output

{
  "job_conf_id": "63498",
  "name": "spark_examples",
  "cluster_id": "34",
  "deploy_mode": "client",
  "max_concurrency": "0",
  "class_name": "org.apache.spark.examples.SparkPi",
  "command": "file:///yeedu/object-storage-manager/spark-examples_2.11-2.4.8.jar",
  "arguments": "500",
  "rawScalaCode": null,
  "files": null,
  "properties_file": null,
  "conf": null,
  "packages": null,
  "repositories": null,
  "jars": null,
  "archives": null,
  "driver_memory": null,
  "driver_java_options": null,
  "driver_library_path": null,
  "driver_class_path": null,
  "executor_memory": null,
  "driver_cores": null,
  "total_executor_cores": null,
  "executor_cores": null,
  "num_executors": null,
  "principal": null,
  "keytab": null,
  "queue": null,
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "modified_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "last_update_date": "2023-07-20T11:52:46.836Z",
  "from_date": "2023-07-20T11:52:46.836Z",
  "to_date": null
}

edit-conf

yeedu job edit-conf -h
usage:  edit-conf [-h] [--job_conf_id JOB_CONF_ID] [--job_conf_name JOB_CONF_NAME]
                  [--cluster_id CLUSTER_ID] [--cluster_name CLUSTER_NAME]
                  [--files [FILES]] [--properties-file [PROPERTIES_FILE]]
                  [--conf CONF [CONF ...]] [--packages [PACKAGES]]
                  [--repositories [REPOSITORIES]] [--jars [JARS]]
                  [--archives [ARCHIVES]] [--deploy-mode client,cluster]
                  [--driver-memory [DRIVER_MEMORY]]
                  [--driver-java-options [DRIVER_JAVA_OPTIONS]]
                  [--driver-library-path [DRIVER_LIBRARY_PATH]]
                  [--driver-class-path [DRIVER_CLASS_PATH]]
                  [--executor-memory [EXECUTOR_MEMORY]] [--driver-cores [DRIVER_CORES]]
                  [--total-executor-cores [TOTAL_EXECUTOR_CORES]]
                  [--executor-cores [EXECUTOR_CORES]] [--num-executors [NUM_EXECUTORS]]
                  [--principal [PRINCIPAL]] [--keytab [KEYTAB]] [--queue [QUEUE]]
                  [--class-name [CLASS_NAME]] [--name [NAME]] [--command [COMMAND]]
                  [--arguments [ARGUMENTS]] [--raw-scala-code RAW_SCALA_CODE]
                  [--max_concurrency MAX_CONCURRENCY] [--json-output [{pretty,default}]]
                  [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --job_conf_id JOB_CONF_ID
                        Provide Spark Job Config Id to edit a Spark Job Configuration.
  --job_conf_name JOB_CONF_NAME
                        Provide Spark Job Config Name to edit a Spark Job Configuration.
  --cluster_id CLUSTER_ID
                        Provide Cluster Id to edit in a Spark Job Configuration.
  --cluster_name CLUSTER_NAME
                        Provide Cluster Name to edit in a Spark Job Configuration.
  --files [FILES]       Provide files to edit in a Spark Job Configuration.
  --properties-file [PROPERTIES_FILE]
                        Provide properties-file to edit in a Spark Job Configuration.
  --conf CONF [CONF ...]
                        Provide conf to edit in a Spark Job Configuration.
  --packages [PACKAGES]
                        Provide packages to edit in a Spark Job Configuration.
  --repositories [REPOSITORIES]
                        Provide repositories to edit in a Spark Job Configuration.
  --jars [JARS]         Provide jars to edit in a Spark Job Configuration.
  --archives [ARCHIVES]
                        Provide archives to edit in a Spark Job Configuration.
  --deploy-mode client,cluster
                        Provide deploy-mode to edit in a Spark Job Configuration.
  --driver-memory [DRIVER_MEMORY]
                        Provide driver-memory to edit in a Spark Job Configuration.
  --driver-java-options [DRIVER_JAVA_OPTIONS]
                        Provide driver-java-options to edit in a Spark Job
                        Configuration.
  --driver-library-path [DRIVER_LIBRARY_PATH]
                        Provide driver-library-path to edit in a Spark Job
                        Configuration.
  --driver-class-path [DRIVER_CLASS_PATH]
                        Provide driver-class-path to edit in a Spark Job Configuration.
  --executor-memory [EXECUTOR_MEMORY]
                        Provide executor-memory to edit in a Spark Job Configuration.
  --driver-cores [DRIVER_CORES]
                        Provide driver-cores to edit in a Spark Job Configuration.
  --total-executor-cores [TOTAL_EXECUTOR_CORES]
                        Provide total-executor-cores to edit in a Spark Job
                        Configuration.
  --executor-cores [EXECUTOR_CORES]
                        Provide executor-cores to edit in a Spark Job Configuration.
  --num-executors [NUM_EXECUTORS]
                        Provide num-executors to edit in a Spark Job Configuration.
  --principal [PRINCIPAL]
                        Provide principal to edit in a Spark Job Configuration.
  --keytab [KEYTAB]     Provide keytab to edit in a Spark Job Configuration.
  --queue [QUEUE]       Provide queue to edit in a Spark Job Configuration.
  --class-name [CLASS_NAME]
                        Provide class-name to edit in a Spark Job Configuration.
  --name [NAME]         Provide name to edit in a Spark Job Configuration.
  --command [COMMAND]   Provide command to edit in a Spark Job Configuration.
  --arguments [ARGUMENTS]
                        Provide arguments to edit in a Spark Job Configuration.
  --raw-scala-code RAW_SCALA_CODE
                        Provide raw-scala-code file path to edit in a Spark Job
                        Configuration.
  --max_concurrency MAX_CONCURRENCY
                        Provide max_concurrency number to limit the number of jobs
                        submitted.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • edit-conf example with one of the required ‘–job_conf_name’ argument and other optional argument is passed which is to be updated.

yeedu job edit-conf --job_conf_name="spark_examples" --arguments=1000
  • Console output

{
  "job_conf_id": "63498",
  "name": "spark_examples",
  "cluster_id": "34",
  "max_concurrency": "0",
  "deploy_mode": "client",
  "class_name": "org.apache.spark.examples.SparkPi",
  "command": "file:///yeedu/object-storage-manager/spark-examples_2.11-2.4.8.jar",
  "arguments": "1000",
  "rawScalaCode": null,
  "files": null,
  "properties_file": null,
  "conf": null,
  "packages": null,
  "repositories": null,
  "jars": null,
  "archives": null,
  "driver_memory": null,
  "driver_java_options": null,
  "driver_library_path": null,
  "driver_class_path": null,
  "executor_memory": null,
  "driver_cores": null,
  "total_executor_cores": null,
  "executor_cores": null,
  "num_executors": null,
  "principal": null,
  "keytab": null,
  "queue": null,
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:55:09.338Z",
  "from_date": "2023-07-20T11:52:46.836Z",
  "to_date": null
}

delete-conf

yeedu job delete-conf -h
usage:  delete-conf [-h] [--job_conf_id JOB_CONF_ID] [--job_conf_name JOB_CONF_NAME]
                    [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --job_conf_id JOB_CONF_ID
                        Provide Job Conf Id to delete a Spark Job Configuration.
  --job_conf_name JOB_CONF_NAME
                        Provide Job Conf Name to delete a Spark Job Configuration.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • delete-conf example with one of the required ‘–job_conf_id’ argument passed.

yeedu job delete-conf --job_conf_id=2
  • Console output

{
  "message": "Deleted Spark Job Config: 2"
}

Spark Job Instance

Command Name

Utility

start

To run an Apache Spark Job.

list

To list all the available Apache Spark Job Instances.

get

To get information about a specific Apache Spark Job Instance.

kill

To kill a specific Apache Spark Job Instance.

logs

To download Spark Job Instance logs for specific Spark Job Instance Id.

start

yeedu job start -h
usage:  start [-h] [--job_conf_id JOB_CONF_ID] [--job_conf_name JOB_CONF_NAME]
              [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --job_conf_id JOB_CONF_ID
                        To run an Apache Spark Job, enter job_conf_id.
  --job_conf_name JOB_CONF_NAME
                        To run an Apache Spark Job, enter job_conf_name.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • start example with one of the required argument passed.

yeedu job start --job_conf_id=63498
  • Console output

{
  "job_id": "63575",
  "job_conf_id": "63498",
  "history_engine_cluster_instance_id": "34",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T11:56:26.303Z",
  "from_date": "2023-07-20T11:56:26.303Z",
  "to_date": null
}

list

yeedu job list -h
usage:  list [-h] --cluster_id CLUSTER_ID [--job_conf_id JOB_CONF_ID]
             [--job_conf_name JOB_CONF_NAME]
             [--job_status {submitted,running,done,error,terminated,killing,killed}]
             [--page_number PAGE_NUMBER] [--limit LIMIT]
             [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --cluster_id CLUSTER_ID
                        To list Apache Spark Job of a specific cluster_id.
  --job_conf_id JOB_CONF_ID
                        To list Apache Spark Job of a specific job_conf_id.
  --job_conf_name JOB_CONF_NAME
                        To list Apache Spark Job of a specific job_conf_name.
  --job_status {submitted,running,done,error,terminated,killing,killed}
                        To list Apache Spark Job for a specific Spark job Status.
  --page_number PAGE_NUMBER
                        To list Apache Spark Job for a specific page_number. (default: 1)
  --limit LIMIT         Provide limit to list number of Apache Spark Job Instance.
                        (default: 100)
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list example to list spark jobs of a paricular engine cluster instance.

yeedu job list --cluster_id=1 --limit=5
  • Console output

{
  "data": [
    {
      "job_id": 63575,
      "job_application_id": null,
      "job_status": "SUBMITTED",
      "cluster_id": "34",
      "job_conf": {
        "job_conf_id": 63498,
        "name": "spark_examples",
        "max_concurrency": 0,
        "deploy_mode": "client",
        "class_name": "org.apache.spark.examples.SparkPi",
        "command": "file:///yeedu/object-storage-manager/spark-examples_2.11-2.4.8.jar",
        "arguments": "1000",
        "rawScalaCode": null,
        "files": null,
        "properties_file": null,
        "conf": null,
        "packages": null,
        "repositories": null,
        "jars": null,
        "archives": null,
        "driver_memory": null,
        "driver_java_options": null,
        "driver_library_path": null,
        "driver_class_path": null,
        "executor_memory": null,
        "driver_cores": null,
        "total_executor_cores": null,
        "executor_cores": null,
        "num_executors": null,
        "principal": null,
        "keytab": null,
        "queue": null
      },
      "workflow_job_instance_details": {
        "workflow_job_instance_status": {
          "workflow_job_instance_id": 62043,
          "workflow_job_id": 62043,
          "status": "SENT",
          "from_date": "2023-07-20T11:56:26.303763+00:00",
          "to_date": "infinity"
        }
      },
      "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
      "created_by": {
        "user_id": 1,
        "username": "YSU0000"
      },
      "modified_by": {
        "user_id": 1,
        "username": "YSU0000"
      },
      "last_update_date": "2023-07-20T11:56:26.303763+00:00",
      "from_date": "2023-07-20T11:56:26.303763+00:00",
      "to_date": "infinity"
    }
  ],
  "result_set": {
    "current_page": 1,
    "total_objects": 1,
    "total_pages": 1,
    "limit": 5
  }
}
  • list example to list spark jobs of a paricular engine cluster instance having specific spark job status.

yeedu job list --cluster_id=1 --job_status=running --limit=1
  • Console output

{
  "data": [
    {
      "job_id": 3,
      "job_application_id": "local-1676966563563",
      "job_status": "RUNNING",
      "cluster_id": "1",
      "job_conf": {
        "job_conf_id": 1,
        "name": "resize_job",
        "deploy_mode": "client",
        "class_name": "SampleResizeJar",
        "command": "file:///yeedu/object-storage-manager/SampleResizeJar-assembly-0.1.0-SNAPSHOT.jar",
        "arguments": null,
        "rawScalaCode": null,
        "files": null,
        "properties_file": null,
        "conf": null,
        "packages": null,
        "repositories": null,
        "jars": null,
        "archives": null,
        "driver_memory": "10G",
        "driver_java_options": "-Dderby.system.home=/yeedu/spark_metastores/1676966162",
        "driver_library_path": null,
        "driver_class_path": null,
        "executor_memory": null,
        "driver_cores": null,
        "total_executor_cores": null,
        "executor_cores": null,
        "num_executors": null,
        "principal": null,
        "keytab": null,
        "queue": null
      },
      "workflow_job_instance_details": {
        "workflow_job_instance_status": {
          "workflow_job_instance_id": 4,
          "workflow_job_id": 4,
          "status": "EXECUTING",
          "from_date": "2023-04-06T09:13:48.376291+00:00",
          "to_date": "infinity"
        },
        "workflow_execution_process": {
          "machine_pid_number": "66",
          "machine_hostname": "yeedu1-ceaa31b4-37a0-3c6a-9797-61b11d0614da",
          "machine_id": "ceaa31b4-37a0-3c6a-9797-61b11d0614da",
          "machine_pid_user": "root",
          "machine_node_number": "2"
        }
      },
      "tenant_id": "be2a7d36-f555-4f78-b1bd-eafeefc285db",
      "created_by": {
        "user_id": 1,
        "username": "YSU0000"
      },
      "modified_by": {
        "user_id": 1,
        "username": "YSU0000"
      },
      "last_update_date": "2023-04-06T09:13:48.376291+00:00",
      "from_date": "2023-04-06T09:13:48.376291+00:00",
      "to_date": "infinity"
    }
  ],
  "result_set": {
    "current_page": 1,
    "total_objects": 3,
    "total_pages": 3,
    "limit": 1,
    "next_page": 2
  }
}

get

yeedu job get -h
usage:  get [-h] --job_id JOB_ID [--json-output [{pretty,default}]]
            [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --job_id JOB_ID       Provide an job_id to get information about a specific Apache
                        Spark Job Instance.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get example with the required ‘–spark_job_instance_id’ arguments passed.

yeedu job get --job_id=63575
  • Console output

{
  "job_id": 63575,
  "job_application_id": "local-1676966563563",
  "job_status": "RUNNING",
  "cluster_id": "34",
  "job_conf": {
    "job_conf_id": 63498,
    "name": "spark_examples",
    "max_concurrency": 0,
    "deploy_mode": "client",
    "class_name": "org.apache.spark.examples.SparkPi",
    "command": "file:///yeedu/object-storage-manager/spark-examples_2.11-2.4.8.jar",
    "arguments": "1000",
    "rawScalaCode": null,
    "files": null,
    "properties_file": null,
    "conf": null,
    "packages": null,
    "repositories": null,
    "jars": null,
    "archives": null,
    "driver_memory": null,
    "driver_java_options": null,
    "driver_library_path": null,
    "driver_class_path": null,
    "executor_memory": null,
    "driver_cores": null,
    "total_executor_cores": null,
    "executor_cores": null,
    "num_executors": null,
    "principal": null,
    "keytab": null,
    "queue": null
  }
  "workflow_job_instance_details": {
    "workflow_job_instance_status": {
      "workflow_job_instance_id": 62043,
      "workflow_job_id": 62043,
      "status": "EXECUTING",
      "from_date": "2023-07-20T11:56:26.303763+00:00",
      "to_date": "infinity"
    },
    "workflow_execution_process": {
      "machine_pid_number": "93",
      "machine_hostname": "i-0fd5796fc70d11bf9",
      "machine_id": "37a886f2-a5be-081e-3d46-ccef1454ef5e",
      "machine_pid_user": "root",
      "machine_node_number": "0"
    }
  },
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by": {
    "user_id": 1,
    "username": "YSU0000"
  },
  "modified_by": {
    "user_id": 1,
    "username": "YSU0000"
  },
  "last_update_date": "2023-07-20T11:56:26.303763+00:00",
  "from_date": "2023-07-20T11:56:26.303763+00:00",
  "to_date": "2023-07-20T11:58:09.702464+00:00"
}

kill

yeedu job kill -h
usage:  kill [-h] --job_id JOB_ID [--json-output [{pretty,default}]]
             [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --job_id JOB_ID       Provide an job_id to kill a specific Apache Spark Job Instance.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • kill example with the required ‘–spark_job_instance_id’ argument passed.

yeedu job kill --job_id=63575
  • Console output

{
  "SparkKill": {
    "workflow_job_id": 62043,
    "workflow_job_instance_id": 62043,
    "spark_job_instance_id": 63575,
    "spark_job_id": 63498,
    "compute_engine_id": 34
  }
}

logs

yeedu job logs -h
usage:  logs [-h] --job_id JOB_ID [--log_type {stdout,stderr}]
             [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --job_id JOB_ID       Provide job_id to download log records.
  --log_type {stdout,stderr}
                        Provide log_type to download Spark Job Instance log records.
                        (default: stdout)
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • logs example with the required ‘–spark_job_instance_id’ arguments passed.

yeedu job logs --job_id=63576
  • Console output

Pi is roughly 3.141698702833974

Workflow Details By Spark Job Application ID

Command Name

Utility

get-workflow-job-instance

To get information about a specific Workflow Job Instance.

get-workflow-job-instance

yeedu job get-workflow-job-instance -h
usage:  get-workflow-job-instance [-h] --job_application_id JOB_APPLICATION_ID
                                  [--json-output [{pretty,default}]]
                                  [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --job_application_id JOB_APPLICATION_ID
                        Provide a job_application_id to get information about a
                        specific Workflow Job Instance.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-workflow-job-instance example with the required ‘–job_application_id’ argument passed.

yeedu job get-workflow-job-instance --job_application_id="local-1689855445076"
  • Console output

{
  "job_id": 63688,
  "job_application_id": "local-1689855445076",
  "job_status": "DONE",
  "compute_engine": 34,
  "cluster_id": "34",
  "workflow_job_instance_details": {
    "workflow_job_instance_status": {
      "workflow_job_instance_id": 62164,
      "workflow_job_id": 62164,
      "status": "DONE",
      "previous_status": [
        "NONE",
        "INIT",
        "SENT",
        "RECEIVED",
        "EXECUTING"
      ],
      "from_date": "2023-07-20T12:18:44.792999+00:00",
      "to_date": "infinity"
    },
    "workflow_execution_process": {
      "machine_pid_number": "765",
      "machine_hostname": "i-0cc7bff64c467f852",
      "machine_id": "76a3d634-5e8f-31a8-b1d4-99e8cc9ae208",
      "machine_pid_user": "root",
      "machine_node_number": "0"
    }
  },
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "created_by": {
    "user_id": 1,
    "username": "YSU0000"
  },
  "modified_by": {
    "user_id": 1,
    "username": "YSU0000"
  },
  "last_update_date": "2023-07-20T12:17:17.444066+00:00",
  "from_date": "2023-07-20T12:17:17.444066+00:00",
  "to_date": "2023-07-20T12:18:44.792999+00:00"
}

IAM (Identity and Access Management)

User

Command Name

Utility

get-user-info

To get information about current session user.

get-user-roles

To get all the roles of current session user.

get-user-info

yeedu iam get-user-info -h
usage:  get-user-info [-h] [--json-output [{pretty,default}]]
                      [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-user-info example without optional arguments passed for output format.

yeedu iam get-user-info
  • Console output

{
  "user_id": "1",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "username": "USER",
  "email": "user@yeedu.com",
  "group_info": [
    {
      "group_id": 1,
      "groupname": "yeedu-user"
    }
  ],
  "from_date": "2023-03-14T10:00:47.406Z",
  "to_date": null
}

get-user-roles

yeedu iam get-user-roles -h
usage:  get-user-roles [-h] [--json-output [{pretty,default}]]
                       [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-user-roles example without optional arguments passed for output format.

yeedu iam get-user-roles
  • Console output

{
  "user_id": 2,
  "username": "RU0000",
  "user_roles": [
    "Resource User"
  ],
  "group_roles": [
    null
  ]
}

Shared Platform and Admin

Command Name

Utility

sync-user

To get the information about a specific User.

sync-group

To get the information about a specific Group.

list-user-groups

To list all the Groups for a specific User.

list-users

To list all the available Users.

list-group-users

To list all the Users for a specific Group.

list-groups

To list all the available Groups.

sync-user

yeedu iam sync-user -h
usage:  sync-user [-h] --username USERNAME [--json-output [{pretty,default}]]
                  [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --username USERNAME   Provide username to get information about a specific User.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • sync-user example with required argument ‘–username’ passed.

yeedu iam sync-user --username="USER"
  • Console output

{
  "user_id": "2",
  "username": "USER",
  "email": "user@yeedu.com",
  "from_date": "2023-03-14T10:03:06.200Z",
  "to_date": null
}

sync-group

yeedu iam sync-group -h
usage:  sync-group [-h] --groupname GROUPNAME [--json-output [{pretty,default}]]
                   [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --groupname GROUPNAME
                        Provide groupname to get information about a specific Group.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • sync-group example with required argument ‘–groupname’ passed.

yeedu iam sync-group --groupname="yeedu-user"
  • Console output

{
  "group_id": "3",
  "group_name": "yeedu-user",
  "from_date": "2023-03-15T14:30:20.723Z",
  "to_date": null
}

list-user-groups

yeedu iam list-user-groups -h
usage:  list-user-groups [-h] --user_id USER_ID [--json-output [{pretty,default}]]
                         [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --user_id USER_ID     Provide user_id to list all the Groups for a specific User.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-user-groups example with required argument ‘–user_id’ passed.

yeedu iam list-user-groups --user_id=2
  • Console output

{
  "user_id": 2,
  "username": "RU0000",
  "groups": [
    "yeedu-user"
  ]
}

list-users

yeedu iam list-users -h
usage:  list-users [-h] [--json-output [{pretty,default}]]
                   [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-users example without optional arguments passed for output format.

yeedu iam list-users
  • Console output

[
  {
    "user_id": "1",
    "username": "YA0000",
    "email": "ya0000@yeedu.com",
    "from_date": "2023-03-14T10:03:06.200Z",
    "to_date": null
  },
  {
    "user_id": "2",
    "username": "RM0000",
    "email": "rm0000@yeedu.com",
    "from_date": "2023-03-14T10:03:11.934Z",
    "to_date": null
  }
]

list-group-users

yeedu iam list-group-users -h
usage:  list-group-users [-h] --group_id GROUP_ID [--json-output [{pretty,default}]]
                         [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --group_id GROUP_ID   Provide group_id to list all the Users for a specific Group.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-group-users example with required argument ‘–group_id’ passed.

yeedu iam list-group-users --group_id=2
  • Console output

{
  "group_id": 2,
  "group_name": "yeedu-provider",
  "users": [
    "YSU0000",
    "RP0000"
  ]
}

list-groups

yeedu iam list-groups -h
usage:  list-groups [-h] [--json-output [{pretty,default}]]
                    [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-groups example without optional arguments passed for output format.

yeedu iam list-groups
  • Console output

[
  {
    "group_id": "1",
    "group_name": "yeedu-manager",
    "from_date": "2023-03-15T14:30:20.723Z",
    "to_date": null
  },
  {
    "group_id": "2",
    "group_name": "yeedu-provider",
    "from_date": "2023-03-15T14:30:20.723Z",
    "to_date": null
  },
  {
    "group_id": "3",
    "group_name": "yeedu-user",
    "from_date": "2023-03-15T14:30:20.723Z",
    "to_date": null
  }
]

Lookup

Command Name

Utility

list-resources

To get all the resources.

get-resource

To get resource details for a specific Resource.

list-permissions

To get all the Permission Types.

get-permission

To get resource details for a specific Permission Type.

list-roles

To get all the Roles.

get-role

To get resource details for a specific Role.

list-rules

To get all the Rules.

get-rule

To get resource details for a specific Rule.

list-resources

yeedu iam list-resources -h
usage:  list-resources [-h] [--json-output [{pretty,default}]]
                       [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-resources example without optional argument passed for output format.

yeedu iam list-resources
  • Console output

[
  {
    "resource_id": 0,
    "resource_path": "/api/v1/lookup_cloud_providers",
    "from_date": "2023-07-14T13:44:14.783Z",
    "to_date": null
  },
  {
    "resource_id": 1,
    "resource_path": "/api/v1/lookup_cloud_providers/:cloud_provider_id",
    "from_date": "2023-07-14T13:44:14.783Z",
    "to_date": null
  },
  ...
  {
    "resource_id": 102,
    "resource_path": "/api/v1/permission/:auth_permissions_type_id/resource/:auth_resources_id/rule/:id",
    "from_date": "2023-07-14T13:44:14.783Z",
    "to_date": null
  }
]

get-resource

yeedu iam get-resource -h
usage:  get-resource [-h] --resource_id RESOURCE_ID [--json-output [{pretty,default}]]
                     [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --resource_id RESOURCE_ID
                        Provide the resource_id to get information about a specific
                        Resource.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-resource example with required argument ‘–resource_id’ passed.

yeedu iam get-resource --resource_id=18
  • Console output

{
  "resource_id": 18,
  "resource_path": "/api/v1/machine/network",
  "from_date": "2023-07-14T13:44:14.783Z",
  "to_date": null
}

list-permissions

yeedu iam list-permissions -h
usage:  list-permissions [-h] [--json-output [{pretty,default}]]
                         [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-permissions example without optional argument passed for output format.

yeedu iam list-permissions
  • Console output

[
  {
    "permission_id": 0,
    "permission": "GET",
    "description": "To list a resource",
    "from_date": "2023-07-14T13:44:14.282Z",
    "to_date": null
  },
  ...
  {
    "permission_id": 3,
    "permission": "DELETE",
    "description": "To delete a resource",
    "from_date": "2023-07-14T13:44:14.282Z",
    "to_date": null
  }
]

get-permission

yeedu iam get-permission -h
usage:  get-permission [-h] --permission_id PERMISSION_ID
                       [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --permission_id PERMISSION_ID
                        Provide the permission_id to get information about a specific
                        Permission Type.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-permission example with required argument ‘–permission_id’ passed.

yeedu iam get-permission --permission_id=1
  • Console output

{
  "permission_id": 1,
  "permission": "POST",
  "description": "To create a resource",
  "from_date": "2023-07-14T13:44:14.282Z",
  "to_date": null
}

list-roles

yeedu iam list-roles -h
usage:  list-roles [-h] [--json-output [{pretty,default}]]
                   [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-roles example without optional arguments passed for output format.

yeedu iam list-roles
  • Console output

[
  {
    "role_id": 0,
    "role": "Resource Manager",
    "description": "GET (Lookup, Volume Config, Network Config, Boot Disk Image Config, Machine Config, Credentials Config, Object Storage Manager, Object Storage Manager Files, Hive Metastore Config, Cluster Configuration, Cluster Instance, Spark Job Config, Spark Job Instance, User) PUT (Volume Config, Network Config, Machine Config, Credentials Config, Object Storage Manager, Hive Metastore Config, Cluster Configuration) POST (Volume Config, Network Config, Boot Disk Image Config, Machine Config, Credentials Config, Object Storage Manager, Hive Metastore Config, Cluster Configuration) DELETE (Credentials Config, Object Storage Manager)",
    "from_date": "2023-07-14T13:44:15.285Z",
    "to_date": null
  },
  ...
  {
    "role_id": 4,
    "role": "Platform Admin",
    "description": "GET/PUT/POST/DELETE (Lookup, Volume Config, Network Config, Boot Disk Image Config, Machine Config, Credentials Config, Object Storage Manager, Object Storage Manager Files, Hive Metastore Config, Cluster Configuration, Cluster Instance, Spark Job Config, Spark Job Instance, User, Admin, Shared Platform and Admin Resources, Platform Admin, IAM Lookup). Responsible to manage tenants and can access any endpoint.",
    "from_date": "2023-07-14T13:44:15.285Z",
    "to_date": null
  }
]

get-role

yeedu iam get-role -h
usage:  get-role [-h] --role_id ROLE_ID [--json-output [{pretty,default}]]
                 [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --role_id ROLE_ID     Provide the role_id to get information about a specific Role.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-role example with required argument ‘–role_id’ passed.

yeedu iam get-role --role_id=1
  • Console output

{
  "role_id": 1,
  "role": "Resource Provider",
  "description": "GET (Lookup, Volume Config, Network Config, Boot Disk Image Config, Machine Config, Credentials Config, Object Storage Manager, Object Storage Manager Files, Hive Metastore Config, Cluster Configuration, Cluster Instance, Spark Job Config, Spark Job Instance, User) POST/PUT (Cluster Instance)",
  "from_date": "2023-07-14T13:44:15.285Z",
  "to_date": null
}

list-rules

yeedu iam list-rules -h
usage:  list-rules [-h] [--json-output [{pretty,default}]]
                   [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-rules example without optional arguments passed for output format.

yeedu iam list-rules
  • Console output

[
  {
    "rule_id": "0",
    "permission_type": {
      "permission_id": 0,
      "permission": "GET",
      "description": "To list a resource"
    },
    "resource": {
      "resource_id": 0,
      "resource_path": "/api/v1/lookup_cloud_providers"
    },
    "role": {
      "role_id": 0,
      "role": "Resource Manager",
      "description": "GET (Lookup, Volume Config, Network Config, Boot Disk Image Config, Machine Config, Credentials Config, Object Storage Manager, Object Storage Manager Files, Hive Metastore Config, Cluster Configuration, Cluster Instance, Spark Job Config, Spark Job Instance, User) PUT (Volume Config, Network Config, Machine Config, Credentials Config, Object Storage Manager, Hive Metastore Config, Cluster Configuration) POST (Volume Config, Network Config, Boot Disk Image Config, Machine Config, Credentials Config, Object Storage Manager, Hive Metastore Config, Cluster Configuration) DELETE (Credentials Config, Object Storage Manager)"
    },
    "from_date": "2023-07-14T13:44:15.788Z",
    "to_date": null
  },
  ...
  {
    "rule_id": "382",
    "permission_type": {
      "permission_id": 1,
      "permission": "POST",
      "description": "To create a resource"
    },
    "resource": {
      "resource_id": 102,
      "resource_path": "/api/v1/cluster/uptime"
    },
    "role": {
      "role_id": 4,
      "role": "Platform Admin",
      "description": "GET/PUT/POST/DELETE (Lookup, Volume Config, Network Config, Boot Disk Image Config, Machine Config, Credentials Config, Object Storage Manager, Object Storage Manager Files, Hive Metastore Config, Cluster Configuration, Cluster Instance, Spark Job Config, Spark Job Instance, User, Admin, Shared Platform and Admin Resources, Platform Admin, IAM Lookup). Responsible to manage tenants and can access any endpoint."
    },
    "from_date": "2023-07-14T13:44:15.788Z",
    "to_date": null
  }
]

get-rule

yeedu iam get-rule -h
usage:  get-rule [-h] --rule_id RULE_ID [--json-output [{pretty,default}]]
                 [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --rule_id RULE_ID     Provide the rule_id to get information about a specific Rule.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-rule example with required argument ‘–rule_id’ passed.

yeedu iam get-rule --rule_id=108
  • Console output

{
  "rule_id": "108",
  "permission_type": {
    "permission_id": 0,
    "permission": "GET",
    "description": "To list a resource"
  },
  "resource": {
    "resource_id": 45,
    "resource_path": "/api/v1/spark/job/:job_id"
  },
  "role": {
    "role_id": 1,
    "role": "Resource Provider",
    "description": "GET (Lookup, Volume Config, Network Config, Boot Disk Image Config, Machine Config, Credentials Config, Object Storage Manager, Object Storage Manager Files, Hive Metastore Config, Cluster Configuration, Cluster Instance, Spark Job Config, Spark Job Instance, User) POST/PUT (Cluster Instance)"
  },
  "from_date": "2023-07-14T13:44:15.788Z",
  "to_date": null
}

Platform-Admin

Tenant

Command Name

Utility

create-tenant

To create a Tenant.

list-tenants

To list all the available Tenants.

get-tenant

To get information about a specific Tenant.

edit-tenant

To edit a specific Tenant.

delete-tenant

To delete a specific Tenant.

create-tenant

yeedu platform-admin create-tenant -h
usage:  create-tenant [-h] --name NAME [--description DESCRIPTION]
                      [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --name NAME           Provide name to create-tenant.
  --description DESCRIPTION
                        Provide description to create-tenant.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create-tenant example with all the required and optional arguments passed.

yeedu platform-admin create-tenant --name="tenant1" --description="Yeedu Tenant-1"
  • Console output

{
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "name": "tenant1",
  "description": "Yeedu Tenant-1",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-03-13T12:29:25.982Z",
  "from_date": "2023-03-13T12:29:25.982Z",
  "to_date": null
}

list-tenants

yeedu platform-admin list-tenants -h
usage:  list-tenants [-h] [--json-output [{pretty,default}]]
                     [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-tenants example without optional arguments passed for output format.

yeedu platform-admin list-tenants
  • Console output

[
  {
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
    "name": "tenant1",
    "description": "Yeedu Tenant-1",
    "created_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "modified_by": {
      "user_id": "1",
      "username": "YSU0000"
    },
    "last_update_date": "2023-07-20T10:56:33.714Z",
    "from_date": "2023-07-20T10:56:33.714Z",
    "to_date": null
  }
]

get-tenant

yeedu platform-admin get-tenant -h
usage:  get-tenant [-h] --tenant_id TENANT_ID [--json-output [{pretty,default}]]
                   [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide the tenant_id to get information about a specific Tenant.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-tenant example with the required ‘–tenant_id’ arguments passed.

yeedu platform-admin get-tenant --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538"
  • Console output

{
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "name": "tenant1",
  "description": "Yeedu Tenant-1",
  "created_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "modified_by": {
    "user_id": "1",
    "username": "YSU0000"
  },
  "last_update_date": "2023-07-20T10:56:33.714Z",
  "from_date": "2023-07-20T10:56:33.714Z",
  "to_date": null
}

edit-tenant

yeedu platform-admin edit-tenant -h
usage:  edit-tenant [-h] --tenant_id TENANT_ID [--name [NAME]]
                    [--description [DESCRIPTION]] [--json-output [{pretty,default}]]
                    [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide a specific tenant Id to edit-tenant.
  --name [NAME]         Provide name to edit-tenant.
  --description [DESCRIPTION]
                        Provide description to edit-tenant.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • edit-tenant example with the required ‘–tenant_id’ argument and other optional argument is passed which is to be updated.

yeedu platform-admin edit-tenant --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538" --description="Yeedu Tenant 1"
  • Console output

{
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "name": "tenant1",
  "description": "Yeedu Tenant 1",
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-07-20T12:42:11.131Z",
  "from_date": "2023-07-20T10:56:33.714Z",
  "to_date": null
}

delete-tenant

yeedu platform-admin delete-tenant -h
usage:  delete-tenant [-h] --tenant_id TENANT_ID [--json-output [{pretty,default}]]
                      [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide the tenant_id to delete a specific Tenant.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • delete-tenant example with the required ‘–tenant_id’ argument passed.

yeedu platform-admin delete-tenant --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538"
  • Console output

{
  "message": "Deleted Tenant: 0b5017a9-6099-497f-81ba-d4e537e23538"
}

User

Command Name

Utility

list-user-tenants

To list all the tenants associated to an user.

list-tenant-users

To list all the users present in a tenant.

get-tenant-user

To get information about a User present in a specific tenant.

get-user-roles

To get all the roles of an User present in a specific tenant.

list-users-roles

To list all the Users Roles in a specific tenant.

get-role-users

To get all the users of a Role present in a specific tenant.

create-user-role

To create an User Role for a specific tenant.

delete-user-role

To delete an User Role of a specific tenant.

list-user-tenants

yeedu platform-admin list-user-tenants -h
usage:  list-user-tenants [-h] --user_id USER_ID [--json-output [{pretty,default}]]
                          [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --user_id USER_ID     Provide User Id to list all the tenants.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-user-tenants example without optional arguments passed for output format.

yeedu platform-admin list-user-tenants --user_id=1
  • Console output

[
  {
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
    "name": "tenant1",
    "description": "Yeedu Tenant 1"
  },
  {
    "tenant_id": "066a702d-6b9d-4176-afc5-51c24a651739",
    "name": "tenant2",
    "description": "Yeedu Tenant 2"
  },
  {
    "tenant_id": "328aba9a-92ac-458d-8c27-fe9ea6e5e9ab",
    "name": "tenant3",
    "description": "Yeedu Tenant 3"
  },
  {
    "tenant_id": "6b682ef1-ede4-4d96-bab6-cd008aadd534",
    "name": "tenant4",
    "description": "Yeedu Tenant 4"
  }
]

list-tenant-users

yeedu platform-admin list-tenant-users -h
usage:  list-tenant-users [-h] --tenant_id TENANT_ID [--page_number PAGE_NUMBER]
                          [--limit LIMIT] [--json-output [{pretty,default}]]
                          [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide Tenant Id to list all the users present in it.
  --page_number PAGE_NUMBER
                        To list tenant users for a specific page_number. (default: 1)
  --limit LIMIT         Provide limit to list number of tenant users. (default: 100)
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-tenant-users example without optional arguments passed for output format.

yeedu platform-admin list-tenant-users --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538" --limit=2
  • Console output

{
  "data": {
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
    "users": [
      "YA0000",
      "YSU0000"
    ]
  },
  "result_set": {
    "current_page": 1,
    "total_objects": 2,
    "total_pages": 1,
    "limit": 2
  }
}

get-tenant-user

yeedu platform-admin get-tenant-user -h
usage:  get-tenant-user [-h] --tenant_id TENANT_ID --user_id USER_ID
                        [--json-output [{pretty,default}]]
                        [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide Tenant Id to get information about a specific User.
  --user_id USER_ID     Provide User Id to get information about a specific User.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-tenant-user example with the required ‘–tenant_id’ arguments passed.

yeedu platform-admin get-tenant-user --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538" --user_id=1
  • Console output

{
  "user_id": 1,
  "username": "USER",
  "email": "user@yeedu.com",
  "from_date": "2023-03-14T10:00:47.406628+00:00",
  "to_date": "infinity"
}

get-user-roles

yeedu platform-admin get-user-roles -h
usage:  get-user-roles [-h] --tenant_id TENANT_ID --user_id USER_ID
                       [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide Tenant Id to get roles of a specific User.
  --user_id USER_ID     Provide User Id to get roles of a specific User.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-user-roles example with the required arguments ‘–tenant_id’ and ‘–user_id’ passed.

yeedu platform-admin get-user-roles --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538" --user_id=1
  • Console output

{
  "user_id": 1,
  "username": "RM0000",
  "user_roles": [
    "Resource Manager"
  ],
  "group_roles": [
    null
  ]
}

list-users-roles

yeedu platform-admin list-users-roles -h
usage:  list-users-roles [-h] --tenant_id TENANT_ID [--page_number PAGE_NUMBER]
                         [--limit LIMIT] [--json-output [{pretty,default}]]
                         [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide Tenant Id to list User roles.
  --page_number PAGE_NUMBER
                        To list users roles for a specific page_number. (default: 1)
  --limit LIMIT         Provide limit to list number of users roles. (default: 100)
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-users-roles example with the required arguments ‘–tenant_id’ passed.

yeedu platform-admin list-users-roles --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538" --limit=2
  • Console output

{
  "data": [
    {
      "user_id": 1,
      "username": "RM0000",
      "user_roles": [
        "Resource Manager"
      ],
      "group_roles": [
        null
      ]
    },
    {
      "user_id": 2,
      "username": "YSU0000",
      "user_roles": [
        "Platform Admin"
      ],
      "group_roles": [
        null
      ]
    }
  ],
  "result_set": {
    "current_page": 1,
    "total_objects": 2,
    "total_pages": 1,
    "limit": 2
  }
}

get-role-users

yeedu platform-admin get-role-users -h
usage:  get-role-users [-h] --tenant_id TENANT_ID --role_id ROLE_ID
                       [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide Tenant Id to get users in a specific Role.
  --role_id ROLE_ID     Provide Role Id to get users in a specific Role.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-role-users example with the required ‘–tenant_id’ arguments passed.

yeedu platform-admin get-role-users --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538" --role_id=1
  • Console output

{
  "role_id": 1,
  "users": [
    "RP0000"
  ]
}

create-user-role

yeedu platform-admin create-user-role -h
usage:  create-user-role [-h] [--tenant_id TENANT_ID] --user_id USER_ID --role_id ROLE_ID
                         [--json-output [{pretty,default}]]
                         [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide Tenant Id to create-user-role.
  --user_id USER_ID     Provide User Id to create-user-role.
  --role_id ROLE_ID     Provide Role Id to create-user-role.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create-user-role example with all the required and optional arguments passed.

yeedu platform-admin create-user-role --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538" --user_id=2 --role_id=1
  • Console output

{
  "user_roles_id": "2",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "user_id": "2",
  "role_id": 1,
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-03-15T12:50:27.826Z",
  "from_date": "2023-03-15T12:50:27.826Z",
  "to_date": null
}

delete-user-role

yeedu platform-admin delete-user-role -h
usage:  delete-user-role [-h] [--tenant_id TENANT_ID] --user_id USER_ID --role_id ROLE_ID
                         [--json-output [{pretty,default}]]
                         [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide Tenant Id to delete-user-role.
  --user_id USER_ID     Provide User Id to delete-user-role.
  --role_id ROLE_ID     Provide Role Id to delete-user-role.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • delete-user-role example with the required ‘–tenant_id’ argument passed.

yeedu platform-admin delete-user-role --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538" --user_id=2 --role_id=1
  • Console output

{
  "message": "Deleted User Roles for the provided tenant_id: '0b5017a9-6099-497f-81ba-d4e537e23538', user_id: 2 and role_id: 1."
}

Group

Command Name

Utility

list-tenant-groups

To list all the groups present in a tenant.

get-tenant-group

To get information about a Group present in a specific tenant.

get-group-roles

To get all the roles of a Group present in a specific tenant.

list-groups-roles

To list all the Groups Roles in a specific tenant.

get-role-groups

To get all the groups having a specific Role present in a specific tenant.

create-group-role

To create a Group Role for a specific tenant.

delete-group-role

To delete a Group Role of a specific tenant.

list-tenant-groups

yeedu platform-admin list-tenant-groups -h
usage:  list-tenant-groups [-h] --tenant_id TENANT_ID [--page_number PAGE_NUMBER]
                           [--limit LIMIT] [--json-output [{pretty,default}]]
                           [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide Tenant Id to list all the groups present in it.
  --page_number PAGE_NUMBER
                        To list tenant groups for a specific page_number. (default: 1)
  --limit LIMIT         Provide limit to list number of tenant groups. (default: 100)
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-tenant-groups example without optional arguments passed for output format.

yeedu platform-admin list-tenant-groups --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538" --limit=2
  • Console output

{
  "data": {
    "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
    "groups": [
      "yeedu-manager",
      "yeedu-user"
    ]
  },
  "result_set": {
    "current_page": 1,
    "total_objects": 2,
    "total_pages": 1,
    "limit": 2
  }
}

get-tenant-group

yeedu platform-admin get-tenant-group -h
usage:  get-tenant-group [-h] --tenant_id TENANT_ID --group_id GROUP_ID
                         [--json-output [{pretty,default}]]
                         [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID Provide Tenant Id to get information about a specific Group.
  --group_id GROUP_ID   Provide Group Id to get information about a specific Group.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-tenant-group example without optional arguments passed for output format.

yeedu platform-admin get-tenant-group --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538" --group_id=1
  • Console output

{
  "group_id": 1,
  "group_name": "yeedu-manager",
  "from_date": "2023-03-15T11:32:17.570658+00:00",
  "to_date": "infinity"
}

get-group-roles

yeedu platform-admin get-group-roles -h
usage:  get-group-roles [-h] --tenant_id TENANT_ID --group_id GROUP_ID
                        [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide Tenant Id to get roles of a specific Group.
  --group_id GROUP_ID   Provide Group Id to get roles of a specific Group.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-group-roles example with the required ‘–tenant_id’ and ‘–group_id’ arguments passed.

yeedu platform-admin get-group-roles --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538" --group_id=1
  • Console output

{
  "group_id": 1,
  "roles": [
    "Resource Manager"
  ]
}

list-groups-roles

yeedu platform-admin list-groups-roles -h
usage:  list-groups-roles [-h] --tenant_id TENANT_ID [--page_number PAGE_NUMBER]
                          [--limit LIMIT] [--json-output [{pretty,default}]]
                          [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide Tenant Id to list Group roles.
  --page_number PAGE_NUMBER
                        To list groups roles for a specific page_number. (default: 1)
  --limit LIMIT         Provide limit to list number of groups roles. (default: 100)
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-groups-roles example with the required arguments ‘–tenant_id’ passed.

yeedu platform-admin list-groups-roles --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538" --limit=2
  • Console output

{
  "data": [
    {
      "group_id": 1,
      "group_name": "yeedu-manager",
      "roles": [
        "Resource Manager"
      ]
    },
    {
      "group_id": 3,
      "group_name": "yeedu-user",
      "roles": [
        "Resource User"
      ]
    }
  ],
  "result_set": {
    "current_page": 1,
    "total_objects": 2,
    "total_pages": 1,
    "limit": 2
  }
}

get-role-groups

yeedu platform-admin get-role-groups -h
usage:  get-role-groups [-h] --tenant_id TENANT_ID --role_id ROLE_ID
                        [--json-output [{pretty,default}]] [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide Tenant Id to get groups in a specific Role.
  --role_id ROLE_ID     Provide Role Id to get groups in a specific Role.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-role-groups example with the required arguments ‘–tenant_id’ and ‘–role_id’ passed.

yeedu platform-admin get-role-groups --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538" --role_id=0
  • Console output

{
  "role_id": 0,
  "groups": [
    "yeedu-manager"
  ]
}

create-group-role

yeedu platform-admin create-group-role -h
usage:  create-group-role [-h] [--tenant_id TENANT_ID] --group_id GROUP_ID --role_id
                          ROLE_ID [--json-output [{pretty,default}]]
                          [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide Tenant Id to create-group-role.
  --group_id GROUP_ID   Provide Group Id to create-group-role.
  --role_id ROLE_ID     Provide Role Id to create-group-role.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create-group-role example with all the required and optional arguments passed.

yeedu platform-admin create-group-role --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538" --group_id=1 --role_id=0
  • Console output

{
  "group_roles_id": "1",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "group_id": "1",
  "role_id": 0,
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-03-15T13:10:15.840Z",
  "from_date": "2023-03-15T13:10:15.840Z",
  "to_date": null
}

delete-group-role

yeedu platform-admin delete-group-role -h
usage:  delete-group-role [-h] [--tenant_id TENANT_ID] --group_id GROUP_ID --role_id
                          ROLE_ID [--json-output [{pretty,default}]]
                          [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --tenant_id TENANT_ID
                        Provide Tenant Id to delete-group-role.
  --group_id GROUP_ID   Provide Group Id to delete-group-role.
  --role_id ROLE_ID     Provide Role Id to delete-group-role.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • delete-group-role example with all the required argument passed.

yeedu platform-admin delete-group-role --tenant_id="0b5017a9-6099-497f-81ba-d4e537e23538" --group_id=1 --role_id=0
  • Console output

{
  "message": "Deleted Group Role for the provided Tenant Id: '0b5017a9-6099-497f-81ba-d4e537e23538', Group Id: 1, and Role Id: 0"
}

Admin

User

Command Name

Utility

list-users

To list all the users present in tenant.

get-user

To get information about a specific User.

get-user-roles

To get all the roles of a specific User.

list-users-roles

To list all the Users Roles.

get-role-users

To get all the users in a specific Role.

create-user-role

To create an User Role.

delete-user-role

To delete an User Role.

list-users

yeedu admin list-users -h
usage:  list-users [-h] [--json-output [{pretty,default}]]
                   [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-users example without optional arguments passed for output format.

yeedu admin list-users
  • Console output

{
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "users": [
    "RM0000",
    "RP0000",
    "YA0000",
    "YSU0000"
  ]
}

get-user

yeedu admin get-user -h
usage:  get-user [-h] --user_id USER_ID [--json-output [{pretty,default}]]
                 [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --user_id USER_ID     Provide User Id to get information about a specific User.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-user example without optional arguments passed for output format.

yeedu admin get-user --user_id=1
  • Console output

{
  "user_id": 1,
  "username": "USER",
  "email": "user@yeedu.com",
  "from_date": "2023-03-14T10:00:47.406628+00:00",
  "to_date": "infinity"
}

get-user-roles

yeedu admin get-user-roles -h
usage:  get-user-roles [-h] --user_id USER_ID [--json-output [{pretty,default}]]
                       [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --user_id USER_ID     Provide User Id to get roles of a specific User.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-user-roles example with the required arguments ‘–user_id’ passed.

yeedu admin get-user-roles --user_id=1
  • Console output

{
  "user_id": 1,
  "username": "RM0000",
  "user_roles": [
    "Resource Manager"
  ],
  "group_roles": [
    null
  ]
}

list-users-roles

yeedu admin list-users-roles -h
usage:  list-users-roles [-h] [--json-output [{pretty,default}]]
                         [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-users-roles example without optional arguments passed for output format.

yeedu admin list-users-roles
  • Console output

[
  {
    "user_id": 1,
    "username": "RM0000",
    "user_roles": [
      "Resource Manager"
    ],
    "group_roles": [
      null
    ]
  },
  {
    "user_id": 2,
    "username": "RP0000",
    "user_roles": [
      "Resource Provider"
    ],
    "group_roles": [
      null
    ]
  }
]

get-role-users

yeedu admin get-role-users -h
usage:  get-role-users [-h] --role_id ROLE_ID [--json-output [{pretty,default}]]
                       [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --role_id ROLE_ID     Provide Role Id to get users in a specific Role.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-role-users example with the required ‘–role_id’ arguments passed.

yeedu admin get-role-users --role_id=1
  • Console output

{
  "role_id": 1,
  "users": [
    "RP0000"
  ]
}

create-user-role

yeedu admin create-user-role -h
usage:  create-user-role [-h] --user_id USER_ID --role_id ROLE_ID
                         [--json-output [{pretty,default}]]
                         [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --user_id USER_ID     Provide User Id to create-user-role.
  --role_id ROLE_ID     Provide Role Id to create-user-role.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create-user-role example with all the required and optional arguments passed.

yeedu admin create-user-role --user_id=2 --role_id=1
  • Console output

{
  "user_roles_id": "2",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "user_id": "2",
  "role_id": 1,
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-03-15T12:50:27.826Z",
  "from_date": "2023-03-15T12:50:27.826Z",
  "to_date": null
}

delete-user-role

yeedu admin delete-user-role -h
usage:  delete-user-role [-h] --user_id USER_ID --role_id ROLE_ID
                         [--json-output [{pretty,default}]]
                         [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --user_id USER_ID     Provide User Id to delete-user-role.
  --role_id ROLE_ID     Provide Role Id to delete-user-role.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • delete-user-role example with all the required argument passed.

yeedu admin delete-user-role --user_id=2 --role_id=1
  • Console output

{
  "message": "Deleted User Roles for the provided User Id: 2 and Role Id: 1."
}

Group

Command Name

Utility

list-groups

To list all the groups present in tenant.

get-group

To get information about a specific Group.

get-group-roles

To get all the roles of a specific Group.

list-groups-roles

To list all the Groups Roles.

get-role-groups

To get all the groups in a specific Role.

create-group-role

To create a Group Role.

delete-group-role

To delete a group Role.

list-groups

yeedu admin list-groups -h
usage:  list-groups [-h] [--json-output [{pretty,default}]]
                    [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-groups example without optional arguments passed for output format.

yeedu admin list-groups
  • Console output

{
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "groups": [
    "yeedu-manager"
  ]
}

get-group

yeedu admin get-group -h
usage:  get-group [-h] --group_id GROUP_ID [--json-output [{pretty,default}]]
                  [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --group_id GROUP_ID   Provide Group Id to get information about a specific Group.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-group example with the required argument ‘–group_id’ passed.

yeedu admin get-group --group_id=1
  • Console output

{
  "group_id": 1,
  "group_name": "yeedu-manager",
  "from_date": "2023-03-15T11:32:17.570658+00:00",
  "to_date": "infinity"
}

get-group-roles

yeedu admin get-group-roles -h
usage:  get-group-roles [-h] --group_id GROUP_ID [--json-output [{pretty,default}]]
                        [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --group_id GROUP_ID   Provide Group Id to get roles of a specific Group.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-group-roles example with the required argument ‘–group_id’ passed.

yeedu admin get-group-roles --group_id=1
  • Console output

{
  "group_id": 1,
  "roles": [
    "Resource Manager"
  ]
}

list-groups-roles

yeedu admin list-groups-roles -h
usage:  list-groups-roles [-h] [--json-output [{pretty,default}]]
                          [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • list-groups-roles example without optional arguments passed for output format.

yeedu admin list-groups-roles
  • Console output

[
  {
    "group_id": 1,
    "group_name": "yeedu-manager",
    "roles": [
      "Resource Manager"
    ]
  }
]

get-role-groups

yeedu admin get-role-groups -h
usage:  get-role-groups [-h] --role_id ROLE_ID [--json-output [{pretty,default}]]
                        [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --role_id ROLE_ID     Provide Role Id to get groups in a specific Role.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • get-role-groups example with the required argument ‘–role_id’ passed.

yeedu admin get-role-groups --role_id=0
  • Console output

{
  "role_id": 0,
  "groups": [
    "yeedu-manager"
  ]
}

create-group-role

yeedu admin create-group-role -h
usage:  create-group-role [-h] --group_id GROUP_ID --role_id ROLE_ID
                          [--json-output [{pretty,default}]]
                          [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --group_id GROUP_ID   Provide Group Id to create-group-role.
  --role_id ROLE_ID     Provide Role Id to create-group-role.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • create-group-role example with all the required arguments passed.

yeedu admin create-group-role --group_id=1 --role_id=0
  • Console output

{
  "group_roles_id": "1",
  "tenant_id": "0b5017a9-6099-497f-81ba-d4e537e23538",
  "group_id": "1",
  "role_id": 0,
  "created_by_id": "1",
  "modified_by_id": "1",
  "last_update_date": "2023-03-15T13:10:15.840Z",
  "from_date": "2023-03-15T13:10:15.840Z",
  "to_date": null
}

delete-group-role

yeedu admin delete-group-role -h
usage:  delete-group-role [-h] --group_id GROUP_ID --role_id ROLE_ID
                          [--json-output [{pretty,default}]]
                          [--yaml-output [{true,false}]]

options:
  -h, --help            show this help message and exit
  --group_id GROUP_ID   Provide Group Id to delete-group-role.
  --role_id ROLE_ID     Provide Role Id to delete-group-role.
  --json-output [{pretty,default}]
                        Provide the format of JSON output. (default: pretty)
  --yaml-output [{true,false}]
                        Provide true to get output in YAML format. (default: false)
  • delete-group-role example with all the required arguments passed.

yeedu admin delete-group-role --group_id=1 --role_id=0
  • Console output

{
  "message": "Deleted Group Role for the provided Group Id: 1 and Role Id: 0"
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

yeedu_cli-4.5.4-py3-none-any.whl (93.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page