sudo87 commented on code in PR #331:
URL:
https://github.com/apache/cloudstack-terraform-provider/pull/331#discussion_r3892441710
##########
cloudstack/resource_cloudstack_ipaddress.go:
##########
@@ -276,23 +276,21 @@ func resourceCloudStackIPAddressRead(d
*schema.ResourceData, meta interface{}) e
}
func resourceCloudStackIPAddressDelete(d *schema.ResourceData, meta
interface{}) error {
- if !d.Get("is_source_nat").(bool) {
- cs := meta.(*cloudstack.CloudStackClient)
-
- // Create a new parameter struct
- p := cs.Address.NewDisassociateIpAddressParams(d.Id())
-
- // Disassociate the IP address
- if _, err := cs.Address.DisassociateIpAddress(p); err != nil {
- // This is a very poor way to be told the ID does no
longer exist :(
- if strings.Contains(err.Error(), fmt.Sprintf(
- "Invalid parameter id value=%s due to incorrect
long value format, "+
- "or entity does not exist", d.Id())) {
- return nil
- }
+ cs := meta.(*cloudstack.CloudStackClient)
- return fmt.Errorf("Error disassociating IP address %s:
%s", d.Id(), err)
+ // Create a new parameter struct
+ p := cs.Address.NewDisassociateIpAddressParams(d.Id())
+
+ // Disassociate the IP address
+ if _, err := cs.Address.DisassociateIpAddress(p); err != nil {
+ // This is a very poor way to be told the ID does no longer
exist :(
+ if strings.Contains(err.Error(), fmt.Sprintf(
+ "Invalid parameter id value=%s due to incorrect long
value format, "+
+ "or entity does not exist", d.Id())) {
+ return nil
}
+
+ return fmt.Errorf("Error disassociating IP address %s: %s",
d.Id(), err)
Review Comment:
Good suggestion in isolation, but every other error path in this file (lines
163, 171, 195, 306, etc.) uses %s rather than %w, and nothing downstream
unwraps these errors. Switching just this one line would be an inconsistent
one-off; happy to do a file-wide %w pass separately if that's wanted.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]