Esempio n. 1
0
  def BuildShieldedVMConfigMessage(self, messages, args):
    # Set the default values for ShieledVmConfig parameters

    shieldedvm_config_message = None
    if (hasattr(args, 'shielded_vm_secure_boot') or
        hasattr(args, 'shielded_vm_vtpm') or
        hasattr(args, 'shielded_vm_integrity_monitoring')):
      enable_secure_boot = None
      enable_vtpm = None
      enable_integrity_monitoring = None

      if (not args.IsSpecified('shielded_vm_secure_boot') and
          not args.IsSpecified('shielded_vm_vtpm') and
          not args.IsSpecified('shielded_vm_integrity_monitoring')):
        return shieldedvm_config_message
      if args.shielded_vm_secure_boot is not None:
        enable_secure_boot = args.shielded_vm_secure_boot
      if args.shielded_vm_vtpm is not None:
        enable_vtpm = args.shielded_vm_vtpm
      if args.shielded_vm_integrity_monitoring is not None:
        enable_integrity_monitoring = args.shielded_vm_integrity_monitoring
      # compute message fot shielded VM configuration.
      shieldedvm_config_message = instance_utils.CreateShieldedVmConfigMessage(
          messages,
          enable_secure_boot,
          enable_vtpm,
          enable_integrity_monitoring)

    return shieldedvm_config_message
 def _BuildShieldedVMConfigMessage(self, messages, args):
     if (args.IsSpecified('shielded_vm_secure_boot')
             or args.IsSpecified('shielded_vm_vtpm')
             or args.IsSpecified('shielded_vm_integrity_monitoring')):
         return instance_utils.CreateShieldedVmConfigMessage(
             messages, args.shielded_vm_secure_boot, args.shielded_vm_vtpm,
             args.shielded_vm_integrity_monitoring)
     else:
         return None
Esempio n. 3
0
    def _GetShieldedVMConfigRef(self, instance_ref, args, holder):
        client = holder.client.apitools_client
        messages = holder.client.messages

        if (args.shielded_vm_secure_boot is None
                and args.shielded_vm_vtpm is None):
            return None
        shieldedvm_config_message = instance_utils.CreateShieldedVmConfigMessage(
            messages, args.shielded_vm_secure_boot, args.shielded_vm_vtpm)

        request = messages.ComputeInstancesUpdateShieldedVmConfigRequest(
            instance=instance_ref.Name(),
            project=instance_ref.project,
            shieldedVmConfig=shieldedvm_config_message,
            zone=instance_ref.zone)

        operation = client.instances.UpdateShieldedVmConfig(request)
        return holder.resources.Parse(operation.selfLink,
                                      collection='compute.zoneOperations')
Esempio n. 4
0
def BuildShieldedVMConfigMessage(messages, args):
  """Common routine for creating instance template.

  Build a shielded VM config message.

  Args:
      messages: The client messages.
      args: the arguments passed to the test.

  Returns:
      A shielded VM config message.
  """
  # Set the default values for ShieldedVmConfig parameters

  shielded_vm_config_message = None
  enable_secure_boot = None
  enable_vtpm = None
  enable_integrity_monitoring = None
  if not (hasattr(args, 'shielded_vm_secure_boot') or
          hasattr(args, 'shielded_vm_vtpm') or
          hasattr(args, 'shielded_vm_integrity_monitoring')):
    return shielded_vm_config_message

  if (not args.IsSpecified('shielded_vm_secure_boot') and
      not args.IsSpecified('shielded_vm_vtpm') and
      not args.IsSpecified('shielded_vm_integrity_monitoring')):
    return shielded_vm_config_message

  if args.shielded_vm_secure_boot is not None:
    enable_secure_boot = args.shielded_vm_secure_boot
  if args.shielded_vm_vtpm is not None:
    enable_vtpm = args.shielded_vm_vtpm
  if args.shielded_vm_integrity_monitoring is not None:
    enable_integrity_monitoring = args.shielded_vm_integrity_monitoring
  # compute message for shielded VM configuration.
  shielded_vm_config_message = instance_utils.CreateShieldedVmConfigMessage(
      messages,
      enable_secure_boot,
      enable_vtpm,
      enable_integrity_monitoring)

  return shielded_vm_config_message