U 自动更新超时发布申请状态

pull/220/head
vapao 2020-09-14 18:52:01 +08:00
parent a57e5eb009
commit 821b62ce46
2 changed files with 13 additions and 1 deletions

View File

@ -3,10 +3,12 @@
# Released under the AGPL-3.0 License.
from django_redis import get_redis_connection
from django.conf import settings
from libs.utils import AttrDict, human_time, human_datetime
from libs.utils import AttrDict, human_time, human_datetime, parse_time
from apps.host.models import Host
from apps.notify.models import Notify
from apps.deploy.models import DeployRequest
from concurrent import futures
from datetime import datetime
import requests
import subprocess
import json
@ -458,3 +460,11 @@ class Helper:
self.send_info(key, out)
if code != 0:
self.send_error(key, f'exit code: {code}')
def auto_update_status():
now = datetime.now()
for req in DeployRequest.objects.filter(status='2'):
if (now - parse_time(req.do_at)).seconds > 3600:
req.status = '-3'
req.save()

View File

@ -16,6 +16,7 @@ from apps.notify.models import Notify
from apps.schedule.executors import dispatch
from apps.schedule.utils import auto_clean_schedule_history
from apps.alarm.utils import auto_clean_records
from apps.deploy.utils import auto_update_status
from django.conf import settings
from libs import AttrDict, human_datetime
import logging
@ -89,6 +90,7 @@ class Scheduler:
def _init_builtin_jobs(self):
self.scheduler.add_job(auto_clean_records, 'cron', hour=0, minute=0)
self.scheduler.add_job(auto_clean_schedule_history, 'cron', hour=0, minute=0)
self.scheduler.add_job(auto_update_status, 'interval', minutes=5)
def _init(self):
self.scheduler.start()