func TestDelete(t *testing.T) { th.SetupHTTP() defer th.TeardownHTTP() HandleDeleteSuccessfully(t) err := floatingips.Delete(client.ServiceClient(), "1").ExtractErr() th.AssertNoErr(t, err) }
// DeleteFloatingIP will de-allocate a floating IP. A fatal error will occur if // the floating IP failed to de-allocate. This works best when using it as a // deferred function. func DeleteFloatingIP(t *testing.T, client *gophercloud.ServiceClient, floatingIP *floatingips.FloatingIP) { err := floatingips.Delete(client, floatingIP.ID).ExtractErr() if err != nil { t.Fatalf("Unable to delete floating IP %s: %v", floatingIP.ID, err) } t.Logf("Deleted floating IP: %s", floatingIP.ID) }
func resourceComputeFloatingIPV2Delete(d *schema.ResourceData, meta interface{}) error { config := meta.(*Config) computeClient, err := config.computeV2Client(d.Get("region").(string)) if err != nil { return fmt.Errorf("Error creating OpenStack compute client: %s", err) } log.Printf("[DEBUG] Deleting Floating IP %s", d.Id()) if err := floatingips.Delete(computeClient, d.Id()).ExtractErr(); err != nil { return fmt.Errorf("Error deleting Floating IP: %s", err) } return nil }
func (s *StepAllocateIp) Cleanup(state multistep.StateBag) { config := state.Get("config").(Config) ui := state.Get("ui").(packer.Ui) instanceIp := state.Get("access_ip").(*floatingips.FloatingIP) // We need the v2 compute client client, err := config.computeV2Client() if err != nil { ui.Error(fmt.Sprintf( "Error deleting temporary floating IP %s", instanceIp.IP)) return } if s.FloatingIpPool != "" && instanceIp.ID != "" { if err := floatingips.Delete(client, instanceIp.ID).ExtractErr(); err != nil { ui.Error(fmt.Sprintf( "Error deleting temporary floating IP %s", instanceIp.IP)) return } ui.Say(fmt.Sprintf("Deleted temporary floating IP %s", instanceIp.IP)) } }