1*** Settings ***
2Library           Collections
3Library           String
4Library           RequestsLibrary.RequestsKeywords
5Library           OperatingSystem
6Variables         ../data/variables.py
7
8*** Variables ***
9
10${OPENBMC_MODEL}  ${EMPTY}
11${OPENBMC_HOST}   ${EMPTY}
12${DBUS_PREFIX}    ${EMPTY}
13${PORT}           ${EMPTY}
14# AUTH_SUFFIX here is derived from variables.py
15${AUTH_URI}       https://${OPENBMC_HOST}${AUTH_SUFFIX}
16${OPENBMC_USERNAME}    root
17${OPENBMC_PASSWORD}    0penBmc
18${REST_USERNAME}       root
19${REST_PASSWORD}       0penBmc
20${IPMI_PASSWORD}       0penBmc
21${MACHINE_TYPE}    palmetto
22${DBUS_POLL_INTERVAL}      15s
23${OPENBMC_REBOOT_TIMEOUT}   ${10}
24# IPMI_COMMAND here is set to "External" by default. User
25# can override to "Dbus" from command line.
26${IPMI_COMMAND}    External
27# IPMI chipher default.
28${IPMI_CIPHER_LEVEL}  ${17}
29
30# PDU related parameters
31${PDU_TYPE}         ${EMPTY}
32${PDU_IP}           ${EMPTY}
33${PDU_USERNAME}     ${EMPTY}
34${PDU_PASSWORD}     ${EMPTY}
35${PDU_SLOT_NO}      ${EMPTY}
36
37# User define input SSH and HTTPS related parameters
38${SSH_PORT}         22
39${HTTPS_PORT}       443
40${IPMI_PORT}        623
41${HOST_SOL_PORT}    2200
42${OPENBMC_SERIAL_HOST}      ${EMPTY}
43${OPENBMC_SERIAL_PORT}      ${EMPTY}
44
45# OS related parameters.
46${OS_HOST}          ${EMPTY}
47${OS_USERNAME}      ${EMPTY}
48${OS_PASSWORD}      ${EMPTY}
49${OS_WAIT_TIMEOUT}  ${15*60}
50
51# Networking related parameters
52${NETWORK_PORT}            80
53${PACKET_TYPE}             tcp
54${ICMP_PACKETS}            icmp
55${NETWORK_RETRY_TIME}      6
56${NETWORK_TIMEOUT}         18
57${ICMP_TIMESTAMP_REQUEST}  13
58${ICMP_ECHO_REQUEST}       8
59${CHANNEL_NUMBER}          1
60
61# BMC debug tarball parameter
62${DEBUG_TARBALL_PATH}  ${EMPTY}
63
64# Upload Image parameters
65${TFTP_SERVER}                  ${EMPTY}
66${PNOR_TFTP_FILE_NAME}          ${EMPTY}
67${BMC_TFTP_FILE_NAME}           ${EMPTY}
68${IMAGE_FILE_PATH}              ${EMPTY}
69${ALTERNATE_IMAGE_FILE_PATH}    ${EMPTY}
70${PNOR_IMAGE_FILE_PATH}         ${EMPTY}
71${BMC_IMAGE_FILE_PATH}          ${EMPTY}
72${BAD_IMAGES_DIR_PATH}          ${EMPTY}
73${SKIP_UPDATE_IF_ACTIVE}        false
74
75# Parameters for doing N-1 and N+1 code updates.
76${N_MINUS_ONE_IMAGE_FILE_PATH}    ${EMPTY}
77${N_PLUS_ONE_IMAGE_FILE_PATH}     ${EMPTY}
78
79# The caller must set this to the string "true" in order to delete images. The
80# code is picky.
81${DELETE_OLD_PNOR_IMAGES}   false
82${DELETE_OLD_GUARD_FILE}    false
83
84# Caller can specify a value for LAST_KNOWN_GOOD_VERSION to indicate that if
85# the machine already has that version on it, the update should be skipped.
86${LAST_KNOWN_GOOD_VERSION}  ${EMPTY}
87
88# By default field mode is disabled.
89${FIELD_MODE}               ${False}
90
91# LDAP related variables.
92${LDAP_BASE_DN}             ${EMPTY}
93${LDAP_BIND_DN}             ${EMPTY}
94${LDAP_SERVER_HOST}         ${EMPTY}
95${LDAP_SECURE_MODE}         ${EMPTY}
96${LDAP_BIND_DN_PASSWORD}    ${EMPTY}
97${LDAP_SEARCH_SCOPE}        ${EMPTY}
98${LDAP_TYPE}                ${EMPTY}
99${LDAP_USER}                ${EMPTY}
100${LDAP_USER_PASSWORD}       ${EMPTY}
101
102*** Keywords ***
103Get Inventory Schema
104    [Documentation]  Get inventory schema.
105    [Arguments]    ${machine}
106    [Return]    &{INVENTORY}[${machine}]
107
108Get Inventory Items Schema
109    [Documentation]  Get inventory items schema.
110    [Arguments]    ${machine}
111    [Return]    &{INVENTORY_ITEMS}[${machine}]
112
113Get Sensor Schema
114    [Documentation]  Get sensors schema.
115    [Arguments]    ${machine}
116    [Return]    &{SENSORS}[${machine}]
117