mirror of
https://github.com/mofeng-git/One-KVM.git
synced 2025-12-12 17:20:30 +08:00
improved testenv
This commit is contained in:
parent
d2a6fa78c7
commit
c8cdcaf512
3
.dockerignore
Normal file
3
.dockerignore
Normal file
@ -0,0 +1,3 @@
|
||||
/testenv/.tox/
|
||||
/testenv/.mypy_cache/
|
||||
/.git/
|
||||
66
Makefile
66
Makefile
@ -2,18 +2,7 @@ TESTENV_IMAGE ?= kvmd-testenv
|
||||
TESTENV_HID ?= /dev/ttyS10
|
||||
TESTENV_VIDEO ?= /dev/video0
|
||||
TESTENV_LOOP ?= /dev/loop7
|
||||
TESTENV_CMD ?= /bin/bash -c " \
|
||||
(socat PTY,link=$(TESTENV_HID) PTY,link=/dev/ttyS11 &) \
|
||||
&& cp -r /usr/share/kvmd/configs.default/nginx/* /etc/nginx \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*.yaml /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/htpasswd /etc/kvmd \
|
||||
&& cp /testenv/kvmd.yaml /etc/kvmd \
|
||||
&& nginx -c /etc/nginx/nginx.conf \
|
||||
&& ln -s $(TESTENV_VIDEO) /dev/kvmd-video \
|
||||
&& (losetup -d /dev/kvmd-msd || true) \
|
||||
&& losetup /dev/kvmd-msd /root/loop.img \
|
||||
&& python -m kvmd.apps.kvmd \
|
||||
"
|
||||
TESTENV_CMD ?= /bin/bash
|
||||
|
||||
|
||||
# =====
|
||||
@ -27,29 +16,16 @@ tox: _testenv
|
||||
-it $(TESTENV_IMAGE) bash -c "cd kvmd && tox -c testenv/tox.ini"
|
||||
|
||||
|
||||
run: _testenv
|
||||
sudo modprobe loop
|
||||
- docker run --rm \
|
||||
--volume `pwd`/kvmd:/kvmd:ro \
|
||||
--volume `pwd`/web:/usr/share/kvmd/web:ro \
|
||||
--volume `pwd`/extras:/usr/share/kvmd/extras:ro \
|
||||
--volume `pwd`/configs:/usr/share/kvmd/configs.default:ro \
|
||||
--volume `pwd`/testenv:/testenv:ro \
|
||||
--device $(TESTENV_LOOP):/dev/kvmd-msd \
|
||||
--device $(TESTENV_VIDEO):$(TESTENV_VIDEO) \
|
||||
--publish 8080:80/tcp \
|
||||
--publish 8081:8081/tcp \
|
||||
--publish 8082:8082/tcp \
|
||||
-it $(TESTENV_IMAGE) $(TESTENV_CMD)
|
||||
- docker run --rm --device=$(TESTENV_LOOP):/dev/kvmd-msd -it $(TESTENV_IMAGE) losetup -d /dev/kvmd-msd
|
||||
|
||||
|
||||
run:
|
||||
make _run TESTENV_CMD="python -m kvmd.apps.kvmd"
|
||||
run-no-cache:
|
||||
make run TESTENV_OPTS=--no-cache
|
||||
make _run TESTENV_CMD="python -m kvmd.apps.kvmd" TESTENV_OPTS=--no-cache
|
||||
|
||||
|
||||
shell:
|
||||
make run TESTENV_CMD=/bin/bash
|
||||
make _run
|
||||
shell-no-cache:
|
||||
make _run TESTENV_OPTS=--no-cache
|
||||
|
||||
|
||||
regen:
|
||||
@ -89,3 +65,31 @@ clean-all: _testenv clean
|
||||
|
||||
_testenv:
|
||||
docker build $(TESTENV_OPTS) --rm --tag $(TESTENV_IMAGE) -f testenv/Dockerfile .
|
||||
|
||||
|
||||
_run: _testenv
|
||||
sudo modprobe loop
|
||||
- docker run --rm \
|
||||
--volume `pwd`/kvmd:/kvmd:ro \
|
||||
--volume `pwd`/web:/usr/share/kvmd/web:ro \
|
||||
--volume `pwd`/extras:/usr/share/kvmd/extras:ro \
|
||||
--volume `pwd`/configs:/usr/share/kvmd/configs.default:ro \
|
||||
--volume `pwd`/testenv:/testenv:ro \
|
||||
--device $(TESTENV_LOOP):/dev/kvmd-msd \
|
||||
--device $(TESTENV_VIDEO):$(TESTENV_VIDEO) \
|
||||
--publish 8080:80/tcp \
|
||||
--publish 8081:8081/tcp \
|
||||
--publish 8082:8082/tcp \
|
||||
-it $(TESTENV_IMAGE) /bin/bash -c " \
|
||||
(socat PTY,link=$(TESTENV_HID) PTY,link=/dev/ttyS11 &) \
|
||||
&& cp -r /usr/share/kvmd/configs.default/nginx/* /etc/nginx \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*.yaml /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/htpasswd /etc/kvmd \
|
||||
&& cp /testenv/kvmd.yaml /etc/kvmd \
|
||||
&& nginx -c /etc/nginx/nginx.conf \
|
||||
&& ln -s $(TESTENV_VIDEO) /dev/kvmd-video \
|
||||
&& (losetup -d /dev/kvmd-msd || true) \
|
||||
&& losetup /dev/kvmd-msd /root/loop.img \
|
||||
&& $(TESTENV_CMD) \
|
||||
"
|
||||
- docker run --rm --device=$(TESTENV_LOOP):/dev/kvmd-msd -it $(TESTENV_IMAGE) losetup -d /dev/kvmd-msd
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user