Skip to content
This repository was archived by the owner on Jan 15, 2024. It is now read-only.

Commit 8f114cc

Browse files
Folder: Add option to force delete folder
grafana/terraform-provider-grafana#855
1 parent 303710b commit 8f114cc

File tree

1 file changed

+15
-2
lines changed

1 file changed

+15
-2
lines changed

folder.go

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,20 @@ func (c *Client) UpdateFolder(uid string, title string, newUID ...string) error
112112
return c.request("PUT", fmt.Sprintf("/api/folders/%s", uid), nil, bytes.NewBuffer(data), nil)
113113
}
114114

115+
func ForceDeleteFolderRules() url.Values {
116+
query := make(url.Values)
117+
query.Set("forceDeleteRules", "true")
118+
return query
119+
}
120+
115121
// DeleteFolder deletes the folder whose ID it's passed.
116-
func (c *Client) DeleteFolder(id string) error {
117-
return c.request("DELETE", fmt.Sprintf("/api/folders/%s", id), nil, nil, nil)
122+
func (c *Client) DeleteFolder(id string, optionalQuery ...url.Values) error {
123+
var query url.Values
124+
if len(optionalQuery) > 1 {
125+
return fmt.Errorf("too many arguments. Expected 1 or 2")
126+
} else if len(optionalQuery) == 1 {
127+
query = optionalQuery[0]
128+
}
129+
130+
return c.request("DELETE", fmt.Sprintf("/api/folders/%s", id), query, nil, nil)
118131
}

0 commit comments

Comments
 (0)