Signed-off-by: Yu Chuan 13186087857@163.com --- providers/my-qemu.sh | 33 +++++++++++++++++++++++++++++++++ providers/qemu/kvm.sh | 13 +++++++------ providers/qemu/pxe.sh | 8 ++++++-- 3 files changed, 46 insertions(+), 8 deletions(-)
diff --git a/providers/my-qemu.sh b/providers/my-qemu.sh index 8845a346e195..7d72a8fea708 100755 --- a/providers/my-qemu.sh +++ b/providers/my-qemu.sh @@ -2,6 +2,39 @@ # SPDX-License-Identifier: MulanPSL-2.0+ # Copyright (c) 2020 Huawei Technologies Co., Ltd. All rights reserved.
+source $CCI_SRC/lib/log.sh + +help() +{ + cat <<-'EOF' + Usage: ./my-qemu.sh [OPTION]... + Ask scheduler service whether there is a job, and start a local vm if there is a job. + Scheduler api: http://$%7BSCHED_HOST%7D:$%7BSCHED_PORT%7D/boot.ipxe/mac/$%7Bmac%7D + + Mandatory arguments to long options are mandatory for short options too. + -h, --help display this help and exit + -d, --debug open the local vm serial port in the current shell + EOF + + exit 0 +} + +while true +do + [ $# -eq 0 ] && break + case "$1" in + -h|--help) + help;; + -d|--debug) + export DEBUG=true;; + *) + die "Unknown param: $1" + help + exit 1;; + esac + shift +done + [[ $tbox_group ]] || tbox_group=vm-2p8g export hostname=$tbox_group.$USER-$$ diff --git a/providers/qemu/kvm.sh b/providers/qemu/kvm.sh index a136c8ff45cb..098e8c2edcc7 100755 --- a/providers/qemu/kvm.sh +++ b/providers/qemu/kvm.sh @@ -115,11 +115,11 @@ set_qemu()
print_message() { - echo SCHED_PORT: $SCHED_PORT - echo kernel: $kernel - echo initrds: $initrds - echo append: $append - echo less $log_file + log_info SCHED_PORT: $SCHED_PORT + log_info kernel: $kernel + log_info initrds: $initrds + log_info append: $append + [ "$DEBUG" == "true" ] || log_info less $log_file sleep 5 } @@ -136,9 +136,10 @@ public_option() -k en-us -no-reboot -nographic - -serial file:${log_file} -monitor null ) + + [ "$DEBUG" == "true" ] || kvm=("${kvm[@]}" -serial file:${log_file}) }
individual_option() diff --git a/providers/qemu/pxe.sh b/providers/qemu/pxe.sh index fa688331964a..ff2c5661d3e4 100755 --- a/providers/qemu/pxe.sh +++ b/providers/qemu/pxe.sh @@ -4,6 +4,8 @@ # - nr_cpu # - memory
+source $CCI_SRC/lib/log.sh + : ${nr_cpu:=1} : ${memory:=1G}
@@ -18,7 +20,7 @@ fi qemu=qemu-system-aarch64 command -v $qemu >/dev/null || qemu=qemu-kvm
-echo less $serial_log +[ "$DEBUG" == "true" ] || log_info less $serial_log
kvm=( $qemu @@ -33,7 +35,9 @@ kvm=( -k en-us -no-reboot -nographic - -serial file:${serial_log} -monitor null ) + +[ "$DEBUG" == "true" ] || kvm=("${kvm[@]}" -serial file:${serial_log}) + "${kvm[@]}"
On Mon, Jan 18, 2021 at 03:41:42PM +0800, Yu Chuan wrote:
Signed-off-by: Yu Chuan 13186087857@163.com
providers/my-qemu.sh | 33 +++++++++++++++++++++++++++++++++ providers/qemu/kvm.sh | 13 +++++++------ providers/qemu/pxe.sh | 8 ++++++-- 3 files changed, 46 insertions(+), 8 deletions(-)
diff --git a/providers/my-qemu.sh b/providers/my-qemu.sh index 8845a346e195..7d72a8fea708 100755 --- a/providers/my-qemu.sh +++ b/providers/my-qemu.sh @@ -2,6 +2,39 @@ # SPDX-License-Identifier: MulanPSL-2.0+ # Copyright (c) 2020 Huawei Technologies Co., Ltd. All rights reserved.
+source $CCI_SRC/lib/log.sh
+help() +{
- cat <<-'EOF'
- Usage: ./my-qemu.sh [OPTION]...
- Ask scheduler service whether there is a job, and start a local vm if there is a job.
- Scheduler api: http://$%7BSCHED_HOST%7D:$%7BSCHED_PORT%7D/boot.ipxe/mac/$%7Bmac%7D
- Mandatory arguments to long options are mandatory for short options too.
-h, --help display this help and exit
-d, --debug open the local vm serial port in the current shell
- EOF
- exit 0
+}
use ruby may be easier
Thanks, Shenwei
+while true +do
- [ $# -eq 0 ] && break
- case "$1" in
-h|--help)
help;;
-d|--debug)
export DEBUG=true;;
*)
die "Unknown param: $1"
help
exit 1;;
- esac
- shift
+done
[[ $tbox_group ]] || tbox_group=vm-2p8g export hostname=$tbox_group.$USER-$$ diff --git a/providers/qemu/kvm.sh b/providers/qemu/kvm.sh index a136c8ff45cb..098e8c2edcc7 100755 --- a/providers/qemu/kvm.sh +++ b/providers/qemu/kvm.sh @@ -115,11 +115,11 @@ set_qemu()
print_message() {
- echo SCHED_PORT: $SCHED_PORT
- echo kernel: $kernel
- echo initrds: $initrds
- echo append: $append
- echo less $log_file
log_info SCHED_PORT: $SCHED_PORT
log_info kernel: $kernel
log_info initrds: $initrds
log_info append: $append
[ "$DEBUG" == "true" ] || log_info less $log_file
sleep 5
} @@ -136,9 +136,10 @@ public_option() -k en-us -no-reboot -nographic
-monitor null )-serial file:${log_file}
- [ "$DEBUG" == "true" ] || kvm=("${kvm[@]}" -serial file:${log_file})
}
individual_option() diff --git a/providers/qemu/pxe.sh b/providers/qemu/pxe.sh index fa688331964a..ff2c5661d3e4 100755 --- a/providers/qemu/pxe.sh +++ b/providers/qemu/pxe.sh @@ -4,6 +4,8 @@ # - nr_cpu # - memory
+source $CCI_SRC/lib/log.sh
: ${nr_cpu:=1} : ${memory:=1G}
@@ -18,7 +20,7 @@ fi qemu=qemu-system-aarch64 command -v $qemu >/dev/null || qemu=qemu-kvm
-echo less $serial_log +[ "$DEBUG" == "true" ] || log_info less $serial_log
kvm=( $qemu @@ -33,7 +35,9 @@ kvm=( -k en-us -no-reboot -nographic
- -serial file:${serial_log} -monitor null
)
+[ "$DEBUG" == "true" ] || kvm=("${kvm[@]}" -serial file:${serial_log})
"${kvm[@]}"
2.23.0