code: func Bootstrap(url, name, org, role, caFile string) (*apitypes.BootstrapResponse, error) {
  	var err error
  	client, err := client.NewClient(url, caFile)
  	if err != nil {
  		return nil, fmt.Errorf("cannot initialize bootstrap client: %s", err)
  	}
  
  	identity, err := metadata()
  	if err != nil {
  		return nil, err
  	}
  
  	sig, err := signature()
  	if err != nil {
  		return nil, err
  	}
  
  	v := Verifier{
  		Identity:  identity,
  		Signature: sig,
  	}
  
  	if err := v.Verify(); err != nil {
  		return nil, err
  	}
  
  	var identityDoc identityDocument
  	json.Unmarshal(identity, &identityDoc)
  
  	if name == "" {
  		name = identityDoc.InstanceID
  	}
  
  	bootreq := apitypes.AWSBootstrapRequest{
  		Identity:      identity,
  		Signature:     sig,
  		ProvisionTime: identityDoc.PendingTime,
  
  		Machine: apitypes.MachineBootstrap{
  			Name: name,
  			Org:  org,
  			Team: role,
  		},
  	}
  
  	return client.Bootstrap("aws", bootreq)
  }
docs: // Bootstrap bootstraps a the AWS instance into a role to a given Gatekeeper instance