summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPedro Alvarez <pedro.alvarez@codethink.co.uk>2014-09-09 15:37:40 (GMT)
committerPedro Alvarez <pedro.alvarez@codethink.co.uk>2014-09-17 10:39:19 (GMT)
commit950017e5621bf5eac6ea13e9340194a6559b2bb1 (patch)
treee8027168300e135534d32ac7ce365a8d4a938a54
parent48a4b547d84f9469d0bda0ba9a151a8cd195ff5c (diff)
downloaddefinitions-950017e5621bf5eac6ea13e9340194a6559b2bb1.tar.gz
Update mason.configure to use Ansible
-rw-r--r--mason.configure57
1 files changed, 32 insertions, 25 deletions
diff --git a/mason.configure b/mason.configure
index 23ee23c..4341d8c 100644
--- a/mason.configure
+++ b/mason.configure
@@ -61,6 +61,20 @@ EOF
mkdir -p "$ROOT"/var/mason
##########################################################################
+# Copy files needed for Ansible configuration
+##########################################################################
+
+mkdir -p "$ROOT/usr/share/mason-setup"
+mkdir -p "$ROOT/usr/lib/mason-setup"
+
+cp mason/share/* "$ROOT/usr/share/mason-setup"
+cp -r mason/ansible "$ROOT/usr/lib/mason-setup/"
+cp mason/mason-setup.service "$ROOT"/etc/systemd/system/mason-setup.service
+
+ln -s ../mason-setup.service "$ROOT"/etc/systemd/system/multi-user.target.wants/mason-setup.service
+
+
+##########################################################################
# Check variables
##########################################################################
@@ -78,36 +92,29 @@ if [ "$ARTIFACT_CACHE_SERVER" = "" \
exit 1
fi
-
-##########################################################################
-# Functions
-##########################################################################
-
-shellescape() {
- echo "'$(echo "$1" | sed -e "s/'/'\\''/g")'"
-}
-
-
##########################################################################
# Generate config variable shell snippet
##########################################################################
-MASON_CONFIG="$ROOT"/etc/mason.conf
-
-echo "Creating $MASON_CONFIG"
-cat >>"$MASON_CONFIG" <<EOF
-#################### START OF DEPLOY TIME CONFIGURATION #######################
-
-ARTIFACT_CACHE_SERVER=$(shellescape "$ARTIFACT_CACHE_SERVER")
-UPSTREAM_TROVE_ADDRESS=$(shellescape "$TROVE_HOST")
-DEFINITIONS_REF=$(shellescape "$MASON_DEFINITIONS_REF")
-DISTBUILD_ARCH=$(shellescape "$MASON_DISTBUILD_ARCH")
-DISTBUILD_CONTROLLER_ADDRESS=$(shellescape "$CONTROLLERHOST")
-TROVE_ID=$(shellescape "$TROVE_ID")
-BUILD_CLUSTER_MORPHOLOGY=$(shellescape "$MASON_CLUSTER_MORPHOLOGY")
-TEST_VM_HOST_SSH_URL=$(shellescape "$MASON_TEST_HOST")
+MASON_DATA="$ROOT/etc/mason"
+mkdir -p "$MASON_DATA"
+
+python <<'EOF' >"$MASON_DATA/mason.conf"
+import os, sys, yaml
+
+trove_configuration={
+ 'ARTIFACT_CACHE_SERVIER': os.environ['ARTIFACT_CACHE_SERVER'],
+ 'MASON_CLUSTER_MORPHOLOGY': os.environ['MASON_CLUSTER_MORPHOLOGY'],
+ 'MASON_DEFINITIONS_REF': os.environ['MASON_DEFINITIONS_REF'],
+ 'MASON_DISTBUILD_ARCH': os.environ['MASON_DISTBUILD_ARCH'],
+ 'MASON_TEST_HOST': os.environ['MASON_TEST_HOST'],
+ 'TROVE_ADMIN_NAME': os.environ['TROVE_ADMIN_NAME'],
+ 'TROVE_ID': os.environ['TROVE_ID'],
+ 'TROVE_HOST': os.environ['TROVE_HOST'],
+ 'CONTROLLERHOST': os.environ['CONTROLLERHOST'],
+}
-##################### END OF DEPLOY TIME CONFIGURATION ########################
+yaml.dump(trove_configuration, sys.stdout, default_flow_style=False)
EOF