Zaříznout stará jména kostky #20

Merged
david-spacil merged 1 commits from agents/claude/zariznout-stara-jmena into main 2026-08-23 23:14:58 +02:00
Owner

Druhý krok po #16, rovnou celý. Dvojkolejnost dávala smysl pro projekt s neznámými uživateli — tady běží jedna instance a ta je přemigrovaná.

Co je pryč

Kde Co
deploy/pve-kostky.sh celý soubor (přesměrování na nový skript)
deploy/pve-dice-counter.sh blok STARY_*, stěhování ze starého jména, odložený úklid /opt/kostky
deploy/pve-dice-counter.sh záložní jméno přílohy — zpátky na jedno ASSET
.gitea/workflows/binarka.yml STARY_ASSET a věšení pod dvěma jmény
.github/workflows/binarky.yml sloupec stary v matici a totéž
storage.py STARY_APP_DIR a záloha na starou databázi
tests/test_storage.py test té zálohy
README.md tři odstavce o přechodu

Ve zdrojácích zbyl jediný výskyt: docstring """Pravidla hry v kostky. v core.py. To je česky pojmenovaná hra, ne identifikátor.

Instalátor a workflow se tím vracejí do tvaru, jaký měly před #18 — jen s novými jmény. Žádná větev navíc, žádná podmínka.

⚠️ Merge a tag patří k sobě

Instalátor teď hledá jen dice-counter-linux-x86_64. Poslední vydání (v1.2.1) má na releasu pouze kostky-*, protože přílohy pod novými jmény ještě nikdy nevyšly.

Do otagování v1.2.2 tedy nemá co stáhnout ani update ve stávajícím kontejneru, ani čerstvá instalace. Spadne to srozumitelně, ne potichu:

✗ dice-counter-linux-x86_64 pro v1.2.1 na releasu není.
  Vydání pro tuhle architekturu možná ještě neproběhlo.

Není to nic, co by se muselo řešit zvlášť — jen to znamená otagovat hned po merge. Do v1.2.2 se stejně veze i připnutí balíčku z #17.

Jak je to ověřené

118 testů (o jeden míň — zmizel test zálohy).

V kontejneru s debian:13:

  1. Čistá instalace proti releasu s novými jmény — projde.
  2. Druhé spuštění za sebou — projde (to je ta cesta, kterou chodí update).
  3. Vydání, které nová jména nemá — spadne s hláškou výš. Ověřuje se přesně to, že instalátor už nesáhne po kostky-*.
  4. Jednotka nese StateDirectory=dice-counter, DICE_DB=/var/lib/dice-counter/dice.db a User=dice-counter; žádné staré cesty ani uživatel nevzniknou.

Binárka postavená lokálně: --version hlásí dice-counter v1.2.2-zkouska, databázi založí v …/dice-counter/dice.db a starou v …/kostky/dice.db vedle sebe nechá být — což je nově správné chování.

Closes #19

Druhý krok po #16, rovnou celý. Dvojkolejnost dávala smysl pro projekt s neznámými uživateli — tady běží jedna instance a ta je přemigrovaná. ## Co je pryč | Kde | Co | |---|---| | `deploy/pve-kostky.sh` | celý soubor (přesměrování na nový skript) | | `deploy/pve-dice-counter.sh` | blok `STARY_*`, stěhování ze starého jména, odložený úklid `/opt/kostky` | | `deploy/pve-dice-counter.sh` | záložní jméno přílohy — zpátky na jedno `ASSET` | | `.gitea/workflows/binarka.yml` | `STARY_ASSET` a věšení pod dvěma jmény | | `.github/workflows/binarky.yml` | sloupec `stary` v matici a totéž | | `storage.py` | `STARY_APP_DIR` a záloha na starou databázi | | `tests/test_storage.py` | test té zálohy | | `README.md` | tři odstavce o přechodu | Ve zdrojácích zbyl jediný výskyt: docstring `"""Pravidla hry v kostky.` v `core.py`. To je česky pojmenovaná hra, ne identifikátor. Instalátor a workflow se tím vracejí do tvaru, jaký měly před #18 — jen s novými jmény. Žádná větev navíc, žádná podmínka. ## ⚠️ Merge a tag patří k sobě Instalátor teď hledá **jen** `dice-counter-linux-x86_64`. Poslední vydání (v1.2.1) má na releasu pouze `kostky-*`, protože přílohy pod novými jmény ještě nikdy nevyšly. Do otagování **v1.2.2** tedy nemá co stáhnout ani `update` ve stávajícím kontejneru, ani čerstvá instalace. Spadne to srozumitelně, ne potichu: ``` ✗ dice-counter-linux-x86_64 pro v1.2.1 na releasu není. Vydání pro tuhle architekturu možná ještě neproběhlo. ``` Není to nic, co by se muselo řešit zvlášť — jen to znamená otagovat hned po merge. Do v1.2.2 se stejně veze i připnutí balíčku z #17. ## Jak je to ověřené 118 testů (o jeden míň — zmizel test zálohy). V kontejneru s `debian:13`: 1. **Čistá instalace** proti releasu s novými jmény — projde. 2. **Druhé spuštění za sebou** — projde (to je ta cesta, kterou chodí `update`). 3. **Vydání, které nová jména nemá** — spadne s hláškou výš. Ověřuje se přesně to, že instalátor už nesáhne po `kostky-*`. 4. Jednotka nese `StateDirectory=dice-counter`, `DICE_DB=/var/lib/dice-counter/dice.db` a `User=dice-counter`; žádné staré cesty ani uživatel nevzniknou. Binárka postavená lokálně: `--version` hlásí `dice-counter v1.2.2-zkouska`, databázi založí v `…/dice-counter/dice.db` a starou v `…/kostky/dice.db` vedle sebe nechá být — což je nově správné chování. Closes #19
david-spacil added 1 commit 2026-08-23 23:09:46 +02:00
Zaříznout stará jména kostky
binárka / linux (pull_request) Successful in 11s
image / image (pull_request) Successful in 18s
testy / pytest (3.11) (pull_request) Successful in 1s
testy / pytest (3.12) (pull_request) Successful in 0s
testy / pytest (3.13) (pull_request) Successful in 0s
testy / pytest (3.14) (pull_request) Successful in 1s
a6c94e239b
Druhý krok po #16, rovnou celý. Dvojkolejnost dávala smysl pro projekt
s neznámými uživateli; tady běží jedna instance a ta je přemigrovaná.

Pryč je:

  - deploy/pve-kostky.sh (přesměrování na nový skript)
  - stěhování ze starého jména v instalátoru včetně bloku STARY_*
  - záložní jméno přílohy kostky-* v instalátoru
  - věšení příloh pod dvěma jmény v obou workflow
  - záloha na ~/.local/share/kostky/dice.db ve storage.py
  - odstavce o přechodu v README

Jediné, co ve zdrojácích zůstalo, je docstring "Pravidla hry v kostky"
v core.py — to je česky pojmenovaná hra, ne identifikátor.

POZOR na pořadí: instalátor teď hledá jen dice-counter-*, a poslední
vydání (v1.2.1) má na releasu pouze kostky-*. Do otagování v1.2.2 tedy
`update` ani čerstvá instalace nemají co stáhnout. Merge a tag patří
k sobě.

Ověřeno v debianím kontejneru: čistá instalace, druhé spuštění za sebou,
a vydání bez nových jmen spadne se srozumitelnou hláškou místo toho, aby
sáhlo po starém. Binárka postavená lokálně zakládá databázi v
…/dice-counter/ a starou vedle sebe ignoruje. 118 testů.

Closes #19
david-spacil merged commit c0272f4f70 into main 2026-08-23 23:14:58 +02:00
david-spacil deleted branch agents/claude/zariznout-stara-jmena 2026-08-23 23:14:58 +02:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: david-spacil/dice-counter#20