summaryrefslogtreecommitdiff
path: root/old/extensions/installer.configure
diff options
context:
space:
mode:
authorSam Thursfield <sam.thursfield@codethink.co.uk>2017-07-07 10:01:07 +0000
committerSam Thursfield <sam.thursfield@codethink.co.uk>2017-07-07 10:01:07 +0000
commitf6046f9b54c1f14d12a67fa66ca0c881b49e8ceb (patch)
tree7c4d5b1aa87b991fecb0b2c585514069947c3f0a /old/extensions/installer.configure
parentdeba555368fd21316025c5ee0eaaf517b938775e (diff)
downloaddefinitions-f6046f9b54c1f14d12a67fa66ca0c881b49e8ceb.tar.gz
Move old Baserock format definitions into old/ directory
Diffstat (limited to 'old/extensions/installer.configure')
-rwxr-xr-xold/extensions/installer.configure48
1 files changed, 48 insertions, 0 deletions
diff --git a/old/extensions/installer.configure b/old/extensions/installer.configure
new file mode 100755
index 00000000..995038ac
--- /dev/null
+++ b/old/extensions/installer.configure
@@ -0,0 +1,48 @@
+#!/usr/bin/python2
+#
+# Copyright (C) 2014 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, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# This is a "morph deploy" configuration extension to configure an installer
+# system. It will create the configuration needed in the installer system
+# to perform an installation. It uses the following variables from the
+# environment:
+#
+# * INSTALLER_TARGET_STORAGE_DEVICE
+# * INSTALLER_ROOTFS_TO_INSTALL
+# * INSTALLER_POST_INSTALL_COMMAND (optional, defaults to `reboot -f`)
+
+import os
+import sys
+import yaml
+
+install_config_file = os.path.join(sys.argv[1], 'etc', 'install.conf')
+
+try:
+ installer_configuration = {
+ 'INSTALLER_TARGET_STORAGE_DEVICE': os.environ['INSTALLER_TARGET_STORAGE_DEVICE'],
+ 'INSTALLER_ROOTFS_TO_INSTALL': os.environ['INSTALLER_ROOTFS_TO_INSTALL'],
+ }
+except KeyError as e:
+ print "Not configuring as an installer system"
+ sys.exit(0)
+
+postinstkey = 'INSTALLER_POST_INSTALL_COMMAND'
+installer_configuration[postinstkey] = os.environ.get(postinstkey, 'reboot -f')
+
+with open(install_config_file, 'w') as f:
+ f.write( yaml.dump(installer_configuration, default_flow_style=False) )
+
+print "Configuration of the installer system in %s" % install_config_file