LPS:Orion7/FR-CESNET/Struktura SW balíku/version
Z Support
Obsah |
Verzování softwarových balíků
Princip verzování balíků
- Každý softwarový balík se skládá z adresáře s definovanou strukturou adresářů a souborů.
- Rozdíl verzí softwarového balíku určuje zdali bude spuštěn install-sys.cmd nebo install-usr.cmd skript
- Verze je upravována ručně v adresáři balíku na síťovém úložišti
Syntaxe
- Každý balík musí obsahovat textový soubor version bez přípony
- Soubor version obsahuje pouze jedne řádek
- Na tomto řádku souboru se nachází dvě nezáporná celá řísla oddělená tečkou
- První číslo je číslo systémové verze
- Druhé číslo je číslo uživatelské verze
Systémová verze
- Jedná se o celé kladné číslo
- Číslo v souboru version před tečkou
- Systémová část se po úspěšné instalaci balíku ukládá do registru HKLM\Software\Orion\versions
- V případě že dojde k chybě během instalace, verze se do registru nezapíše
- Verzování začíná na 0, a roste neomezeně s každou novou verzí
- Tato verze se změní vždy pokud je třeba provést změnu balíku jež vyžaduje administrátorská práva
- Změna systémové verze vyvolá spuštění skriptu install-sys.cmd příslušného k danému balíku
- Změna verze se provádí zvýšením čísla verze o 1 v textovém souboru version ve složce balíku na AFS
- V případě instalace balíku s parametrem -forceafs porovnává instmgr.cmd verzi v registru přímo s verzí na AFS
- V případě standardní instalace balíku z lokálního úložiště porovnává instmgr.cmd verzi v registru s verzí v lokálním úložišti
Uživatelská verze
- Jedná se o nezáporné celé číslo.
- Číslo v souboru version za tečkou.
- Verzování začíná na 0, a roste neomezeně s každou novou verzí
- Tato verze se změní vždy pokud je třeba provést změnu balíku jež vyžaduje administrátorská práva
- Změna systémové verze vyvolá spuštění skriptu install-usr.cmd příslušného k danému balíku
- Změna verze se provádí zvýšením čísla verze o 1 v textovém souboru version ve složce balíku na AFS
Implementace
Soubor "version"
- Soubor obsahuje verzi balíku
- Vytváří se na AFS
AFS
- Prvotní tvorba balíku probíhá ve větvi SuperAlternative po odladění pak následuje Alternative a odtud je balík po odladění překopírován do SW větve Default
Lokální úložiště
- Obsahuje kopii všech SW balíků z AFS podle SW větve ve které je PC zařazen
- Není přístupné pro uživatele, pouze pro Administrátora a Systém
Kopie modulefiles
Nachází se v C:\ProgramData\Orion\modulefiles\
- Obsahuje kopii modulefiles
- Je pro čtení dostupné uživatelům
- Kopie je vytvářena pro zpřístupnění install-usr.cmd a version uživatelům
Systémový registr
- V registru HKLM\Software\Orion\versions je uložen seznam verzí všech instalovaných balíků na daném počítači
Uživatelský registr
- V registru HKCU\Software\Orion\versions je uložen seznam verzí všech instalovaných balíků ze všech počítačů na kterých se uživatel přihlásil.
Průběh porovnávání verzí
- Nejprve se ověří existence souboru version na AFS
- Poté se porovná verze v souboru version na AFS a v lokálním úložišti
- V případě rozdílu verzí dojde k smazání lokální kopie balíku a stažení novějšího balíku z AFS do lokálního úložiště
- Poté se porovnává verze v lokálním úložišti s verzí v registru HKLM\Software\Orion\versions
- V případě rozdílu verzí se spustí install-sys.cmd skript
- Pokud byla instalace úspěšná, uloží se nová verze do systémového registru HKLM\Software\Orion\versions
- Poté se porovnává verze v systémovém registru HKLM\Software\Orion\versions s verzí v uživatelském registru HKCU\Software\Orion\versions
- V případě rozdílu verzí dojde ke spuštění install-usr.cmd skriptu.
- Pokud bylo nastavení specifikované v uživatelském skriptu úspěšné, uloží se verze do uživatelského registru HKCU\Software\Orion\versions