6.4. Upgrade databáze
6.4.1. Vytvořte novou delta aktualizaci
Nejprve vytvořte novou větev pro vaši modifikaci na modelu
Upravte kód vytváření SQL jak se vám nejlépe hodí
Vytvořte odpovídající soubor SQL delta v data-model/update/delta. * soubor musí být pojmenován: delta_{tag_number}_{increment}_{short description}.sql ` viz Cykly a verzování. <qwat_dev.html # release-cycle-and-versioning> `_
Odešlete vaší Branch a zkontrolujte výsledek travis
Pokud je test travis v pořádku, můžete vytvořit požadavek vyžádání a sloučit vaše změny do předlohy
Poznámka
Datový model by měl být TAGOVÁN. Značka by měla respektovat následující syntaxi, jako je tato: x.x.x. U každé hlavní verze se značka MUSÍ nazývat x.0.0.
6.4.2. Migrujte existující databázi
Pokud používáte starou verzi modelu QWAT, můžete jej upgradovat podle následujících pokynů:
Varování
Před upgradem byste měli vždy uložit aktuální databázi
Otevřete terminál a přejděte na qwat_project/data-model/update
- Spusťte příkaz pro upgrade:
./upgrade_db.sh
Tím se otestuje proces migrace
- Spusťte příkaz pro upgrade:
Pokud je proces migrace v pořádku, spusťte znovu příkaz s parametrem pro aktualizaci skutečné DB:
./upgrade_db.sh --upgrade yes
Poznámka
Váš .pg_service.conf musí obsahovat připojení k qwat, qwat_test a qwat_conform DB
6.4.3. Jak to funguje
Máme značku pro verzi x.0
V adresáři /update/delta/ najdete seznam souborů SQL, které obsahují aktuální vývoj (delta). Pokud spustíme init_qwat.sh v aktuálním úložišti git, měli bychom mít stejnou DB, než kdybychom prováděli init_qwat.sh verze x.0. Přispěvatel, který přidá nový soubor delta SQL, musí také aktualizovat skript SQL pro vytváření databáze SQL.
Pro uživatele proces migrace spočívá v:
Získejte verzi jeho základu (měl by být uveden v QWAT systémovém schématu).
- Spusťte migrační skript, který v parametru vezme číslo verze. Skript provádí následující úkoly:
pg_dump QWAT DB
pg_restore předchozího výpisu v testovací DB (* qwat_test *)
Proveďte v testu DB veškerou delta SQL vyšší nebo rovnou číslu verze (sql delta musí být pojmenováno delta_{tag_number}_{increment}_{short description}.sql)
- Spusťte skript pro testování shody:
Vytvořte novou DB: qwat_test_conform
Vytvořte referenční soubor (výsledek z testovacího sql DB)
Porovnání tohoto referenčního souboru se souborem vytvořeným dříve vytvořenou qwat_test DB
Pokud je vše v pořádku, je uživatel vyzván k zahájení migrace na jeho skutečné databázi
Pokud dojde k chybám, musí je uživatel sám odladit, nebo kontaktovat tým QWAT