Skip to content
Snippets Groups Projects

Support extra_files in RQ tasks

Merged ml bonhomme requested to merge rq-task-extra-files into master
All threads resolved!
Files
5
@@ -605,6 +605,7 @@ class DockerWorkerVersionSerializer(serializers.ModelSerializer):
)
gpu_usage = EnumField(FeatureUsage, required=False, default=FeatureUsage.Disabled)
model_usage = EnumField(FeatureUsage, required=False, default=FeatureUsage.Disabled)
configuration = serializers.DictField(required=False, default={})
class Meta:
model = WorkerVersion
@@ -630,6 +631,20 @@ class DockerWorkerVersionSerializer(serializers.ModelSerializer):
}
}
def validate_configuration(self, configuration):
errors = defaultdict(list)
user_configuration = configuration.get("user_configuration")
if not user_configuration:
return configuration
field = serializers.DictField(child=UserConfigurationFieldSerializer())
try:
field.to_internal_value(user_configuration)
except ValidationError as e:
errors["user_configuration"].append(e.detail)
if errors:
raise ValidationError(errors)
return configuration
@transaction.atomic
def create(self, validated_data):
"""
Loading