summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorManuel Bentele2021-02-05 14:33:56 +0100
committerManuel Bentele2021-02-05 14:33:56 +0100
commitb2dcc3e01cb2de8a3665c55f731e8a2dd97eff40 (patch)
tree573e9f05154e7282b6bbedf61ef3133e9719548a
parent[openjdk-8-jre-headless] Rename wrong Ubuntu config file name (diff)
downloadmltk-b2dcc3e01cb2de8a3665c55f731e8a2dd97eff40.tar.gz
mltk-b2dcc3e01cb2de8a3665c55f731e8a2dd97eff40.tar.xz
mltk-b2dcc3e01cb2de8a3665c55f731e8a2dd97eff40.zip
[qemu] Add support to build the qemu runvirt plugin
-rw-r--r--core/modules/qemu/module.build19
-rw-r--r--core/modules/qemu/module.conf36
-rw-r--r--core/modules/qemu/module.conf.debian20
-rw-r--r--core/modules/qemu/module.conf.ubuntu5
4 files changed, 55 insertions, 25 deletions
diff --git a/core/modules/qemu/module.build b/core/modules/qemu/module.build
index fc1bc074..d1d9a691 100644
--- a/core/modules/qemu/module.build
+++ b/core/modules/qemu/module.build
@@ -1,13 +1,30 @@
#!/bin/bash
+
fetch_source() {
- :
+ # copy qemu runvirt plugin source to working directory
+ local src_dir="${MODULE_DIR}/runvirt-plugin-qemu"
+ local dst_dir="${MODULE_WORK_DIR}/src"
+ mkdir -p "${dst_dir}" || perror "Could not create source folder for qemu runvirt plugin!"
+ cp -r "${src_dir}" "${dst_dir}" || perror "Could not copy source files for qemu runvirt plugin!"
}
build() {
+ # copy mandatory system packages
COPYLIST="list_dpkg_output"
[ -e "${COPYLIST}" ] && rm "${COPYLIST}"
list_packet_files >> "${COPYLIST}"
tarcopy "$(cat "${COPYLIST}" | sort -u)" "${MODULE_BUILD_DIR}"
+
+ # build qemu runvirt plugin
+ local build_dir="${MODULE_WORK_DIR}/src/runvirt-plugin-qemu"
+ mvn -f "${build_dir}" clean package || perror "Could not build runvirt-plugin-qemu with Maven!"
+
+ # install qemu runvirt plugin
+ local build_artifact_filename="runvirt-plugin-qemu-1.0-SNAPSHOT.jar"
+ local install_dir="${MODULE_BUILD_DIR}/opt/openslx/share/java"
+ local install_filename="runvirt-plugin-qemu.jar"
+ mkdir -p "${install_dir}"
+ cp "${build_dir}/target/${build_artifact_filename}" "${install_dir}/${install_filename}" || perror "Could not install runvirt-plugin-qemu!"
}
post_copy() {
diff --git a/core/modules/qemu/module.conf b/core/modules/qemu/module.conf
index 61069809..def35459 100644
--- a/core/modules/qemu/module.conf
+++ b/core/modules/qemu/module.conf
@@ -1,2 +1,36 @@
#!/bin/bash
-REQUIRED_MODULES="libvirt"
+
+REQUIRED_MODULES="
+ libvirt
+ openjdk-8-jre-headless
+"
+
+REQUIRED_BINARIES="
+ ivshmem-client
+ ivshmem-server
+ kvm
+ qemu-img
+ qemu-io
+ qemu-nbd
+ qemu-pr-helper
+ qemu-system-aarch64
+ qemu-system-arm
+ qemu-system-i386
+ qemu-system-x86_64
+ virtfs-proxy-helper
+ qemu-make-debian-root
+ qemu-bridge-helper
+ vhost-user-gpu
+"
+
+REQUIRED_DIRECTORIES="
+ /etc
+ /usr/share/ovmf
+ /usr/share/OVMF
+ /usr/share/qemu
+ /usr/share/seabios
+"
+
+REQUIRED_FILES="
+ /opt/openslx/share/java/runvirt-plugin-qemu.jar
+"
diff --git a/core/modules/qemu/module.conf.debian b/core/modules/qemu/module.conf.debian
deleted file mode 100644
index f4892d81..00000000
--- a/core/modules/qemu/module.conf.debian
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/bash
-REQUIRED_INSTALLED_PACKAGES="
- qemu
- qemu-kvm
- mvn
- openjdk-11-jdk-headless
- openjdk-11-jre
-"
-
-REQUIRED_CONTENT_PACKAGES="
- qemu
- qemu-kvm
- qemu-system-common
- qemu-system-arm
- qemu-system-x86
- qemu-utils
- seabios
- ovmf
- openjdk-11-jre
-"
diff --git a/core/modules/qemu/module.conf.ubuntu b/core/modules/qemu/module.conf.ubuntu
index 651d7a37..5f9bc981 100644
--- a/core/modules/qemu/module.conf.ubuntu
+++ b/core/modules/qemu/module.conf.ubuntu
@@ -1,10 +1,10 @@
#!/bin/bash
+
REQUIRED_INSTALLED_PACKAGES="
qemu
qemu-kvm
- mvn
+ maven
openjdk-8-jdk-headless
- openjdk-8-jre
"
REQUIRED_CONTENT_PACKAGES="
@@ -16,5 +16,4 @@ REQUIRED_CONTENT_PACKAGES="
qemu-utils
seabios
ovmf
- openjdk-8-jre
"