Esempio n. 1
0
class ServerConfig(Config):
    enabled = key(cast=bool, required=False, default=True)
    host = key(cast=str, required=False, default=DEFAULT_SERVER_RPC_HOST)
    port = key(cast=int, required=False, default=0)
    external_address = key(cast=str, required=False, default="")
    external_port = key(cast=int,
                        required=False,
                        default=DEFAULT_EXTERNAL_PORT)
Esempio n. 2
0
class WebadminConfig(Config):
    enabled = key(cast=bool, required=False, default=False)
    host = key(cast=str, required=False, default=DEFAULT_WEBADMIN_HOST)
    port = key(cast=int, required=False, default=DEFAULT_WEBADMIN_PORT)
    username = key(cast=str, required=False, default="")
    password = key(cast=str, required=False, default="")
    use_ssl = key(cast=bool, required=False, default=False)
    login_disabled = key(cast=bool, required=False, default=False)
    allow_cors = key(cast=bool, required=False, default=False)
Esempio n. 3
0
class LightningConfig(Config):
    backend = key(cast=str, required=False, default=DEFAULT_LIGHTNING_BACKEND)
    external_host = key(cast=str, required=False, default="")
    external_port = key(cast=int, required=False, default=DEFAULT_LND_PORT)
    lnd_rpc_host = key(cast=str, required=False, default=DEFAULT_LND_RPC_HOST)
    lnd_rpc_port = key(cast=int, required=False, default=DEFAULT_LND_RPC_PORT)
    lnd_tls_cert_path = key(cast=str, required=False, default="")
    lnd_macaroon_path = key(cast=str, required=False, default="")
    clightning_rpc_file = key(cast=str,
                              required=False,
                              default=DEFAULT_CLIGHTNING_RPC_FILE)
Esempio n. 4
0
class BitcoinConfig(Config):
    rpc_host = key(cast=str, required=False, default=DEFAULT_BITCOIN_RPC_HOST)
    rpc_port = key(cast=int, required=False, default=DEFAULT_BITCOIN_RPC_PORT)
    rpc_user = key(cast=str, required=False, default="")
    rpc_pass = key(cast=str, required=False, default="")
    rpc_use_ssl = key(cast=bool, required=False, default=False)
    rpc_ssl_cert = key(cast=str, required=False, default="")
    zeromq_hashblock_port = key(cast=int,
                                required=False,
                                default=DEFAULT_BITCOIN_ZEROMQ_HASHBLOCK_PORT)
Esempio n. 5
0
class BitcoinConfig(Config):
    rpc_host = key(cast=str, required=False, default=DEFAULT_BITCOIN_RPC_HOST)
    rpc_port = key(cast=int, required=False, default=DEFAULT_BITCOIN_RPC_PORT)
    rpc_user = key(cast=str, required=False, default="")
    rpc_pass = key(cast=str, required=False, default="")
    rpc_use_ssl = key(cast=bool, required=False, default=False)
    rpc_ssl_cert = key(cast=str, required=False, default="")
Esempio n. 6
0
class LndConfig(Config):
    host = key(cast=str, required=False, default=DEFAULT_LND_HOST)
    external_host = key(cast=str, required=False, default="")
    port = key(cast=int, required=False, default=DEFAULT_LND_PORT)
    rpc_port = key(cast=int, required=False, default=DEFAULT_LND_RPC_PORT)
    tls_cert_path = key(cast=str, required=False, default="")
    macaroon_path = key(cast=str, required=False, default="")
