summaryrefslogtreecommitdiffstats
path: root/testModule
diff options
context:
space:
mode:
Diffstat (limited to 'testModule')
-rw-r--r--testModule/module-setup.sh8
-rw-r--r--testModule/mount-dnbd3.sh21
-rw-r--r--testModule/parse-ip.sh11
-rwxr-xr-xtestModule/process-name-wrapper.sh5
-rwxr-xr-xtestModule/test-service.sh6
-rwxr-xr-xtestModule/wrapbin0 -> 7752 bytes
-rw-r--r--testModule/wrap.c46
7 files changed, 55 insertions, 42 deletions
diff --git a/testModule/module-setup.sh b/testModule/module-setup.sh
index ae30de9f..d0086300 100644
--- a/testModule/module-setup.sh
+++ b/testModule/module-setup.sh
@@ -10,7 +10,7 @@ depends() {
}
installkernel() {
- instmods dnbd3 nbd ext4 \
+ instmods ext4 mbcache jbd2 \
ip6t_rpfilter ip6t_REJEiCT ipt_REJECT xt_conntrack ebtable_nat \
ebtable_broute bridge stp llc ebtable_filter ebtables ip6table_nat \
nf_conntrack_ipv6 nf_defrag_ipv6 nf_nat_ipv6 ip6table_mangle \
@@ -20,7 +20,7 @@ installkernel() {
iptable_filter ip_tables vboxsf sg ppdev snd_intel8x0 snd_ac97_codec \
ac97_bus serio_raw snd_seq snd_seq_device i2c_piix4 pcspkr snd_pcm \
parport_pc parport snd_page_alloc snd_timer snd video soundcore e1000 \
- mperf xfs libcrc32c sd_mod crc_t10dif crct10dif_common sr_mod cdrom \
+ mperf libcrc32c sd_mod crc_t10dif crct10dif_common sr_mod cdrom \
ata_generic pata_acpi ahci libahci vboxvideo drm i2c_core ata_piix \
libata vboxguest dm_mirror dm_region_hash dm_log dm_mod
}
@@ -28,6 +28,8 @@ installkernel() {
install() {
# Loads globally needed useful functions or fixes some native dracut ones.
inst "$moddir/library.sh" /usr/lib/test-library.sh
+ inst "$moddir/process-name-wrapper.sh" /usr/bin/process-name-wrapper
+ inst "$moddir/wrap" /usr/bin/wrap
inst "$moddir/dnbd3-client" /usr/bin/dnbd3-client
inst "$moddir/dnbd3.ko" /usr/lib/modules/3.10.0-229.1.2.el7.x86_64/extra/dnbd3.ko
inst "$moddir/nbd.ko" /usr/lib/modules/3.10.0-229.1.2.el7.x86_64/extra/nbd.ko
@@ -37,6 +39,6 @@ install() {
inst_hook pre-mount 100 "$moddir/mount-dnbd3.sh"
inst_simple "$moddir/busybox" /usr/bin/busybox
#inst_hook pre-mount 20 "$moddir/setup_network.sh"
- inst_multiple lsblk ping ip ifconfig sshd htop dhclient tail head cat vim touch sed lsmod insmod qemu-img qemu-nbd sleep
+ inst_multiple lsblk ping ip ifconfig sshd htop dhclient tail head cat vim touch sed lsmod insmod qemu-img qemu-nbd sleep route wget
return 0
}
diff --git a/testModule/mount-dnbd3.sh b/testModule/mount-dnbd3.sh
index 9629a153..c8b7f267 100644
--- a/testModule/mount-dnbd3.sh
+++ b/testModule/mount-dnbd3.sh
@@ -1,15 +1,14 @@
-insmod /usr/lib/modules/3.10.0-229.1.2.el7.x86_64/extra/dnbd3.ko
+# TODO
+warn '............JAU.............'
+warn '............JAU.............'
-dnbd3-client --daemon &
-sleep 2
-local dnbd3_device_node="$(dnbd3-client -h 132.230.4.1 -i stage4/torben/test -r 1)"
+insmod /usr/lib/modules/3.10.0-229.1.2.el7.x86_64/extra/dnbd3.ko
+#dnbd3-client --daemon &
+#sleep 3
+local dnbd3_device_node="$(dnbd3-client -h 132.230.4.1 -i stage4/torben/test -r 1 -d /dev/dnbd0)"
+dnbd3_device_node='/dev/dnbd0'
qemu-img create -f qcow2 -o backing_file="$dnbd3_device_node",backing_fmt=qcow2 /tmp/test.qcow2
insmod /usr/lib/modules/3.10.0-229.1.2.el7.x86_64/extra/nbd.ko
-qemu-nbd -c /dev/nbd0 /tmp/test.qcow2
-mkdir /mnt
-mount /dev/nbd0 /mnt
-
-warn '............JAU.............'
-warn '............JAU.............'
-warn '............JAU.............'
+wrap qemu-nbd -c /dev/nbd0 /tmp/test.qcow2
+#mount /dev/nbd0 /sysroot
diff --git a/testModule/parse-ip.sh b/testModule/parse-ip.sh
index 3349787b..5731242f 100644
--- a/testModule/parse-ip.sh
+++ b/testModule/parse-ip.sh
@@ -1,12 +1,11 @@
# Converts ip configuration format given by the pxe pre boot provider to a
# dracut compatible static ip configuration.
-source /usr/lib/test-library.sh
-
# TODO
warn 'LOAD ...........................'
warn 'LOAD ...........................'
-warn 'LOAD ...........................'
+
+source /usr/lib/test-library.sh
for parameter in $(getargs ip=); do
local temp="$parameter:"
@@ -22,8 +21,10 @@ for parameter in $(getargs ip=); do
[ -n "$4" ] && net_mask=$4
warn "PXE given net configuration: ip: $ip server_ip: $server_ip gateway_ip: $gateway_ip net_mask: $net_mask"
- # TODO
- replace_cmd ip "$ip::$gateway_ip:$net_mask:dracut_test_client:enp0s3:none"
+ local final_dracut_ip_config="$ip::$gateway_ip:$net_mask:dracut_test_client:enp0s3:none"
+ warn "Final dracut ip config: $final_dracut_ip_config"
+ #final_dracut_ip_config="enp0s3:dhcp"
+ replace_cmd ip "$final_dracut_ip_config"
done
# NOTE: Doesn't work since dracuts needed version of mount doesn't support
diff --git a/testModule/process-name-wrapper.sh b/testModule/process-name-wrapper.sh
new file mode 100755
index 00000000..36712e51
--- /dev/null
+++ b/testModule/process-name-wrapper.sh
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+programPath="$(echo "$0" | sed --regexp-extended 's/^(.*)@([^/]+)$/\1\2/')"
+echo "Run \"$programPath\" with arguments \"${@}\"." && \
+exec "$programPath" "$@"
diff --git a/testModule/test-service.sh b/testModule/test-service.sh
new file mode 100755
index 00000000..cc81da9e
--- /dev/null
+++ b/testModule/test-service.sh
@@ -0,0 +1,6 @@
+#!/usr/bin/bash
+
+while true; do
+ wget http://10.126.2.184:8080
+ sleep 2
+done
diff --git a/testModule/wrap b/testModule/wrap
new file mode 100755
index 00000000..bb5590d3
--- /dev/null
+++ b/testModule/wrap
Binary files differ
diff --git a/testModule/wrap.c b/testModule/wrap.c
index 0f118235..51ca2d8c 100644
--- a/testModule/wrap.c
+++ b/testModule/wrap.c
@@ -4,38 +4,38 @@
#include <stdio.h>
void arg_print(int argc, char *argv[]) {
- int i = 0;
- int j = 0;
- for (i = 0; i < argc; i ++) {
- j = 0;
- while(argv[i][j] != '\0')
- printf("%c", argv[i][j++]);
-
- printf(" ");
- }
- printf("\n");
+ int i = 0;
+ int j = 0;
+ for (i = 0; i < argc; i ++) {
+ j = 0;
+ while(argv[i][j] != '\0')
+ printf("%c", argv[i][j++]);
+
+ printf(" ");
+ }
+ printf("\n");
}
int main(int argc, char *argv[]) {
- arg_print(argc, argv);
+ arg_print(argc, argv);
int count;
- char **copy = malloc(sizeof(char *) * (argc-1));
- for ( count = 0; count < argc - 1; count++ ) {
- copy[count] = strdup(argv[count + 1]);
- }
+ char **copy = malloc(sizeof(char *) * (argc-1));
+ for ( count = 0; count < argc - 1; count++ ) {
+ copy[count] = strdup(argv[count + 1]);
+ }
- arg_print(argc - 1, copy);
+ arg_print(argc - 1, copy);
- copy[0][0] = '@';
- argv[0][0] = '@';
+ copy[0][0] = '@';
+ argv[0][0] = '@';
- arg_print(argc - 1, copy);
+ arg_print(argc - 1, copy);
- if (-1 == execvp(argv[1], copy)) {
- perror("child process execve failed [%m]");
- return -1;
- }
+ if (-1 == execvp(argv[1], copy)) {
+ perror("child process execve failed [%m]");
+ return -1;
+ }
}