removed policy_instance variables from container groups default values in the API put/patch view

This commit is contained in:
Rebeccah
2019-10-22 15:57:06 -04:00
committed by Ryan Petrello
parent d25e6249fd
commit 4bbdce3478
3 changed files with 6 additions and 11 deletions

View File

@@ -318,12 +318,11 @@ class GenericAPIView(generics.GenericAPIView, APIView):
if getattr(field, 'read_only', None):
del serializer.fields[name]
# Additionally, remove the following fields if an instance group is containerized.
if name == 'is_containerized':
import sdb
sdb.set_trace()
del serializer.fields['policy_instance_percentage']
del serializer.fields['policy_instance_minimum']
del serializer.fields['policy_instance_list']
if name == 'is_containerized' and type(serializer) == InstanceGroupSerializer:
if serializer.instance is not None and serializer.instance.is_containerized:
del serializer.fields['policy_instance_percentage']
del serializer.fields['policy_instance_minimum']
del serializer.fields['policy_instance_list']
serializer._data = self.update_raw_data(serializer.data)
return serializer

View File

@@ -4802,7 +4802,7 @@ class InstanceGroupSerializer(BaseSerializer):
if self.instance and self.instance.controller_id is not None:
raise serializers.ValidationError(_('Isolated instance group membership may not be managed via the API.'))
if self.instance.is_containerized:
raise serializers.ValidationError(_('Containerized instances may not be managed via the API'))
raise serializers.ValidationError(_('Containerized instances may not be managed via the API'))
return value
def validate_policy_instance_percentage(self, value):