summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Rettberg2013-12-18 18:15:07 +0100
committerSimon Rettberg2013-12-18 18:15:07 +0100
commit59d219f793735de9dcf318862c476c9d676fe03e (patch)
treec61fbcddefd591c183b180f101393f775953f7f1
parent[rfs-stage32] More verbose error message if udhcpc fails (diff)
parentdoc (diff)
downloadtm-scripts-59d219f793735de9dcf318862c476c9d676fe03e.tar.gz
tm-scripts-59d219f793735de9dcf318862c476c9d676fe03e.tar.xz
tm-scripts-59d219f793735de9dcf318862c476c9d676fe03e.zip
Merge branch 'master' of dnbd3:openslx-ng/tm-scripts
-rw-r--r--doc/boot_config_vars17
-rw-r--r--doc/coding/conf_file_vars (renamed from doc/conf_file_vars)0
-rwxr-xr-xremote/modules/qemukvm/data/addon-init8
l---------remote/modules/qemukvm/data/etc/systemd/system/graphical.target.wants/qemukvm.service1
-rw-r--r--remote/modules/qemukvm/data/etc/systemd/system/qemukvm.service9
-rw-r--r--remote/modules/qemukvm/data/opt/openslx/scripts/systemd-qemukvm_env8
-rw-r--r--remote/modules/qemukvm/qemukvm.conf12
-rw-r--r--remote/modules/qemukvm/qemukvm.conf.ubuntu1
-rwxr-xr-xremote/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-setup_slx_addons18
l---------remote/targets/qemukvm/qemukvm1
10 files changed, 60 insertions, 15 deletions
diff --git a/doc/boot_config_vars b/doc/boot_config_vars
index f2c83f5b..42e4b17a 100644
--- a/doc/boot_config_vars
+++ b/doc/boot_config_vars
@@ -6,8 +6,12 @@ Remember to set all variables in inverted commata: '...'!
NFS-share related variables:
SLX_VM_NFS FQDN/IP:share name for VM image share.
Example: some-store.here.example.tld:vmware/images/store
-SLX_STAGE4 FQDN/IP:share name for stage 4 storage.
+SLX_STAGE4 FQDN/IP:share name for stage 4 storage (nfs):
Example: 10.20.30.40:/srv/suse/stage4
+ or dnbd3 syntax:
+ Example: dnbd3 stage4/default/ubuntu1304.sqfs
+SLX_STAGE4_RID Use specific revision of stage 4. Only used when
+ using dnbd3 for stage 4.
Proxy server related variables:
SLX_PROXY_MODE Proxy mode, e.g. 'auto'.
@@ -34,3 +38,14 @@ SLX_ADDONS Space separated list of sqfs-modules to load.
Client root password related variables:
SLX_ROOT_PASS Expects a (salted) sha-512 password hash.
Such hashes can be created using "mkpasswd -m sha-512".
+
+dnbd3 related:
+SLX_DNBD3_SERVERS Space separated list of dnbd3 servers, eg. '1.2.3.4 5.6.7.8'
+ The list will be randomized on use.
+SLX_DNBD3_PRIO_SERVERS Space separated list of preferred dnbd3 servers
+ The list will not be randomized and is used before the regular list.
+
+remote logging:
+SLX_REMOTE_LOG URL where to post log to, eg. 'http://server/log.php'
+ POST variables: type, description, longdesc
+
diff --git a/doc/conf_file_vars b/doc/coding/conf_file_vars
index 348ec153..348ec153 100644
--- a/doc/conf_file_vars
+++ b/doc/coding/conf_file_vars
diff --git a/remote/modules/qemukvm/data/addon-init b/remote/modules/qemukvm/data/addon-init
new file mode 100755
index 00000000..cccc1e8a
--- /dev/null
+++ b/remote/modules/qemukvm/data/addon-init
@@ -0,0 +1,8 @@
+#!/bin/ash
+
+systemctl daemon-reload
+systemctl start qemukvm.service
+
+# this seems to be necessary due to the misbehaviour of udevd
+# in view of the undetected ENV dev_type
+systemctl restart systemd-udevd
diff --git a/remote/modules/qemukvm/data/etc/systemd/system/graphical.target.wants/qemukvm.service b/remote/modules/qemukvm/data/etc/systemd/system/graphical.target.wants/qemukvm.service
new file mode 120000
index 00000000..89d8afbf
--- /dev/null
+++ b/remote/modules/qemukvm/data/etc/systemd/system/graphical.target.wants/qemukvm.service
@@ -0,0 +1 @@
+../qemukvm.service \ No newline at end of file
diff --git a/remote/modules/qemukvm/data/etc/systemd/system/qemukvm.service b/remote/modules/qemukvm/data/etc/systemd/system/qemukvm.service
new file mode 100644
index 00000000..8faf5d06
--- /dev/null
+++ b/remote/modules/qemukvm/data/etc/systemd/system/qemukvm.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Sets up the virtual box environment
+Requires=vmchooser.service
+After=vmchooser.service
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=/opt/openslx/scripts/systemd-qemukvm_env start
diff --git a/remote/modules/qemukvm/data/opt/openslx/scripts/systemd-qemukvm_env b/remote/modules/qemukvm/data/opt/openslx/scripts/systemd-qemukvm_env
index 3173ca45..2d1483aa 100644
--- a/remote/modules/qemukvm/data/opt/openslx/scripts/systemd-qemukvm_env
+++ b/remote/modules/qemukvm/data/opt/openslx/scripts/systemd-qemukvm_env
@@ -14,8 +14,14 @@
# - This is the preparation script for the configuration of Linux Qemu/KVM.
################################################################################
+
+modprobe kvm
+modprobe kvm_amd
+modprobe kvm_intel
+
# check for Linux kvm modules (if required at all)
-# lsmod |grep kvm || slxlog "qemukvm-modules" "Cannot find any kvm kernel module(s)"
+
+lsmod |grep kvm || slxlog "qemukvm-modules" "Cannot find any kvm kernel module(s)"
cat >> /etc/sudoers << EOF
# allow to start and stop kvm services / load-/unload kvm modules
diff --git a/remote/modules/qemukvm/qemukvm.conf b/remote/modules/qemukvm/qemukvm.conf
index a3973fe7..32df73a5 100644
--- a/remote/modules/qemukvm/qemukvm.conf
+++ b/remote/modules/qemukvm/qemukvm.conf
@@ -1,5 +1,11 @@
-REQUIRED_BINARIES="
-"
-
REQUIRED_DIRECTORIES="
+ /etc
+ /lib
+ /usr/bin
+ /usr/sbin
+ /usr/lib
+ /usr/share/lintian
+ /usr/share/qemu
+ /usr/share/seabios
+ /usr/share/vgabios
"
diff --git a/remote/modules/qemukvm/qemukvm.conf.ubuntu b/remote/modules/qemukvm/qemukvm.conf.ubuntu
index e42cb63b..d0fdc5f3 100644
--- a/remote/modules/qemukvm/qemukvm.conf.ubuntu
+++ b/remote/modules/qemukvm/qemukvm.conf.ubuntu
@@ -35,4 +35,3 @@ REQUIRED_CONTENT_PACKAGES="
msr-tools
sharutils
"
-REQUIRED_FILES=""
diff --git a/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-setup_slx_addons b/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-setup_slx_addons
index b6f25b65..f1253602 100755
--- a/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-setup_slx_addons
+++ b/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-setup_slx_addons
@@ -32,10 +32,10 @@ if [ -z "${SLX_CONFIG_SERVERS}" ]; then
fi
# read base slx servers from cmdline
-SLX_BASE_PATH=$(read_from_cmdline "slxbase")
-SLX_BASE_MNT="/opt/openslx/mnt"
-SYS_TMP="/tmp/addons"
-mkdir -p "$SYS_TMP" || { echo "Failed to create $SYS_TMP"; exit 1; }
+HTTP_BASE_PATH=$(read_from_cmdline "slxbase")
+BASE_MOUNT_POINT="/opt/openslx/mnt"
+DOWNLOAD_DEST="/tmp/addons"
+mkdir -p "$DOWNLOAD_DEST" || { echo "Failed to create $DOWNLOAD_DEST"; exit 1; }
######################################################################################
#
@@ -61,14 +61,14 @@ if [ $# -eq 1 ]; then
{ echo "$ADDON is not listed in SLX_ADDONS of your config file. Skipping it."; exit 1; }
# download the addon from the given URL
- ADDON_TARGET_PATH="${SYS_TMP}/$(basename "$ADDON").sqfs"
- if ! download "${SLX_BASE_PATH}/${ADDON}.sqfs" "${ADDON_TARGET_PATH}"; then
- slxlog --echo "addon-download" "Download of '${SLX_BASE_PATH}/${ADDON}.sqfs' failed."
+ ADDON_TARGET_PATH="${DOWNLOAD_DEST}/$(basename "$ADDON").sqfs"
+ if ! download "${HTTP_BASE_PATH}/${ADDON}.sqfs" "${ADDON_TARGET_PATH}"; then
+ slxlog --echo "addon-download" "Download of '${HTTP_BASE_PATH}/${ADDON}.sqfs' failed."
exit 1
fi
- # now mount it to $SLX_MNT/<addon-name>
- ADDON_MOUNT_POINT="${SLX_BASE_MNT}/$(basename "$ADDON")"
+ # now mount it to $BASE_MOUNT_POINT/<addon-name>
+ ADDON_MOUNT_POINT="${BASE_MOUNT_POINT}/$(basename "$ADDON")"
mkdir -p "$ADDON_MOUNT_POINT"
mount -t squashfs "$ADDON_TARGET_PATH" "$ADDON_MOUNT_POINT" || \
{ slxlog --echo "addon-mount" "Failed to mount $ADDON_TARGET_PATH."; exit 1; }
diff --git a/remote/targets/qemukvm/qemukvm b/remote/targets/qemukvm/qemukvm
new file mode 120000
index 00000000..e8e7d1b3
--- /dev/null
+++ b/remote/targets/qemukvm/qemukvm
@@ -0,0 +1 @@
+../../modules/qemukvm \ No newline at end of file