X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=blobdiff_plain;f=deploy%2Fmetal3-vm%2Flib%2Fcommon.sh;h=cc48dd64f8faa2335d4831822555409184256e1d;hb=11441a8b2aedc39665e64c6aac45f8a31186d777;hp=2bf0aa3c6e59eeeaff016d422d8d7d6f01226d5c;hpb=97aec506decb655c865452acb5b5fcef72bb8673;p=icn.git diff --git a/deploy/metal3-vm/lib/common.sh b/deploy/metal3-vm/lib/common.sh index 2bf0aa3..cc48dd6 100644 --- a/deploy/metal3-vm/lib/common.sh +++ b/deploy/metal3-vm/lib/common.sh @@ -1,4 +1,5 @@ -#!/bin/bash +#!/usr/bin/env bash +set -eu -o pipefail eval "$(go env)" @@ -30,13 +31,12 @@ MANAGE_PRO_BRIDGE=${MANAGE_PRO_BRIDGE:-y} MANAGE_INT_BRIDGE=${MANAGE_INT_BRIDGE:-y} # Internal interface, to bridge virbr0 INT_IF=${INT_IF:-} -#Root disk to deploy coreOS - use /dev/sda on BM -ROOT_DISK_NAME=${ROOT_DISK_NAME-"/dev/sda"} #Container runtime CONTAINER_RUNTIME=${CONTAINER_RUNTIME:-"docker"} export EXTERNAL_SUBNET="192.168.111.0/24" - +#Ironic data directory +IRONIC_DATA_DIR=${IRONIC_DATA_DIR:-"/opt/ironic"} export SSH_PUB_KEY=~/.ssh/id_rsa.pub FILESYSTEM=${FILESYSTEM:="/"} @@ -50,9 +50,10 @@ export NUM_WORKERS=${NUM_WORKERS:-"1"} export VM_EXTRADISKS=${VM_EXTRADISKS:-"false"} # Ironic vars -export IRONIC_IMAGE=${IRONIC_IMAGE:-"quay.io/metal3-io/ironic:master"} -export IRONIC_INSPECTOR_IMAGE=${IRONIC_INSPECTOR_IMAGE:-"quay.io/metal3-io/ironic-inspector"} -export IRONIC_DATA_DIR="$WORKING_DIR/ironic" +export IRONIC_IMAGE=${IRONIC_IMAGE:-"integratedcloudnative/ironic:v1.0-icn"} +export IRONIC_INSPECTOR_IMAGE=${IRONIC_INSPECTOR_IMAGE:-"integratedcloudnative/ironic-inspector:v1.0-icn"} +export IRONIC_BAREMETAL_IMAGE=${IRONIC_BAREMETAL_IMAGE:-"integratedcloudnative/baremetal-operator:v2.0-icn"} +export IPA_DOWNLOADER_IMAGE=${IPA_DOWNLOADER_IMAGE:-"integratedcloudnative/ironic-ipa-downloader:v1.0-icn"} # Verify requisites/permissions # Connect to system libvirt @@ -107,20 +108,20 @@ if [ ! -d "$WORKING_DIR" ]; then chmod 755 "$WORKING_DIR" fi -function list_nodes() { +function list_nodes { # Includes -machine and -machine-namespace cat $NODES_FILE | \ - jq '.nodes[] | { - name, - driver, - address:.driver_info.ipmi_address, - port:.driver_info.ipmi_port, - user:.driver_info.ipmi_username, - password:.driver_info.ipmi_password, - mac: .ports[0].address - } | - .name + " " + - .driver + "://" + .address + (if .port then ":" + .port else "" end) + " " + - .user + " " + .password + " " + .mac' \ - | sed 's/"//g' + jq -r '.nodes[] | [ + .name, + .driver + "://" + .driver_info.ipmi_address + (if .driver_info.ipmi_port then ":" + .driver_info.ipmi_port else "" end), + .driver_info.ipmi_username, + .driver_info.ipmi_password, + .ports[0].address + ] | @csv' | \ + sed 's/"//g' +} + +function node_networkdata { + name=$1 + cat $NODES_FILE | jq -r --arg name "$name" '.nodes[] | select(.name==$name) | .net' }