Skip to content

Commit 19f85ef

Browse files
authored
delete targets by id (#4681)
1 parent 62bad5b commit 19f85ef

File tree

2 files changed

+22
-3
lines changed

2 files changed

+22
-3
lines changed

api/client/deployment_target.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import (
44
"context"
55
"fmt"
66

7+
"github.com/google/uuid"
78
"github.com/porter-dev/porter/api/types"
89
)
910

@@ -49,10 +50,10 @@ func (c *Client) ListDeploymentTargets(
4950
func (c *Client) DeleteDeploymentTarget(
5051
ctx context.Context,
5152
projectId uint,
52-
deploymentTargetName string,
53+
deploymentTargetID uuid.UUID,
5354
) error {
5455
return c.deleteRequest(
55-
fmt.Sprintf("/projects/%d/targets/%s", projectId, deploymentTargetName),
56+
fmt.Sprintf("/projects/%d/targets/%s", projectId, deploymentTargetID.String()),
5657
nil,
5758
nil,
5859
)

cli/cmd/commands/target.go

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import (
1010
"text/tabwriter"
1111

1212
"github.com/fatih/color"
13+
"github.com/google/uuid"
1314
api "github.com/porter-dev/porter/api/client"
1415
"github.com/porter-dev/porter/api/types"
1516
"github.com/porter-dev/porter/cli/cmd/config"
@@ -171,7 +172,24 @@ func deleteTarget(ctx context.Context, _ *types.GetAuthenticatedUserResponse, cl
171172
return nil
172173
}
173174

174-
err = client.DeleteDeploymentTarget(ctx, cliConf.Project, name)
175+
// assume deletion will be for preview environments only for now
176+
dts, err := client.ListDeploymentTargets(ctx, cliConf.Project, true)
177+
if err != nil {
178+
return fmt.Errorf("error listing targets: %w", err)
179+
}
180+
181+
var targetID uuid.UUID
182+
for _, dt := range dts.DeploymentTargets {
183+
if dt.Name == name {
184+
targetID = dt.ID
185+
break
186+
}
187+
}
188+
if targetID == uuid.Nil {
189+
return fmt.Errorf("target '%s' not found", name)
190+
}
191+
192+
err = client.DeleteDeploymentTarget(ctx, cliConf.Project, targetID)
175193
if err != nil {
176194
return fmt.Errorf("error deleting target: %w", err)
177195
}

0 commit comments

Comments
 (0)