From 4c879d8652f1cc927ce78e73efb02d12ddc36a9b Mon Sep 17 00:00:00 2001 From: Stijn Simons Date: Fri, 10 Jul 2026 12:29:11 +0000 Subject: [PATCH] Fix userdata not being found when added to a project --- cloudstack/resource_cloudstack_user_data.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/cloudstack/resource_cloudstack_user_data.go b/cloudstack/resource_cloudstack_user_data.go index 65a3d2ca..1197e8f3 100644 --- a/cloudstack/resource_cloudstack_user_data.go +++ b/cloudstack/resource_cloudstack_user_data.go @@ -21,6 +21,7 @@ package cloudstack import ( "fmt" + "log" "strings" "github.com/apache/cloudstack-go/v2/cloudstack" @@ -125,11 +126,21 @@ func resourceCloudStackUserDataRead(d *schema.ResourceData, meta interface{}) er p := cs.User.NewListUserDataParams() p.SetId(id) + if v, ok := d.GetOk("project_id"); ok { + p.SetProjectid(v.(string)) + } + userdata, err := cs.User.ListUserData(p) if err != nil { return fmt.Errorf("Error retrieving user data with ID %s: %s", id, err) } + if len(userdata.UserData) == 0 { + log.Printf("[DEBUG] User data %s no longer exists", id) + d.SetId("") + return nil + } + d.Set("name", userdata.UserData[0].Name) d.Set("userdata", userdata.UserData[0].Userdata) if d.Get("account").(string) != "" {