Coverage for merco/plugins/builtin/scheduler/plugin.py: 100%
13 statements
« prev ^ index » next coverage.py v7.15.0, created at 2026-07-07 14:04 +0800
« prev ^ index » next coverage.py v7.15.0, created at 2026-07-07 14:04 +0800
1"""Scheduler plugin — creates CronScheduler."""
2from __future__ import annotations
4import logging
5from typing import TYPE_CHECKING
7from merco.plugins.base import Plugin
9if TYPE_CHECKING:
10 from merco.plugins.base import PluginContext
12logger = logging.getLogger("merco.plugins.scheduler")
15class SchedulerPlugin(Plugin):
16 """Creates CronScheduler and attaches it to PluginContext."""
18 name = "scheduler"
19 version = "1.0.0"
20 description = "Creates the cron scheduler"
22 async def activate(self, ctx: "PluginContext") -> None:
23 from merco.scheduler.cron import CronScheduler
25 ctx.scheduler = CronScheduler()
26 logger.info("Scheduler plugin activated")