1.0.1 release #15
@@ -6,7 +6,6 @@ from flask_login import (LoginManager, login_user, login_required, logout_user,
|
|||||||
from misc import datetime, date, time, currDay, ZoneInfo, currVersion, currCommit
|
from misc import datetime, date, time, currDay, ZoneInfo, currVersion, currCommit
|
||||||
from db import (db, Period, Task, Event, User)
|
from db import (db, Period, Task, Event, User)
|
||||||
from forms import (TaskForm, EventForm, PeriodForm, SignupForm, LoginForm, SettingsForm)
|
from forms import (TaskForm, EventForm, PeriodForm, SignupForm, LoginForm, SettingsForm)
|
||||||
from backgroundTasks import scheduleCreateEvents
|
|
||||||
from create_events import createEvents
|
from create_events import createEvents
|
||||||
|
|
||||||
basedir = os.path.abspath(os.path.dirname(__file__))
|
basedir = os.path.abspath(os.path.dirname(__file__))
|
||||||
@@ -23,8 +22,8 @@ migrate = Migrate()
|
|||||||
migrate.init_app(app, db)
|
migrate.init_app(app, db)
|
||||||
|
|
||||||
# Schedule creation of events every hour
|
# Schedule creation of events every hour
|
||||||
with app.app_context():
|
#with app.app_context():
|
||||||
scheduleCreateEvents(app, db, currDay, Period, Event, createEvents)
|
# scheduleCreateEvents(app, db, currDay, Period, Event, createEvents)
|
||||||
|
|
||||||
# Authentication stuff
|
# Authentication stuff
|
||||||
|
|
||||||
|
@@ -1,14 +0,0 @@
|
|||||||
from apscheduler.schedulers.background import BackgroundScheduler
|
|
||||||
from apscheduler.triggers.cron import CronTrigger
|
|
||||||
|
|
||||||
def scheduleCreateEvents(app, db, currDay, Period, Event, createEvents):
|
|
||||||
# create events upon application launch
|
|
||||||
createEvents(db, currDay, Period, Event)
|
|
||||||
|
|
||||||
# schedule createEvents task every hour
|
|
||||||
sched = BackgroundScheduler()
|
|
||||||
def eventsTask():
|
|
||||||
with app.app_context():
|
|
||||||
createEvents(db, currDay, Period, Event)
|
|
||||||
sched.add_job(eventsTask, CronTrigger.from_crontab('00 * * * *'))
|
|
||||||
sched.start()
|
|
31
app/worker.py
Normal file
31
app/worker.py
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
import os
|
||||||
|
from flask import Flask
|
||||||
|
from misc import currDay
|
||||||
|
from db import db, Period, Event
|
||||||
|
from create_events import createEvents
|
||||||
|
from apscheduler.schedulers.background import BlockingScheduler
|
||||||
|
from apscheduler.triggers.cron import CronTrigger
|
||||||
|
|
||||||
|
basedir = os.path.abspath(os.path.dirname(__file__))
|
||||||
|
|
||||||
|
app = Flask(__name__)
|
||||||
|
app.config['SECRET_KEY'] = 'HwG55rpe83jcaglifXm8NuF4WEeXyJV4'
|
||||||
|
app.config['SQLALCHEMY_DATABASE_URI'] =\
|
||||||
|
'sqlite:///' + os.path.join(basedir, os.environ['SQLITE_DB'])
|
||||||
|
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
|
||||||
|
db.init_app(app)
|
||||||
|
|
||||||
|
# declare BlockingScheduler
|
||||||
|
sched = BlockingScheduler()
|
||||||
|
|
||||||
|
# run createEvents upon app launch
|
||||||
|
with app.app_context():
|
||||||
|
createEvents(db, currDay, Period, Event)
|
||||||
|
|
||||||
|
def eventsTask():
|
||||||
|
with app.app_context():
|
||||||
|
createEvents(db, currDay, Period, Event)
|
||||||
|
sched.add_job(eventsTask, CronTrigger.from_crontab('00 * * * *'))
|
||||||
|
print("Background worker started")
|
||||||
|
sched.start()
|
||||||
|
|
Reference in New Issue
Block a user