diff --git a/doc/cli-reference/bk-cli-reference.xml b/doc/cli-reference/bk-cli-reference.xml
index 5b57cff0e4..ef573dc27f 100644
--- a/doc/cli-reference/bk-cli-reference.xml
+++ b/doc/cli-reference/bk-cli-reference.xml
@@ -105,6 +105,7 @@
+
diff --git a/doc/cli-reference/generated/ch_cli_ironic_commands.xml b/doc/cli-reference/generated/ch_cli_ironic_commands.xml
new file mode 100644
index 0000000000..b0b54241a2
--- /dev/null
+++ b/doc/cli-reference/generated/ch_cli_ironic_commands.xml
@@ -0,0 +1,1415 @@
+
+
+
+
+
+
+
+ Bare metal command-line client
+
+ The ironic client is the command-line
+ interface (CLI) for the Bare metal and its extensions.
+
+ This chapter documents ironic version
+ 0.3.1.
+
+
+ For help on a specific ironic
+ command, enter:
+
+ $ ironic COMMAND
+
+
+ ironic usage
+ usage: ironic [--version] [--debug] [-v] [-k] [--cert-file CERT_FILE]
+ [--key-file KEY_FILE] [--ca-file CA_FILE] [--timeout TIMEOUT]
+ [--os-username OS_USERNAME] [--os-password OS_PASSWORD]
+ [--os-tenant-id OS_TENANT_ID] [--os-tenant-name OS_TENANT_NAME]
+ [--os-auth-url OS_AUTH_URL] [--os-region-name OS_REGION_NAME]
+ [--os-auth-token OS_AUTH_TOKEN] [--ironic-url IRONIC_URL]
+ [--ironic-api-version IRONIC_API_VERSION]
+ [--os-service-type OS_SERVICE_TYPE]
+ [--os-endpoint-type OS_ENDPOINT_TYPE]
+ <subcommand> ...
+
+ Subcommands
+
+ chassis-create
+
+
+ Create a new chassis.
+
+
+
+
+ chassis-delete
+
+
+ Delete a chassis.
+
+
+
+
+ chassis-list
+
+
+ List chassis.
+
+
+
+
+ chassis-node-list
+
+
+ List the nodes contained in the chassis.
+
+
+
+
+ chassis-show
+
+
+ Show a chassis.
+
+
+
+
+ chassis-update
+
+
+ Update a chassis.
+
+
+
+
+ node-create
+
+
+ Register a new node with the Ironic service.
+
+
+
+
+ node-delete
+
+
+ Unregister a node from the Ironic service.
+
+
+
+
+ node-get-boot-device
+
+
+ Get the current boot device.
+
+
+
+
+ node-get-console
+
+
+ Return the connection information for the node's
+ console, if enabled.
+
+
+
+
+ node-get-supported-boot-devices
+
+
+ Get the supported boot devices.
+
+
+
+
+ node-list
+
+
+ List nodes which are registered with the Ironic
+ service.
+
+
+
+
+ node-port-list
+
+
+ List the ports associated with the node.
+
+
+
+
+ node-set-boot-device
+
+
+ Set the boot device for a node.
+
+
+
+
+ node-set-console-mode
+
+
+ Enable or disable serial console access for this node.
+
+
+
+
+ node-set-power-state
+
+
+ Power the node on or off.
+
+
+
+
+ node-set-provision-state
+
+
+ Provision an instance on, or delete an instance from a
+ node.
+
+
+
+
+ node-show
+
+
+ Show detailed information for a node.
+
+
+
+
+ node-update
+
+
+ Update information about a registered node.
+
+
+
+
+ node-validate
+
+
+ Validate the node driver interfaces.
+
+
+
+
+ node-vendor-passthru
+
+
+ Call a vendor-passthru extension for a node.
+
+
+
+
+ port-create
+
+
+ Create a new port.
+
+
+
+
+ port-delete
+
+
+ Delete a port.
+
+
+
+
+ port-list
+
+
+ List ports.
+
+
+
+
+ port-show
+
+
+ Show a port.
+
+
+
+
+ port-update
+
+
+ Update a port.
+
+
+
+
+ driver-list
+
+
+ List of enabled drivers.
+
+
+
+
+ driver-properties
+
+
+ Get properties of the driver.
+
+
+
+
+ driver-show
+
+
+ Show a driver.
+
+
+
+
+ driver-vendor-passthru
+
+
+ Call a vendor-passthru extension for a driver.
+
+
+
+
+ bash-completion
+
+
+ Prints all of the commands and options for bash-
+ completion.
+
+
+
+
+ help
+
+
+ Display help about this program or one of its
+ subcommands.
+
+
+
+
+
+
+ ironic optional arguments
+
+
+ --version
+
+
+ show program's version number and exit
+
+
+
+
+ --debug
+
+
+ Defaults to env[IRONICCLIENT_DEBUG]
+
+
+
+
+ -v, --verbose
+
+
+ Print more verbose output
+
+
+
+
+ -k, --insecure
+
+
+ Explicitly allow ironicclient to perform "insecure"
+ SSL (https) requests. The server's certificate will
+ not be verified against any certificate authorities.
+ This option should be used with caution
+
+
+
+
+ --cert-file CERT_FILE
+
+
+ Path of certificate file to use in SSL connection.
+ This file can optionally be prepended with the private
+ key
+
+
+
+
+ --key-file KEY_FILE
+
+
+ Path of client key to use in SSL connection. This
+ option is not necessary if your key is prepended to
+ your cert file
+
+
+
+
+ --ca-file CA_FILE
+
+
+ Path of CA SSL certificate(s) used to verify the
+ remote server certificate. Without this option ironic
+ looks for the default system CA certificates
+
+
+
+
+ --timeout TIMEOUT
+
+
+ Number of seconds to wait for a response; defaults to
+ 600
+
+
+
+
+ --os-username OS_USERNAME
+
+
+ Defaults to env[OS_USERNAME]
+
+
+
+
+ --os-password OS_PASSWORD
+
+
+ Defaults to env[OS_PASSWORD]
+
+
+
+
+ --os-tenant-id OS_TENANT_ID
+
+
+ Defaults to env[OS_TENANT_ID]
+
+
+
+
+ --os-tenant-name OS_TENANT_NAME
+
+
+ Defaults to env[OS_TENANT_NAME]
+
+
+
+
+ --os-auth-url OS_AUTH_URL
+
+
+ Defaults to env[OS_AUTH_URL]
+
+
+
+
+ --os-region-name OS_REGION_NAME
+
+
+ Defaults to env[OS_REGION_NAME]
+
+
+
+
+ --os-auth-token OS_AUTH_TOKEN
+
+
+ Defaults to env[OS_AUTH_TOKEN]
+
+
+
+
+ --ironic-url IRONIC_URL
+
+
+ Defaults to env[IRONIC_URL]
+
+
+
+
+ --ironic-api-version IRONIC_API_VERSION
+
+
+ Defaults to env[IRONIC_API_VERSION]
or 1
+
+
+
+
+ --os-service-type OS_SERVICE_TYPE
+
+
+ Defaults to env[OS_SERVICE_TYPE]
or "baremetal"
+
+
+
+
+ --os-endpoint-type OS_ENDPOINT_TYPE
+
+
+ Defaults to env[OS_ENDPOINT_TYPE]
or "publicURL"
+
+
+
+
+
+
+ ironic chassis-create
+ usage: ironic chassis-create [-d <description>] [-e <key=value>]
+
+Create a new chassis.
+
+ Optional arguments
+
+ -d <description>, --description <description>
+
+
+ Free text description of the chassis
+
+
+
+
+ -e <key=value>, --extra <key=value>
+
+
+ Record arbitrary key/value metadata. Can be specified
+ multiple times
+
+
+
+
+
+
+ ironic chassis-delete
+ usage: ironic chassis-delete <chassis id> [<chassis id> ...]
+
+Delete a chassis.
+
+ Positional arguments
+
+ <chassis id>
+
+
+ UUID of chassis
+
+
+
+
+
+
+ ironic chassis-list
+ usage: ironic chassis-list [--detail] [--limit <limit>] [--marker <marker>]
+ [--sort-key <sort_key>] [--sort-dir <sort_dir>]
+
+List chassis.
+
+ Optional arguments
+
+ --detail
+
+
+ Show detailed information about chassis.
+
+
+
+
+ --limit <limit>
+
+
+ Maximum number of chassis to return per request, 0 for
+ no limit. Default is the maximum number used by the
+ Ironic API Service.
+
+
+
+
+ --marker <marker>
+
+
+ Chassis UUID (e.g of the last chassis in the list from
+ a previous request). Returns the list of chassis after
+ this UUID.
+
+
+
+
+ --sort-key <sort_key>
+
+
+ Chassis field that will be used for sorting.
+
+
+
+
+ --sort-dir <sort_dir>
+
+
+ Sort direction: one of "asc" (the default) or "desc".
+
+
+
+
+
+
+ ironic chassis-node-list
+ usage: ironic chassis-node-list [--detail] [--limit <limit>]
+ [--marker <marker>] [--sort-key <sort_key>]
+ [--sort-dir <sort_dir>]
+ <chassis id>
+
+List the nodes contained in the chassis.
+
+ Positional arguments
+
+ <chassis id>
+
+
+ UUID of chassis
+
+
+
+
+
+ Optional arguments
+
+ --detail
+
+
+ Show detailed information about nodes.
+
+
+
+
+ --limit <limit>
+
+
+ Maximum number of nodes to return per request, 0 for
+ no limit. Default is the maximum number used by the
+ Ironic API Service.
+
+
+
+
+ --marker <marker>
+
+
+ Node UUID (e.g of the last node in the list from a
+ previous request). Returns the list of nodes after
+ this UUID.
+
+
+
+
+ --sort-key <sort_key>
+
+
+ Node field that will be used for sorting.
+
+
+
+
+ --sort-dir <sort_dir>
+
+
+ Sort direction: one of "asc" (the default) or "desc".
+
+
+
+
+
+
+ ironic chassis-show
+ usage: ironic chassis-show <chassis id>
+
+Show a chassis.
+
+ Positional arguments
+
+ <chassis id>
+
+
+ UUID of chassis
+
+
+
+
+
+
+ ironic chassis-update
+ usage: ironic chassis-update <chassis id> <op> <path=value> [<path=value> ...]
+
+Update a chassis.
+
+ Positional arguments
+
+ <chassis id>
+
+
+ UUID of chassis
+
+
+
+
+ <op>
+
+
+ Operations: 'add', 'replace' or 'remove'
+
+
+
+
+ <path=value>
+
+
+ Attributes to add/replace or remove (only PATH is necessary on
+ remove)
+
+
+
+
+
+
+ ironic driver-list
+ usage: ironic driver-list
+
+List of enabled drivers.
+
+
+
+ ironic driver-properties
+ usage: ironic driver-properties <driver name>
+
+Get properties of the driver.
+
+ Positional arguments
+
+ <driver name>
+
+
+ name of a driver
+
+
+
+
+
+
+ ironic driver-show
+ usage: ironic driver-show <driver_name>
+
+Show a driver.
+
+ Positional arguments
+
+ <driver_name>
+
+
+ Name of the driver
+
+
+
+
+
+
+ ironic driver-vendor-passthru
+ usage: ironic driver-vendor-passthru <driver_name> <method>
+ [<arg=value> [<arg=value> ...]]
+
+Call a vendor-passthru extension for a driver.
+
+ Positional arguments
+
+ <driver_name>
+
+
+ Name of the driver
+
+
+
+
+ <method>
+
+
+ vendor-passthru method to be called
+
+
+
+
+ <arg=value>
+
+
+ arguments to be passed to vendor-passthru method
+
+
+
+
+
+
+ ironic node-create
+ usage: ironic node-create [-c <chassis uuid>] [-d <driver>] [-i <key=value>]
+ [-p <key=value>] [-e <key=value>]
+
+Register a new node with the Ironic service.
+
+ Optional arguments
+
+ -c <chassis uuid>, --chassis_uuid <chassis uuid>
+
+
+ UUID of the chassis that this node belongs to
+
+
+
+
+ -d <driver>, --driver <driver>
+
+
+ Driver used to control the node [REQUIRED]
+
+
+
+
+ -i <key=value>, --driver_info <key=value>
+
+
+ Key/value pairs used by the driver, such as out-of-
+ band managementcredentials. Can be specified multiple
+ times
+
+
+
+
+ -p <key=value>, --properties <key=value>
+
+
+ Key/value pairs describing the physical
+ characteristics of the node. This is exported to Nova
+ and used by the scheduler. Can be specified multiple
+ times
+
+
+
+
+ -e <key=value>, --extra <key=value>
+
+
+ Record arbitrary key/value metadata. Can be specified
+ multiple times
+
+
+
+
+
+
+ ironic node-delete
+ usage: ironic node-delete <node id> [<node id> ...]
+
+Unregister a node from the Ironic service.
+
+ Positional arguments
+
+ <node id>
+
+
+ UUID of node
+
+
+
+
+
+
+ ironic node-get-boot-device
+ usage: ironic node-get-boot-device <node uuid>
+
+Get the current boot device.
+
+ Positional arguments
+
+ <node uuid>
+
+
+ UUID of node
+
+
+
+
+
+
+ ironic node-get-console
+ usage: ironic node-get-console <node uuid>
+
+Return the connection information for the node's console, if enabled.
+
+ Positional arguments
+
+ <node uuid>
+
+
+ UUID of node
+
+
+
+
+
+
+ ironic node-get-supported-boot-devices
+ usage: ironic node-get-supported-boot-devices <node uuid>
+
+Get the supported boot devices.
+
+ Positional arguments
+
+ <node uuid>
+
+
+ UUID of node
+
+
+
+
+
+
+ ironic node-list
+ usage: ironic node-list [--limit <limit>] [--marker <marker>]
+ [--sort-key <sort_key>] [--sort-dir <sort_dir>]
+ [--maintenance <maintenance>] [--associated <assoc>]
+ [--detail]
+
+List nodes which are registered with the Ironic service.
+
+ Optional arguments
+
+ --limit <limit>
+
+
+ Maximum number of nodes to return per request, 0 for
+ no limit. Default is the maximum number used by the
+ Ironic API Service.
+
+
+
+
+ --marker <marker>
+
+
+ Node UUID (e.g of the last node in the list from a
+ previous request). Returns the list of nodes after
+ this UUID.
+
+
+
+
+ --sort-key <sort_key>
+
+
+ Node field that will be used for sorting.
+
+
+
+
+ --sort-dir <sort_dir>
+
+
+ Sort direction: one of "asc" (the default) or "desc".
+
+
+
+
+ --maintenance <maintenance>
+
+
+ List nodes in maintenance mode: 'true' or 'false'
+
+
+
+
+ --associated <assoc>
+
+
+ List nodes by instance association: 'true' or 'false'
+
+
+
+
+ --detail
+
+
+ Show detailed information about nodes
+
+
+
+
+
+
+ ironic node-port-list
+ usage: ironic node-port-list [--detail] [--limit <limit>] [--marker <marker>]
+ [--sort-key <sort_key>] [--sort-dir <sort_dir>]
+ <node id>
+
+List the ports associated with the node.
+
+ Positional arguments
+
+ <node id>
+
+
+ UUID of node
+
+
+
+
+
+ Optional arguments
+
+ --detail
+
+
+ Show detailed information about ports.
+
+
+
+
+ --limit <limit>
+
+
+ Maximum number of ports to return per request, 0 for
+ no limit. Default is the maximum number used by the
+ Ironic API Service.
+
+
+
+
+ --marker <marker>
+
+
+ Port UUID (e.g of the last port in the list from a
+ previous request). Returns the list of ports after
+ this UUID.
+
+
+
+
+ --sort-key <sort_key>
+
+
+ Port field that will be used for sorting.
+
+
+
+
+ --sort-dir <sort_dir>
+
+
+ Sort direction: one of "asc" (the default) or "desc".
+
+
+
+
+
+
+ ironic node-set-boot-device
+ usage: ironic node-set-boot-device [--persistent] <node uuid> <boot device>
+
+Set the boot device for a node.
+
+ Positional arguments
+
+ <node uuid>
+
+
+ UUID of node
+
+
+
+
+ <boot device>
+
+
+ Supported boot devices: 'pxe', 'disk', 'cdrom', 'bios',
+ 'safe'
+
+
+
+
+
+ Optional arguments
+
+ --persistent
+
+
+ Make changes persistent for all future boots
+
+
+
+
+
+
+ ironic node-set-console-mode
+ usage: ironic node-set-console-mode <node uuid> <enabled>
+
+Enable or disable serial console access for this node.
+
+ Positional arguments
+
+ <node uuid>
+
+
+ UUID of node
+
+
+
+
+ <enabled>
+
+
+ Enable or disable the console access. Supported options are:
+ 'true' or 'false'
+
+
+
+
+
+
+ ironic node-set-power-state
+ usage: ironic node-set-power-state <node id> <power state>
+
+Power the node on or off.
+
+ Positional arguments
+
+ <node id>
+
+
+ UUID of node
+
+
+
+
+ <power state>
+
+
+ Supported states: 'on' or 'off' or 'reboot'
+
+
+
+
+
+
+ ironic node-set-provision-state
+ usage: ironic node-set-provision-state <node id> <provision state>
+
+Provision an instance on, or delete an instance from a node.
+
+ Positional arguments
+
+ <node id>
+
+
+ UUID of node
+
+
+
+
+ <provision state>
+
+
+ Supported states: 'active' or 'deleted' or 'rebuild'
+
+
+
+
+
+
+ ironic node-show
+ usage: ironic node-show [--instance] <id>
+
+Show detailed information for a node.
+
+ Positional arguments
+
+ <id>
+
+
+ ID, UUID or instance UUID of node
+
+
+
+
+
+ Optional arguments
+
+ --instance
+
+
+ The id is an instance UUID
+
+
+
+
+
+
+ ironic node-update
+ usage: ironic node-update <node id> <op> <path=value> [<path=value> ...]
+
+Update information about a registered node.
+
+ Positional arguments
+
+ <node id>
+
+
+ UUID of node
+
+
+
+
+ <op>
+
+
+ Operations: 'add', 'replace' or 'remove'
+
+
+
+
+ <path=value>
+
+
+ Attributes to add/replace or remove (only PATH is necessary on
+ remove)
+
+
+
+
+
+
+ ironic node-validate
+ usage: ironic node-validate <node uuid>
+
+Validate the node driver interfaces.
+
+ Positional arguments
+
+ <node uuid>
+
+
+ UUID of node
+
+
+
+
+
+
+ ironic node-vendor-passthru
+ usage: ironic node-vendor-passthru <node id> <method>
+ [<arg=value> [<arg=value> ...]]
+
+Call a vendor-passthru extension for a node.
+
+ Positional arguments
+
+ <node id>
+
+
+ UUID of node
+
+
+
+
+ <method>
+
+
+ vendor-passthru method to be called
+
+
+
+
+ <arg=value>
+
+
+ arguments to be passed to vendor-passthru method
+
+
+
+
+
+
+ ironic port-create
+ usage: ironic port-create -a <address> -n <node uuid> [-e <key=value>]
+
+Create a new port.
+
+ Optional arguments
+
+ -a <address>, --address <address>
+
+
+ MAC Address for this port
+
+
+
+
+ -n <node uuid>, --node_uuid <node uuid>
+
+
+ UUID of the node that this port belongs to
+
+
+
+
+ -e <key=value>, --extra <key=value>
+
+
+ Record arbitrary key/value metadata. Can be specified
+ multiple times
+
+
+
+
+
+
+ ironic port-delete
+ usage: ironic port-delete <port id> [<port id> ...]
+
+Delete a port.
+
+ Positional arguments
+
+ <port id>
+
+
+ UUID of port
+
+
+
+
+
+
+ ironic port-list
+ usage: ironic port-list [--detail] [--limit <limit>] [--marker <marker>]
+ [--sort-key <sort_key>] [--sort-dir <sort_dir>]
+
+List ports.
+
+ Optional arguments
+
+ --detail
+
+
+ Show detailed information about ports.
+
+
+
+
+ --limit <limit>
+
+
+ Maximum number of ports to return per request, 0 for
+ no limit. Default is the maximum number used by the
+ Ironic API Service.
+
+
+
+
+ --marker <marker>
+
+
+ Port UUID (e.g of the last port in the list from a
+ previous request). Returns the list of ports after
+ this UUID.
+
+
+
+
+ --sort-key <sort_key>
+
+
+ Port field that will be used for sorting.
+
+
+
+
+ --sort-dir <sort_dir>
+
+
+ Sort direction: one of "asc" (the default) or "desc".
+
+
+
+
+
+
+ ironic port-show
+ usage: ironic port-show [--address] <port id>
+
+Show a port.
+
+ Positional arguments
+
+ <port id>
+
+
+ UUID of port
+
+
+
+
+
+ Optional arguments
+
+ --address
+
+
+ Get the port by it's MAC address instead of UUID.
+
+
+
+
+
+
+ ironic port-update
+ usage: ironic port-update <port id> <op> <path=value> [<path=value> ...]
+
+Update a port.
+
+ Positional arguments
+
+ <port id>
+
+
+ UUID of port
+
+
+
+
+ <op>
+
+
+ Operations: 'add', 'replace' or 'remove'
+
+
+
+
+ <path=value>
+
+
+ Attributes to add/replace or remove (only PATH is necessary on
+ remove)
+
+
+
+
+
+