pref: 修改 applet deployments

pull/9013/head
ibuler 2022-11-02 19:07:07 +08:00
parent 956367cfed
commit 23e44c49b5
6 changed files with 7 additions and 6 deletions

View File

@ -12,6 +12,7 @@ class Trigger(models.TextChoices):
class Status(models.TextChoices):
ready = 'ready', _('Ready')
pending = 'pending', _("Pending")
running = 'running', _("Running")
success = 'success', _("Success")

View File

@ -51,7 +51,7 @@ class LabeledChoiceField(ChoiceField):
}
def to_representation(self, value):
if value in ('', None):
if value is None:
return value
return {
'value': value,

View File

@ -116,4 +116,5 @@ class AppletViewSet(DownloadUploadMixin, viewsets.ModelViewSet):
class AppletPublicationViewSet(viewsets.ModelViewSet):
queryset = AppletPublication.objects.all()
serializer_class = serializers.AppletPublicationSerializer
filterset_fields = ['host', 'applet']
filterset_fields = ['host', 'applet', 'status']
search_fields = ['applet__name', 'applet__display_name', 'host__name']

View File

@ -57,7 +57,7 @@ class Applet(JMSBaseModel):
class AppletPublication(JMSBaseModel):
applet = models.ForeignKey('Applet', on_delete=models.PROTECT, related_name='publications', verbose_name=_('Applet'))
host = models.ForeignKey('AppletHost', on_delete=models.PROTECT, related_name='publications', verbose_name=_('Host'))
status = models.CharField(max_length=16, default='', verbose_name=_('Status'))
status = models.CharField(max_length=16, default='ready', verbose_name=_('Status'))
comment = models.TextField(default='', blank=True, verbose_name=_('Comment'))
class Meta:

View File

@ -17,7 +17,7 @@ class AppletUploadSerializer(serializers.Serializer):
class AppletPublicationSerializer(serializers.ModelSerializer):
applet = ObjectRelatedField(attrs=('id', 'display_name', 'icon'), queryset=Applet.objects.all())
applet = ObjectRelatedField(attrs=('id', 'display_name', 'icon', 'version'), queryset=Applet.objects.all())
host = ObjectRelatedField(queryset=AppletHost.objects.all())
status = LabeledChoiceField(choices=Status.choices, label=_("Status"))

View File

@ -11,8 +11,7 @@ import jms_storage
from common.utils import get_logger
from . import const
from .models import ReplayStorage
from tickets.models import TicketSession, TicketStep, TicketAssignee
from tickets.const import StepState
from tickets.models import TicketSession
logger = get_logger(__name__)