Esempio n. 7
0
class MWDBConfig(Config):
    # PostgreSQL database URI
    postgres_uri = key(cast=str, required=True)
    # Flask secret key
    secret_key = key(cast=str, required=True)
    # Redis database URI
    redis_uri = key(cast=str, required=False, default=None)
    # Serve web application
    serve_web = key(cast=intbool, required=False, default=True)
    # Folder with web application files
    # (if not set: served from pre-built package bundle)
    web_folder = key(cast=path, required=False, default=None)
    # Base application URL, accessible for users
    base_url = key(cast=str, required=False, default="http://127.0.0.1")
    # Flask additional settings file (optional)
    flask_config_file = key(cast=path, required=False)

    # Which storage provider to use (options: disk or s3)
    storage_provider = key(
        cast=storage_provider_from_str, required=False, default="disk"
    )
    # Folder for uploads
    uploads_folder = key(cast=path, required=False)
    # Should we break up the uploads into different folders for example:
    # uploads/9/f/8/6/9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08
    hash_pathing = key(cast=intbool, required=False, default=True)
    # S3 compatible storage endpoint
    s3_storage_endpoint = key(cast=str, required=False)
    # Use TLS with S3 storage
    s3_storage_secure = key(cast=intbool, required=False, default=False)
    # S3 storage Access Key
    s3_storage_access_key = key(cast=str, required=False)
    # S3 storage Secret Key
    s3_storage_secret_key = key(cast=str, required=False)
    # S3 storage Region Name (For example, 'us-east-1')
    s3_storage_region_name = key(cast=str, required=False)
    # S3 storage Bucket Name
    s3_storage_bucket_name = key(cast=str, required=False)
    # S3 storage Authorize through IAM role (No credentials)
    s3_storage_iam_auth = key(cast=intbool, required=False)

    # Administrator account login
    admin_login = key(cast=str, required=False, default="admin")
    # Administrator account first password
    admin_password = key(cast=str, required=False)

    enable_plugins = key(cast=intbool, required=False, default=True)
    # List of plugin names to be loaded, separated by commas
    plugins = key(cast=list_of_str, required=False, default="")
    # Directory that will be added to sys.path for plugin imports
    # Allows to load local plugins without installing them in site-packages
    local_plugins_folder = key(cast=path, required=False, default=None)
    # Auto-discover plugins contained in local_plugins_folder
    local_plugins_autodiscover = key(cast=intbool, required=False, default=False)

    remotes = key(cast=list_of_str, required=False, default="")

    enable_rate_limit = key(cast=intbool, required=False, default=False)
    enable_registration = key(cast=intbool, required=False, default=False)
    enable_maintenance = key(cast=intbool, required=False, default=False)
    enable_hooks = key(cast=intbool, required=False, default=True)
    enable_karton = key(cast=intbool, required=False, default=False)
    # Feature flag: OIDC is under development
    enable_oidc = key(cast=intbool, required=False, default=False)

    mail_smtp = key(cast=str, required=False)
    mail_from = key(cast=str, required=False, default="noreply@mwdb")
    mail_templates_folder = key(cast=path, required=False, default=mail_templates_dir)
    mail_username = key(cast=str, required=False)
    mail_password = key(cast=str, required=False)
    mail_tls = key(cast=intbool, required=False, default=False)

    recaptcha_site_key = key(cast=str, required=False)
    recaptcha_secret = key(cast=str, required=False)

    enable_json_logger = key(cast=intbool, required=False, default=False)
Esempio n. 8
0
class KartonConfig(Config):
    config_path = key(cast=str, required=False, default=None)
Esempio n. 9
0
class DrakvufPluginConfig(Config):
    drakvuf_url = key(cast=str, required=True)
    timeout = key(cast=int, required=False, default=600)
Esempio n. 10
0
class TorConfig(Config):
    proxy_ip = key(cast=str, required=False, default="")
    proxy_port = key(cast=int, required=False, default=0)
Esempio n. 11
0
class TwitterConfig(Config):
    forward_tweets_retry_s = key(cast=int,
                                 required=False,
                                 default=DEFAULT_FORWARD_TWEETS_RETRY_S)
Esempio n. 12
0
class DbConfig(Config):
    connection_string = key(cast=str, required=False, default="")
