diff options
author | Carsten Koester <ckoester@cisco.com> | 2016-05-25 05:58:29 -0400 |
---|---|---|
committer | Dave Wallace <dwallacelf@gmail.com> | 2016-06-02 00:18:28 +0000 |
commit | 9d378548cc86028c55baf17260d32d0055603b78 (patch) | |
tree | 1cc67da7195459abcaca5f12f0f4b74bc399b60e /resources/tools/disk-image-builder/ubuntu/scripts-local/upload-image-to-virl.sh | |
parent | 036f36181c177e4c77f22cdbdcb87fb2f94df3bf (diff) |
CSIT-111: Add Packer based framework to auto-generate disk images
Change-Id: Ia18ea34a6288aec0f12f176f4cc264d0f215d1fd
Signed-off-by: Carsten Koester <ckoester@cisco.com>
Diffstat (limited to 'resources/tools/disk-image-builder/ubuntu/scripts-local/upload-image-to-virl.sh')
-rwxr-xr-x | resources/tools/disk-image-builder/ubuntu/scripts-local/upload-image-to-virl.sh | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/resources/tools/disk-image-builder/ubuntu/scripts-local/upload-image-to-virl.sh b/resources/tools/disk-image-builder/ubuntu/scripts-local/upload-image-to-virl.sh new file mode 100755 index 0000000000..41682a2bc0 --- /dev/null +++ b/resources/tools/disk-image-builder/ubuntu/scripts-local/upload-image-to-virl.sh @@ -0,0 +1,71 @@ +#!/bin/sh + +# Copyright (c) 2016 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +if [ "$1" = "" ] +then + echo "Syntax: $0 <path to image file>" + echo + echo "Environment variables that are required:" + echo " VIRL_USER, VIRL_PASSWORD - VIRL username and password" + echo " VIRL_IMAGE_SUBTYPE - Image subtype to use (most likely 'server')" + echo " VIRL_IMAGE_NAME - The intended name for the image in VIRL" + exit 1 +fi + +VIRL_IMAGE_FILE=$1 + +if [ "$VIRL_USER" = "" ] || [ "$VIRL_PASSWORD" = "" ] +then + echo "VIRL user or password not defined, not uploading image to VIRL." + echo "Define VIRL_USER and VIRL_PASSWORD environment variables if image upload" + echo "to VIRL is intended." + exit 0 +fi + +if [ "$VIRL_IMAGE_SUBTYPE" = "" ] || [ "$VIRL_IMAGE_NAME" = "" ] +then + echo "VIRL_IMAGE_SUBTYPE, VIRL_IMAGE_NAME must both be defined" + echo "variables must all be set." + exit 1 +fi + +if [ ! -f $VIRL_IMAGE_FILE ] +then + echo "VIRL image file $VIRL_IMAGE_FILE not found" + exit 1 +fi + +echo Uploading file $VIRL_IMAGE_FILE to VIRL +echo as $VIRL_IMAGE_NAME + +export VIRL_IMAGE_NAME + +existing_image_id=$(virl_uwm_client --quiet -u ${VIRL_USER} -p ${VIRL_PASSWORD} \ + image-info | \ + grep -E "^ u'name'|^ u'id'" | \ + grep -B 1 "u'${VIRL_IMAGE_SUBTYPE}-${VIRL_IMAGE_NAME}'" | \ + grep -E "^ u'id'" | \ + cut -f 4 -d "'") + +if [ "${existing_image_id}" = "" ] +then + echo Image does not exist yet +else + echo Image exists with ID $existing_image_id + virl_uwm_client --quiet -u ${VIRL_USER} -p ${VIRL_PASSWORD} image-delete \ + --id ${existing_image_id} +fi + +virl_uwm_client -u ${VIRL_USER} -p ${VIRL_PASSWORD} image-create --subtype ${VIRL_IMAGE_SUBTYPE} --version ${VIRL_IMAGE_NAME} --image-on-server ${VIRL_IMAGE_FILE} |