Restructure student bootstrap steps

This commit is contained in:
mpabi
2026-04-29 01:57:30 +02:00
parent 8382cb92e9
commit c4656e0b73
+53 -27
View File
@@ -58,7 +58,16 @@ Podstawowym miejscem pracy uzytkownika jest workspace:
~/dev/workspace/rv
```
Minimalny uklad przed pobraniem launchera zawiera tylko katalogi workspace:
Najpierw utworz komplet katalogow startowych:
```bash
mkdir -p ~/dev/workspace/rv/tools
mkdir -p ~/dev/workspace/rv/tokens
mkdir -p ~/dev/workspace/rv/series
cd ~/dev/workspace/rv
```
Po tym kroku workspace ma tylko puste katalogi robocze:
```text
~/dev/workspace/rv
@@ -67,22 +76,34 @@ Minimalny uklad przed pobraniem launchera zawiera tylko katalogi workspace:
└── series
```
Sa dwie drogi startu.
Potem wybierz jedna z dwoch drog startu.
### Bez `tokens.json`
Jesli nie masz jeszcze pliku z tokenem albo tokenami, zacznij od pustego repo
launchera i remota z tokenem:
Ten wariant jest dla sytuacji, w ktorej token jest podany w URL-u git remota,
a plik `tokens.json` ma powstac dopiero lokalnie.
Etap 1: wejdz do katalogu narzedzi i utworz puste repo `rv-launcher`:
```bash
mkdir -p ~/dev/workspace/rv/tools/rv-launcher
cd ~/dev/workspace/rv/tools/rv-launcher
cd ~/dev/workspace/rv/tools
mkdir -p rv-launcher
cd rv-launcher
git init
```
Etap 2: dodaj remote `r1` z tokenem, pobierz branch i ustaw lokalny `main`:
```bash
git remote add r1 http://u1:TOKEN@77.90.8.171:3001/edu-tools/rv-launcher.git
git fetch r1 main
git switch --track -c main r1/main
```
`r1` jest nazwa remota, z ktorego startujemy. `--track` ustawia lokalny branch
`main` tak, aby sledzil `r1/main`, dzieki czemu pozniejsze `git pull` i
`git push` wiedza, z ktorym branchem zdalnym pracuja.
Po tym kroku w workspace jest juz repo launchera:
```text
@@ -93,14 +114,15 @@ Po tym kroku w workspace jest juz repo launchera:
└── series
```
Potem wczytaj token z remota do lokalnego store:
Etap 3: wczytaj token z remota do lokalnego store:
```bash
cd ~/dev/workspace/rv/tools/rv-launcher
./rvctl tokens sync remote r1
./rvctl tokens update r1
```
Po tym kroku workspace ma juz lokalny store:
Po tym kroku workspace ma juz `tokens.json`:
```text
~/dev/workspace/rv
@@ -111,7 +133,7 @@ Po tym kroku workspace ma juz lokalny store:
└── series
```
Na koniec sprawdz, czy git remote i lokalny store widza ten sam token:
Etap 4: sprawdz, czy git remote i lokalny store widza ten sam token:
```bash
./rvctl tokens compare
@@ -141,15 +163,17 @@ Pelny opis tabeli tokenow jest w `doc/tokens.md`.
### Z `tokens.json`
Jesli masz gotowy plik `tokens.json`, zacznij od lokalnego store tokenow:
Ten wariant jest dla sytuacji, w ktorej masz juz gotowy plik `tokens.json`.
Etap 1: skopiuj token store do workspace:
```bash
mkdir -p ~/dev/workspace/rv/tokens
cp tokens.json ~/dev/workspace/rv/tokens/tokens.json
chmod 600 ~/dev/workspace/rv/tokens/tokens.json
cd ~/dev/workspace/rv
cp /sciezka/do/tokens.json tokens/tokens.json
chmod 600 tokens/tokens.json
```
Na tym etapie workspace ma store tokenow, ale nie musi jeszcze miec launchera:
Po tym kroku workspace ma store tokenow, ale nie ma jeszcze launchera:
```text
~/dev/workspace/rv
@@ -159,17 +183,24 @@ Na tym etapie workspace ma store tokenow, ale nie musi jeszcze miec launchera:
└── series
```
Opcja `git clone`:
Etap 2: wejdz do katalogu narzedzi i sklonuj `rv-launcher`:
```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
```
Etap 3: zmien nazwe remota z `origin` na `r1`:
```bash
git remote rename origin r1
```
Po `git clone` pojawia sie repo `rv-launcher`:
`tokens.json` jest mapowany na nazwy git remotes, dlatego repo launchera ma
uzywac remota `r1`.
Po `git clone` workspace wyglada tak:
```text
~/dev/workspace/rv
@@ -180,13 +211,7 @@ Po `git clone` pojawia sie repo `rv-launcher`:
└── series
```
Po klonie zmieniamy `origin` na `r1`, bo `tokens.json` jest mapowany na nazwy
git remotes. Jesli `git clone` wymaga autoryzacji, uzyj standardowego sposobu
Gita dla tego jednego kroku. Plik `tokens.json` zaczyna obslugiwac Git remotes
dopiero wtedy, gdy masz juz lokalnie `rvctl`.
Po wejsciu do repo launchera sprawdz store i wpisz credentials ze store do
remota `r1`:
Etap 4: sprawdz store i wpisz credentials ze store do remota `r1`:
```bash
./rvctl tokens list store
@@ -214,7 +239,7 @@ status updated
url http://77.90.8.171:3001/edu-tools/rv-launcher.git
```
Na koniec odswiez metadane tokena i porownaj store z remote:
Etap 5: odswiez metadane tokena i porownaj store z remote:
```bash
./rvctl tokens update r1
@@ -231,11 +256,12 @@ item server proto host org repo user remote tok
1 gitea http 77.90.8.171:3001 edu-tools rv-launcher u1 r1 r1 * e59cc...13be forever
```
Po operacjach Git mozesz usunac sekret z `.git/config`, zostawiajac token tylko
w store:
Etap 6: po operacjach Git mozesz usunac sekret z `.git/config`, zostawiajac
token tylko w store:
```bash
./rvctl tokens rm remote r1
./rvctl tokens compare
```
Po usunieciu remota `compare` pokazuje marker `S`, czyli token jest tylko w