Files
cpu_governor_auto_adjust/cpu_governor_auto_adjust.py
T
2024-12-12 22:19:47 +01:00

29 lines
813 B
Python
Executable File

#!/usr/bin/env python3
import asyncio
from pathlib import Path
from logger import getLogger
from mapping import trigger_mapping
from config import Config
from governor import Governor
from schedule import TriggerScheduler
async def main() -> None:
basepath = Path(__file__).parent.resolve()
config = Config(basepath)
log = getLogger('main', loglevel=config.loglevel.upper())
if config.testmode:
log.warning("starting in testmode, cpu adjustments have been disabled")
governor = Governor(config)
scheduler = TriggerScheduler(config)
for triggertuple in config.triggertuples:
_trigger = trigger_mapping[triggertuple.name](config)
scheduler.start_trigger(_trigger)
await scheduler.run()
if __name__ == "__main__":
asyncio.run(main())