Esempio n. 13
0
class NodeConfig(Config):
    network = key(cast=str, required=False, default=DEFAULT_NETWORK)
    price_msat = key(cast=int, required=False, default=DEFAULT_PRICE_MSAT)
    max_squeaks = key(cast=int, required=False, default=DEFAULT_MAX_SQUEAKS)
    max_squeaks_per_public_key_per_block = key(
        cast=int,
        required=False,
        default=DEFAULT_MAX_SQUEAKS_PER_PUBLIC_KEY_PER_BLOCK)
    sqk_dir_path = key(cast=str, required=False, default=DEFAULT_SQK_DIR_PATH)
    log_level = key(cast=str, required=False, default=DEFAULT_LOG_LEVEL)
    sent_offer_retention_s = key(cast=int,
                                 required=False,
                                 default=DEFAULT_SENT_OFFER_RETENTION_S)
    received_offer_retention_s = key(
        cast=int, required=False, default=DEFAULT_RECEIVED_OFFER_RETENTION_S)
    subscribe_invoices_retry_s = key(
        cast=int, required=False, default=DEFAULT_SUBSCRIBE_INVOICES_RETRY_S)
    squeak_retention_s = key(cast=int,
                             required=False,
                             default=DEFAULT_SQUEAK_RETENTION_S)
    squeak_deletion_interval_s = key(
        cast=int, required=False, default=DEFAULT_SQUEAK_DELETION_INTERVAL_S)
    offer_deletion_interval_s = key(cast=int,
                                    required=False,
                                    default=DEFAULT_OFFER_DELETION_INTERVAL_S)
    interest_block_interval = key(cast=int,
                                  required=False,
                                  default=DEFAULT_INTEREST_BLOCK_INTERVAL)
    peer_download_interval_s = key(cast=int,
                                   required=False,
                                   default=DEFAULT_PEER_DOWNLOAD_INTERVAL_S)
Esempio n. 14
0
class RpcConfig(Config):
    enabled = key(cast=bool, required=False, default=False)
    host = key(cast=str, required=False, default=DEFAULT_ADMIN_RPC_HOST)
    port = key(cast=int, required=False, default=DEFAULT_ADMIN_RPC_PORT)
Esempio n. 15
0
class NodeConfig(Config):
    network = key(cast=str, required=False, default=DEFAULT_NETWORK)
    price_msat = key(cast=int, required=False, default=DEFAULT_PRICE_MSAT)
    max_squeaks = key(cast=int, required=False, default=DEFAULT_MAX_SQUEAKS)
    max_squeaks_per_address_in_block_range = key(
        cast=int,
        required=False,
        default=DEFAULT_MAX_SQUEAKS_PER_ADDRESS_IN_BLOCK_RANGE)
    sqk_dir_path = key(cast=str, required=False, default=DEFAULT_SQK_DIR_PATH)
    log_level = key(cast=str, required=False, default=DEFAULT_LOG_LEVEL)
    sent_offer_retention_s = key(cast=int,
                                 required=False,
                                 default=DEFAULT_SENT_OFFER_RETENTION_S)
    received_offer_retention_s = key(
        cast=int, required=False, default=DEFAULT_RECEIVED_OFFER_RETENTION_S)
    subscribe_invoices_retry_s = key(
        cast=int, required=False, default=DEFAULT_SUBSCRIBE_INVOICES_RETRY_S)
    squeak_retention_s = key(cast=int,
                             required=False,
                             default=DEFAULT_SQUEAK_RETENTION_S)
    squeak_deletion_interval_s = key(
        cast=int, required=False, default=DEFAULT_SQUEAK_DELETION_INTERVAL_S)
    offer_deletion_interval_s = key(cast=int,
                                    required=False,
                                    default=DEFAULT_OFFER_DELETION_INTERVAL_S)
    interest_block_interval = key(cast=int,
                                  required=False,
                                  default=DEFAULT_INTEREST_BLOCK_INTERVAL)
    peer_autoconnect_interval_s = key(
        cast=int, required=False, default=DEFAULT_PEER_AUTOCONNECT_INTERVAL_S)