internal/elasticsearch/security/api_key/delete.go (29 lines of code) (raw):

package api_key import ( "context" "github.com/elastic/terraform-provider-elasticstack/internal/clients" "github.com/elastic/terraform-provider-elasticstack/internal/clients/elasticsearch" "github.com/hashicorp/terraform-plugin-framework/resource" ) func (r *Resource) Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.DeleteResponse) { var stateModel tfModel resp.Diagnostics.Append(req.State.Get(ctx, &stateModel)...) if resp.Diagnostics.HasError() { return } client, diags := clients.MaybeNewApiClientFromFrameworkResource(ctx, stateModel.ElasticsearchConnection, r.client) resp.Diagnostics.Append(diags...) if resp.Diagnostics.HasError() { return } compId, diags := stateModel.GetID() resp.Diagnostics.Append(diags...) if resp.Diagnostics.HasError() { return } resp.Diagnostics.Append(elasticsearch.DeleteApiKey(client, compId.ResourceId)...) if resp.Diagnostics.HasError() { return } resp.State.RemoveResource(ctx) }