diff --git a/cloudstack/resource_cloudstack_user_data.go b/cloudstack/resource_cloudstack_user_data.go index 65a3d2ca..5f507a8b 100644 --- a/cloudstack/resource_cloudstack_user_data.go +++ b/cloudstack/resource_cloudstack_user_data.go @@ -125,11 +125,19 @@ 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 { + return fmt.Errorf("No user data found with ID %s", id) + } + d.Set("name", userdata.UserData[0].Name) d.Set("userdata", userdata.UserData[0].Userdata) if d.Get("account").(string) != "" {