Configuration

Settings.js

Configuration File Format

{
    // operating chain list
    chainList: [
        'eth',
        'klaytn',
        'icon',
    ],

    // Bridge Addresses
    BridgeAddress: {
        OrbitHubContract: "0x0000000000000000000000000000000000000000",
        OrbitBridgeHubContract: "0x0000000000000000000000000000000000000000",
        EthBridgeContract: "0x0000000000000000000000000000000000000000",
        KlaytnBridgeContract: "0x0000000000000000000000000000000000000000",
        IconBridgeContract: "0x0000000000000000000000000000000000000000",
        MessageMultiSigWallet: {
            Hub: "0x0000000000000000000000000000000000000000",
            Eth: "0x0000000000000000000000000000000000000000",
            Klaytn: "0x0000000000000000000000000000000000000000",
            Icon: "0x0000000000000000000000000000000000000000"
        },
        Eth: {
            EthVaultContract: "0x0000000000000000000000000000000000000000",
        },
        Klay: {
            KlaytnMinterContract: "0x0000000000000000000000000000000000000000",
            MessageMultiSigWallet: "0x0000000000000000000000000000000000000000",
        },
        Icon: {
            IconMinterContract: "cx0000000000000000000000000000000000000000",
            MessageMultiSigWallet: "cx0000000000000000000000000000000000000000",
        },
        Governance: {
            Chain: "ETH",
            Address: "0x0000000000000000000000000000000000000000",
            Bytes: "0x0000000000000000000000000000000000000000",
            Id: "0x0000000000000000000000000000000000000000000000000000000000000000",
        }
    },

    // Node Endpoints
    Endpoints : {
        Orbit: {
            rpc : "http://orbitchain",
            socket: "ws://orbitchain",
        },
        Eth : {
            rpc : "http://infura",
            socket : "ws://infura",
        },
        Klaytn: {
            // false: Using your node (not public EN), true: Using Kas node
            isKas: false,
    
            // your node configuration (not public EN)
            rpc: "",
            socket: "",

            // Kas configuration
            Kas: {
                // KAS Default
                rpc: "https://node-api.klaytnapi.com/v1/klaytn",
                chainId: 8217,

                // Your Credential
                accessKeyId: "",
                secretAccessKey: ""
            }
        },
        Icon: {
            api: 'https://ctz.solidwallet.io/api/v3',
            debug: 'https://ctz.solidwallet.io/api/debug/v3',
            version: 3,
            nid: 1
        },
        Parser: {
            api: "http://localhost:8084",
        },
        Syncer: {
            api: "http://localhost:9797/v1", 
        },
    },

    DEBUG: true,
    LOGLEVEL: 'debug',

    // WIP: validator things.
    VALIDATOR_ACCOUNT: {
        TYPE: "PK",
        DATA: "0000000000000000000000000000000000000000000000000000000000000000",
    },

    // WIP: operator things.
    OPERATOR_ACCOUNTS: {
        Klay: {
            TYPE: "PK",
            FEE_PAYER_ADDRESS : "0x0000000000000000000000000000000000000000",
            DATA: "0x0000000000000000000000000000000000000000000000000000000000000000",
        },
        Eth: {
            RELEASE: {
                TYPE: "PK",
                ADDRESS: "0x0000000000000000000000000000000000000000",
                DATA: "0000000000000000000000000000000000000000000000000000000000000000",
            },
        },
        Icon: {
            RELEASE: {
                TYPE: "PK",
                ADDRESS: "hx0000000000000000000000000000000000000000",
                DATA: "0000000000000000000000000000000000000000000000000000000000000000",
            },
        },
    },

    // WIP: Parser things.
    REDIS_HOST: "redis",
    REDIS_PORT: 6379,
    REDIS_EXPIRE: 7200,
    REDIS_DB : 1,

    // WIP: syncer things.
    REDIS_EVENT_HOST: 'redis',
    REDIS_EVENT_PORT: 6379,
    REDIS_EVENT_DB: 1,

    REDIS_EVENT_CHANNEL: process.env.PROFILE + 'priestNewBlock',
    REDIS_ETHEVENT_CHANNEL: process.env.PROFILE + 'ethNewBlock',
    REDIS_TERRAEVENT_CHANNEL: process.env.PROFILE + 'terraNewBlock',
    REDIS_KLAYTNEVENT_CHANNEL: process.env.PROFILE + 'klaytnNewBlock',

    REDIS_PUBLISHER_HOST: 'redis',
    REDIS_PUBLISHER_PORT: 6379,
    REDIS_PUBLISHER_DB: 1,

    REDIS_ETH_BRIDGE_CHANNEL: 'ethbridge',
    REDIS_TERRA_BRIDGE_CHANNEL: 'terrabridge',
    REDIS_ORBIT_BRIDGE_CHANNEL: 'orbitbridge',
    REDIS_KLAYTN_BRIDGE_CHANNEL: 'klaytnbridge',

    MIGRATE_BOTTOM_INCLUDE: 10000000,
    MIGRATE_TOP_EXCLUDE: 12785269,

    RPC_SERVER: 'http://localhost:8084',

    TERRA_BALANCE_INQUIRY_ENDPOINT: '/v1/terra/balance',

    ERC20_BALANCE_INQUIRY_ENDPOINT: '/v1/eth/getBalance',

    DB_CLIENT: 'mysql',
    DB_HOST: 'mysql',
    DB_PORT: '3306',
    DB_USER: 'root',
    DB_PASSWORD: 'password',
    DB_DATABASE: 'bridge',
    DB_CHARSET: 'utf8mb4',
    DB_MIN_POOL_SIZE: 2,
    DB_MAX_POOL_SIZE: 10,
    DB_MIGRATION_TABLE_NAME: 'knex_migrations',

    // dev 30 seconds
    REGISTER_INTERVAL: 30,
}

Properties

The configuration file has the following configurable properties:

Last updated