summaryrefslogtreecommitdiff
path: root/mason
diff options
context:
space:
mode:
Diffstat (limited to 'mason')
-rwxr-xr-xmason/mason-generator.sh72
-rwxr-xr-xmason/mason.sh15
2 files changed, 45 insertions, 42 deletions
diff --git a/mason/mason-generator.sh b/mason/mason-generator.sh
index 652929f2..911d879f 100755
--- a/mason/mason-generator.sh
+++ b/mason/mason-generator.sh
@@ -3,45 +3,47 @@
set -e
if [ "$1" == "-h" -o "$1" == "--help" ]; then
- echo "Usage:"
- echo " `basename $0` HOST_PREFIX UPSTREAM_TROVE_HOSTNAME VM_USER VM_HOST VM_PATH [HOST_POSTFIX]"
- echo ""
- echo "Where:"
- echo " HOST_PREFIX -- Name of your Mason instance"
- echo " e.g. \"my-mason\" to produce hostnames:"
- echo " my-mason-trove and my-mason-controller"
- echo " UPSTREAM_TROVE_HOSTNAME -- Upstream trove's hostname"
- echo " VM_USER -- User on VM host for VM deployment"
- echo " VM_HOST -- VM host for VM deployment"
- echo " VM_PATH -- Path to store VM images in on VM host"
- echo " HOST_POSTFIX -- e.g. \".example.com\" to get"
- echo " my-mason-trove.example.com"
- echo ""
- echo "This script makes deploying a Mason system simpler by automating"
- echo "the generation of keys for the systems to use, building of the"
- echo "systems, filling out the mason deployment cluster morphology"
- echo "template with useful values, and finally deploying the systems."
- echo ""
- echo "To ensure that the deployed system can deploy test systems, you"
- echo "must supply an ssh key to the VM host. Do so with the following"
- echo "command:"
- echo " ssh-copy-id -i ssh_keys-HOST_PREFIX/worker.key.pub VM_USER@VM_HOST"
- echo ""
- echo "To ensure that the mason can upload artifacts to the upstream trove,"
- echo "you must supply an ssh key to the upstream trove. Do so with the"
- echo "following command:"
- echo " ssh-copy-id -i ssh_keys-HOST_PREFIX/id_rsa.key.pub root@UPSTREAM_TROVE_HOSTNAME"
- echo ""
+ cat <<EOF
+Usage:
+ `basename $0` HOST_PREFIX UPSTREAM_TROVE_HOSTNAME VM_USER VM_HOST VM_PATH [HOST_POSTFIX]
+
+Where:
+ HOST_PREFIX -- Name of your Mason instance
+ e.g. "my-mason" to produce hostnames:
+ my-mason-trove and my-mason-controller
+ UPSTREAM_TROVE_HOSTNAME -- Upstream trove's hostname
+ VM_USER -- User on VM host for VM deployment
+ VM_HOST -- VM host for VM deployment
+ VM_PATH -- Path to store VM images in on VM host
+ HOST_POSTFIX -- e.g. ".example.com" to get
+ my-mason-trove.example.com
+
+This script makes deploying a Mason system simpler by automating
+the generation of keys for the systems to use, building of the
+systems, filling out the mason deployment cluster morphology
+template with useful values, and finally deploying the systems.
+
+To ensure that the deployed system can deploy test systems, you
+must supply an ssh key to the VM host. Do so with the following
+command:
+ ssh-copy-id -i ssh_keys-HOST_PREFIX/worker.key.pub VM_USER@VM_HOST
+
+To ensure that the mason can upload artifacts to the upstream trove,
+you must supply an ssh key to the upstream trove. Do so with the
+following command:
+ ssh-copy-id -i ssh_keys-HOST_PREFIX/id_rsa.key.pub root@UPSTREAM_TROVE_HOSTNAME
+
+EOF
exit 0
fi
-HOST_PREFIX=$1
-UPSTREAM_TROVE=$2
-VM_USER=$3
-VM_HOST=$4
-VM_PATH=$5
-HOST_POSTFIX=$6
+HOST_PREFIX="$1"
+UPSTREAM_TROVE="$2"
+VM_USER="$3"
+VM_HOST="$4"
+VM_PATH="$5"
+HOST_POSTFIX="$6"
sedescape() {
# Escape all non-alphanumeric characters
diff --git a/mason/mason.sh b/mason/mason.sh
index 13b97b7e..13ea21db 100755
--- a/mason/mason.sh
+++ b/mason/mason.sh
@@ -11,9 +11,9 @@ if [ ! -e ws ]; then
fi
cd ws
-definitions_repo="$DEFINITIONS_REF"/"$DISTBUILD_TROVE_ADDRESS"/baserock/baserock/definitions
+definitions_repo="$DEFINITIONS_REF"/"$UPSTREAM_TROVE_ADDRESS"/baserock/baserock/definitions
if [ ! -e "$definitions_repo" ]; then
- morph checkout git://"$DISTBUILD_TROVE_ADDRESS"/baserock/baserock/definitions "$DEFINITIONS_REF"
+ morph checkout git://"$UPSTREAM_TROVE_ADDRESS"/baserock/baserock/definitions "$DEFINITIONS_REF"
cd "$definitions_repo"
git config user.name "$TROVE_ID"-mason
git config user.email "$TROVE_ID"-mason@$(hostname)
@@ -41,9 +41,10 @@ rm -f "$HOME/success"
echo INFO: Mason building: $DEFINITIONS_REF at $SHA1
if ! "scripts/release-build" --no-default-configs \
- --trove-host "$DISTBUILD_TROVE_ADDRESS" \
- --controllers "$DISTBUILD_ARCH:$DISTBUILD_CONTROLLER_ADDRESS" \
- "$BUILD_CLUSTER_MORPHOLOGY"; then
+ --trove-host "$UPSTREAM_TROVE_ADDRESS" \
+ --artifact-cache-server "http://$ARTIFACT_CACHE_SERVER:8080/" \
+ --controllers "$DISTBUILD_ARCH:$DISTBUILD_CONTROLLER_ADDRESS" \
+ "$BUILD_CLUSTER_MORPHOLOGY"; then
echo ERROR: Failed to build release images
echo Build logs for chunks:
find builds -type f -exec echo {} \; -exec cat {} \;
@@ -60,11 +61,11 @@ fi
"scripts/release-test" \
--deployment-host "$DISTBUILD_ARCH":"$TEST_VM_HOST_SSH_URL" \
- --trove-host "$DISTBUILD_TROVE_ADDRESS" \
+ --trove-host "$UPSTREAM_TROVE_ADDRESS" \
--trove-id "$TROVE_ID" \
"$BUILD_CLUSTER_MORPHOLOGY"
-"scripts/release-upload" --build-trove-host "$DISTBUILD_TROVE_ADDRESS" \
+"scripts/release-upload" --build-trove-host "$ARTIFACT_CACHE_SERVER" \
--arch "$DISTBUILD_ARCH" \
--log-level=debug --log="$HOME"/release-upload.log \
--public-trove-host "$UPSTREAM_TROVE_ADDRESS" \