# Patří do mo/config.py SQLALCHEMY_DATABASE_URI = "postgresql:///mo_osmo" SQLALCHEMY_TRACK_MODIFICATIONS = False SQLALCHEMY_ECHO = False SQLALCHEMY_ENGINE_OPTIONS = { # SQLAlchemy neumí bez pingnutí databáze na začátku každé transakce # sama ohandlovat zavření spojení. Po restartu Postgresu bez tohoto # nastavení vydá každý worker jednu 500, než začne fungovat normálně. # Pokud běží databáze na stejném serveru, zapnutí by mělo mít # zanedbatelný overhead. "pool_pre_ping": True, } # Vytvořte pomocí python3 -c 'import secrets; print(secrets.token_hex(32))' SECRET_KEY = "FIXME" SESSION_COOKIE_PATH = '/' SESSION_COOKIE_NAME = 'mo_session' # SESSION_COOKIE_SECURE=True # Kontaktní e-mail (v patičce, Reply-To a také používaný jako adresát při generování pošty s Bcc) MAIL_CONTACT = "osmo@mo.mff.cuni.cz" # Odesilatel generovaných mailů (není-li definován, neposílají se) # MAIL_FROM = "osmo-auto@mo.mff.cuni.cz" # Kam posíláme maily o interních chybách (není-li definováno, neposílají se). # Pozor, v debugovacím módu je ještě potřeba nastavit PROPAGATE_EXCEPTIONS = False. # MAIL_ERRORS_TO = "osmo@mo.mff.cuni.cz" # Kam posíláme mailové notifikace pro systémového uživatele, třeba dokončení jobu na správu kola # (není-li definováno, neposílají se). # MAIL_SYSTEM_TO = "osmo@mo.mff.cuni.cz" # Pro testování je možné všechny odesílané maily přesměrovat na jinou adresu # MAIL_INSTEAD = "mares@kam.mff.cuni.cz" # Pokud chceme automaticky zpracovávat nedoručenky, je potřeba nastavit klíč # pro podepisování tokenů v adrese odesílatele (podobně jako SECRET_KEY, jen jiný). # Do MAIL_FROM se pak automaticky přidává parametr oddělený "+". # MAIL_TOKEN_SECRET = "..." # URL, na kterém aplikace běží WEB_ROOT = 'https://mo.mff.cuni.cz/osmo-test/' # Druh webu (devel/test/pub), z toho CSS třída elementu <header> WEB_FLAVOR = 'devel' # Maximální velikost uploadu. Pozor, je omezena i konfigurací Nginxu. # První hodnota se použije pro běžný upload, druhá pro dávkový upload řešení. MAX_CONTENT_LENGTH = 16777216 MAX_BATCH_CONTENT_LENGTH = 1000000000 # Adresář, do kterého ukládáme data (pro vývoj relativní, pro instalaci absolutní) DATA_DIR = 'data' # Jak často se má spouštět garbage collector na dávky a tokeny [s] GC_PERIOD = 60 # Za jak dlouho expiruje dokončená dávka [min] JOB_EXPIRATION = 5 # Některé dávky (analýza skenů) mají delší expiraci [min] JOB_EXPIRATION_LONG = 1440 # Opakované spouštění dávek, které selhaly s dočasnou chybou: # Kolikrát maximálně jsme ochotni spustit jednu dávku JOB_MAX_TRIES = 8 # Jak dlouho čekáme po prvním selhání [min] JOB_RETRY_AFTER = 5 # Faktor, kterým čekání násobíme při každém dalším pokusu JOB_RETRY_LONGER = 2 # Maximální doba čekání [min] JOB_RETRY_CEILING = 60 # Kolik nejvýše dovolujeme registrací za minutu REG_MAX_PER_MINUTE = 10 # Jak dlouho vydrží tokeny používané při registraci a změnách/potvrzování e-mailu [min] REG_TOKEN_VALIDITY = 10 # Jak dlouho si pamatujeme e-mailovou nedoručenku [min] DSN_EXPIRATION = 30 * 1440 # Aktuální ročník MO CURRENT_YEAR = 71 # Instance CMS, ve které žijí praktické programovací úlohy, a její SSO secret. # Pokud se neuvede nebo je None, praktické úlohy nejde odevzdávat. # CMS_ROOT = 'https://contest.kam.mff.cuni.cz/cms/' # CMS_SSO_SECRET = 'BrumBrum' # Instance serveru Matematické olympiády, kam bude exportována výsledkovka MO_WEB_SERVER = 'http://localhost:5001' MO_WEB_LOGIN = 'matemaicky_hroch' MO_WEB_PASSWD = 'BrumBrum' # Povolení loginu bez hesla pro testovací uživatele (s adresou končící na @test). # Nezapínat mimo testovací prostředí! Bydlí na /test-login/<email>. #INSECURE_TEST_LOGIN = True # Výjimky pro bin/gen-mailing-list MAILING_LIST_INCLUDE = { # 'garanti-z': ['somebody@example.org'], } MAILING_LIST_EXCLUDE = { # 'garanti-z': ['somebody@example.com'], } # Maximální počet e-mailových adres, které jsme ochotni ve webovém rozhraní zobrazit # uživatelům bez práva unrestricted_email. EMAILS_SHOW_MAX = 500 # Klíč k API na zpracování mailových nedoručenek. Měl by být také uložen # v ~/.config/osmo/dsn-api-key účtu, který volá bin/send-dsn. Nesmí obsahovat mezery. # DSN_API_KEY = "..."