jumpserver/apps/ops/serializers/adhoc.py
fit2bot c96ae1022b
feat: Supports running adhoc,playbook with variable (#14417)
* perf:Create a job that supports adding node parameters

* feat: add variable model

* feat: Modify Variable and AdHoc models,

* feat: Parameters can be set when running job

* feat: Supports setting  variable type

* feat: Supports running adhoc with parameters

* feat: Supports running playbook with parameters

* fix: Translate

* feat: Support setting variables for scheduled tasks

* perf: Translate

---------

Co-authored-by: wangruidong <940853815@qq.com>
2024-11-07 10:38:34 +08:00

23 lines
1009 B
Python

# ~*~ coding: utf-8 ~*~
from __future__ import unicode_literals
from django.utils.translation import gettext_lazy as _
from rest_framework import serializers
from common.serializers import WritableNestedModelSerializer
from common.serializers.fields import ReadableHiddenField
from common.serializers.mixin import CommonBulkModelSerializer
from .mixin import ScopeSerializerMixin
from ..models import AdHoc
from ops.serializers import AdhocVariableSerializer
class AdHocSerializer(ScopeSerializerMixin, CommonBulkModelSerializer, WritableNestedModelSerializer):
creator = ReadableHiddenField(default=serializers.CurrentUserDefault())
variable = AdhocVariableSerializer(many=True, required=False, allow_null=True, label=_('Variable'))
class Meta:
model = AdHoc
read_only_field = ["id", "creator", "date_created", "date_updated", "created_by"]
fields_m2m = ['variable']
fields = read_only_field + fields_m2m + ["id", "name", "scope", "module", "args", "comment"]