summaryrefslogtreecommitdiff
path: root/extensions/openstack-network.configure
diff options
context:
space:
mode:
authorAdam Coldrick <adam.coldrick@codethink.co.uk>2015-06-02 08:22:26 +0000
committerAdam Coldrick <adam.coldrick@codethink.co.uk>2015-06-02 13:55:31 +0000
commit6f49299467a09236d7c0c564fe55bc8eafa7defd (patch)
treec9c628dd466ebfcc895d2ccc9f16440b4955f1a6 /extensions/openstack-network.configure
parent0cd8880023fc65ec581da95dd49a58b5996a1279 (diff)
downloaddefinitions-6f49299467a09236d7c0c564fe55bc8eafa7defd.tar.gz
Move extensions into a subdirectory
Change-Id: I12e7c03b30da78da1eb220d2826ce0003d6efe2e
Diffstat (limited to 'extensions/openstack-network.configure')
-rw-r--r--extensions/openstack-network.configure50
1 files changed, 50 insertions, 0 deletions
diff --git a/extensions/openstack-network.configure b/extensions/openstack-network.configure
new file mode 100644
index 00000000..10be5a1c
--- /dev/null
+++ b/extensions/openstack-network.configure
@@ -0,0 +1,50 @@
+#!/bin/sh
+
+# Copyright (C) 2014-2015 Codethink Limited
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program. If not, see <http://www.gnu.org/licenses/>.
+
+set -e
+
+ROOT="$1"
+
+enable(){
+ ln -sf "/usr/lib/systemd/system/$1.service" \
+ "$ROOT/etc/systemd/system/multi-user.target.wants/$1.service"
+}
+
+###################
+# Enable services #
+###################
+
+enable openvswitch-setup
+enable openstack-network-setup
+
+##########################################################################
+# Generate config variable shell snippet
+##########################################################################
+
+OPENSTACK_DATA="$ROOT/etc/openstack"
+mkdir -p "$OPENSTACK_DATA"
+
+python <<'EOF' >"$OPENSTACK_DATA/network.conf"
+import os, sys, yaml
+
+network_configuration = {}
+
+optional_keys = ('EXTERNAL_INTERFACE',)
+
+network_configuration.update((k, os.environ[k]) for k in optional_keys if k in os.environ)
+
+yaml.dump(network_configuration, sys.stdout, default_flow_style=False)
+EOF