Add a cron_setup task to initialize code-defined cron tasks.

This commit is contained in:
Ben Rog-Wilhelm 2023-04-22 04:34:40 -05:00
parent b4fecddf7b
commit 7ea3c81967
5 changed files with 88 additions and 1 deletions

View file

@ -13,7 +13,7 @@ import redis
from sqlalchemy.orm import relationship, Session
from sqlalchemy.schema import Column, ForeignKey
from sqlalchemy.sql.sqltypes import (Boolean, DateTime, Integer, SmallInteger,
Text, Time)
Text, Time, String)
from files.classes.base import CreatedBase
from files.helpers.time import format_age, format_datetime
@ -247,6 +247,9 @@ class RepeatableTask(CreatedBase):
frequency_day = Column(SmallInteger, nullable=False)
time_of_day_utc = Column(Time, nullable=False)
# used for the cron hardcoding system
label = Column(String, nullable=True, unique=True)
runs = relationship("RepeatableTaskRun", back_populates="task")
@property