Adapt managed service to create VMDiskProduct

This commit is contained in:
fnux 2020-03-09 16:37:56 +01:00
commit a4cc4304f9
4 changed files with 45 additions and 15 deletions

View file

@ -36,6 +36,11 @@ class CreateVMDiskProductSerializer(serializers.ModelSerializer):
model = VMDiskProduct
fields = ['size_in_gb', 'image']
class CreateManagedVMDiskProductSerializer(serializers.ModelSerializer):
class Meta:
model = VMDiskProduct
fields = ['size_in_gb']
class VMDiskImageProductSerializer(serializers.ModelSerializer):
class Meta:
model = VMDiskImageProduct
@ -60,9 +65,10 @@ class ManagedVMProductSerializer(serializers.ModelSerializer):
"""
Managed VM serializer used in ungleich_service app.
"""
primary_disk = CreateManagedVMDiskProductSerializer()
class Meta:
model = VMProduct
fields = [ 'cores', 'ram_in_gb']
fields = [ 'cores', 'ram_in_gb', 'primary_disk']
class VMSnapshotProductSerializer(serializers.ModelSerializer):
class Meta:

View file

@ -89,7 +89,6 @@ class VMDiskProductViewSet(viewsets.ModelViewSet):
if size_in_gb < serializer.validated_data['image'].size_in_gb:
raise ValidationError(detail={ 'error_mesage': 'Size is smaller than original image' })
serializer.save(owner=request.user, size_in_gb=size_in_gb)
return Response(serializer.data)