Skip to content

Commit 4c879d8

Browse files
committed
Fix userdata not being found when added to a project
1 parent f19bffc commit 4c879d8

1 file changed

Lines changed: 11 additions & 0 deletions

File tree

cloudstack/resource_cloudstack_user_data.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ package cloudstack
2121

2222
import (
2323
"fmt"
24+
"log"
2425
"strings"
2526

2627
"github.com/apache/cloudstack-go/v2/cloudstack"
@@ -125,11 +126,21 @@ func resourceCloudStackUserDataRead(d *schema.ResourceData, meta interface{}) er
125126
p := cs.User.NewListUserDataParams()
126127
p.SetId(id)
127128

129+
if v, ok := d.GetOk("project_id"); ok {
130+
p.SetProjectid(v.(string))
131+
}
132+
128133
userdata, err := cs.User.ListUserData(p)
129134
if err != nil {
130135
return fmt.Errorf("Error retrieving user data with ID %s: %s", id, err)
131136
}
132137

138+
if len(userdata.UserData) == 0 {
139+
log.Printf("[DEBUG] User data %s no longer exists", id)
140+
d.SetId("")
141+
return nil
142+
}
143+
133144
d.Set("name", userdata.UserData[0].Name)
134145
d.Set("userdata", userdata.UserData[0].Userdata)
135146
if d.Get("account").(string) != "" {

0 commit comments

Comments
 (0)