Skip to content
Snippets Groups Projects

Ponos task authentication

Merged Erwan Rouchet requested to merge ponos-auth into master
All threads resolved!
2 files
+ 68
1
Compare changes
  • Side-by-side
  • Inline
Files
2
@@ -8,6 +8,7 @@ from drf_spectacular.utils import extend_schema_field
from rest_framework import serializers
from rest_framework.exceptions import ValidationError
from arkindex.ponos.models import Task
from arkindex.process.models import (
Process,
Repository,
@@ -302,6 +303,12 @@ class WorkerActivitySerializer(serializers.ModelSerializer):
'worker_version_id',
)
def validate_process_id(self, process):
request = self.context.get('request')
if request and isinstance(request.auth, Task) and process.workflow_id != request.auth.workflow_id:
raise serializers.ValidationError('Only WorkerActivities for the process of the currently authenticated task can be updated.')
return process
class WorkerConfigurationListSerializer(serializers.ModelSerializer):
configuration = serializers.DictField(allow_empty=False)
Loading