gitea.tea/cmd/deploykeys
Ross Golder e499d0843c
feat: Add 'tea deploy-keys' command for repository deploy key management
Adds a top-level 'tea deploy-keys' command under ENTITIES, providing
list, create, delete, and detail-by-id operations over the existing
Gitea REST API at /repos/{owner}/{repo}/keys.

- New CmdDeployKeys registered alongside tea webhooks/branches/etc.
- Subcommands: list (with pagination + --fingerprint filter),
  create (<title> --key|--key-file [--read-only|--read-write]),
  delete (<key-id> --confirm|-y), and a default <key-id> detail view.
- The Gitea API has no edit endpoint; 'change' is documented as
  delete+create. No update subcommand is added.
- modules/print/deploy_key.go: DeployKeysList and DeployKeyDetails.
- Unit tests covering command metadata, flag wiring, key-material
  resolution (--key vs --key-file, mutual exclusion, missing file),
  delete confirmation logic, key-id parsing, and prompt formatting.
- README/CHANGELOG/CLI.md updated.

All four Gitea SDK methods used (CreateDeployKey, DeleteDeployKey,
GetDeployKey, ListDeployKeys) are already present in
code.gitea.io/sdk/gitea v0.23.2; no go.mod changes.

Refs #1066.

Signed-off-by: Ross Golder <ross@golder.org>
(cherry picked from commit 384540c91f9703d1e1b37dd6a8e51f502cc5f216)
2026-09-05 09:52:56 +07:00
..
create.go feat: Add 'tea deploy-keys' command for repository deploy key management 2026-09-05 09:52:56 +07:00
create_test.go feat: Add 'tea deploy-keys' command for repository deploy key management 2026-09-05 09:52:56 +07:00
delete.go feat: Add 'tea deploy-keys' command for repository deploy key management 2026-09-05 09:52:56 +07:00
delete_test.go feat: Add 'tea deploy-keys' command for repository deploy key management 2026-09-05 09:52:56 +07:00
list.go feat: Add 'tea deploy-keys' command for repository deploy key management 2026-09-05 09:52:56 +07:00
list_test.go feat: Add 'tea deploy-keys' command for repository deploy key management 2026-09-05 09:52:56 +07:00