|
- #!/bin/bash
- #
- # Copyright (c) 2020 Bubble, Inc. All rights reserved. For personal (non-commercial) use, see license: https://getbubblenow.com/bubble-license/
- #
- # Create packer images for sage and/or node
- #
- # Usage:
- #
- # pack_bubble [node|sage] [cloud CloudName]
- #
- # node : only pack the node image, do not pack the sage
- # sage : only pack the sage image, do not pack the node
- # cloud CloudName : only pack for CloudName compute cloud, do not pack for all clouds
- #
- SCRIPT="${0}"
- SCRIPT_DIR=$(cd $(dirname ${SCRIPT}) && pwd)
- . ${SCRIPT_DIR}/bubble_common
-
- if [[ -z "${1}" ]] ; then
- IMAGES="node sage"
- elif [[ "${1}" == "node" ]] ; then
- IMAGES="node"
- shift
- elif [[ "${1}" == "sage" ]] ; then
- IMAGES="sage"
- shift
- fi
-
- if [[ -z "${1}" ]] ; then
- CLOUDS_URL="me/clouds?type=compute"
- CLOUDS="$("${SCRIPT_DIR}/bgetn" "${CLOUDS_URL}")"
- if [[ -z "${CLOUDS}" ]] ; then
- die "Error reading compute cloud names from ${CLOUDS_URL}"
- fi
-
- elif [[ "${1}" == "cloud" ]] ; then
- CLOUDS="${2}"
- if [[ -z "${CLOUDS}" ]] ; then
- die "No cloud name specified after -cloud"
- fi
-
- else
- die ""
- fi
-
- for cloud in ${CLOUDS} ; do
- for image in ${IMAGES} ; do
- echo "Building ${image} image for cloud ${cloud} ..."
- "${SCRIPT_DIR}/bpute" "me/clouds/${cloud}/packer/${image}" || die "Error submitting packer build: ${image} / ${cloud}"
- done
- done
|