Pridaj hodnotenie:

Premenné prostredia

Premenná prostredia (environment variable alebo skrátene env) je dynamická premenná, ktorá v operačnom systéme zastupuje vlastnosť bežiaceho procesu. Premenných prostredia je obvykle viac a možno ich za behu meniť.

Pre potreby automatického build a deploy aplikácie sa premenné prostredia používajú pre dodatočné nastavenie vlastností projektu, ktoré nie je možné uložiť priamo do GIT repozitára. Niektoré vlastnosti projektu sú totiž rôzne podľa toho, na ktorý konkrétny server sa aplikácia umiestňuje. Napríklad pre vývojové prostredie môže byť nastavenie databázy iné ako pre produkčné prostredie.

Taktiež môže byť bezpečnostným rizikom ukladať do projektu prihlasovacie heslá do rôznych služieb ako je databáza, SMTP server, ... Z tohto dôvodu by sa mali citlivé údaje nastaviť až v momente build-u aplikácie.

Definovanie premenných prostredia

Kliknite na záložku "Premenné prostredia" a následne na tlačítko "+ PRIDAŤ PREMENNÚ". V zozname sa následne zobrazí nový riadok, kde v prvom stĺpci nadefinujete názov premennej a v druhom stĺpci jej hodnotu.

Na nasledujúcom obrázku sú nadefinované dve premenné, ktoré budú neskôr použité v BASH skripte pri builde aplikácie:

Použitie v build procese

V záložke Build & Deploy kliknite na tlačítko "+" na tom mieste BUILD procesu, kde chcete použiť premenné prostredia. Následne vyberte zo skupín príkazov tlačítko "BASH":

Následne si môžete v okne pre písanie kódu vložiť akýkoľvek BASH kód. V nasledovnom obrázku sú použité obe ukážkové nadefinované premenné a to nasledovne:

  • echo "$ENV_FILE_CONTENT" > .env (pre naplnenie .env súboru)
  • echo "$TEST_PREMENNEJ" (iba zobrazenie obsahu premennej)
TIP: editor na kód umožňuje aj auto completion premenných, ktoré ste si nadefinovali a to stlačením klávesovej skratky Ctrl + medzera a následným výberom premennej.

Po stlačení tlačítka "POUŽIŤ" sa BASH príkazy zariadia do zvoleného poradia v BUILD procese:

Kontrola BASH výstupu

Ak si chcete skontrolovať, či Vami definovaná premenná obsahuje naozaj ten obsah, čo potrebujete, môžete si pomocou príkazu echo vypísať jej hodnotu, napríklad:

echo "$TEST_PREMENNEJ"

v build & deploy výpise tak nájdete niečo takéto:

[ 2.16s]: Hello, world!