Add rvctl entrypoint and docs

This commit is contained in:
mpabi
2026-04-26 13:50:30 +02:00
parent 331e87ff90
commit c57c14ee63
8 changed files with 586 additions and 538 deletions
+24 -13
View File
@@ -3,8 +3,8 @@
Launcher do workspace `rv`.
- `workspace.json` trzyma sciezki repo oryginalnych, workspace i tools
- `workspace.py` listuje serie i karty
- szczegolowy opis przelacznikow skryptu jest w `doc/workspace.md`
- `rvctl` listuje serie i karty
- szczegolowy opis CLI jest w `doc/rvctl.md`
- model tokenow i synchronizacji repo <-> store jest w `doc/tokens.md`
## Model katalogow
@@ -60,6 +60,17 @@ cd ~/dev/workspace/rv/tools/rv-launcher
git init
```
Glowne entrypointy:
```bash
./rvctl
./workspace
./wspace
```
`rvctl` jest nazwa podstawowa. `workspace` i `wspace` sa aliasami do tego
samego CLI.
## Autoryzacja
Masz dwie drogi.
@@ -133,9 +144,9 @@ git remote add r1 http://77.90.8.171:3001/edu-tools/rv-launcher.git
Podstawowe komendy tokenow:
```bash
python3 workspace.py tokens scan
python3 workspace.py tokens read
python3 workspace.py tokens stats --repo ~/dev/workspace/rv/series/inf/03
./rvctl tokens scan
./rvctl tokens read
./rvctl tokens stats --repo ~/dev/workspace/rv/series/inf/03
```
## Fetch i switch
@@ -196,13 +207,13 @@ zsl-inf/lab-rv32i-strlen-bss-data-stack-4i-2026-04-26
Przyklad planu dla ucznia `u1`:
```bash
python3 workspace.py submission inf 03 --class 4i --nick u1
./rvctl submission inf 03 --class 4i --nick u1
```
Przyklad konfiguracji remote'ow w repo karty:
```bash
python3 workspace.py submission inf 03 --class 4i --nick u1 --apply
./rvctl submission inf 03 --class 4i --nick u1 --apply
```
Launcher wtedy:
@@ -239,12 +250,12 @@ cd rv-launcher
Przyklady:
```bash
python3 workspace.py show-config
python3 workspace.py list-series
python3 workspace.py list-cards inf
python3 workspace.py submission inf 03 --class 4i --nick u1
python3 workspace.py tmux-container inf 03 --dry-run
python3 workspace.py tmux-container inf 03 --session rv-inf03 --attach
./rvctl show-config
./rvctl list-series
./rvctl list-cards inf
./rvctl submission inf 03 --class 4i --nick u1
./rvctl tmux-container inf 03 --dry-run
./rvctl tmux-container inf 03 --session rv-inf03 --attach
```
Skrypt nie trzyma listy kart w JSON-ie. Czyta `series/*/*` z `series_root`.