1*** Settings ***
2Library           Collections
3Library           String
4Library           RequestsLibrary.RequestsKeywords
5Library           OperatingSystem
6Variables         ../data/variables.py
7
8*** Variables ***
9
10# By default power, support x86 as well.
11${PLATFORM_ARCH_TYPE}             power
12
13# FFDC Redfish OEM path /<oem>/v1/
14${OEM_REDFISH_PATH}               ${EMPTY}
15
16# Transition REST vs Redfish ONLY temporary changes for stagging
17# automation infrastructure change and for continuity.
18${REDFISH_SUPPORT_TRANS_STATE}    ${0}
19
20# By default Delete all Redfish session per boot run.
21${REDFISH_DELETE_SESSIONS}        ${1}
22
23${OPENBMC_MODEL}  ${EMPTY}
24${OPENBMC_HOST}   ${EMPTY}
25${DBUS_PREFIX}    ${EMPTY}
26${PORT}           ${EMPTY}
27# AUTH_SUFFIX here is derived from variables.py
28${AUTH_URI}       https://${OPENBMC_HOST}${AUTH_SUFFIX}
29${OPENBMC_USERNAME}    root
30${OPENBMC_PASSWORD}    0penBmc
31${REST_USERNAME}       root
32${REST_PASSWORD}       0penBmc
33
34${CHASSIS_ID}  chassis
35
36# MTLS_ENABLED indicates whether mTLS is enabled.
37${MTLS_ENABLED}        False
38# Valid mTLS certificate for authentication.
39${VALID_CERT}          ${EMPTY}
40# Path of mTLS certificates directory.
41${CERT_DIR_PATH}       ${EMPTY}
42
43${IPMI_PASSWORD}       0penBmc
44${MACHINE_TYPE}    palmetto
45${DBUS_POLL_INTERVAL}      15s
46${OPENBMC_REBOOT_TIMEOUT}   ${10}
47# IPMI_COMMAND here is set to "External" by default. User
48# can override to "Dbus" from command line.
49${IPMI_COMMAND}    External
50# IPMI chipher default.
51${IPMI_CIPHER_LEVEL}  ${17}
52# IPMI timeout default.
53${IPMI_TIMEOUT}       ${3}
54
55# PDU related parameters
56${PDU_TYPE}         ${EMPTY}
57${PDU_IP}           ${EMPTY}
58${PDU_USERNAME}     ${EMPTY}
59${PDU_PASSWORD}     ${EMPTY}
60${PDU_SLOT_NO}      ${EMPTY}
61
62# User define input SSH and HTTPS related parameters
63${SSH_PORT}         22
64${HTTPS_PORT}       443
65${IPMI_PORT}        623
66${HOST_SOL_PORT}    2200
67${OPENBMC_SERIAL_HOST}      ${EMPTY}
68${OPENBMC_SERIAL_PORT}      ${EMPTY}
69
70# OS related parameters.
71${OS_HOST}          ${EMPTY}
72${OS_USERNAME}      ${EMPTY}
73${OS_PASSWORD}      ${EMPTY}
74${OS_WAIT_TIMEOUT}  ${15*60}
75
76# Networking related parameters
77${NETWORK_PORT}            80
78${PACKET_TYPE}             tcp
79${ICMP_PACKETS}            icmp
80${NETWORK_RETRY_TIME}      6
81${NETWORK_TIMEOUT}         18
82${ICMP_TIMESTAMP_REQUEST}  13
83${ICMP_ECHO_REQUEST}       8
84${CHANNEL_NUMBER}          1
85${TCP_PACKETS}             tcp
86${ICMP_NETMASK_REQUEST}    17
87${REDFISH_INTERFACE}       443
88${SYN_PACKETS}             SYN
89${RESET_PACKETS}           RST
90${FIN_PACKETS}             FIN
91${SYN_ACK_RESET}           SAR
92${ALL_FLAGS}               ALL
93
94# BMC debug tarball parameter
95${DEBUG_TARBALL_PATH}  ${EMPTY}
96
97# Upload Image parameters
98${TFTP_SERVER}                  ${EMPTY}
99${PNOR_TFTP_FILE_NAME}          ${EMPTY}
100${BMC_TFTP_FILE_NAME}           ${EMPTY}
101${IMAGE_FILE_PATH}              ${EMPTY}
102${ALTERNATE_IMAGE_FILE_PATH}    ${EMPTY}
103${PNOR_IMAGE_FILE_PATH}         ${EMPTY}
104${BMC_IMAGE_FILE_PATH}          ${EMPTY}
105${BAD_IMAGES_DIR_PATH}          ${EMPTY}
106${SKIP_UPDATE_IF_ACTIVE}        false
107
108# Parameters for doing N-1 and N+1 code updates.
109${N_MINUS_ONE_IMAGE_FILE_PATH}    ${EMPTY}
110${N_PLUS_ONE_IMAGE_FILE_PATH}     ${EMPTY}
111
112# The caller must set this to the string "true" in order to delete images. The
113# code is picky.
114${DELETE_OLD_PNOR_IMAGES}   false
115${DELETE_OLD_GUARD_FILE}    false
116
117# Caller can specify a value for LAST_KNOWN_GOOD_VERSION to indicate that if
118# the machine already has that version on it, the update should be skipped.
119${LAST_KNOWN_GOOD_VERSION}  ${EMPTY}
120
121# By default field mode is disabled.
122${FIELD_MODE}               ${False}
123
124# LDAP related variables.
125${LDAP_BASE_DN}             ${EMPTY}
126${LDAP_BIND_DN}             ${EMPTY}
127${LDAP_SERVER_HOST}         ${EMPTY}
128${LDAP_SECURE_MODE}         ${EMPTY}
129${LDAP_BIND_DN_PASSWORD}    ${EMPTY}
130${LDAP_SEARCH_SCOPE}        ${EMPTY}
131${LDAP_TYPE}                ${EMPTY}
132${LDAP_USER}                ${EMPTY}
133${LDAP_USER_PASSWORD}       ${EMPTY}
134
135*** Keywords ***
136Get Inventory Schema
137    [Documentation]  Get inventory schema.
138    [Arguments]    ${machine}
139    [Return]    &{INVENTORY}[${machine}]
140
141Get Inventory Items Schema
142    [Documentation]  Get inventory items schema.
143    [Arguments]    ${machine}
144    [Return]    &{INVENTORY_ITEMS}[${machine}]
145
146Get Sensor Schema
147    [Documentation]  Get sensors schema.
148    [Arguments]    ${machine}
149    [Return]    &{SENSORS}[${machine}]
150