5.2. Konfigurace komponenty UPL

Konfigurace komponenty je uložena v jednom konfiguračním souboru. Soubor je ve formátu YAML, který je pojmenován upl-deploy.yml. Součástí distribuce komponenty je šablona konfiguračního souboru (upl-deploy.yml.template). V šabloně jsou popsány jednotlivé konfigurační volby.

Předmětem konfigurace komponenty je:

5.2.1. Umístění konfigurace

Pro každou jednotlivou instanci komponenty je vhodné mít vždy samostatný adresář, kde jsou umístěny konfigurace, logy, případně i databázové soubory.

Příklad rozložení adresářů a souborů:

Soubor

Význam

upl-x.y.z.jar

Binární soubor se službou

config/upl-deploy.yml

Konfigurace instance komponenty

data/....

Adresář pro přijaté SIPy

logs/....

Adresář pro logovací soubory

5.2.2. Webové rozhraní

Komponenta poskytuje webové rozhraní pro přejímku. Port, kde je webové rozhraní k dispozici se nastavuje v konfiguraci. V konfiguraci je také možné přepnout komunikaci mezi HTTP a HTTPS. Technické detaily nastavení HTTPS jsou součástí dokumentace Spring Boot (https://docs.spring.io/spring-boot/docs/current/reference/html/howto-embedded-web-servers.html#howto-configure-ssl).

Příklad nastavení:

# Port, kde bude služba dostupná (HTTP/HTTPS)
server:
  port: 8203
# Nastavení HTTPS (standardně vypnuto)
#  ssl:
#    enabled: true
#    key-store: keystore.jks
#    key-store-password: secret
#    key-password: another-secret

5.2.3. Vytvoření databáze

  1. Vytvoření uživatele:

CREATE ROLE app WITH LOGIN PASSWORD 'jk23jkmn3az';
  1. Vytvoření DB

CREATE DATABASE upl OWNER app;

5.2.4. Připojení k databázi

Součástí zkompilované aplikace je JDBC ovladač pro připojení k PostgreSQL databázi. Databáze musí být vytvořena samostatně administrátorem. Zvolený uživatel musí mít oprávnění volat DDL příkazy (vytvářet tabulky).

Ovladače PostgreSQL: verze 42.2.5

spring:
  datasource:
    driver-class-name: org.postgresql.Driver
    url: jdbc:postgresql://127.0.0.1:5432/upl
    username: app
    password: app

V části url se definuje řetězec pro připojení k databázi, přihlašovací údaje se uvedou do parametrů username a password.

5.2.5. Pracovní adresář

Modul má pracovní soubory na disku. Cesta k tomuto úložišti musí být nastavena. Je vhodné nastavit úplnou cestu.

Sekce obsahuje volitelně nastasvení zdroje testovacích dat.

upl:
  # Cesta, kde jsou uloženy datové soubory
  # Ve Windows se zadává takto: D:\\projects\\portal\\eprejimka\\data
  path: /opt/ais/upl/data
  # Volitelný zdroj testovacích dat
  # testPath: /opt/ais/upl/testdata
  # Zapnutí interní validace SIPů
  zafValidation: true

V části upl se definuje cesta k adresáři, kde se budou ukládat zpracovávaná data.

5.2.6. Nastavení logování

Logování se nastavuje v sekci logging. Komponenta využívá nástroj Spring Boot. Možnosti nastavení logování jsou detailně popsány v jeho dokumentaci (https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-logging.html).

Příklad nastavení logování:

logging:
  file: logs/upl.log
  pattern:
    level: "%X{userName:--} %p"
  level:
    com.lightcomp: 'INFO'

5.2.7. Nastavení systémů využívajících UPL

Každý systém komunikující s UPL musí být definován v sekci systems.

Příklad nastavení:

systems:
  vyber-devel:
    url: http://localhost:8202/ws/uplprogress
    redirectUrl: /vyber/skartace
    authorization:
      username: eskartace-ws
      password: esws1973
      authorizationType: Basic