]> gitweb.fluxo.info Git - hydra.git/commitdiff
Adds provision-img
authorSilvio Rhatto <rhatto@riseup.net>
Wed, 28 Dec 2016 16:41:21 +0000 (14:41 -0200)
committerSilvio Rhatto <rhatto@riseup.net>
Wed, 28 Dec 2016 16:41:21 +0000 (14:41 -0200)
share/hydractl/provision-img [new file with mode: 0755]

diff --git a/share/hydractl/provision-img b/share/hydractl/provision-img
new file mode 100755 (executable)
index 0000000..9b9cdb2
--- /dev/null
@@ -0,0 +1,47 @@
+#!/bin/bash
+#
+# System installer, vmdebootstrap version.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# 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 Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public
+# License along with this program.  If not, see
+# <http://www.gnu.org/licenses/>.
+
+# Load.
+source $APP_BASE/lib/hydra/functions || exit 1
+hydra_config_load
+
+# Make sure there is provision config.
+function hydra_provision_config {
+  hydra_user_config   image             /var/cache/qemu/debian.img       "Destination image"
+  hydra_user_config   size              3G                               "Image size"
+  hydra_user_config   hostname          machine                          "Hostname"
+  hydra_user_config   domain            example.org                      "Domain"
+  hydra_user_config   arch              amd64                            "System arch"
+  hydra_user_config   version           jessie                           "Distro version"
+  hydra_user_config   mirror            http://http.debian.net/debian/   "Debian mirror"
+}
+
+# Load configuration
+hydra_provision_config_load $1
+
+# Get config parameters
+hydra_provision_config
+
+# Check for requirements
+for req in vmdebootstrap mbr; do
+  hydra_install_package $req
+done
+
+# Run
+hydra_sudo_run vmdebootstrap --verbose --image=$image --size=$size --distribution=$version \
+                             --mirror=$mirror --arch=$arch --hostname=$hostname.$domain