mirror of
https://github.com/mofeng-git/One-KVM.git
synced 2025-12-12 01:00:29 +08:00
refactoring
This commit is contained in:
parent
1ac968e924
commit
f0ae427d8e
@ -6,7 +6,7 @@ parse = (?P<major>\d+)\.(?P<minor>\d+)(\.(?P<patch>\d+)(\-(?P<release>[a-z]+))?)
|
||||
serialize =
|
||||
{major}.{minor}
|
||||
|
||||
[bumpversion:file:kvmd/server.py]
|
||||
[bumpversion:file:kvmd/__init__.py]
|
||||
search = __version__ = "{current_version}"
|
||||
replace = __version__ = "{new_version}"
|
||||
|
||||
|
||||
2
Makefile
2
Makefile
@ -10,7 +10,7 @@ TESTENV_CMD ?= /bin/bash -c " \
|
||||
&& ln -s $(TESTENV_VIDEO) /dev/kvmd-streamer \
|
||||
&& (losetup -d /dev/kvmd-msd || true) \
|
||||
&& losetup /dev/kvmd-msd /root/loop.img \
|
||||
&& python -m kvmd -c testenv/kvmd.conf \
|
||||
&& python -m kvmd.apps.kvmd -c testenv/kvmd.conf \
|
||||
"
|
||||
|
||||
|
||||
|
||||
@ -1,85 +1 @@
|
||||
import asyncio
|
||||
|
||||
from .application import init
|
||||
from .logging import get_logger
|
||||
from .logging import Log
|
||||
|
||||
from .hid import Hid
|
||||
from .atx import Atx
|
||||
from .msd import MassStorageDevice
|
||||
from .streamer import Streamer
|
||||
from .server import Server
|
||||
|
||||
from . import gpio
|
||||
|
||||
|
||||
# =====
|
||||
from .server import __version__ # noqa: F401
|
||||
|
||||
|
||||
# =====
|
||||
def main() -> None:
|
||||
config = init()
|
||||
with gpio.bcm():
|
||||
loop = asyncio.get_event_loop()
|
||||
|
||||
log = Log(
|
||||
services=list(config["log"]["services"]),
|
||||
loop=loop,
|
||||
)
|
||||
|
||||
hid = Hid(
|
||||
reset=int(config["hid"]["pinout"]["reset"]),
|
||||
device_path=str(config["hid"]["device"]),
|
||||
speed=int(config["hid"]["speed"]),
|
||||
reset_delay=float(config["hid"]["reset_delay"]),
|
||||
)
|
||||
|
||||
atx = Atx(
|
||||
power_led=int(config["atx"]["pinout"]["power_led"]),
|
||||
hdd_led=int(config["atx"]["pinout"]["hdd_led"]),
|
||||
power_switch=int(config["atx"]["pinout"]["power_switch"]),
|
||||
reset_switch=int(config["atx"]["pinout"]["reset_switch"]),
|
||||
click_delay=float(config["atx"]["click_delay"]),
|
||||
long_click_delay=float(config["atx"]["long_click_delay"]),
|
||||
)
|
||||
|
||||
msd = MassStorageDevice(
|
||||
target=int(config["msd"]["pinout"]["target"]),
|
||||
reset=int(config["msd"]["pinout"]["reset"]),
|
||||
device_path=str(config["msd"]["device"]),
|
||||
init_delay=float(config["msd"]["init_delay"]),
|
||||
reset_delay=float(config["msd"]["reset_delay"]),
|
||||
write_meta=bool(config["msd"]["write_meta"]),
|
||||
loop=loop,
|
||||
)
|
||||
|
||||
streamer = Streamer(
|
||||
cap_power=int(config["streamer"]["pinout"]["cap"]),
|
||||
conv_power=int(config["streamer"]["pinout"]["conv"]),
|
||||
sync_delay=float(config["streamer"]["sync_delay"]),
|
||||
init_delay=float(config["streamer"]["init_delay"]),
|
||||
init_restart_after=float(config["streamer"]["init_restart_after"]),
|
||||
quality=int(config["streamer"]["quality"]),
|
||||
soft_fps=int(config["streamer"]["soft_fps"]),
|
||||
cmd=list(map(str, config["streamer"]["cmd"])),
|
||||
loop=loop,
|
||||
)
|
||||
|
||||
Server(
|
||||
log=log,
|
||||
hid=hid,
|
||||
atx=atx,
|
||||
msd=msd,
|
||||
streamer=streamer,
|
||||
heartbeat=float(config["server"]["heartbeat"]),
|
||||
atx_state_poll=float(config["atx"]["state_poll"]),
|
||||
streamer_shutdown_delay=float(config["streamer"]["shutdown_delay"]),
|
||||
msd_chunk_size=int(config["msd"]["chunk_size"]),
|
||||
loop=loop,
|
||||
).run(
|
||||
host=str(config["server"]["host"]),
|
||||
port=int(config["server"]["port"]),
|
||||
)
|
||||
|
||||
get_logger().info("Bye-bye")
|
||||
__version__ = "0.86"
|
||||
|
||||
81
kvmd/apps/kvmd/__init__.py
Normal file
81
kvmd/apps/kvmd/__init__.py
Normal file
@ -0,0 +1,81 @@
|
||||
import asyncio
|
||||
|
||||
from ...application import init
|
||||
from ...logging import get_logger
|
||||
from ...logging import Log
|
||||
|
||||
from ... import gpio
|
||||
|
||||
from .hid import Hid
|
||||
from .atx import Atx
|
||||
from .msd import MassStorageDevice
|
||||
from .streamer import Streamer
|
||||
from .server import Server
|
||||
|
||||
|
||||
# =====
|
||||
def main() -> None:
|
||||
config = init()
|
||||
with gpio.bcm():
|
||||
loop = asyncio.get_event_loop()
|
||||
|
||||
log = Log(
|
||||
services=list(config["log"]["services"]),
|
||||
loop=loop,
|
||||
)
|
||||
|
||||
hid = Hid(
|
||||
reset=int(config["hid"]["pinout"]["reset"]),
|
||||
device_path=str(config["hid"]["device"]),
|
||||
speed=int(config["hid"]["speed"]),
|
||||
reset_delay=float(config["hid"]["reset_delay"]),
|
||||
)
|
||||
|
||||
atx = Atx(
|
||||
power_led=int(config["atx"]["pinout"]["power_led"]),
|
||||
hdd_led=int(config["atx"]["pinout"]["hdd_led"]),
|
||||
power_switch=int(config["atx"]["pinout"]["power_switch"]),
|
||||
reset_switch=int(config["atx"]["pinout"]["reset_switch"]),
|
||||
click_delay=float(config["atx"]["click_delay"]),
|
||||
long_click_delay=float(config["atx"]["long_click_delay"]),
|
||||
)
|
||||
|
||||
msd = MassStorageDevice(
|
||||
target=int(config["msd"]["pinout"]["target"]),
|
||||
reset=int(config["msd"]["pinout"]["reset"]),
|
||||
device_path=str(config["msd"]["device"]),
|
||||
init_delay=float(config["msd"]["init_delay"]),
|
||||
reset_delay=float(config["msd"]["reset_delay"]),
|
||||
write_meta=bool(config["msd"]["write_meta"]),
|
||||
loop=loop,
|
||||
)
|
||||
|
||||
streamer = Streamer(
|
||||
cap_power=int(config["streamer"]["pinout"]["cap"]),
|
||||
conv_power=int(config["streamer"]["pinout"]["conv"]),
|
||||
sync_delay=float(config["streamer"]["sync_delay"]),
|
||||
init_delay=float(config["streamer"]["init_delay"]),
|
||||
init_restart_after=float(config["streamer"]["init_restart_after"]),
|
||||
quality=int(config["streamer"]["quality"]),
|
||||
soft_fps=int(config["streamer"]["soft_fps"]),
|
||||
cmd=list(map(str, config["streamer"]["cmd"])),
|
||||
loop=loop,
|
||||
)
|
||||
|
||||
Server(
|
||||
log=log,
|
||||
hid=hid,
|
||||
atx=atx,
|
||||
msd=msd,
|
||||
streamer=streamer,
|
||||
heartbeat=float(config["server"]["heartbeat"]),
|
||||
atx_state_poll=float(config["atx"]["state_poll"]),
|
||||
streamer_shutdown_delay=float(config["streamer"]["shutdown_delay"]),
|
||||
msd_chunk_size=int(config["msd"]["chunk_size"]),
|
||||
loop=loop,
|
||||
).run(
|
||||
host=str(config["server"]["host"]),
|
||||
port=int(config["server"]["port"]),
|
||||
)
|
||||
|
||||
get_logger().info("Bye-bye")
|
||||
@ -2,10 +2,10 @@ import asyncio
|
||||
|
||||
from typing import Dict
|
||||
|
||||
from .logging import get_logger
|
||||
from ...logging import get_logger
|
||||
|
||||
from . import aioregion
|
||||
from . import gpio
|
||||
from ... import aioregion
|
||||
from ... import gpio
|
||||
|
||||
|
||||
# =====
|
||||
@ -14,14 +14,14 @@ import yaml
|
||||
import serial
|
||||
import setproctitle
|
||||
|
||||
from . import gpio
|
||||
from ...logging import get_logger
|
||||
|
||||
from .logging import get_logger
|
||||
from ... import gpio
|
||||
|
||||
|
||||
# =====
|
||||
def _get_keymap() -> Dict[str, int]:
|
||||
return yaml.load(pkgutil.get_data(__name__, "data/keymap.yaml").decode()) # type: ignore
|
||||
return yaml.load(pkgutil.get_data("kvmd", "data/keymap.yaml").decode()) # type: ignore
|
||||
|
||||
|
||||
_KEYMAP = _get_keymap()
|
||||
@ -15,10 +15,10 @@ import pyudev
|
||||
import aiofiles
|
||||
import aiofiles.base
|
||||
|
||||
from . import aioregion
|
||||
from . import gpio
|
||||
from ...logging import get_logger
|
||||
|
||||
from .logging import get_logger
|
||||
from ... import aioregion
|
||||
from ... import gpio
|
||||
|
||||
|
||||
# =====
|
||||
@ -13,7 +13,12 @@ from typing import Optional
|
||||
import aiohttp.web
|
||||
import setproctitle
|
||||
|
||||
from .aioregion import RegionIsBusyError
|
||||
from ...logging import get_logger
|
||||
from ...logging import Log
|
||||
|
||||
from ...aioregion import RegionIsBusyError
|
||||
|
||||
from ... import __version__
|
||||
|
||||
from .hid import Hid
|
||||
|
||||
@ -24,13 +29,6 @@ from .msd import MassStorageDevice
|
||||
|
||||
from .streamer import Streamer
|
||||
|
||||
from .logging import get_logger
|
||||
from .logging import Log
|
||||
|
||||
|
||||
# =====
|
||||
__version__ = "0.86"
|
||||
|
||||
|
||||
# =====
|
||||
def _system_task(method: Callable) -> Callable:
|
||||
@ -6,9 +6,9 @@ from typing import List
|
||||
from typing import Dict
|
||||
from typing import Optional
|
||||
|
||||
from .logging import get_logger
|
||||
from ...logging import get_logger
|
||||
|
||||
from . import gpio
|
||||
from ... import gpio
|
||||
|
||||
|
||||
# =====
|
||||
13
setup.py
13
setup.py
@ -21,9 +21,10 @@ def main() -> None:
|
||||
|
||||
packages=[
|
||||
"kvmd",
|
||||
"kvmd.extras",
|
||||
"kvmd.extras.cleanup",
|
||||
"kvmd.extras.wscli",
|
||||
"kvmd.apps",
|
||||
"kvmd.apps.kvmd",
|
||||
"kvmd.apps.cleanup",
|
||||
"kvmd.apps.wscli",
|
||||
],
|
||||
|
||||
package_data={
|
||||
@ -32,9 +33,9 @@ def main() -> None:
|
||||
|
||||
entry_points={
|
||||
"console_scripts": [
|
||||
"kvmd = kvmd:main",
|
||||
"kvmd-cleanup = kvmd.extras.cleanup:main",
|
||||
"kvmd-wscli = kvmd.extras.wscli:main",
|
||||
"kvmd = kvmd.apps.kvmd:main",
|
||||
"kvmd-cleanup = kvmd.apps.cleanup:main",
|
||||
"kvmd-wscli = kvmd.apps.wscli:main",
|
||||
],
|
||||
},
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@ function Session(atx, hid, msd) {
|
||||
if (http.readyState === 4) {
|
||||
if (http.status === 200) {
|
||||
var info = JSON.parse(http.responseText).result;
|
||||
$("kvmd-version").innerHTML = "Web-UI " + info.version.kvmd;
|
||||
$("kvmd-version").innerHTML = "kvmd v" + info.version.kvmd;
|
||||
$("about-version-kvmd").innerHTML = info.version.kvmd;
|
||||
$("about-version-streamer").innerHTML = info.version.streamer + " (" + info.streamer + ")";
|
||||
} else {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user