diff --git a/pkg/convertor.go b/pkg/convertor.go index 6c61e7e..edf59c5 100644 --- a/pkg/convertor.go +++ b/pkg/convertor.go @@ -60,6 +60,8 @@ func computeResourceID(resource parser.TerraformResource) string { return fmt.Sprintf("%s|%s", getValue("plan_id"), getValue("id")) case "aws_vpc_endpoint_route_table_association": return fmt.Sprintf("%s/%s", getValue("vpc_endpoint_id"), getValue("route_table_id")) + case "aws_cognito_user_pool_client": + return fmt.Sprintf("%s/%s", getValue("user_pool_id"), getValue("id")) default: return getValue("id") } diff --git a/pkg/convertor_test.go b/pkg/convertor_test.go index 524b126..0bd0478 100644 --- a/pkg/convertor_test.go +++ b/pkg/convertor_test.go @@ -299,6 +299,22 @@ func Test_ComputeTerraformImportForResource(t *testing.T) { SupportsImport: true, }, }, + { + name: "For aws_cognito_user_pool_client", + terraformResource: parser.TerraformResource{ + Address: "aws_cognito_user_pool_client.test", + Type: "aws_cognito_user_pool_client", + AttributeValues: map[string]any{ + "user_pool_id": "user_pool_id", + "id": "id", + }, + }, + expected: TerraformImport{ + ResourceAddress: "aws_cognito_user_pool_client.test", + ResourceID: "user_pool_id/id", + SupportsImport: true, + }, + }, { name: "For everything else", terraformResource: parser.TerraformResource{