Skip to content

Commit

Permalink
Add remove tctl command for AutoUpdateConfig and AutoUpdateVersion (#…
Browse files Browse the repository at this point in the history
  • Loading branch information
vapopov committed Dec 2, 2024
1 parent 1ffe97e commit 305a0a9
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 0 deletions.
12 changes: 12 additions & 0 deletions tool/tctl/common/resource_command.go
Original file line number Diff line number Diff line change
Expand Up @@ -1460,6 +1460,8 @@ func (rc *ResourceCommand) Delete(ctx context.Context, client *authclient.Client
types.KindInstaller,
types.KindUIConfig,
types.KindNetworkRestrictions,
types.KindAutoUpdateConfig,
types.KindAutoUpdateVersion,
}
if !slices.Contains(singletonResources, rc.ref.Kind) && (rc.ref.Kind == "" || rc.ref.Name == "") {
return trace.BadParameter("provide a full resource name to delete, for example:\n$ tctl rm cluster/east\n")
Expand Down Expand Up @@ -1843,6 +1845,16 @@ func (rc *ResourceCommand) Delete(ctx context.Context, client *authclient.Client
return trace.Wrap(err)
}
fmt.Printf("SPIFFE federation %q has been deleted\n", rc.ref.Name)
case types.KindAutoUpdateConfig:
if err := client.DeleteAutoUpdateConfig(ctx); err != nil {
return trace.Wrap(err)
}
fmt.Printf("AutoUpdateConfig has been deleted\n")
case types.KindAutoUpdateVersion:
if err := client.DeleteAutoUpdateVersion(ctx); err != nil {
return trace.Wrap(err)
}
fmt.Printf("AutoUpdateVersion has been deleted\n")
default:
return trace.BadParameter("deleting resources of type %q is not supported", rc.ref.Kind)
}
Expand Down
12 changes: 12 additions & 0 deletions tool/tctl/common/resource_command_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -2226,6 +2226,12 @@ version: v1
protocmp.IgnoreFields(&headerv1.Metadata{}, "id", "revision"),
protocmp.Transform(),
))

// Delete the resource
_, err = runResourceCommand(t, clt, []string{"rm", types.KindAutoUpdateConfig})
require.NoError(t, err)
_, err = runResourceCommand(t, clt, []string{"get", types.KindAutoUpdateConfig})
require.ErrorContains(t, err, "autoupdate_config \"autoupdate-config\" doesn't exist")
}

func testCreateAutoUpdateVersion(t *testing.T, clt *authclient.Client) {
Expand Down Expand Up @@ -2261,6 +2267,12 @@ version: v1
protocmp.IgnoreFields(&headerv1.Metadata{}, "id", "revision"),
protocmp.Transform(),
))

// Delete the resource
_, err = runResourceCommand(t, clt, []string{"rm", types.KindAutoUpdateVersion})
require.NoError(t, err)
_, err = runResourceCommand(t, clt, []string{"get", types.KindAutoUpdateVersion})
require.ErrorContains(t, err, "autoupdate_version \"autoupdate-version\" doesn't exist")
}

func TestPluginResourceWrapper(t *testing.T) {
Expand Down

0 comments on commit 305a0a9

Please sign in to comment.