Add series task branch flow
This commit is contained in:
@@ -275,7 +275,7 @@ item server proto host org repo user remote tok
|
||||
1 gitea http 77.90.8.171:3001 edu-tools rv-launcher u1 r1 r1 S e59cc...13be forever
|
||||
```
|
||||
|
||||
## Szybki start
|
||||
## Kolejny krok: serie i karty pracy
|
||||
|
||||
Najpierw zobacz konfigurację i dostępne komendy:
|
||||
|
||||
@@ -290,7 +290,37 @@ Po konfiguracji tokenów najpierw sprawdź stan store:
|
||||
./rvctl tokens compare
|
||||
```
|
||||
|
||||
### Po pobraniu kart pracy
|
||||
Następnie wylistuj dostępne serie. Jeżeli katalog `series` w workspace jeszcze
|
||||
nie istnieje, `rvctl` utworzy go automatycznie:
|
||||
|
||||
```bash
|
||||
./rvctl series list
|
||||
```
|
||||
|
||||
Przykładowy wynik:
|
||||
|
||||
```text
|
||||
inf 3 0
|
||||
```
|
||||
|
||||
Po wybraniu serii `inf` wylistuj karty:
|
||||
|
||||
```bash
|
||||
./rvctl series cards list inf
|
||||
```
|
||||
|
||||
Przykładowy wynik zawiera krótką nazwę karty, pełną nazwę repo, status i tytuł:
|
||||
|
||||
```text
|
||||
bss lab-rv32i-strlen-bss-data-stack source rv32i-c / bss-data-stack
|
||||
```
|
||||
|
||||
Przykładowa karta `bss` odpowiada repo `lab-rv32i-strlen-bss-data-stack`.
|
||||
Pobierz ją do workspace:
|
||||
|
||||
```bash
|
||||
./rvctl series cards fetch inf bss
|
||||
```
|
||||
|
||||
Karty trafiają do `series` w workspace:
|
||||
|
||||
@@ -302,18 +332,48 @@ Karty trafiają do `series` w workspace:
|
||||
│ └── tokens.json
|
||||
└── series
|
||||
└── inf
|
||||
└── 03
|
||||
└── lab-rv32i-strlen-bss-data-stack
|
||||
```
|
||||
|
||||
`rvctl` pracuje na kartach z `series_root`, czyli na katalogu
|
||||
`~/dev/workspace/rv/series`.
|
||||
|
||||
Od tego momentu możesz listować serie i karty:
|
||||
Po pobraniu karty `rvctl` przygotowuje też remote odpowiedzi `r1a`. Remote
|
||||
powstaje z tokena `r1` i wskazuje na repo pracy:
|
||||
|
||||
```text
|
||||
answer_remote r1a
|
||||
answer_org c2025-1a-inf
|
||||
answer_repo lab-rv32i-strlen-bss-data-stack
|
||||
answer_url http://77.90.8.171:3001/c2025-1a-inf/lab-rv32i-strlen-bss-data-stack.git
|
||||
```
|
||||
|
||||
Następnie wylistuj zadania w karcie:
|
||||
|
||||
```bash
|
||||
./rvctl list-series
|
||||
./rvctl list-cards inf
|
||||
./rvctl submission inf 03 --class 4i --nick u1
|
||||
./rvctl series cards tasks list inf bss
|
||||
```
|
||||
|
||||
Przykładowy wynik:
|
||||
|
||||
```text
|
||||
inf bss task1_bss ~/dev/workspace/rv/series/inf/lab-rv32i-strlen-bss-data-stack/src/tasks
|
||||
inf bss task2_data ~/dev/workspace/rv/series/inf/lab-rv32i-strlen-bss-data-stack/src/tasks
|
||||
inf bss task3_stack_unused ~/dev/workspace/rv/series/inf/lab-rv32i-strlen-bss-data-stack/src/tasks
|
||||
inf bss task4_stack_strlen ~/dev/workspace/rv/series/inf/lab-rv32i-strlen-bss-data-stack/src/tasks
|
||||
```
|
||||
|
||||
Przełącz się na wybrane zadanie. `rvctl` bierze login ucznia ze store tokenów i
|
||||
tworzy branch pracy w formacie `<login>T<numer_zadania>a`:
|
||||
|
||||
```bash
|
||||
./rvctl series cards tasks switch inf bss 4
|
||||
```
|
||||
|
||||
Dla użytkownika `u1` i zadania `task4_stack_strlen` branch będzie miał nazwę:
|
||||
|
||||
```text
|
||||
u1T4a
|
||||
```
|
||||
|
||||
### Po uruchomieniu środowiska kontenerowego
|
||||
@@ -330,7 +390,7 @@ kontenerowego. Wtedy pojawia się pod `tools`:
|
||||
│ └── tokens.json
|
||||
└── series
|
||||
└── inf
|
||||
└── 03
|
||||
└── lab-rv32i-strlen-bss-data-stack
|
||||
```
|
||||
|
||||
Repozytoria źródłowe poza workspace, na przykład `~/dev/edu/repos/rv`, są
|
||||
@@ -340,8 +400,8 @@ do zwykłej pracy w workspace.
|
||||
Przykładowe komendy dla środowiska kontenerowego:
|
||||
|
||||
```bash
|
||||
./rvctl tmux-container inf 03 --dry-run
|
||||
./rvctl tmux-container inf 03 --session rv-inf03 --attach
|
||||
./rvctl tmux-container inf bss --dry-run
|
||||
./rvctl tmux-container inf bss --session rv-inf-bss --attach
|
||||
```
|
||||
|
||||
`--dry-run` jest przydatny przy sprawdzaniu planu uruchomienia lub konfiguracji
|
||||
|
||||
Reference in New Issue
Block a user