From f45695be540c58314ab30847318ab3cb9b861524 Mon Sep 17 00:00:00 2001 From: Richard Maw Date: Fri, 22 Aug 2014 13:01:39 +0000 Subject: Deploy Masons to use source on upstream troves The per-mason trove only needs to worry about being an artifact cache, so we can prevent it populating itself from the upstream trove by making it use the SSH protocol for fetching sources, and not registering its ssh key with the upstream trove. The MASON_UPSTREAM_TROVE_ADDRESS option has been removed, as this is now the TROVE_HOST. The distbuild network is now configured to use the upstream trove for sources, and the local trove for artifacts, with the ARTIFACT_CACHE_SERVER option. mason.configure now uses ARTIFACT_CACHE_SERVER to tell deploy commands which server to fetch artifacts from. --- clusters/mason.morph | 9 +++--- mason.configure | 10 +++---- mason/mason-generator.sh | 72 +++++++++++++++++++++++++----------------------- mason/mason.sh | 15 +++++----- scripts/release-build | 11 ++++++-- 5 files changed, 63 insertions(+), 54 deletions(-) diff --git a/clusters/mason.morph b/clusters/mason.morph index 9bac0bbc..fd8c25d7 100644 --- a/clusters/mason.morph +++ b/clusters/mason.morph @@ -27,19 +27,19 @@ systems: TROVE_HOST: red-box-v1 TROVE_ID: red-box-v1-trove UPSTREAM_TROVE: upstream-trove - UPSTREAM_TROVE_PROTOCOL: http VCPUS: 2 VERSION_LABEL: 45 WORKER_SSH_PUBKEY: ssh_keys/worker.key.pub - morph: systems/distbuild-system-x86_64.morph deploy-defaults: - CONTROLLERHOST: red-box-v1-controller + ARTIFACT_CACHE_SERVER: red-box-v1-trove.example.com + CONTROLLERHOST: red-box-v1-controller.example.com DISTBUILD_CONTROLLER: false DISTBUILD_WORKER: true INSTALL_FILES: distbuild/manifest RAM_SIZE: 8G - TROVE_HOST: red-box-v1-trove.example.com - TROVE_ID: red-box-v1-trove + TROVE_HOST: upstream-trove + TROVE_ID: upstream-trove VCPUS: 2 WORKER_SSH_KEY: ssh_keys/worker.key deploy: @@ -53,5 +53,4 @@ systems: MASON_DEFINITIONS_REF: master MASON_DISTBUILD_ARCH: x86_64 MASON_TEST_HOST: vm-user@vm-host:/vm-path/ - MASON_UPSTREAM_TROVE_ADDRESS: upstream-trove WORKERS: red-box-v1-controller diff --git a/mason.configure b/mason.configure index fb73b01c..90d49709 100644 --- a/mason.configure +++ b/mason.configure @@ -19,8 +19,8 @@ # a Mason instance at deployment time. It uses the following variables # from the environment: # +# * ARTIFACT_CACHE_SERVER # * MASON_CLUSTER_MORPHOLOGY -# * MASON_UPSTREAM_TROVE_ADDRESS # * MASON_DEFINITIONS_REF # * MASON_DISTBUILD_ARCH # * MASON_TEST_HOST @@ -32,8 +32,8 @@ set -e ROOT="$1" -if [ "$MASON_CLUSTER_MORPHOLOGY" = "" \ - -o "$MASON_UPSTREAM_TROVE_ADDRESS" = "" \ +if [ "$ARTIFACT_CACHE_SERVER" = "" \ + -o "$MASON_CLUSTER_MORPHOLOGY" = "" \ -o "$MASON_DEFINITIONS_REF" = "" \ -o "$MASON_DISTBUILD_ARCH" = "" \ -o "$MASON_TEST_HOST" = "" ]; then @@ -61,11 +61,11 @@ echo "Creating $MASON_CONFIG" cat >>"$MASON_CONFIG" <