django-orchestra/orchestra/contrib/webapps/backends/static.py
2023-11-26 09:52:03 +00:00

31 lines
1 KiB
Python

from django.utils.translation import gettext_lazy as _
from orchestra.contrib.orchestration import ServiceController
from . import WebAppServiceMixin
from orchestra.settings import NEW_SERVERS
class StaticController(WebAppServiceMixin, ServiceController):
"""
Static web pages.
Only creates the webapp dir and leaves the web server the decision to execute CGIs or not.
"""
verbose_name = _("Static")
default_route_match = "webapp.type == 'static'"
def save(self, webapp):
context = self.get_context(webapp)
if context.get('target_server').name in NEW_SERVERS:
self.check_webapp_dir(context)
self.set_under_construction(context)
else:
self.create_webapp_dir(context)
self.set_under_construction(context)
def delete(self, webapp):
context = self.get_context(webapp)
if context.get('target_server').name in NEW_SERVERS:
webapp.sftpuser.delete()
else:
self.delete_webapp_dir(context)