(context)
return resources
Generates multiple VMs that are copies of a single VM spec.
Generates multiple VMs that are copies of a single VM spec.
Generates multiple VMs that are copies of a single VM spec .
def GenerateMultipleComputeVMs(context):
  """Generates multiple VMs that are copies of a single VM spec."""
  prop = context.properties
  if VM_COPIES not in prop:
    raise common.Error('%s property is needed for multiple VM generation' %
                       VM_COPIES)
  use_endpoint = ENDPOINT_NAME in prop
  n_of_copies = prop[VM_COPIES]
  resources = []
  new_disks = []
  for idx in range(1, n_of_copies + 1):
    ctx = copy.deepcopy(context)
    idx_prop = ctx.properties
    ctx.env[default.NAME] += AddIdx(idx)
    # Do something with the instance name and with the disk names
    disk_prefix = ctx.env[default.NAME]
    if default.INSTANCE_NAME in idx_prop:
      idx_prop[default.INSTANCE_NAME] += AddIdx(idx)
      disk_prefix = idx_prop[default.INSTANCE_NAME]
    if default.DISKS in idx_prop:
      # Modifies the disks in idx_prop to have a unique name
      # Adding the vm extension to match the final hostname
      NameTheDisks(idx_prop[default.DISKS], disk_prefix)
    if use_endpoint:
      idx_prop[ENDPOINT_NAME] += AddIdx(idx)
    resources += vm_instance.GenerateComputeVM(ctx)
    resources += vm_instance.AddServiceEndpointIfNeeded(ctx)
    new_disks += common.AddDiskResourcesIfNeeded(ctx)
  AddDisksToContext(context, new_disks)
  return resources
def GenerateMultipleComputeVMs ( context ) : prop = context . properties if VM_COPIES not in prop : raise common . Error ( '%s property is needed for multiple VM generation' % VM_COPIES ) use_endpoint = ENDPOINT_NAME in prop n_of_copies = prop [ VM_COPIES ] resources = [ ] new_disks = [ ] for idx in range ( 1 , n_of_copies + 1 ) : ctx = copy . deepcopy ( context ) idx_prop = ctx . properties ctx . env [ default . NAME ] += AddIdx ( idx ) # Do something with the instance name and with the disk names disk_prefix = ctx . env [ default . NAME ] if default . INSTANCE_NAME in idx_prop : idx_prop [ default . INSTANCE_NAME ] += AddIdx ( idx ) disk_prefix = idx_prop [ default . INSTANCE_NAME ] if default . DISKS in idx_prop : # Modifies the disks in idx_prop to have a unique name # Adding the vm extension to match the final hostname NameTheDisks ( idx_prop [ default . DISKS ] , disk_prefix ) if use_endpoint : idx_prop [ ENDPOINT_NAME ] += AddIdx ( idx ) resources += vm_instance . GenerateComputeVM ( ctx ) resources += vm_instance . AddServiceEndpointIfNeeded ( ctx ) new_disks += common . AddDiskResourcesIfNeeded ( ctx ) AddDisksToContext ( context , new_disks ) return resources