Exemplo n.º 1
0
    def Run(self, args):
        holder = base_classes.ComputeApiHolder(self.ReleaseTrack())
        messages = holder.client.messages
        groups_client = node_groups.NodeGroupsClient(
            holder.client.apitools_client, messages, holder.resources)

        node_group_ref = flags.MakeNodeGroupArg().ResolveAsResource(
            args,
            holder.resources,
            scope_lister=compute_flags.GetDefaultScopeLister(holder.client))

        autoscaling_policy = (hasattr(args, 'autoscaler_mode') and args.IsSpecified('autoscaler_mode')) or \
                             (hasattr(args, 'min_nodes') and args.IsSpecified('min_nodes')) or \
                             (hasattr(args, 'max_nodes') and args.IsSpecified('max_nodes'))

        share_setting = hasattr(args, 'share_setting') and hasattr(
            args, 'share_with') and (args.IsSpecified('share_setting')
                                     or args.IsSpecified('share_with'))

        return groups_client.Update(
            node_group_ref,
            node_template=args.node_template,
            additional_node_count=args.add_nodes,
            delete_nodes=args.delete_nodes,
            autoscaling_policy_args=args if autoscaling_policy else None,
            share_setting_args=args if share_setting else None)
Exemplo n.º 2
0
    def Run(self, args):
        holder = base_classes.ComputeApiHolder(self.ReleaseTrack())
        messages = holder.client.messages
        groups_client = node_groups.NodeGroupsClient(
            holder.client.apitools_client, messages, holder.resources)

        node_group_ref = flags.MakeNodeGroupArg().ResolveAsResource(
            args,
            holder.resources,
            scope_lister=compute_flags.GetDefaultScopeLister(holder.client))

        return groups_client.Update(node_group_ref,
                                    node_template=args.node_template,
                                    additional_node_count=args.add_nodes,
                                    delete_node_indexes=args.delete_nodes)