Wrapper dla jfrteamy-ausbutler, ustawiający generowanie znormalizowanych butlerów dla lig centralnych PZBS.
Poniższe README nie porusza tematów konfiguracji jfrteamy-ausbutler
, a wyłącznie spięcie go do automatycznego generowania butlerów dla lig centralnych.
Projekt zawiera dwa pliki wykonywalne:
ausbutler-single.sh IDENTYFIKATOR_TURNIEJU
, generujący i wysyłający pojedynczy turniejausbutler-all.sh
, iterujący po wszystkich turniejach wtournaments.txt
Plik tournaments.txt
definiuje, dla jakich konfiguracji (turniejów) generowane będą butlery. Po jednym identyfikatorze na wiersz.
Dla każdego identyfikatora, w katalogu configs
musi być zdefiniowany zestaw zmiennych konfiguracyjnych (patrz niżej).
Katalog config.template
zawiera szablon kompletu plików konfiguracyjnych, które jfrteamy-ausbutler
czytają z podkatalogu config
katalogu roboczego.
Każdy z plików szablonów może zawierać zmienne w formacie jak dla powłoki Bash, pod które podstawiane są wartości z odpowiedniego pliku w katalogu configs
.
Na szablon składa się komplet plików JSON dla jfrteamy-ausbutler
oraz, opcjonalnie, plik send.lftp
formatu skryptu narzędzia lftp
, jeśli chcemy również od razu wysyłać wygenerowane pliki przez FTP.
Konfiguracja generowana jest następująco:
-
Do lokalnego środowiska uruchomieniowego importowana jest (poprzez Bashowe
source
z opcją auto-eksportu zmiennych) zawartość plików:configs/_common.env
orazconfigs/IDENTYFIKATOR_TURNIEJU.env
(w takiej kolejności). -
Tak ustawione zmienne środowiskowe kompilowane są do szablonów z
config.template
, a następnie zapisywane do kataloguconfig
. -
Uruchamiany jest
jfrteamy-ausbutler
, z konfiguracją zdefiniowaną poprzez skompilowany zestaw plikówconfig/*.json
. -
Jeśli w systemie obecne jest narzędzie
lftp
i ustawiona jest zmiennaLIGA_AUSBUTLER_FTP_ENABLED
, uruchamiane jestlftp
z żądaniem wykonania skryptu skompilowanego doconfig/send.lftp
.
LIGA_AUSBUTLER_DB_HOST
, LIGA_AUSBUTLER_DB_USER
, LIGA_AUSBUTLER_DB_PASS
, LIGA_AUSBUTLER_DB_NAME
- paramatery MySQL (host, użytkownik, hasło, nazwa bazy danych turnieju)
LIGA_AUSBUTLER_OUTPUT_PATH
- katalog wyjściowy dla plików z wynikami
LIGA_AUSBUTLER_FTP_ENABLED
- obecność tej zmiennej włącza wysyłanie po FTP
LIGA_AUSBUTLER_FTP_HOST
, LIGA_AUSBUTLER_FTP_USER
, LIGA_AUSBUTLER_FTP_PASS
, LIGA_AUSBUTLER_FTP_PATH
- parametry FTP (host, użytkownik, hasło, ścieżka na zdlanym serwerze)
Przykładowa konfiguracja znajduje się w plikach configs/*.env.sample
.