Skip to content

Commit 57b8f92

Browse files
authored
Merge pull request #70 from redpanda-data/fix-65
topic: provide hint when the topic already exists
2 parents 4549f76 + 4b133fa commit 57b8f92

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

redpanda/resources/topic/resource_topic.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,13 @@ func (t *Topic) Create(ctx context.Context, request resource.CreateRequest, resp
163163
},
164164
})
165165
if err != nil {
166+
if isAlreadyExistsError(err) {
167+
response.Diagnostics.AddError(
168+
fmt.Sprintf("Failed to create topic; topic %q already exists", model.Name.ValueString()),
169+
"Topic resource can be imported using 'terraform import redpanda_topic.<resource_name> <topic_name>,<cluster_id>'",
170+
)
171+
return
172+
}
166173
response.Diagnostics.AddError(fmt.Sprintf("failed to create topic %q", model.Name.ValueString()), err.Error())
167174
return
168175
}
@@ -353,3 +360,7 @@ func filterDynamicConfig(configs []*dataplanev1alpha1.Topic_Configuration) []*da
353360
}
354361
return filtered
355362
}
363+
364+
func isAlreadyExistsError(err error) bool {
365+
return strings.Contains(err.Error(), "TOPIC_ALREADY_EXISTS") || strings.Contains(err.Error(), "The topic has already been created")
366+
}

0 commit comments

Comments
 (0)