33from sanic import Blueprint
44from sanic .request import Request
55from sanic_rest import exceptions
6+ from sanic_rest .views import NestedListView , DetailView , ListView , ResponseType
67
78from models .app import App
89from models .database import Database
910from models .env_var import EnvVar
1011from services .bootstrap import AppBootstrap
1112from services .foundations import AppFoundation
12- from sanic_rest .views import NestedListView , DetailView , ListView , ResponseType
1313
1414apps = Blueprint ('apps' , url_prefix = '/apps' )
1515
@@ -25,34 +25,40 @@ class AppDetailView(DetailView):
2525class AppBoostrapView (NestedListView ):
2626 nest_model = App
2727
28- async def perform_get (self , request : Request , obj : App ) -> ResponseType :
29- bootstrap = AppBootstrap (app = obj )
28+ async def perform_get (self , request : Request , nest_obj : App ) -> ResponseType :
29+ bootstrap = AppBootstrap (app = nest_obj )
3030 changes = bootstrap .check ()
3131 return changes , 200
3232
33- async def perform_post (self , request : Request , obj : App ) -> ResponseType :
34- bootstrap = AppBootstrap (app = obj )
33+ async def perform_post (self , request : Request , nest_obj : App ) -> ResponseType :
34+ bootstrap = AppBootstrap (app = nest_obj )
3535 new_obj = bootstrap .apply ()
3636 return new_obj .serialize (), 200
3737
38- async def perform_delete (self , request : Request , obj : App ) -> ResponseType :
38+ async def perform_put (self , request : Request , nest_obj : App ) -> ResponseType :
39+ raise exceptions .NotAllowedError ()
40+
41+ async def perform_delete (self , request : Request , nest_obj : App ) -> ResponseType :
3942 raise exceptions .NotAllowedError ()
4043
4144
4245class AppInitializeView (NestedListView ):
4346 nest_model = App
4447
45- async def perform_get (self , request : Request , obj : App ) -> ResponseType :
46- foundation = AppFoundation (app = obj )
48+ async def perform_get (self , request : Request , nest_obj : App ) -> ResponseType :
49+ foundation = AppFoundation (app = nest_obj )
4750 jobs = foundation .get_jobs ()
4851 return {'jobs' : list (jobs .keys ())}, 200
4952
50- async def perform_post (self , request : Request , obj : App ) -> ResponseType :
51- foundation = AppFoundation (app = obj )
53+ async def perform_post (self , request : Request , nest_obj : App ) -> ResponseType :
54+ foundation = AppFoundation (app = nest_obj )
5255 jobs = foundation .build ()
5356 return {'jobs' : jobs }, 202
5457
55- async def perform_delete (self , request : Request , obj : App ) -> ResponseType :
58+ async def perform_put (self , request : Request , nest_obj : App ) -> ResponseType :
59+ raise exceptions .NotAllowedError ()
60+
61+ async def perform_delete (self , request : Request , nest_obj : App ) -> ResponseType :
5662 raise exceptions .NotAllowedError ()
5763
5864
@@ -83,6 +89,9 @@ async def perform_post(self, request: Request, nest_obj: App) -> ResponseType:
8389 }
8490 return payload , 201
8591
92+ async def perform_put (self , request : Request , nest_obj : App ) -> ResponseType :
93+ raise exceptions .NotAllowedError ()
94+
8695 async def perform_delete (self , request : Request , nest_obj : App ) -> ResponseType :
8796 for key in request .json :
8897 nest_obj .unset_env_var (key = key )
@@ -109,6 +118,9 @@ async def perform_post(self, request: Request, nest_obj: App) -> ResponseType:
109118 payload = new_obj .database .serialize ()
110119 return payload , 201
111120
121+ async def perform_put (self , request : Request , nest_obj : App ) -> ResponseType :
122+ raise exceptions .NotAllowedError ()
123+
112124 async def perform_delete (self , request : Request , nest_obj : App ) -> ResponseType :
113125 nest_obj .database = None
114126 nest_obj .save ()
@@ -133,7 +145,10 @@ async def perform_post(self, request: Request, nest_obj: App) -> ResponseType:
133145 # TODO Add support to re-deploy
134146 return {'trigger_id' : trigger_id }, 201
135147
136- async def perform_delete (self , request : Request , obj : App ) -> ResponseType :
148+ async def perform_put (self , request : Request , nest_obj : App ) -> ResponseType :
149+ raise exceptions .NotAllowedError ()
150+
151+ async def perform_delete (self , request : Request , nest_obj : App ) -> ResponseType :
137152 raise exceptions .NotAllowedError ()
138153
139154
0 commit comments