aboutsummaryrefslogtreecommitdiffstats
path: root/resources/tools/disk-image-builder/centos/build-listmaker.sh
diff options
context:
space:
mode:
Diffstat (limited to 'resources/tools/disk-image-builder/centos/build-listmaker.sh')
-rwxr-xr-xresources/tools/disk-image-builder/centos/build-listmaker.sh74
1 files changed, 74 insertions, 0 deletions
diff --git a/resources/tools/disk-image-builder/centos/build-listmaker.sh b/resources/tools/disk-image-builder/centos/build-listmaker.sh
new file mode 100755
index 0000000000..52aaff0b3c
--- /dev/null
+++ b/resources/tools/disk-image-builder/centos/build-listmaker.sh
@@ -0,0 +1,74 @@
+#!/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
+
+# This builds the "listmaker" image. This is essentially a one-time
+# action and most likely applicable to CSIT test lab only.
+
+cd $(dirname $0)
+BUILD_DIR="$(pwd)/build"
+PACKER_DIR="${BUILD_DIR}/packer"
+OUT_DIR="${BUILD_DIR}/output/listmaker"
+
+if [ "$1" = "centos-7-1511" ]; then
+ RELEASE_NAME="csit-centos-7-1511-listmaker"
+ PACKER_TEMPLATE="listmaker/centos-7-1511.json"
+elif [ "$1" = "centos-7.3-1611" ]; then
+ RELEASE_NAME="csit-centos-7.3-1611-listmaker"
+ PACKER_TEMPLATE="listmaker/centos-7.3-1611.json"
+else
+ echo "Please provide OS as parameter:"
+ echo "Options: ${0} [centos-7-1511|centos-7.3-1611]"
+ exit 1
+fi
+
+VIRL_IMAGE_SUBTYPE=server
+VIRL_IMAGE_NAME="${RELEASE_NAME}"
+VIRL_IMAGE_FILE="${OUT_DIR}/packer-${RELEASE_NAME}"
+
+# export PACKER_LOG="1"
+
+# This script requires that the following two environment variables be defined-
+#
+# $VIRL_USER
+# $VIRL_PASSWORD
+
+if [ "$VIRL_USER" = "" ] || [ "$VIRL_PASSWORD" = "" ]
+then
+ echo '$VIRL_USER and $VIRL_PASSWORD environment variables must be defined'
+ exit 1
+fi
+
+###
+### Download and extract packer, if not already installed
+###
+os=$(uname -s)
+if [ "$os" = "Darwin" ]
+then
+ packer_url="https://releases.hashicorp.com/packer/0.10.1/packer_0.10.1_darwin_amd64.zip"
+elif [ "$os" = "Linux" ]
+then
+ packer_url="https://releases.hashicorp.com/packer/0.10.1/packer_0.10.1_linux_amd64.zip"
+fi
+
+mkdir -p $BUILD_DIR
+wget -P ${PACKER_DIR} -N ${packer_url}
+
+unzip -n ${PACKER_DIR}/packer*zip -d ${PACKER_DIR}
+
+###
+### Build the actual image as per packer script. Packer post-processor will
+### upload it to VIRL.
+###
+${BUILD_DIR}/packer/packer build -var "release=${RELEASE_NAME}" \
+ -var "outputdir=${OUT_DIR}" -force -machine-readable ${PACKER_TEMPLATE}