develop增加同步数据库并重启服务
This commit is contained in:
parent
77a081c678
commit
8b56148949
|
@ -0,0 +1 @@
|
||||||
|
from rest_framework import serializers
|
|
@ -24,7 +24,7 @@ def backup_database():
|
||||||
return completed
|
return completed
|
||||||
|
|
||||||
@shared_task
|
@shared_task
|
||||||
def reload_server():
|
def reload_server_git():
|
||||||
command = 'bash {}/git.sh'.format(SH_PATH)
|
command = 'bash {}/git.sh'.format(SH_PATH)
|
||||||
completed = subprocess.run(command, shell=True, capture_output=True, text=True)
|
completed = subprocess.run(command, shell=True, capture_output=True, text=True)
|
||||||
return completed
|
return completed
|
||||||
|
@ -35,6 +35,12 @@ def reload_server_only():
|
||||||
completed = subprocess.run(command, shell=True, capture_output=True, text=True)
|
completed = subprocess.run(command, shell=True, capture_output=True, text=True)
|
||||||
return completed
|
return completed
|
||||||
|
|
||||||
|
@shared_task
|
||||||
|
def reload_server():
|
||||||
|
command = 'bash {}/reload.sh'.format(SH_PATH)
|
||||||
|
completed = subprocess.run(command, shell=True, capture_output=True, text=True)
|
||||||
|
return completed
|
||||||
|
|
||||||
@shared_task
|
@shared_task
|
||||||
def backup_media():
|
def backup_media():
|
||||||
command = 'bash {}/backup_media.sh'.format(SH_PATH)
|
command = 'bash {}/backup_media.sh'.format(SH_PATH)
|
||||||
|
|
|
@ -2,7 +2,7 @@ from django.db.models import base
|
||||||
from rest_framework import urlpatterns
|
from rest_framework import urlpatterns
|
||||||
from django.urls import path, include
|
from django.urls import path, include
|
||||||
from rest_framework.routers import DefaultRouter
|
from rest_framework.routers import DefaultRouter
|
||||||
from apps.develop.views import BackupDatabase, BackupMedia, CleanDataView, ReloadServer, ReloadServerOnly, UpdateCuttingView, UpdateEquipState, UpdateFIFOItem, UpdateFIFONumber, UpdateLastTestResult, UpdateNeedToOrder, UpdateSpg
|
from apps.develop.views import BackupDatabase, BackupMedia, CleanDataView, ReloadServer, ReloadServerGit, ReloadServerOnly, UpdateCuttingView, UpdateEquipState, UpdateFIFOItem, UpdateFIFONumber, UpdateLastTestResult, UpdateNeedToOrder, UpdateSpg
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path('cleandata/', CleanDataView.as_view()),
|
path('cleandata/', CleanDataView.as_view()),
|
||||||
|
@ -14,8 +14,9 @@ urlpatterns = [
|
||||||
path('update_equip_state/', UpdateEquipState.as_view()),
|
path('update_equip_state/', UpdateEquipState.as_view()),
|
||||||
path('update_need_to_order/', UpdateNeedToOrder.as_view()),
|
path('update_need_to_order/', UpdateNeedToOrder.as_view()),
|
||||||
path('update_fifo_number/', UpdateFIFONumber.as_view()),
|
path('update_fifo_number/', UpdateFIFONumber.as_view()),
|
||||||
path('reload_server/', ReloadServer.as_view()),
|
path('reload_server_git/', ReloadServerGit.as_view()),
|
||||||
path('reload_server_only/', ReloadServerOnly.as_view()),
|
path('reload_server_only/', ReloadServerOnly.as_view()),
|
||||||
|
path('reload_server/', ReloadServer.as_view()),
|
||||||
path('backup_database/', BackupDatabase.as_view()),
|
path('backup_database/', BackupDatabase.as_view()),
|
||||||
path('backup_media/', BackupMedia.as_view())
|
path('backup_media/', BackupMedia.as_view())
|
||||||
]
|
]
|
||||||
|
|
|
@ -4,7 +4,7 @@ from rest_framework.decorators import permission_classes
|
||||||
from rest_framework.views import APIView
|
from rest_framework.views import APIView
|
||||||
from rest_framework.permissions import IsAdminUser, AllowAny
|
from rest_framework.permissions import IsAdminUser, AllowAny
|
||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
from apps.develop.tasks import backup_database, backup_media, reload_server, reload_server_only
|
from apps.develop.tasks import backup_database, backup_media, reload_server_git, reload_server_only, reload_server
|
||||||
from apps.inm.models import FIFO, FIFOItem, Inventory, MaterialBatch
|
from apps.inm.models import FIFO, FIFOItem, Inventory, MaterialBatch
|
||||||
from apps.mtm.models import Material
|
from apps.mtm.models import Material
|
||||||
from apps.pm.models import ProductionPlan, SubProductionPlan
|
from apps.pm.models import ProductionPlan, SubProductionPlan
|
||||||
|
@ -129,14 +129,14 @@ class CorrectWproduct(APIView):
|
||||||
# WProduct.objects.filter(is_hidden=True).update(act_state=WProduct.WPR_ACT_STATE_USED)
|
# WProduct.objects.filter(is_hidden=True).update(act_state=WProduct.WPR_ACT_STATE_USED)
|
||||||
|
|
||||||
|
|
||||||
class ReloadServer(APIView):
|
class ReloadServerGit(APIView):
|
||||||
authentication_classes = []
|
authentication_classes = []
|
||||||
permission_classes = []
|
permission_classes = []
|
||||||
def post(self, request):
|
def post(self, request):
|
||||||
"""
|
"""
|
||||||
拉取代码并重启服务
|
拉取代码并重启服务
|
||||||
"""
|
"""
|
||||||
completed = reload_server()
|
completed = reload_server_git()
|
||||||
if completed.returncode == 0:
|
if completed.returncode == 0:
|
||||||
return Response()
|
return Response()
|
||||||
else:
|
else:
|
||||||
|
@ -154,6 +154,18 @@ class ReloadServerOnly(APIView):
|
||||||
else:
|
else:
|
||||||
raise APIException(completed.stdout)
|
raise APIException(completed.stdout)
|
||||||
|
|
||||||
|
class ReloadServer(APIView):
|
||||||
|
permission_classes = [IsAdminUser]
|
||||||
|
def post(self, request):
|
||||||
|
"""
|
||||||
|
同步数据库并重启服务
|
||||||
|
"""
|
||||||
|
completed = reload_server()
|
||||||
|
if completed.returncode == 0:
|
||||||
|
return Response()
|
||||||
|
else:
|
||||||
|
raise APIException(completed.stdout)
|
||||||
|
|
||||||
class BackupDatabase(APIView):
|
class BackupDatabase(APIView):
|
||||||
permission_classes = [IsAdminUser]
|
permission_classes = [IsAdminUser]
|
||||||
def post(self, request):
|
def post(self, request):
|
||||||
|
|
Loading…
Reference in New Issue