|  | *** Settings *** | 
|  | Library           Collections | 
|  | Library           String | 
|  | Library           RequestsLibrary | 
|  | Library           OperatingSystem | 
|  | Variables         ../data/variables.py | 
|  |  | 
|  | *** Variables *** | 
|  |  | 
|  | # By default power, support x86 as well. | 
|  | ${PLATFORM_ARCH_TYPE}             power | 
|  |  | 
|  | # FFDC Redfish OEM path /<oem>/v1/ | 
|  | ${OEM_REDFISH_PATH}               ${EMPTY} | 
|  |  | 
|  | # Transition REST vs Redfish ONLY temporary changes for stagging | 
|  | # automation infrastructure change and for continuity. | 
|  | ${REDFISH_SUPPORT_TRANS_STATE}    ${0} | 
|  |  | 
|  | # By default Delete all Redfish session per boot run. | 
|  | ${REDFISH_DELETE_SESSIONS}        ${1} | 
|  |  | 
|  | ${OPENBMC_MODEL}  ${EMPTY} | 
|  | ${OPENBMC_HOST}   ${EMPTY} | 
|  | ${DBUS_PREFIX}    ${EMPTY} | 
|  | ${PORT}           ${EMPTY} | 
|  | # AUTH_SUFFIX here is derived from variables.py | 
|  | ${AUTH_URI}       https://${OPENBMC_HOST}${AUTH_SUFFIX} | 
|  | ${OPENBMC_USERNAME}    root | 
|  | ${OPENBMC_PASSWORD}    0penBmc | 
|  | ${REST_USERNAME}       root | 
|  | ${REST_PASSWORD}       0penBmc | 
|  | ${OPENBMC_ADMIN_PASSWORD}  0penBmc | 
|  | ${SERVICE_USER_PASSWORD}   0penBmc | 
|  |  | 
|  | # For users privilege admin or sudo. | 
|  | ${USER_TYPE}          ${EMPTY} | 
|  |  | 
|  | ${CHASSIS_ID}  chassis | 
|  | ${COMPONENT_NAME_OF_POWER_SUPPLY}  powersupply | 
|  |  | 
|  | # MTLS_ENABLED indicates whether mTLS is enabled. | 
|  | ${MTLS_ENABLED}        False | 
|  | # Valid mTLS certificate for authentication. | 
|  | ${VALID_CERT}          ${EMPTY} | 
|  | # Path of mTLS certificates directory. | 
|  | ${CERT_DIR_PATH}       ${EMPTY} | 
|  |  | 
|  | ${IPMI_USERNAME}       root | 
|  | ${IPMI_PASSWORD}       0penBmc | 
|  | ${MACHINE_TYPE}    palmetto | 
|  | ${DBUS_POLL_INTERVAL}      15s | 
|  | ${OPENBMC_REBOOT_TIMEOUT}   ${10} | 
|  | # IPMI_COMMAND here is set to "External" by default. User | 
|  | # can override to "Dbus" from command line. | 
|  | ${IPMI_COMMAND}    External | 
|  | # IPMI chipher default. | 
|  | ${IPMI_CIPHER_LEVEL}  ${17} | 
|  | # IPMI timeout default. | 
|  | ${IPMI_TIMEOUT}       ${3} | 
|  |  | 
|  | # Log default path for IPMI SOL. | 
|  | ${IPMI_SOL_LOG_FILE}    ${EXECDIR}${/}logs${/}sol_${OPENBMC_HOST} | 
|  |  | 
|  | # IPMI SOL console output types/parameters to verify. | 
|  | ${SOL_BIOS_OUTPUT}          ${EMPTY} | 
|  | ${SOL_LOGIN_OUTPUT}         ${EMPTY} | 
|  |  | 
|  | # PDU related parameters | 
|  | ${PDU_TYPE}         ${EMPTY} | 
|  | ${PDU_IP}           ${EMPTY} | 
|  | ${PDU_USERNAME}     ${EMPTY} | 
|  | ${PDU_PASSWORD}     ${EMPTY} | 
|  | ${PDU_SLOT_NO}      ${EMPTY} | 
|  |  | 
|  | # User define input SSH and HTTPS related parameters | 
|  | ${SSH_PORT}         22 | 
|  | ${HTTPS_PORT}       443 | 
|  | ${IPMI_PORT}        623 | 
|  | ${HOST_SOL_PORT}    2200 | 
|  | ${OPENBMC_SERIAL_HOST}      ${EMPTY} | 
|  | ${OPENBMC_SERIAL_PORT}      ${EMPTY} | 
|  |  | 
|  | # OS related parameters. | 
|  | ${OS_HOST}          ${EMPTY} | 
|  | ${OS_USERNAME}      ${EMPTY} | 
|  | ${OS_PASSWORD}      ${EMPTY} | 
|  | ${OS_WAIT_TIMEOUT}  ${15*60} | 
|  |  | 
|  | # Networking related parameters | 
|  | ${NETWORK_PORT}            80 | 
|  | ${PACKET_TYPE}             tcp | 
|  | ${ICMP_PACKETS}            icmp | 
|  | ${NETWORK_RETRY_TIME}      6 | 
|  | ${NETWORK_TIMEOUT}         18 | 
|  | ${ICMP_TIMESTAMP_REQUEST}  13 | 
|  | ${ICMP_ECHO_REQUEST}       8 | 
|  | ${CHANNEL_NUMBER}          1 | 
|  | ${TCP_PACKETS}             tcp | 
|  | ${ICMP_NETMASK_REQUEST}    17 | 
|  | ${REDFISH_INTERFACE}       443 | 
|  | ${SYN_PACKETS}             SYN | 
|  | ${RESET_PACKETS}           RST | 
|  | ${FIN_PACKETS}             FIN | 
|  | ${SYN_ACK_RESET}           SAR | 
|  | ${ALL_FLAGS}               ALL | 
|  | # Used to set BMC static IPv4 configuration. | 
|  | ${STATIC_IP}            10.10.10.10 | 
|  | ${NETMASK}              255.255.255.0 | 
|  | ${GATEWAY}              10.10.10.10 | 
|  |  | 
|  | # BMC debug tarball parameter | 
|  | ${DEBUG_TARBALL_PATH}  ${EMPTY} | 
|  |  | 
|  | # Upload Image parameters | 
|  | ${TFTP_SERVER}                  ${EMPTY} | 
|  | ${PNOR_TFTP_FILE_NAME}          ${EMPTY} | 
|  | ${BMC_TFTP_FILE_NAME}           ${EMPTY} | 
|  | ${IMAGE_FILE_PATH}              ${EMPTY} | 
|  | ${ALTERNATE_IMAGE_FILE_PATH}    ${EMPTY} | 
|  | ${PNOR_IMAGE_FILE_PATH}         ${EMPTY} | 
|  | ${BMC_IMAGE_FILE_PATH}          ${EMPTY} | 
|  | ${BAD_IMAGES_DIR_PATH}          ${EMPTY} | 
|  | ${SKIP_UPDATE_IF_ACTIVE}        false | 
|  |  | 
|  | # Parameters for doing N-1 and N+1 code updates. | 
|  | ${N_MINUS_ONE_IMAGE_FILE_PATH}    ${EMPTY} | 
|  | ${N_PLUS_ONE_IMAGE_FILE_PATH}     ${EMPTY} | 
|  |  | 
|  | # The caller must set this to the string "true" in order to delete images. The | 
|  | # code is picky. | 
|  | ${DELETE_OLD_PNOR_IMAGES}   false | 
|  | ${DELETE_OLD_GUARD_FILE}    false | 
|  |  | 
|  | # Caller can specify a value for LAST_KNOWN_GOOD_VERSION to indicate that if | 
|  | # the machine already has that version on it, the update should be skipped. | 
|  | ${LAST_KNOWN_GOOD_VERSION}  ${EMPTY} | 
|  |  | 
|  | # By default field mode is disabled. | 
|  | ${FIELD_MODE}               ${False} | 
|  |  | 
|  | # LDAP related variables. | 
|  | ${LDAP_BASE_DN}             ${EMPTY} | 
|  | ${LDAP_BIND_DN}             ${EMPTY} | 
|  | ${LDAP_SERVER_HOST}         ${EMPTY} | 
|  | ${LDAP_SECURE_MODE}         ${EMPTY} | 
|  | ${LDAP_BIND_DN_PASSWORD}    ${EMPTY} | 
|  | ${LDAP_SEARCH_SCOPE}        ${EMPTY} | 
|  | ${LDAP_TYPE}                ${EMPTY} | 
|  | ${LDAP_USER}                ${EMPTY} | 
|  | ${LDAP_USER_PASSWORD}       ${EMPTY} | 
|  | ${GROUP_PRIVILEGE}          ${EMPTY} | 
|  | ${GROUP_NAME}               ${EMPTY} | 
|  | ${LDAP_SERVER_URI}          ldap://${LDAP_SERVER_HOST} | 
|  |  | 
|  | # General tool variables | 
|  | # FFDC_DEFAULT == 1; use Default FFDC methods | 
|  | ${FFDC_DEFAULT}            ${1} | 
|  |  | 
|  | *** Keywords *** | 
|  | Get Inventory Schema | 
|  | [Documentation]  Get inventory schema. | 
|  | [Arguments]    ${machine} | 
|  | [Return]    &{INVENTORY}[${machine}] | 
|  |  | 
|  | Get Inventory Items Schema | 
|  | [Documentation]  Get inventory items schema. | 
|  | [Arguments]    ${machine} | 
|  | [Return]    &{INVENTORY_ITEMS}[${machine}] | 
|  |  | 
|  | Get Sensor Schema | 
|  | [Documentation]  Get sensors schema. | 
|  | [Arguments]    ${machine} | 
|  | [Return]    &{SENSORS}[${machine}] |