mirror of https://github.com/openspug/spug
A api update
parent
5e34148217
commit
e326b6ce34
|
@ -1,5 +1,5 @@
|
|||
from django.db import models
|
||||
from libs import ModelMixin, human_time
|
||||
from libs import ModelMixin, human_datetime
|
||||
from django.contrib.auth.hashers import make_password, check_password
|
||||
|
||||
|
||||
|
@ -13,7 +13,7 @@ class User(models.Model, ModelMixin):
|
|||
token_expired = models.IntegerField(null=True)
|
||||
last_login = models.CharField(max_length=20)
|
||||
|
||||
created_at = models.CharField(max_length=20, default=human_time)
|
||||
created_at = models.CharField(max_length=20, default=human_datetime)
|
||||
created_by = models.ForeignKey('User', models.PROTECT, related_name='+', null=True)
|
||||
deleted_at = models.CharField(max_length=20, null=True)
|
||||
deleted_by = models.ForeignKey('User', models.PROTECT, related_name='+', null=True)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
from django.core.cache import cache
|
||||
from django.views.generic import View
|
||||
from libs import JsonParser, Argument, human_time, json_response
|
||||
from libs import JsonParser, Argument, human_datetime, json_response
|
||||
from .models import User
|
||||
import time
|
||||
import uuid
|
||||
|
@ -43,7 +43,7 @@ class UserView(View):
|
|||
).parse(request.GET)
|
||||
if error is None:
|
||||
User.objects.filter(pk=form.id).update(
|
||||
deleted_at=human_time(),
|
||||
deleted_at=human_datetime(),
|
||||
deleted_by=request.user
|
||||
)
|
||||
return json_response(error=error)
|
||||
|
@ -64,7 +64,7 @@ def login(request):
|
|||
token_isvalid = user.access_token and len(user.access_token) == 32 and user.token_expired >= time.time()
|
||||
user.access_token = user.access_token if token_isvalid else uuid.uuid4().hex
|
||||
user.token_expired = time.time() + 8 * 60 * 60
|
||||
user.last_login = human_time()
|
||||
user.last_login = human_datetime()
|
||||
user.save()
|
||||
return json_response({'access_token': user.access_token, 'nickname': user.nickname})
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
from django.db import models
|
||||
from libs import ModelMixin, human_time
|
||||
from libs import ModelMixin, human_datetime
|
||||
from apps.account.models import User
|
||||
import json
|
||||
|
||||
|
@ -21,7 +21,7 @@ class Alarm(models.Model, ModelMixin):
|
|||
notify_grp = models.CharField(max_length=255)
|
||||
status = models.CharField(max_length=2, choices=STATUS)
|
||||
duration = models.CharField(max_length=50)
|
||||
created_at = models.CharField(max_length=20, default=human_time)
|
||||
created_at = models.CharField(max_length=20, default=human_datetime)
|
||||
|
||||
def to_dict(self, *args, **kwargs):
|
||||
tmp = super().to_dict(*args, **kwargs)
|
||||
|
@ -42,7 +42,7 @@ class Group(models.Model, ModelMixin):
|
|||
name = models.CharField(max_length=50)
|
||||
desc = models.CharField(max_length=255, null=True)
|
||||
contacts = models.TextField(null=True)
|
||||
created_at = models.CharField(max_length=20, default=human_time)
|
||||
created_at = models.CharField(max_length=20, default=human_datetime)
|
||||
created_by = models.ForeignKey(User, models.PROTECT, related_name='+')
|
||||
|
||||
def to_dict(self, *args, **kwargs):
|
||||
|
@ -65,7 +65,7 @@ class Contact(models.Model, ModelMixin):
|
|||
ding = models.CharField(max_length=255, null=True)
|
||||
wx_token = models.CharField(max_length=255, null=True)
|
||||
|
||||
created_at = models.CharField(max_length=20, default=human_time)
|
||||
created_at = models.CharField(max_length=20, default=human_datetime)
|
||||
created_by = models.ForeignKey(User, models.PROTECT, related_name='+')
|
||||
|
||||
def __repr__(self):
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
from django.db import models
|
||||
from libs import ModelMixin, human_time
|
||||
from libs import ModelMixin, human_datetime
|
||||
from apps.account.models import User
|
||||
from apps.config.models import Environment
|
||||
import json
|
||||
|
@ -16,7 +16,7 @@ class App(models.Model, ModelMixin):
|
|||
extend = models.CharField(max_length=2, choices=EXTENDS)
|
||||
is_audit = models.BooleanField()
|
||||
|
||||
created_at = models.CharField(max_length=20, default=human_time)
|
||||
created_at = models.CharField(max_length=20, default=human_datetime)
|
||||
created_by = models.ForeignKey(User, models.PROTECT, related_name='+')
|
||||
updated_at = models.CharField(max_length=20, null=True)
|
||||
updated_by = models.ForeignKey(User, models.PROTECT, related_name='+', null=True)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
from django.db import models
|
||||
from libs import ModelMixin, human_time
|
||||
from libs import ModelMixin, human_datetime
|
||||
from apps.account.models import User
|
||||
|
||||
|
||||
|
@ -7,7 +7,7 @@ class Environment(models.Model, ModelMixin):
|
|||
name = models.CharField(max_length=50)
|
||||
key = models.CharField(max_length=50)
|
||||
desc = models.CharField(max_length=255, null=True)
|
||||
created_at = models.CharField(max_length=20, default=human_time)
|
||||
created_at = models.CharField(max_length=20, default=human_datetime)
|
||||
created_by = models.ForeignKey(User, on_delete=models.PROTECT)
|
||||
|
||||
def __repr__(self):
|
||||
|
@ -22,7 +22,7 @@ class Service(models.Model, ModelMixin):
|
|||
name = models.CharField(max_length=50)
|
||||
key = models.CharField(max_length=50)
|
||||
desc = models.CharField(max_length=255, null=True)
|
||||
created_at = models.CharField(max_length=20, default=human_time)
|
||||
created_at = models.CharField(max_length=20, default=human_datetime)
|
||||
created_by = models.ForeignKey(User, on_delete=models.PROTECT)
|
||||
|
||||
def __repr__(self):
|
||||
|
|
|
@ -99,7 +99,7 @@ class ConfigView(View):
|
|||
).parse(request.body)
|
||||
if error is None:
|
||||
form.value = form.value.strip()
|
||||
form.updated_at = human_time()
|
||||
form.updated_at = human_datetime()
|
||||
form.updated_by = request.user
|
||||
envs = form.pop('envs')
|
||||
for env_id in envs:
|
||||
|
@ -122,7 +122,7 @@ class ConfigView(View):
|
|||
old_value = config.value
|
||||
config.value = form.value
|
||||
config.desc = form.desc
|
||||
config.updated_at = human_time()
|
||||
config.updated_at = human_datetime()
|
||||
config.updated_by = request.user
|
||||
config.save()
|
||||
ConfigHistory.objects.create(
|
||||
|
@ -145,7 +145,7 @@ class ConfigView(View):
|
|||
action='3',
|
||||
old_value=config.value,
|
||||
value='',
|
||||
updated_at=human_time(),
|
||||
updated_at=human_datetime(),
|
||||
updated_by=request.user,
|
||||
**config.to_dict(excludes=('id', 'value', 'updated_at', 'updated_by_id'))
|
||||
)
|
||||
|
@ -226,7 +226,7 @@ def _parse(request, query, data):
|
|||
if item.value != value:
|
||||
old_value = item.value
|
||||
item.value = value
|
||||
item.updated_at = human_time()
|
||||
item.updated_at = human_datetime()
|
||||
item.updated_by = request.user
|
||||
item.save()
|
||||
ConfigHistory.objects.create(
|
||||
|
@ -238,7 +238,7 @@ def _parse(request, query, data):
|
|||
action='3',
|
||||
old_value=item.value,
|
||||
value='',
|
||||
updated_at=human_time(),
|
||||
updated_at=human_datetime(),
|
||||
updated_by=request.user,
|
||||
**item.to_dict(excludes=('id', 'value', 'updated_at', 'updated_by_id'))
|
||||
)
|
||||
|
@ -247,7 +247,7 @@ def _parse(request, query, data):
|
|||
query.key = key
|
||||
query.is_public = True
|
||||
query.value = _filter_value(value)
|
||||
query.updated_at = human_time()
|
||||
query.updated_at = human_datetime()
|
||||
query.updated_by = request.user
|
||||
Config.objects.create(**query)
|
||||
ConfigHistory.objects.create(action='1', **query)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
from django.db import models
|
||||
from libs import ModelMixin, human_time
|
||||
from libs import ModelMixin, human_datetime
|
||||
from apps.account.models import User
|
||||
from apps.app.models import App
|
||||
|
||||
|
@ -20,7 +20,7 @@ class DeployRequest(models.Model, ModelMixin):
|
|||
status = models.CharField(max_length=2, choices=STATUS)
|
||||
reason = models.CharField(max_length=255, null=True)
|
||||
|
||||
created_at = models.CharField(max_length=20, default=human_time)
|
||||
created_at = models.CharField(max_length=20, default=human_datetime)
|
||||
created_by = models.ForeignKey(User, models.PROTECT, related_name='+')
|
||||
approve_at = models.CharField(max_length=20, null=True)
|
||||
approve_by = models.ForeignKey(User, models.PROTECT, related_name='+', null=True)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
from django.db import models
|
||||
from libs import ModelMixin, human_time
|
||||
from libs import ModelMixin, human_datetime
|
||||
from apps.account.models import User
|
||||
|
||||
|
||||
|
@ -9,7 +9,7 @@ class ExecTemplate(models.Model, ModelMixin):
|
|||
body = models.TextField()
|
||||
desc = models.CharField(max_length=255, null=True)
|
||||
|
||||
created_at = models.CharField(max_length=20, default=human_time)
|
||||
created_at = models.CharField(max_length=20, default=human_datetime)
|
||||
created_by = models.ForeignKey(User, models.PROTECT, related_name='+')
|
||||
updated_at = models.CharField(max_length=20, null=True)
|
||||
updated_by = models.ForeignKey(User, models.PROTECT, related_name='+', null=True)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
from django.views.generic import View
|
||||
from libs import json_response, JsonParser, Argument, human_time
|
||||
from libs import json_response, JsonParser, Argument, human_datetime
|
||||
from libs.channel import Channel
|
||||
from apps.exec.models import ExecTemplate
|
||||
from apps.host.models import Host
|
||||
|
@ -21,7 +21,7 @@ class TemplateView(View):
|
|||
).parse(request.body)
|
||||
if error is None:
|
||||
if form.id:
|
||||
form.updated_at = human_time()
|
||||
form.updated_at = human_datetime()
|
||||
form.updated_by = request.user
|
||||
ExecTemplate.objects.filter(pk=form.pop('id')).update(**form)
|
||||
else:
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
from django.db import models
|
||||
from libs import ModelMixin, human_time
|
||||
from libs import ModelMixin, human_datetime
|
||||
from apps.account.models import User
|
||||
from apps.setting.utils import AppSetting
|
||||
from libs.ssh import SSH
|
||||
|
@ -13,7 +13,7 @@ class Host(models.Model, ModelMixin):
|
|||
username = models.CharField(max_length=50)
|
||||
desc = models.CharField(max_length=255, null=True)
|
||||
|
||||
created_at = models.CharField(max_length=20, default=human_time)
|
||||
created_at = models.CharField(max_length=20, default=human_datetime)
|
||||
created_by = models.ForeignKey(User, models.PROTECT, related_name='+')
|
||||
deleted_at = models.CharField(max_length=20, null=True)
|
||||
deleted_by = models.ForeignKey(User, models.PROTECT, related_name='+', null=True)
|
||||
|
|
|
@ -5,7 +5,7 @@ from libs import json_response, JsonParser, Argument
|
|||
from apps.setting.utils import AppSetting
|
||||
from apps.host.models import Host
|
||||
from libs.ssh import SSH, AuthenticationException
|
||||
from libs import human_time
|
||||
from libs import human_datetime
|
||||
|
||||
|
||||
class HostView(View):
|
||||
|
@ -42,7 +42,7 @@ class HostView(View):
|
|||
).parse(request.GET)
|
||||
if error is None:
|
||||
Host.objects.filter(pk=form.id).update(
|
||||
deleted_at=human_time(),
|
||||
deleted_at=human_datetime(),
|
||||
deleted_by=request.user,
|
||||
)
|
||||
return json_response(error=error)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
from django.db import models
|
||||
from libs import ModelMixin, human_time
|
||||
from libs import ModelMixin, human_datetime
|
||||
from apps.account.models import User
|
||||
import json
|
||||
|
||||
|
@ -32,7 +32,7 @@ class Detection(models.Model, ModelMixin):
|
|||
latest_fault_time = models.IntegerField(null=True)
|
||||
latest_notify_time = models.IntegerField(default=0)
|
||||
|
||||
created_at = models.CharField(max_length=20, default=human_time)
|
||||
created_at = models.CharField(max_length=20, default=human_datetime)
|
||||
created_by = models.ForeignKey(User, models.PROTECT, related_name='+')
|
||||
updated_at = models.CharField(max_length=20, null=True)
|
||||
updated_by = models.ForeignKey(User, models.PROTECT, related_name='+', null=True)
|
||||
|
|
|
@ -7,7 +7,7 @@ from apps.alarm.models import Alarm
|
|||
from apps.monitor.executors import dispatch
|
||||
from apps.monitor.utils import seconds_to_human
|
||||
from django.conf import settings
|
||||
from libs import AttrDict, human_time
|
||||
from libs import AttrDict, human_datetime
|
||||
import logging
|
||||
import json
|
||||
import time
|
||||
|
@ -36,14 +36,14 @@ class Scheduler:
|
|||
if obj.latest_status == 0:
|
||||
if old_status == 1:
|
||||
self._record_alarm(obj, '2')
|
||||
logger.info(f'{human_time()} recover job_id: {obj.id}')
|
||||
logger.info(f'{human_datetime()} recover job_id: {obj.id}')
|
||||
else:
|
||||
if obj.fault_times >= obj.threshold:
|
||||
if time.time() - obj.latest_notify_time >= obj.quiet * 60:
|
||||
obj.latest_notify_time = int(time.time())
|
||||
obj.save()
|
||||
self._record_alarm(obj, '1')
|
||||
logger.info(f'{human_time()} notify job_id: {obj.id}')
|
||||
logger.info(f'{human_datetime()} notify job_id: {obj.id}')
|
||||
|
||||
def _handle_event(self, event):
|
||||
# TODO: notify to user
|
||||
|
@ -59,7 +59,7 @@ class Scheduler:
|
|||
obj = Detection.objects.filter(pk=event.job_id).first()
|
||||
old_status = obj.latest_status
|
||||
obj.latest_status = 0 if event.retval else 1
|
||||
obj.latest_run_time = human_time(event.scheduled_run_time)
|
||||
obj.latest_run_time = human_datetime(event.scheduled_run_time)
|
||||
if old_status in [0, None] and event.retval is False:
|
||||
obj.latest_fault_time = int(time.time())
|
||||
if obj.latest_status == 0:
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
from django.views.generic import View
|
||||
from libs import json_response, JsonParser, Argument, human_time
|
||||
from libs import json_response, JsonParser, Argument, human_datetime
|
||||
from apps.monitor.models import Detection
|
||||
from django_redis import get_redis_connection
|
||||
from django.conf import settings
|
||||
|
@ -30,7 +30,7 @@ class DetectionView(View):
|
|||
form.notify_mode = json.dumps(form.notify_mode)
|
||||
if form.id:
|
||||
Detection.objects.filter(pk=form.id).update(
|
||||
updated_at=human_time(),
|
||||
updated_at=human_datetime(),
|
||||
updated_by=request.user,
|
||||
**form)
|
||||
task = Detection.objects.filter(pk=form.id).first()
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
from django.db import models
|
||||
from libs import ModelMixin, human_time
|
||||
from libs import ModelMixin, human_datetime
|
||||
from apps.account.models import User
|
||||
import json
|
||||
|
||||
|
@ -28,7 +28,7 @@ class Task(models.Model, ModelMixin):
|
|||
latest_run_time = models.CharField(max_length=20, null=True)
|
||||
latest_output = models.TextField(null=True)
|
||||
|
||||
created_at = models.CharField(max_length=20, default=human_time)
|
||||
created_at = models.CharField(max_length=20, default=human_datetime)
|
||||
created_by = models.ForeignKey(User, models.PROTECT, related_name='+')
|
||||
updated_at = models.CharField(max_length=20, null=True)
|
||||
updated_by = models.ForeignKey(User, models.PROTECT, related_name='+', null=True)
|
||||
|
|
|
@ -7,7 +7,7 @@ from apps.schedule.models import Task
|
|||
from apps.schedule.executors import dispatch
|
||||
from apps.alarm.utils import auto_clean_records
|
||||
from django.conf import settings
|
||||
from libs import AttrDict, human_time
|
||||
from libs import AttrDict, human_datetime
|
||||
import logging
|
||||
import json
|
||||
|
||||
|
@ -47,7 +47,7 @@ class Scheduler:
|
|||
score += 1 if item[1] else 0
|
||||
Task.objects.filter(pk=event.job_id).update(
|
||||
latest_status=2 if score == len(event.retval) else 1 if score else 0,
|
||||
latest_run_time=human_time(event.scheduled_run_time),
|
||||
latest_run_time=human_datetime(event.scheduled_run_time),
|
||||
latest_output=json.dumps(event.retval)
|
||||
)
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ from django_redis import get_redis_connection
|
|||
from apps.schedule.models import Task
|
||||
from apps.host.models import Host
|
||||
from django.conf import settings
|
||||
from libs import json_response, JsonParser, Argument, human_time
|
||||
from libs import json_response, JsonParser, Argument, human_datetime
|
||||
import json
|
||||
|
||||
|
||||
|
@ -28,7 +28,7 @@ class Schedule(View):
|
|||
form.targets = json.dumps(form.targets)
|
||||
if form.id:
|
||||
Task.objects.filter(pk=form.id).update(
|
||||
updated_at=human_time(),
|
||||
updated_at=human_datetime(),
|
||||
updated_by=request.user,
|
||||
**form
|
||||
)
|
||||
|
|
|
@ -8,7 +8,7 @@ import json
|
|||
|
||||
|
||||
# 转换时间格式到字符串
|
||||
def human_time(date=None):
|
||||
def human_datetime(date=None):
|
||||
if date:
|
||||
assert isinstance(date, datetime)
|
||||
else:
|
||||
|
|
Loading…
Reference in New Issue