Skip to content

feat(resources): tag vpc, security groups, vks, iam, network, storage and ssh - #267

Open
wesleip wants to merge 3 commits into
virtfoundry:mainfrom
wesleip:feat/resource-tags
Open

wesleip wants to merge 3 commits into
virtfoundry:mainfrom
wesleip:feat/resource-tags

Conversation

@wesleip

@wesleip wesleip commented Oct 19, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Adds a tags list to VPC, SecurityGroup, VKSCluster, IAM (User/Role/APIKey), Network, Volume, Snapshot, VMSnapshot and SSHKeyPair — mirroring the VM Instance.spec.tags already shipped.

  • Create endpoints accept tags; new tag-only PATCH endpoints (/vks/clusters/{name}, /api-keys/{id}, /volumes/{id}, /snapshots/{id}, /vm-snapshots/{id}, /ssh-keys/{id}) and the existing PATCH for vpcs, security-groups, users, roles and networks accept tags while keeping the remaining fields optional.
  • Tags are normalized server-side (trim, drop blanks, dedupe) and persisted on each CR spec.tags.
  • UI: reusable TagsInput / TagPills / TagsEditorModal, plus a Tags column and an "Edit tags" action across the console pages.
  • Also drops a duplicate POST /vm-snapshots/delete route found while reviewing.

Note: tags are persisted on the CR spec.tags; the CRDs must accept that field for read-back/list to round-trip (operator repo).

Test plan

  • go test ./...
  • cd ui && npm run build
  • Cluster deploy from helm-charts (if applicable): helm upgrade or chart make lint
  • Wiki updated (if behavior or ops changed)

… and ssh

Add a `tags` list to VPC, SecurityGroup, VKSCluster, IAM
(User/Role/APIKey), Network, Volume, Snapshot, VMSnapshot and SSHKeyPair,
mirroring the VM `Instance.spec.tags` shipped with the redesigned console.

- Create endpoints accept `tags`. New tag-only PATCH endpoints
  (`/vks/clusters/{name}`, `/api-keys/{id}`, `/volumes/{id}`,
  `/snapshots/{id}`, `/vm-snapshots/{id}`, `/ssh-keys/{id}`) and the
  existing PATCH for vpcs, security-groups, users, roles and networks
  accept `tags` while keeping the remaining fields optional.
- Tags are normalized server-side (trim, drop blanks, dedupe) and
  persisted on each CR `spec.tags`.
- The console gains a reusable `TagsInput` / `TagPills` / `TagsEditorModal`
  plus a Tags column and an "Edit tags" action on the vpc, security
  groups, clusters, iam, networks, volumes, snapshots, vm snapshots and
  ssh keys pages.
- Drop the duplicate `POST /vm-snapshots/delete` route.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant