Skip to content
Snippets Groups Projects
Select Git revision
  • f4fce2fda8cae3e040f4e86404f5a9c9f12bcc6e
  • master default
  • ls2021
  • ls1920
4 results

obousmerne.py

Blame
  • config.py.example 4.33 KiB
    # 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 = "..."