91 lines
1.6 KiB
Markdown
91 lines
1.6 KiB
Markdown
# RV Launcher
|
|
|
|
To repo zawiera launcher do workspace `rv`:
|
|
|
|
- `workspace.json` trzyma rooty workspace, socketow i toolingu
|
|
- `workspace.py` listuje serie i karty z dysku
|
|
- `workspace.py tmux-container ...` stawia sesje `tmux` z kontenerem w `pane 0`
|
|
- `doc/usage.md` opisuje przelaczniki CLI i format listowania
|
|
|
|
## Pobranie repo
|
|
|
|
Docelowy katalog:
|
|
|
|
```bash
|
|
~/dev/workspace/rv/tools/rv-launcher
|
|
```
|
|
|
|
Bootstrap:
|
|
|
|
```bash
|
|
mkdir -p ~/dev/workspace/rv/tools
|
|
cd ~/dev/workspace/rv/tools
|
|
git clone http://77.90.8.171:3001/edu-tools/rv-launcher.git
|
|
cd rv-launcher
|
|
```
|
|
|
|
## Najpierw token
|
|
|
|
Przed operacjami wymagajacymi autoryzacji dodaj lokalny token do:
|
|
|
|
```bash
|
|
~/dev/workspace/rv/tokens/gitea_tokens.json
|
|
```
|
|
|
|
Minimalny format:
|
|
|
|
```json
|
|
{
|
|
"users": {
|
|
"u1": {
|
|
"tokens": {
|
|
"t1": "TU_WSTAW_TOKEN"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
Plik powinien byc lokalny, niewersjonowany i miec prawa `600`.
|
|
|
|
Przyklad:
|
|
|
|
```bash
|
|
mkdir -p ~/dev/workspace/rv/tokens
|
|
chmod 700 ~/dev/workspace/rv/tokens
|
|
chmod 600 ~/dev/workspace/rv/tokens/gitea_tokens.json
|
|
```
|
|
|
|
## Fetch i switch
|
|
|
|
Domyslna galaz launchera to `main`.
|
|
|
|
Po sklonowaniu:
|
|
|
|
```bash
|
|
git fetch origin main
|
|
git switch main
|
|
git pull --ff-only
|
|
```
|
|
|
|
Jesli chcesz wejsc na inna galaz, na przyklad `feat/x`, uzyj:
|
|
|
|
```bash
|
|
git fetch origin feat/x
|
|
git switch --track -c feat/x origin/feat/x
|
|
```
|
|
|
|
## Podstawowe komendy
|
|
|
|
Przyklady:
|
|
|
|
```bash
|
|
python3 workspace.py show-config
|
|
python3 workspace.py list-series
|
|
python3 workspace.py list-cards inf
|
|
python3 workspace.py tmux-container inf 03 --dry-run
|
|
python3 workspace.py tmux-container inf 03 --session rv-inf03 --attach
|
|
```
|
|
|
|
Skrypt nie trzyma listy kart w JSON-ie. Czyta `series/*/*` z `series_root`.
|