Beispiel #1
0
def _GetScalingChanges(args):
    """Returns the list of changes for scaling for given args."""
    result = []
    if 'min_instances' in args and args.min_instances is not None:
        scale_value = args.min_instances
        if scale_value.restore_default or scale_value.instance_count == 0:
            result.append(
                config_changes.DeleteTemplateAnnotationChange(
                    'autoscaling.knative.dev/minScale'))
        else:
            result.append(
                config_changes.SetTemplateAnnotationChange(
                    'autoscaling.knative.dev/minScale',
                    str(scale_value.instance_count)))
    if 'max_instances' in args and args.max_instances is not None:
        scale_value = args.max_instances
        if scale_value.restore_default:
            result.append(
                config_changes.DeleteTemplateAnnotationChange(
                    'autoscaling.knative.dev/maxScale'))
        else:
            result.append(
                config_changes.SetTemplateAnnotationChange(
                    'autoscaling.knative.dev/maxScale',
                    str(scale_value.instance_count)))
    return result
Beispiel #2
0
 def testDeleteTemplateAnnotationChange(self):
   self.template.annotations.update({
       'k': 'v',
       'k2': 'v2',
   })
   self.resource = config_changes.DeleteTemplateAnnotationChange(
       'k2').Adjust(self.resource)
   self.assertDictEqual({'k': 'v'}, dict(self.template.annotations))