Add token remove command

This commit is contained in:
mpabi
2026-04-26 22:19:22 +02:00
parent 55c52c7b4f
commit bd2d530852
4 changed files with 202 additions and 8 deletions
+25 -2
View File
@@ -17,6 +17,10 @@ Sa dwa miejsca, w ktorych moga byc zapisane dane dostepowe:
`tokens update r1` nie synchronizuje sekretu; tylko pobiera z API metadane
tokenu: `valid`, `scope`, `org_perm` i `repo_perm`.
W podstawowym flow `tokens.json` synchronizujemy z repo `rv-launcher`. Remoty
kart pracy i repo odpowiedzi sa generowane jako pochodne konfiguracji launchera,
nie jako osobne zrodla prawdy dla tokenow.
## Format `tokens.json`
Aktualny format to `version: 3`. Glownym rekordem jest remote-token. Pole
@@ -177,7 +181,7 @@ Read-only. Czyta remote URL-e i `tokens.json`, a potem wypisuje tabele
### `tokens sync remote REMOTE_ID`
Kopiuje dane dostepowe z git remote do `tokens.json`. Nie pobiera metadanych z
API.
API. Bez `--repo` czyta repo zawierajace `rvctl`.
```bash
./rvctl tokens sync remote r1
@@ -197,13 +201,32 @@ Nie zmienia git remote URL-a i nie kopiuje sekretu z remote.
### `tokens sync store REMOTE_ID`
Zapisuje dane z rekordu `REMOTE_ID` w `tokens.json` do git remote o tej samej
nazwie.
nazwie. Bez `--repo` zapisuje do repo zawierajacego `rvctl`.
```bash
./rvctl tokens sync store r1 --repo ~/dev/workspace/rv/series/inf/03
./rvctl tokens sync store r1 --repo PATH --replace
```
### `tokens remove store|remote|both REMOTE_ID`
Usuwa rekord `REMOTE_ID` z `tokens.json`, git remote albo oba miejsca.
Domyslnym repo dla `remote` i `both` jest repo, w ktorym lezy `rvctl`. Inne
repo mozna wskazac przez `--repo PATH`.
```bash
./rvctl tokens remove store r1
./rvctl tokens remove remote r1
./rvctl tokens remove both r1
./rvctl tokens remove remote r1 --repo ~/dev/workspace/rv/series/inf/03
```
Przelaczniki:
- `--server ENDPOINT` - rozroznia rekord w `tokens.json`, jezeli ten sam `id` wystepuje dla wielu serwerow
- `--repo PATH` - repo, z ktorego usuwany jest git remote
- `--dry-run` - pokazuje plan bez usuwania
### `tokens read`
Pokazuje zawartosc `tokens.json`.