proxy_ping_test
This commit is contained in:
parent
346682eedb
commit
c8610f9ded
19 changed files with 1126 additions and 183 deletions
138
Makefile
138
Makefile
|
@ -9,21 +9,21 @@ ANSIBLE_PLUGINS=/usr/local/lib/python3.11/site-packages/ansible-2.9.22-py3.11.eg
|
|||
# change this to be that hostname
|
||||
LOCALHOST=`cat /etc/hostname`
|
||||
|
||||
BOX_NBD_BASE_DIR=/a/tmp/GentooImgr
|
||||
BOX_NBD_BASE_FILE=gentoo.qcow2
|
||||
BOX_NBD_BASE_QCOW=${BOX_NBD_BASE_DIR}/${BOX_NBD_BASE_FILE}
|
||||
# set this to the name linux_local_group host in hosts.yml
|
||||
LOCAL_HOSTS_NAME=pentoo
|
||||
# set this to the name linux_chroot_group host in hosts.yml
|
||||
YAML_CHROOT_NAME=linuxGentoo
|
||||
# set this to the libvirt name of the linux_libvirt_group host in hosts.yml
|
||||
YAML_BOX_NAME=gentoo1
|
||||
INST_BOX_NAME=gentoo1
|
||||
OVERLAY_HOSTS_NAME=gentoo_overlay-2
|
||||
|
||||
BOX_NBD_BASE_QCOW="`/usr/local/bin/ansible_get_inventory.bash BOX_NBD_BASE_QCOW ${OVERLAY_HOSTS_NAME}`"
|
||||
BOX_NBD_OVERLAY_DIR="`/usr/local/bin/ansible_get_inventory.bash BOX_NBD_OVERLAT_DIR ${OVERLAY_HOSTS_NAME}`"
|
||||
BOX_NBD_OVERLAY_QCOW="`/usr/local/bin/ansible_get_inventory.bash BOX_NBD_OVERLAT_QCOW ${OVERLAY_HOSTS_NAME}`"
|
||||
BOX_NBD_OVERLAY_XML=${BOX_NBD_OVERLAY_DIR}/xml/${OVERLAY_HOSTS_NAME}.xml
|
||||
BOX_NBD_OVERLAY_NAME="`/usr/local/bin/ansible_get_inventory.bash BOX_NBD_OVERLAY_NAME ${OVERLAY_HOSTS_NAME}`"
|
||||
|
||||
#INST_BOX_DIR=/mnt/o/home/root/vms/virsh
|
||||
INST_BOX_DIR=${BOX_NBD_BASE_DIR}/create-vm
|
||||
PWD=/o/var/local/src/play_tox/
|
||||
NETWORK=default
|
||||
NETWORK=Whonix-External
|
||||
VERBOSE=2
|
||||
|
||||
all: install lint build check run test
|
||||
|
@ -66,27 +66,27 @@ build_base:: install
|
|||
[ -f ${BOX_NBD_BASE_QCOW} ]
|
||||
|
||||
build_overlay::
|
||||
@virsh list | grep "${INST_BOX_NAME}.*running" && \
|
||||
virsh destroy ${INST_BOX_NAME} ; true
|
||||
# @virsh list | grep "${INST_BOX_NAME}.*running" && exit 1
|
||||
@virsh list --all | grep ${INST_BOX_NAME} && \
|
||||
virsh undefine ${INST_BOX_NAME} && \
|
||||
@virsh list | grep "${OVERLAY_HOSTS_NAME}.*running" && \
|
||||
virsh destroy ${OVERLAY_HOSTS_NAME} ; true
|
||||
# @virsh list | grep "${OVERLAY_HOSTS_NAME}.*running" && exit 1
|
||||
@virsh list --all | grep ${OVERLAY_HOSTS_NAME} && \
|
||||
virsh undefine ${OVERLAY_HOSTS_NAME} && \
|
||||
rm -f \
|
||||
${INST_BOX_DIR}/xml/${INST_BOX_NAME}.xml \
|
||||
${INST_BOX_DIR}/images/${INST_BOX_NAME}.img ; true
|
||||
${BOX_NBD_OVERLAY_XML} \
|
||||
${BOX_NBD_OVERLAY_QCOW} ; true
|
||||
# /a/tmp/GentooImgr/create-vm/xml/gentoo1.xml
|
||||
# ! virsh list --all | grep "${INST_BOX_NAME}" && exit 2
|
||||
[ ! -f ${INST_BOX_DIR}/images/${INST_BOX_NAME}.img ] || { \
|
||||
# ! virsh list --all | grep "${OVERLAY_HOSTS_NAME}" && exit 2
|
||||
[ ! -f ${BOX_NBD_OVERLAY_QCOW} ] || { \
|
||||
echo WARN delete this file to continue; \
|
||||
echo rm -f ${INST_BOX_DIR}/images/${INST_BOX_NAME}.img ; \
|
||||
echo rm -f ${BOX_NBD_OVERLAY_QCOW} ; \
|
||||
exit 3 ; }
|
||||
[ ! -f ${INST_BOX_DIR}/xml/${INST_BOX_NAME}.xml ] || { \
|
||||
[ ! -f ${BOX_NBD_OVERLAY_XML} ] || { \
|
||||
echo WARN delete this file to continue ; \
|
||||
echo rm -f ${INST_BOX_DIR}/xml/${INST_BOX_NAME}.xml ; \
|
||||
echo rm -f ${BOX_NBD_OVERLAY_XML} ; \
|
||||
exit 4 ; }
|
||||
PLAY_ANSIBLE_SRC=${PWD} bash bin/toxcore_build_overlay_qcow.bash
|
||||
[ -f ${INST_BOX_DIR}/xml/${INST_BOX_NAME}.xml ]
|
||||
xmllint -noout ${INST_BOX_DIR}/xml/${INST_BOX_NAME}.xml
|
||||
[ -f ${BOX_NBD_OVERLAY_XML} ]
|
||||
xmllint -noout ${BOX_NBD_OVERLAY_XML}
|
||||
|
||||
check::
|
||||
grep -n 'shell: *$$' roles/*/tasks/*.yml && { echo ERROR: "shell: in .yml" ; false ; } || true
|
||||
|
@ -96,7 +96,7 @@ check::
|
|||
$(MAKE) -$(MAKEFLAGS) check_base
|
||||
@[ -d /mnt/gentoo/lost+found ] && \
|
||||
sudo $(MAKE) -$(MAKEFLAGS) $@_chroot
|
||||
@[ -f ${INST_BOX_DIR}/images/${INST_BOX_NAME}.img ] && \
|
||||
@[ -f ${BOX_NBD_OVERLAY_QCOW} ] && \
|
||||
sudo $(MAKE) -$(MAKEFLAGS) $@_overlay
|
||||
|
||||
check_localhost::
|
||||
|
@ -106,9 +106,9 @@ check_localhost::
|
|||
|
||||
check_base::
|
||||
ls ${BOX_NBD_BASE_QCOW}
|
||||
ls ${INST_BOX_DIR}/images/${INST_BOX_NAME}.img
|
||||
ls ${INST_BOX_DIR}/xml/${INST_BOX_NAME}.xml
|
||||
ps axf | grep 'qemu-system-x86_64 -name guest='${INST_BOX_NAME} ; \
|
||||
ls ${BOX_NBD_OVERLAY_QCOW}
|
||||
ls ${BOX_NBD_OVERLAY_XML}
|
||||
ps axf | grep 'qemu-system-x86_64 -name guest='${OVERLAY_HOSTS_NAME} ; \
|
||||
true
|
||||
|
||||
check_chroot::
|
||||
|
@ -120,18 +120,19 @@ check_chroot::
|
|||
$(ROLES) > .$@-${YAML_CHROOT_NAME}-${LOCALHOST} 2>&1
|
||||
|
||||
check_overlay::
|
||||
sudo /var/local/sbin/hostvms_libvirt_test_ga.bash ${INST_BOX_NAME} ls /
|
||||
sudo /usr/local/sbin/toxcore_libvirt_test_ga.bash ${OVERLAY_HOSTS_NAME} ls /
|
||||
sudo /usr/local/sbin/toxcore_libvirt_test_ga.bash ${OVERLAY_HOSTS_NAME}
|
||||
# domain-*-gentoo/org.qemu.guest_agent.0 || true
|
||||
sudo virsh list | grep -q ${OVERLAY_HOSTS_NAME} || exit 0
|
||||
sudo find /var/lib/libvirt/qemu/channel/target/ | \
|
||||
grep org.qemu.guest_agent.0
|
||||
sudo find /var/lib/libvirt/qemu/channel/target/ -type s | \
|
||||
grep ${INST_BOX_NAME}
|
||||
ansible -c libvirt_qemu -l ${YAML_BOX_NAME} -i hosts.yml \
|
||||
-m setup -vvv ${YAML_BOX_NAME}
|
||||
sudo virsh list | grep -q ${INST_BOX_NAME} || exit 0
|
||||
sudo sh ansible_local.bash --diff -i hosts.yml -l ${INST_BOX_NAME} \
|
||||
grep ${OVERLAY_HOSTS_NAME}
|
||||
ansible -c libvirt_qemu -l ${OVERLAY_HOSTS_NAME} -i hosts.yml \
|
||||
-m setup -vvv ${OVERLAY_HOSTS_NAME}
|
||||
sudo sh ansible_local.bash --diff -i hosts.yml -l ${OVERLAY_HOSTS_NAME} \
|
||||
--check -c libvirt_qemu --verbose ${VERBOSE} \
|
||||
$(ROLES) > .$@-${INST_BOX_NAME}-${LOCALHOST} 2>&1
|
||||
$(ROLES) > .$@-${OVERLAY_HOSTS_NAME}-${LOCALHOST} 2>&1
|
||||
|
||||
# Edit hosts.yml and customize this target if you are on a Debianish
|
||||
devuan::
|
||||
|
@ -150,8 +151,8 @@ run::
|
|||
$(MAKE) -$(MAKEFLAGS) $@_local
|
||||
@[ -d /mnt/gentoo/lost+found ] && \
|
||||
sudo $(MAKE) -$(MAKEFLAGS) $@_chroot
|
||||
@[ ! -f ${INST_BOX_DIR}/images/${INST_BOX_NAME}.img ] && \
|
||||
sudo $(MAKE) -$(MAKEFLAGS) $@_libvirt
|
||||
@[ ! -f ${BOX_NBD_OVERLAY_QCOW} ] && \
|
||||
sudo $(MAKE) -$(MAKEFLAGS) $@_overlay
|
||||
|
||||
run_local:: lint
|
||||
A=`grep nbd /proc/partitions | wc -l`
|
||||
|
@ -174,26 +175,35 @@ run_chroot::
|
|||
-c chroot --verbose ${VERBOSE} $(ROLES) \
|
||||
> .$@-${YAML_CHROOT_NAME}-${LOCALHOST} 2>&1
|
||||
|
||||
run_libvirt::
|
||||
[ -f ${INST_BOX_DIR}/images/${INST_BOX_NAME}.img ]
|
||||
install_libvirt::
|
||||
@virsh net-list | grep "${NETWORK}.*active" || \
|
||||
sudo virsh net-start "${NETWORK}"
|
||||
@virsh list | grep ${INST_BOX_NAME} && \
|
||||
virsh define ${INST_BOX_DIR}/xml/${INST_BOX_NAME}.xml
|
||||
@virsh list | grep "${INST_BOX_NAME}.*running" || \
|
||||
virsh start ${INST_BOX_NAME}
|
||||
sh ansible_local.bash --diff -i hosts.yml -l ${INST_BOX_NAME} \
|
||||
sudo virsh net-start "${NETWORK}" || { \
|
||||
echo WARN: error virsh net-start "${NETWORK}" ; }
|
||||
[ -f ${BOX_NBD_OVERLAY_XML} ]
|
||||
# xmlstarlet sel -t -v
|
||||
A=$(grep 'source file=' ${BOX_NBD_OVERLAY_XML} | sed -e 's@.*file=.@@' -e "s@'.*@@" )
|
||||
[ -n "${A}" ] && [ -f "${A}" ]
|
||||
@virsh list --all | grep ${OVERLAY_HOSTS_NAME} || \
|
||||
virsh define ${BOX_NBD_OVERLAY_XML}
|
||||
@virsh list | grep "${OVERLAY_HOSTS_NAME}.*running" || \
|
||||
{ virsh start ${OVERLAY_HOSTS_NAME} ; sleep 40 ; }
|
||||
|
||||
run_overlay:: install_libvirt
|
||||
[ -f ${BOX_NBD_OVERLAY_QCOW} ] || { \
|
||||
echo WARN ${BOX_NBD_OVERLAY_QCOW} doesnt exist - make build_overlay ; \
|
||||
exit 1 ; }
|
||||
sh ansible_local.bash --diff -i hosts.yml -l ${OVERLAY_HOSTS_NAME} \
|
||||
-c libvirt_qemu --verbose ${VERBOSE} $(ROLES) \
|
||||
> .run-${INST_BOX_NAME}-${LOCALHOST} 2>&1
|
||||
> .run-${OVERLAY_HOSTS_NAME}-${LOCALHOST} 2>&1
|
||||
|
||||
# hourly is quick tests, weekly is medium tests, monthly is long tests
|
||||
weekly:: test
|
||||
test::
|
||||
# bash .pyanal.sh &
|
||||
@[ -d /mnt/gentoo/lost+found ] && \
|
||||
sudo $(MAKE) -$(MAKEFLAGS) $@_local
|
||||
@[ -f ${INST_BOX_DIR}/images/${INST_BOX_NAME}.img ] && \
|
||||
sudo $(MAKE) -$(MAKEFLAGS) $@_libvert
|
||||
|
||||
@[ -f ${BOX_NBD_OVERLAY_QCOW} ] && \
|
||||
sudo $(MAKE) -$(MAKEFLAGS) $@_overlay
|
||||
test_local::
|
||||
bash .pyanal.sh &
|
||||
sudo sh ansible_local.bash --diff -i ${PWD}/hosts.yml -l ${LOCALHOST} \
|
||||
|
@ -201,15 +211,39 @@ test_local::
|
|||
--verbose ${VERBOSE} -t weekly \
|
||||
$(ROLES) > .$@-${LOCALHOST} 2>&1
|
||||
|
||||
test_libvirt::
|
||||
# bash .pyanal.sh &
|
||||
# check if ${INST_BOX_NAME} is running
|
||||
! sudo virsh list | grep -q ${INST_BOX_NAME} && exit 0
|
||||
test_overlay:: install_libvirt
|
||||
! sudo virsh list | grep -q ${OVERLAY_HOSTS_NAME} && exit 0
|
||||
sudo sh ansible_local.bash --diff -i ${PWD}/hosts.yml \
|
||||
-l ${INST_BOX_NAME} -c libvirt_qemu \
|
||||
-l ${OVERLAY_HOSTS_NAME} -c libvirt_qemu \
|
||||
--verbose ${VERBOSE} -t weekly \
|
||||
$(ROLES) > .$@-${LOCALHOST} 2>&1
|
||||
|
||||
# this is a special test target to test a copy of the base qcow2
|
||||
VM_HOSTS_NAME=gentoo_vm-2
|
||||
VM_XML=/etc/libvirt/qemu/${VM_HOSTS_NAME}.xml
|
||||
A="`grep 'source file=.*qcow2' ${VM_XML} | sed -e 's@.*file=.@@' -e "s@'.*@@"`"
|
||||
install_vm::
|
||||
@virsh net-list | grep "${NETWORK}.*active" || \
|
||||
sudo virsh net-start "${NETWORK}" || { \
|
||||
echo WARN: error virsh net-start "${NETWORK}" ; }
|
||||
[ -f ${VM_XML} ]
|
||||
@virsh list --all | grep ${VM_HOSTS_NAME} || { \
|
||||
echo ERROR virsh define ${VM_XML} ; exit 8 ; }
|
||||
# xmlstarlet sel -t -v
|
||||
[ -n "${A}" ] && [ -f "${A}" ]
|
||||
@virsh list | grep "${VM_HOSTS_NAME}.*running" || \
|
||||
{ virsh start ${VM_HOSTS_NAME} ; sleep 40 ; }
|
||||
|
||||
test_vm:: install_vm
|
||||
sudo sh ansible_local.bash --diff -i ${PWD}/hosts.yml \
|
||||
-l ${VM_HOSTS_NAME} -c libvirt_qemu \
|
||||
--check --verbose ${VERBOSE} -t daily \
|
||||
$(ROLES) > .$@-${LOCALHOST} 2>&1
|
||||
sudo sh ansible_local.bash --diff -i ${PWD}/hosts.yml \
|
||||
-l ${VM_HOSTS_NAME} -c libvirt_qemu \
|
||||
--verbose ${VERBOSE} -t daily \
|
||||
$(ROLES) > .$@-${LOCALHOST} 2>&1
|
||||
|
||||
veryclean:: clean
|
||||
rm -f .run* .check*
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue