resource_brokers brokers¶
drpcli resource_brokers¶
Manage DRP resource_brokers that provide machine resources from external providers
Synopsis¶
Resource brokers are plugins that provision and manage machine resources from external providers such as cloud platforms, virtualization hypervisors, or hardware-as-a-service APIs.
A resource broker acts as a bridge between DRP workflows and external resource pools. It can acquire machines from a pool, execute DRP tasks on them, and return them to the pool when done.
Key resource broker operations:
- start - start the broker's workflow (resets and re-triggers even if already set)
- workflow - set the broker's active workflow
- stage - set the broker's active stage
- run - mark the broker as runnable (
Runnable=true) - pause - mark the broker as not runnable (
Runnable=false) - releaseToPool - return the broker back to its resource pool
- processjobs - execute pending jobs on the broker until complete
- jobs - manage individual jobs on the broker
- tasks - add or remove tasks from the broker's task list
- currentlog - retrieve the log from the most recent job run
- deletejobs - remove all job history for the broker
- cleanup - clean up the broker resource
- render - render template text in the broker's current state
- whoami - identify which broker UUID matches the current system
Common operations:
drpcli resource_brokers list- list all resource brokersdrpcli resource_brokers show <id>- display a specific resource brokerdrpcli resource_brokers create <json>- create a new resource brokerdrpcli resource_brokers update <id> <json>- update a resource brokerdrpcli resource_brokers destroy <id>- delete a resource broker
Examples¶
# List all resource brokers
drpcli resource_brokers list
# Show a specific resource broker by UUID
drpcli resource_brokers show 4f3c2d1a-0000-0000-0000-000000000001
# Start a resource broker's workflow
drpcli resource_brokers start 4f3c2d1a-0000-0000-0000-000000000001 my-workflow
# Mark a resource broker as runnable
drpcli resource_brokers run 4f3c2d1a-0000-0000-0000-000000000001
# Pause a resource broker
drpcli resource_brokers pause 4f3c2d1a-0000-0000-0000-000000000001
# Process pending jobs on a resource broker
drpcli resource_brokers processjobs 4f3c2d1a-0000-0000-0000-000000000001
# Add tasks to a resource broker
drpcli resource_brokers tasks add 4f3c2d1a-0000-0000-0000-000000000001 my-task
# Release a resource broker back to its pool
drpcli resource_brokers releaseToPool 4f3c2d1a-0000-0000-0000-000000000001
Options¶
Options inherited from parent commands¶
--ca-cert string CA certificate used to verify the server certs (with the system set)
-c, --catalog string The catalog file to use to get product information (default "https://repo.rackn.io")
--catalog-path string The path to where the catalog file exists on the drp server. By default and historically this has been /files/rebar-catalog. For example, if no catalog urls are provided, the complete path will be https://drp-ip:8090/files/rebar-catalog (default "/files/rebar-catalog")
-S, --catalog-source string A location from which catalog items can be downloaded. For example, in airgapped mode it would be the local catalog
--client-cert string Client certificate to use for communicating to the server - replaces RS_KEY, RS_TOKEN, RS_USERNAME, RS_PASSWORD
--client-key string Client key to use for communicating to the server - replaces RS_KEY, RS_TOKEN, RS_USERNAME, RS_PASSWORD
-C, --colors string The colors for JSON and Table/Text colorization. 8 values in the for 0=val,val;1=val,val2... (default "0=32;1=33;2=36;3=90;4=34,1;5=35;6=95;7=32;8=92")
-d, --debug Whether the CLI should run in debug mode
-D, --download-proxy string HTTP Proxy to use for downloading catalog and content
-E, --endpoint string The Digital Rebar Provision API endpoint to talk to (default "https://127.0.0.1:8092")
-X, --exit-early Cause drpcli to exit if a command results in an object that has errors
--fetch-catalogs all Determines which catalog urls to use to fetch the catalog. If set to all, all the catalog urls defined with catalog_url and catalog_urls as well as the default catalog will be used. If set to server, only the catalog urls defined on the server will be used. If set to cli, then the specific url specified with the -c flag will be used. It defaults to `all`. Allowed values `all, `server`, `cli`. (default "all")
-f, --force When needed, attempt to force the operation - used on some update/patch calls
--force-new-session Should the client always create a new session
-F, --format string The serialization we expect for output. Can be "json" or "yaml" or "text" or "table" (default "json")
--http-request-retry-count int Specifies the number of retries for downloads in case of failure
--http-request-retry-delay-max int Specifies the maximum delay (in seconds) between HTTP/HTTPS retry attempts (default 60)
--ignore-unix-proxy Should the client ignore unix proxies
-N, --no-color Whether the CLI should output colorized strings
-H, --no-header Should header be shown in "text" or "table" mode
-x, --no-token Do not use token auth or token cache
-P, --password string password of the Digital Rebar Provision user (default "r0cketsk8ts")
-p, --platform string Platform to filter details by. Defaults to current system. Format: arch/os
-J, --print-fields string The fields of the object to display in "text" or "table" mode. Comma separated
-r, --ref string A reference object for update commands that can be a file name, yaml, or json blob
--server-verify Should the client verify the server cert
-G, --show-global-help-flags Show global flags in help message
-T, --token string token of the Digital Rebar Provision access
-t, --trace string The log level API requests should be logged at on the server side
-Z, --trace-token string A token that individual traced requests should report in the server logs
-j, --truncate-length int Truncate columns at this length (default 40)
-u, --url-proxy string URL Proxy for passing actions through another DRP
-U, --username string Name of the Digital Rebar Provision user to talk to (default "rocketskates")
SEE ALSO¶
- drpcli - A CLI application for interacting with the DigitalRebar Provision API
- drpcli resource_brokers action - Show details for a specific action on the resource_broker
- drpcli resource_brokers actions - List all available actions for the resource_broker
- drpcli resource_brokers add - Add a parameter to a resource_broker, failing if the key already exists
- drpcli resource_brokers addprofile - Add one or more profiles to a resource_broker's profile list
- drpcli resource_brokers addtask - Append a task to the end of a resource_broker's task list
- drpcli resource_brokers await - Wait for a resource_broker's field to become a value within a number of seconds
- drpcli resource_brokers bootenv - Set the
bootenvfor a resource_broker - drpcli resource_brokers cleanup - Cleanup resource_broker by id
- drpcli resource_brokers count - Count all resource_brokers
- drpcli resource_brokers create - Create a new resource_broker with the passed-in JSON or string key
- drpcli resource_brokers currentlog - Get the log for the most recent job run on the resource_broker
- drpcli resource_brokers deletejobs - Delete all jobs associated with resource_broker
- drpcli resource_brokers destroy - Destroy resource_broker by id
- drpcli resource_brokers etag - Get the etag for a resource_brokers by id
- drpcli resource_brokers exists - See if a resource_brokers exists by id
- drpcli resource_brokers fieldinfo - Return the documentation for all the fields or the provided field
- drpcli resource_brokers generate - Generate an object of resource_brokers type in the content directory
- drpcli resource_brokers get - Get a single parameter value from a resource_broker
- drpcli resource_brokers group - Manage parameters and profiles on the resource_broker group profile
- drpcli resource_brokers indexes - Get indexes for resource_brokers
- drpcli resource_brokers inserttask - Insert a task at a position relative to the currently running task on a resource_broker
- drpcli resource_brokers inspect - Deep-inspect task and job execution history on DRP machines
- drpcli resource_brokers jobs - Access commands for manipulating the current job
- drpcli resource_brokers list - List all resource_brokers
- drpcli resource_brokers meta - Get all metadata key/value pairs for a resource_broker
- drpcli resource_brokers params - Get or set all parameters for a resource_broker
- drpcli resource_brokers patch - Patch resource_broker by ID using the passed-in JSON Patch
- drpcli resource_brokers pause - Mark the resource_broker as NOT runnable
- drpcli resource_brokers processjobs - For the given resource_broker, process pending jobs until done.
- drpcli resource_brokers releaseToPool - Release this resource_broker back to the pool
- drpcli resource_brokers remove - Remove a parameter from a resource_broker
- drpcli resource_brokers removeprofile - Remove one or more profiles from a resource_broker's profile list
- drpcli resource_brokers removetask - Remove the first occurrence of a task from a resource_broker's task list
- drpcli resource_brokers render - Render the [text] in the state of [id]
- drpcli resource_brokers run - Mark the resource_broker as runnable
- drpcli resource_brokers runaction - Run a plugin action on a resource_broker
- drpcli resource_brokers set - Set a parameter on a resource_broker, creating or replacing the value
- drpcli resource_brokers show - Show a single resource_brokers by id
- drpcli resource_brokers stage - Set the resource_broker's stage
- drpcli resource_brokers start - Start the resource broker's workflow
- drpcli resource_brokers tasks - Access task manipulation for resource_brokers
- drpcli resource_brokers update - Unsafely update resource_broker by id with the passed-in JSON
- drpcli resource_brokers uploadiso - This will attempt to upload the ISO from the specified ISO URL.
- drpcli resource_brokers wait - Wait for a resource_broker's field to become a value within a number of seconds
- drpcli resource_brokers whoami - Figure out what resource_broker UUID most closely matches the current system
- drpcli resource_brokers work_order - Manage the work order queue and work order mode for a machine
- drpcli resource_brokers workflow - Set the resource_broker's workflow