예제 #1
0
 def Args(cls, parser):
     flags.MakeCommitmentArg(False).AddArgument(parser,
                                                operation_type='create')
     flags.AddCreateFlags(parser, enable_ssd_and_accelerator_support=True)
     flags.AddReservationArgGroup(parser)
     messages = apis.GetMessagesModule('compute', 'alpha')
     flags.GetTypeMapperFlag(messages).choice_arg.AddToParser(parser)
예제 #2
0
def _CommonArgsAlphaBeta(track, parser):
  """Add common flags for Alpha, Beta track."""
  flags.MakeCommitmentArg(False).AddArgument(parser, operation_type='create')
  flags.AddCreateFlags(parser, enable_ssd_and_accelerator_support=True)
  flags.AddReservationArgGroup(parser)
  messages = apis.GetMessagesModule('compute', track)
  flags.GetTypeMapperFlag(messages).choice_arg.AddToParser(parser)
예제 #3
0
    def _MakeCreateRequest(self, args, messages, project, region,
                           commitment_ref, holder):

        if (args.split_source_commitment is not None
                and args.merge_source_commitments is not None):
            raise Exception(
                'It is not possible to merge and split in one request')

        commitment_type_flag = flags.GetTypeMapperFlag(messages)
        commitment_type = commitment_type_flag.GetEnumForChoice(args.type)
        commitment = messages.Commitment(
            reservations=reservation_helper.MakeReservations(
                args, messages, holder),
            name=commitment_ref.Name(),
            plan=flags.TranslatePlanArg(messages, args.plan),
            resources=flags.TranslateResourcesArgGroup(messages, args),
            type=commitment_type,
            autoRenew=flags.TranslateAutoRenewArg(args),
            splitSourceCommitment=args.split_source_commitment,
            mergeSourceCommitments=flags.TranslateMergeArg(
                args.merge_source_commitments))
        return messages.ComputeRegionCommitmentsInsertRequest(
            commitment=commitment,
            project=project,
            region=commitment_ref.region,
        )
예제 #4
0
 def Args(cls, parser):
     flags.MakeCommitmentArg(False).AddArgument(parser,
                                                operation_type='create')
     flags.AddCreateFlags(parser)
     flags.AddAllocationArgGroup(parser)
     messages = apis.GetMessagesModule('compute', 'alpha')
     flags.GetTypeMapperFlag(messages).choice_arg.AddToParser(parser)
예제 #5
0
 def _MakeCreateRequest(self, args, messages, project, region,
                        commitment_ref):
     commitment_type_flag = flags.GetTypeMapperFlag(messages)
     commitment_type = commitment_type_flag.GetEnumForChoice(args.type)
     commitment = messages.Commitment(
         name=commitment_ref.Name(),
         plan=flags.TranslatePlanArg(messages, args.plan),
         resources=flags.TranslateResourcesArg(messages, args.resources),
         type=commitment_type)
     return messages.ComputeRegionCommitmentsInsertRequest(
         commitment=commitment,
         project=project,
         region=commitment_ref.region,
     )
예제 #6
0
 def _MakeCreateRequest(self, args, messages, project, region,
                        commitment_ref, holder):
     commitment_type_flag = flags.GetTypeMapperFlag(messages)
     commitment_type = commitment_type_flag.GetEnumForChoice(args.type)
     commitment = messages.Commitment(
         reservations=reservation_helper.MakeReservations(
             args, messages, holder),
         name=commitment_ref.Name(),
         plan=flags.TranslatePlanArg(messages, args.plan),
         resources=flags.TranslateResourcesArgGroup(messages, args),
         type=commitment_type,
         autoRenew=flags.TranslateAutoRenewArg(args))
     return messages.ComputeRegionCommitmentsInsertRequest(
         commitment=commitment,
         project=project,
         region=commitment_ref.region,
     )
예제 #7
0
def _CommonArgsAlphaBeta(track, parser):
    """Add common flags for Alpha, Beta track."""
    flags.MakeCommitmentArg(False).AddArgument(parser, operation_type='create')
    flags.AddCreateFlags(parser)
    messages = apis.GetMessagesModule('compute', track)
    flags.GetTypeMapperFlag(messages).choice_arg.AddToParser(parser)