From f28d30eafe8b52400e3801832eef9993a9a95be8 Mon Sep 17 00:00:00 2001 From: "Qianbiao.NG" Date: Sun, 30 Aug 2020 16:07:02 +0800 Subject: [PATCH] Feat: add ibmc hardware info support for devstack Add ibmc hardware type support when generate testing nodes for ironic devstack Change-Id: I6f9f129256151f0a721f2b1962477ddef0ab453e --- devstack/lib/ironic | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/devstack/lib/ironic b/devstack/lib/ironic index 475f14e741..5bfd3f5d64 100644 --- a/devstack/lib/ironic +++ b/devstack/lib/ironic @@ -788,11 +788,21 @@ function is_deployed_by_xclarity { return 1 } +function is_deployed_by_ibmc { + [[ "$IRONIC_DEPLOY_DRIVER" == ibmc ]] && return 0 + return 1 +} + function is_drac_enabled { [[ -z "${IRONIC_ENABLED_HARDWARE_TYPES%%*idrac*}" ]] && return 0 return 1 } +function is_ibmc_enabled { + [[ -z "${IRONIC_ENABLED_HARDWARE_TYPES%%*ibmc*}" ]] && return 0 + return 1 +} + function is_ansible_deploy_enabled { [[ -z "${IRONIC_ENABLED_DEPLOY_INTERFACES%%*ansible*}" ]] && return 0 return 1 @@ -1120,6 +1130,10 @@ function install_ironic { pip_install python-dracclient fi + if is_ibmc_enabled; then + pip_install python-ibmcclient + fi + if is_ansible_deploy_enabled; then pip_install "$(grep '^ansible' $IRONIC_DIR/driver-requirements.txt | awk '{print $1}')" fi @@ -2394,6 +2408,11 @@ function enroll_nodes { --driver-info xclarity_password=$bmc_passwd \ --driver-info xclarity_username=$bmc_username \ --driver-info xclarity_hardware_id=$xclarity_hardware_id" + elif is_deployed_by_ibmc; then + node_options+=" --driver-info ibmc_address=$bmc_address \ + --driver-info ibmc_username=$bmc_username \ + --driver-info ibmc_password=$bmc_passwd \ + --driver-info ibmc_verify_ca=False" fi interface_info="${mac_address}"