blob: 211879496cfa18a67eb2aac11d601816ed66bf07 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
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 -c /etc/kvmd/kvmd.yaml \
"
# =====
all:
cat Makefile
tox: _testenv
- docker run --rm \
--volume `pwd`:/kvmd \
-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-no-cache:
make run TESTENV_OPTS=--no-cache
shell:
make run TESTENV_CMD=/bin/bash
regen:
python3 genmap.py
release:
make clean
make tox
make clean
make push
make bump
make push
make clean
bump:
bumpversion minor
push:
git push
git push --tags
clean:
rm -rf build site dist pkg src *.egg-info kvmd-*.tar.gz
find kvmd -name __pycache__ | xargs rm -rf
rm -rf __pycache__
make -C hid clean
clean-all: _testenv clean
- docker run --rm \
--volume `pwd`:/kvmd \
-it $(TESTENV_IMAGE) bash -c "cd kvmd && rm -rf testenv/{.tox,.mypy_cache}"
_testenv:
docker build $(TESTENV_OPTS) --rm --tag $(TESTENV_IMAGE) -f testenv/Dockerfile .
|