.. _workbook-baremetal:

==================
Baremetal Workbook
==================

:Workbook name: tripleo.baremetal.v1

TripleO Baremetal Workflows

Workflows in the Baremetal Workbook

.. object:: tripleo.baremetal.v1._introspect

   An internal workflow. The tripleo.baremetal.v1.introspect workflow should be used for introspection.


   Workflow inputs:

   :input node_uuid: Required.
   :input timeout: Required.
   :input queue_name: Required.

.. object:: tripleo.baremetal.v1.apply_bios_settings

   Apply BIOS settings for given nodes

   Workflow inputs:

   :input node_uuids: Required.
   :input settings: Required.
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.apply_bios_settings_on_manageable_nodes

   Apply BIOS settings on manageable nodes

   Workflow inputs:

   :input settings: Required.
   :input concurrency: Default: 20
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.cellv2_discovery

   Run cell_v2 host discovery

   Workflow inputs:

   :input node_uuids: Required.
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.clean_manageable_nodes

   Clean all nodes in a 'manageable' state.

   Workflow inputs:

   :input concurrency: Default: 20
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.clean_nodes

   Wipe partition tables on all disks of given nodes

   Workflow inputs:

   :input node_uuids: Required.
   :input concurrency: Default: 20
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.configure

   Take a list of manageable nodes and update their boot configuration.

   Workflow inputs:

   :input node_uuids: Required.
   :input queue_name: Default: tripleo
   :input kernel_name: Default: bm-deploy-kernel
   :input ramdisk_name: Default: bm-deploy-ramdisk
   :input instance_boot_option: Default: None
   :input root_device: Default: None
   :input root_device_minimum_size: Default: 4
   :input overwrite_root_device_hints: Default: False

.. object:: tripleo.baremetal.v1.configure_manageable_nodes

   Update the boot configuration of all nodes in 'manageable' state.

   Workflow inputs:

   :input queue_name: Default: tripleo
   :input kernel_name: Default: bm-deploy-kernel
   :input ramdisk_name: Default: bm-deploy-ramdisk
   :input instance_boot_option: Default: None
   :input root_device: Default: None
   :input root_device_minimum_size: Default: 4
   :input overwrite_root_device_hints: Default: False

.. object:: tripleo.baremetal.v1.create_raid_configuration

   Create and apply RAID configuration for given nodes

   Workflow inputs:

   :input node_uuids: Required.
   :input configuration: Required.
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.discover_and_enroll_nodes

   Run nodes discovery over the given IP range and enroll nodes

   Workflow inputs:

   :input ip_addresses: Required.
   :input credentials: Required.
   :input ports: Default: [623]
   :input kernel_name: Default: None
   :input ramdisk_name: Default: None
   :input instance_boot_option: Default: local
   :input initial_state: Default: manageable
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.discover_nodes

   Run nodes discovery over the given IP range

   Workflow inputs:

   :input ip_addresses: Required.
   :input credentials: Required.
   :input ports: Default: [623]
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.introspect

   Take a list of nodes and move them through introspection.
By default each node will attempt introspection up to 3 times (two retries plus the initial attemp) if it fails. This behaviour can be modified by changing the max_retry_attempts input.
The workflow will assume the node has timed out after 20 minutes (1200 seconds). This can be changed by passing the node_timeout input in seconds.


   Workflow inputs:

   :input node_uuids: Required.
   :input run_validations: Default: False
   :input queue_name: Default: tripleo
   :input concurrency: Default: 20
   :input max_retry_attempts: Default: 2
   :input node_timeout: Default: 1200

.. object:: tripleo.baremetal.v1.introspect_manageable_nodes

   Introspect all nodes in a 'manageable' state.

   Workflow inputs:

   :input run_validations: Default: False
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.manage

   Set a list of nodes to 'manageable' state

   Workflow inputs:

   :input node_uuids: Required.
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.manual_cleaning

   Workflow inputs:

   :input node_uuid: Required.
   :input clean_steps: Required.
   :input timeout: Default: 7200
   :input retry_delay: Default: 10
   :input retry_count: Default: 720
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.nodes_with_hint

   Find nodes matching a hint regex

   Workflow inputs:

   :input hint_regex: Required.
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.nodes_with_profile

   Find nodes with a specific profile

   Workflow inputs:

   :input profile: Required.
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.provide

   Take a list of nodes and move them to "available"

   Workflow inputs:

   :input node_uuids: Required.
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.provide_manageable_nodes

   Provide all nodes in a 'manageable' state.

   Workflow inputs:

   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.register_or_update

   Take nodes JSON and create nodes in a "manageable" state

   Workflow inputs:

   :input nodes_json: Required.
   :input remove: Default: False
   :input queue_name: Default: tripleo
   :input kernel_name: Default: None
   :input ramdisk_name: Default: None
   :input instance_boot_option: Default: local
   :input initial_state: Default: manageable

.. object:: tripleo.baremetal.v1.reset_bios_settings

   Reset BIOS settings for given nodes to factory default

   Workflow inputs:

   :input node_uuids: Required.
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.reset_bios_settings_on_manageable_nodes

   Reset BIOS settings on manageable nodes to factory default

   Workflow inputs:

   :input concurrency: Default: 20
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.set_node_state

   Workflow inputs:

   :input node_uuid: Required.
   :input state_action: Required.
   :input target_state: Required.
   :input error_states: Default: ['error', 'adopt failed', 'clean failed', 'deploy failed', 'inspect failed', 'rescue failed']

.. object:: tripleo.baremetal.v1.set_power_state

   Workflow inputs:

   :input node_uuid: Required.
   :input state_action: Required.
   :input target_state: Required.
   :input error_state: Default: error

.. object:: tripleo.baremetal.v1.tag_node

   Tag a node with a role

   Workflow inputs:

   :input node_uuid: Required.
   :input role: Default: None
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.tag_nodes

   Runs the tag_node workflow in a loop

   Workflow inputs:

   :input tag_node_uuids: Required.
   :input untag_node_uuids: Required.
   :input role: Required.
   :input plan: Default: overcloud
   :input queue_name: Default: tripleo

.. object:: tripleo.baremetal.v1.validate_nodes

   Validate nodes JSON

   Workflow inputs:

   :input nodes_json: Required.
   :input queue_name: Default: tripleo
