code: def delete(gandi, background, force, resource):
      
      output_keys = ['id', 'type', 'step']
  
      resource = sorted(tuple(set(resource)))
      possible_resources = gandi.iaas.resource_list()
      for item in resource:
          if item not in possible_resources:
              gandi.echo('Sorry virtual machine %s does not exist' % item)
              gandi.echo('Please use one of the following: %s' %
                         possible_resources)
              return
  
      if not force:
          instance_info = "'%s'" % ', '.join(resource)
          proceed = click.confirm("Are you sure to delete Virtual Machine %s?" %
                                  instance_info)
  
          if not proceed:
              return
  
      iaas_list = gandi.iaas.list()
      stop_opers = []
      for item in resource:
          vm = next((vm for (index, vm) in enumerate(iaas_list)
                     if vm['hostname'] == item), gandi.iaas.info(item))
          if vm['state'] == 'running':
              if background:
                  gandi.echo('Virtual machine not stopped, background option '
                             'disabled')
                  background = False
              oper = gandi.iaas.stop(item, background)
              if not background:
                  stop_opers.append(oper)
  
      opers = gandi.iaas.delete(resource, background)
      if background:
          for oper in stop_opers + opers:
              output_generic(gandi, oper, output_keys)
  
      return opers
docs: Delete a virtual machine.
  
      Resource can be a Hostname or an ID