forked from Asterizm-Protocol/client-module-deploy
-
Notifications
You must be signed in to change notification settings - Fork 0
/
config.full.yml
115 lines (115 loc) · 6.84 KB
/
config.full.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# Environment Settings Block
Environment:
# Log level setting; if not provided, the builder will generate it automatically
# ERROR - Critical error; if found - contact the developers. Script terminates on such errors
# WARN - Critical error, but not bad enough to terminate the script; developers should be notified
# INFO - Informational logs with main details, such as transmission hashes, scanned block numbers, program execution results
# DEBUG - Debug logs with additional execution details; useful when ERROR or WARN occurs to provide extra information to developers
# The user sets the LogLevel, below which logs won't be displayed. For instance, if LogLevel is set to WARN, logs of level ERROR and WARN will be displayed.
# Log level hierarchy: ERROR <- WARN <- INFO <- DEBUG. Recommended setting is INFO, displaying ERROR, WARN, and INFO logs.
# Optional parameter, default is INFO
LogLevel: INFO
# Utilities Configuration Block
Utils:
# Encryption block is mandatory, but the builder will generate it if absent
Encryption:
# Encryption key; can be generated on your side or the builder will generate it
# Mandatory parameter
Key: key
# Encryption salt; can be generated on the Client's side or the builder will generate it
# Mandatory parameter
Salt: salt
# Encryption method; available methods: AES-{128/192/256}-{CBC/OFB/CFB/CTR}
# Recommended method: AES-256-CBC
# Mandatory parameter
CipherMethod: "AES-256-CBC"
# Database configuration block is mandatory, but the builder will generate it if absent
# PostgreSQL supported
Db:
# Database host; mandatory field
# Note: If 'asterizm-db' is specified, the builder will run it within Docker
Host: asterizm-db
# Database port; mandatory field
Port: 5432
# Database name; mandatory field
Name: db
# Database user; mandatory field
User: user
# Database password; mandatory field, the builder will generate it if absent
Password: password
# Node Configuration Block
Nodes:
# Structure of transmitted ABI information; the structure must match the transmitted information in exact order
# Field is mandatory only if you're transmitting information between networks with different virtual machines
# For example, if transmitting from ETH to BSC, the field is optional. But if from ETH to EVER, the field is mandatory.
# If, for instance, you're transmitting timestamp and name info with abi.encode(1682079822, "John"), specify ["uint16", "string"] in PayloadStruct
# Supported data types: bool, string, bytes, int{size} (int8, int16, etc), uint{size} (uint8, uint16, etc)
# Size of int and uint must be 8 to 256 and divisible by 8 without remainder
# If absent, the builder will leave the array empty
PayloadStruct: ["uint256", "uint256", "uint256", "uint256", "uint8"]
List:
# List of networks where the scanner will run
# Builder will fail if the list is empty
# Supported EVM networks: ETH, POL, OPT, AUR, FTM, CEL, AVA, ARB, BOB, BSC, XVM, PZK, BTG
# Supported TVM networks: EVER, VNM
# Supported TON networks: TON
# Supported SOL networks: SOL
ETH:
# RPC URL, mandatory; builder will fail if absent
RPC: https://rpc-url
# Deployed client contract address, mandatory; builder will fail if absent
ContractAddress: contractAddress
# Private key for transmitting information to the blockchain, mandatory; builder will fail if absent
# Note: The private key must be encrypted using the 'utils/encrypt' command (encryption keys and method from Utils.Encryption)
# Builder will automatically encrypt the private key if it's not encrypted
OwnerPrivateKey: ownerPrivateKey
# Applicable only to TVM networks
# Public key for transmitting information to the blockchain, mandatory; builder will fail if absent
OwnerPublicKey: ownerPublicKey
# Applicable only to TON network
# Supported types: v3r1/v3r2/highloadv3/v4r1/v4r2/v5r1
OwnerWalletType: v4r2
# Applicable only to SOL network
TokenProgramId: tokenProgramId
# Applicable only to SOL network
TokenName: tokenName
# Applicable only to SOL network
ClientProgramId: clientProgramId
# Applicable only to SOL network
ClientUserAddress: clientUserAddress
# Applicable only to SOL network
InitializerProgramId: initializerProgramId
# Applicable only to SOL network
RelayerProgramId: relayerProgramId
# Applicable only to SOL network
SystemRelayOwnerAddress: systemRelayOwnerAddress
# Applicable only to SOL network
RelayOwnerAddress: relayOwnerAddress
# This field specifies how many times to attempt resending the event transaction to the translator
# For instance, if the program receives an event with information and sends it to the translator, but gas prices unexpectedly surge at the time of sending, causing the transaction to be stuck in the mempool.
# If the transaction remains in the mempool for longer than the average transaction confirmation time (e.g., 5 minutes for Ethereum), the program will attempt to resend the transaction.
# If the field is set to 5, the program will make 5 attempts; if it fails on the 5th attempt, no further retries will be made
# Optional field, default is 3 attempts
MaxResendTries: 3
# For example, the translator received a transfer, but the commission was not enough
# This can happen if the gas rate has increased in the destination network
# The program will send a request to the translator and find out the status of the transfer
# If the translator returns an error related to the lack of commission, the program will try to resend the commission
# If the field is set to 5, the program will make 5 attempts; if it fails on the 5th attempt, no further retries will be made
# Optional field, default is 0 attempts
MaxOutOfGasResendTries: 0
# This field indicates the percentage increase in the transaction fee.
# For example, the program calculates a transaction fee for sending to the blockchain, but gas prices surge at the time of sending.
# You can specify a percentage increase in the fee to account for the potential spike in gas prices
# The final fee will be calculated using the formula: fee + (fee / 100 * FeeMultiplierPercent)
# If FeeMultiplierPercent is set to 100, the fee will double; if set to 0, no fee increase will occur
# Optional field, default is 0; recommended value is 20
FeeMultiplierPercent: 100
# Include this section if you are using Fireblocks
Fireblocks:
# Fireblocks signer api key
ApiKey: "00000000-0000-0000-0000-000000000000"
# Path to Fireblocks signer secret key
SecretPath: "./fireblocks_secret.rsa"
# Fireblock vault accounts ids. They will be used based on the mempool load
VaultAccountIds: ["0", "1"]