2018-08-02 10:05:10 -06:00
|
|
|
{
|
|
|
|
"coin": {
|
2019-04-08 06:39:29 -06:00
|
|
|
"name": "Ethereum Classic",
|
|
|
|
"shortcut": "ETC",
|
|
|
|
"label": "Ethereum Classic",
|
|
|
|
"alias": "ethereum-classic"
|
2018-08-02 10:05:10 -06:00
|
|
|
},
|
|
|
|
"ports": {
|
|
|
|
"backend_rpc": 8037,
|
|
|
|
"backend_message_queue": 0,
|
|
|
|
"blockbook_internal": 9037,
|
|
|
|
"blockbook_public": 9137
|
|
|
|
},
|
|
|
|
"ipc": {
|
|
|
|
"rpc_url_template": "ws://127.0.0.1:{{.Ports.BackendRPC}}",
|
|
|
|
"rpc_timeout": 25
|
|
|
|
},
|
|
|
|
"backend": {
|
|
|
|
"package_name": "backend-ethereum-classic",
|
|
|
|
"package_revision": "satoshilabs-1",
|
|
|
|
"system_user": "ethereum-classic",
|
2019-08-22 12:16:37 -06:00
|
|
|
"version": "6.0.9",
|
|
|
|
"binary_url": "https://github.com/etclabscore/go-ethereum/releases/download/v6.0.9/geth-classic-v6.0.9-linux.tar.gz",
|
2018-12-05 03:17:28 -07:00
|
|
|
"verification_type": "sha256",
|
2019-08-22 12:16:37 -06:00
|
|
|
"verification_source": "fca005e755ca0840d5679d18af22d15a8f20a0a1f49939ae427f2ac7ed0de1b3",
|
2019-08-28 09:26:12 -06:00
|
|
|
"extract_command": "tar -C backend --strip 1 -xf",
|
|
|
|
"exclude_files": [
|
|
|
|
"abigen",
|
|
|
|
"abigen.sha256",
|
|
|
|
"bootnode",
|
|
|
|
"bootnode.sha256",
|
|
|
|
"disasm",
|
|
|
|
"disasm.sha256",
|
|
|
|
"ethtest",
|
|
|
|
"ethtest.sha256",
|
|
|
|
"evm",
|
|
|
|
"evm.sha256",
|
|
|
|
"geth.sha256",
|
|
|
|
"rlpdump",
|
|
|
|
"rlpdump.sha256"
|
|
|
|
],
|
2018-08-02 10:05:10 -06:00
|
|
|
"exec_command_template": "/bin/sh -c '{{.Env.BackendInstallPath}}/{{.Coin.Alias}}/geth --ipcdisable --cache 1024 --nat none --datadir {{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend --port 38337 --ws --wsaddr 0.0.0.0 --wsport {{.Ports.BackendRPC}} --wsorigins \"*\" --rpc --rpcport 8137 -rpcaddr 0.0.0.0 --rpccorsdomain \"*\" 2>>{{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend/{{.Coin.Alias}}.log'",
|
|
|
|
"logrotate_files_template": "{{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend/{{.Coin.Alias}}.log",
|
|
|
|
"postinst_script_template": "",
|
|
|
|
"service_type": "simple",
|
|
|
|
"service_additional_params_template": "",
|
|
|
|
"protect_memory": true,
|
|
|
|
"mainnet": true,
|
2018-10-12 04:12:27 -06:00
|
|
|
"server_config_file": "",
|
|
|
|
"client_config_file": ""
|
2018-08-02 10:05:10 -06:00
|
|
|
},
|
|
|
|
"blockbook": {
|
|
|
|
"package_name": "blockbook-ethereum-classic",
|
|
|
|
"system_user": "blockbook-ethereum-classic",
|
|
|
|
"internal_binding_template": ":{{.Ports.BlockbookInternal}}",
|
|
|
|
"public_binding_template": ":{{.Ports.BlockbookPublic}}",
|
2018-11-28 06:56:45 -07:00
|
|
|
"explorer_url": "",
|
2019-04-08 06:39:29 -06:00
|
|
|
"additional_params": "-resyncindexperiod=4441 -resyncmempoolperiod=2011",
|
2018-08-02 10:05:10 -06:00
|
|
|
"block_chain": {
|
|
|
|
"parse": true,
|
|
|
|
"mempool_workers": 8,
|
|
|
|
"mempool_sub_workers": 2,
|
|
|
|
"block_addresses_to_keep": 300,
|
2019-04-08 06:39:29 -06:00
|
|
|
"additional_params": {
|
|
|
|
"mempoolTxTimeoutHours": 48,
|
Add fiat rates functionality (#316)
* Add initial commit for fiat rates functionality
* templates.go: use bash from current user's environment
* bitcoinrpc.go: add FiatRates and FiatRatesParams to config
* blockbook.go: add initFiatRatesDownloader kickoff
* bitcoin.json: add coingecko API URL
* rockdb.go: add FindTicker and StoreTicker functions
* rocksdb_test.go: add a simple test for storing and getting FiatRate tickers
* rocksdb: add FindLastTicker and convertDate, make FindTicker return strings
* rocksdb: add ConvertDate function and CoinGeckoTicker struct, update tests
* blockbook.go, fiat: finalize the CoinGecko downloader
* coingecko.go: do not stop syncing when encountered an error
* rocksdb_test: fix the exported function name
* worker.go: make getBlockInfoFromBlockID a public function
* public.go: apiTickers kickoff
* rocksdb_test: fix the unittest comment
* coingecko.go: update comments
* blockbook.go, fiat: reword CoinGecko -> FiatRates, fix binary search upper bound, remove assignment of goroutine call result
* rename coingecko -> fiat_rates
* fiat_rates: export only the necessary methods
* blockbook.go: update log message
* bitcoinrpc.go: remove fiatRates settings
* use CurrencyRatesTicker structure everywhere, fix time format string, update tests, use UTC time
* add /api/v2/tickers tests, store rates as strings (json.Number)
* fiat_rates: add more tests, metrics and tickers-list endpoint, make the "currency" parameter mandatory
* public, worker: move FiatRates API logic to worker.go
* fiat_rates: add a future date test, fix comments, add more checks, store time as a pointer
* rocksdb_test: remove unneeded code
* fiat_rates: add a "ping" call to check server availability
* fiat_rates: do not return empty ticker, return nil instead if not found
add a test for non-existent ticker
* rocksdb_test: remove Sleep from tests
* worker.go: do not propagate all API errors to the client
* move InitTestFiatRates from rocksdb.go to public_test.go
* public.go: fix FiatRatesFindLastTicker result check
* fiat_rates: mock API server responses
* remove commented-out code
* fiat_rates: add comment explaining what periodSeconds attribute is used for
* websocket.go: implement fiatRates websocket endpoints & add tests
* fiatRates: add getFiatRatesTickersList websocket endpoint & test
* fiatRates: make websocket getFiatRatesByDate accept an array of dates, add more tests
* fiatRates: remove getFiatRatesForBlockID from websocket endpoints
* fiatRates: remove "if test", use custom startTime instead
Update tests and mock data
* fiatRates: finalize websocket functionality
add "date" parameter to TickerList
return data timestamps where needed
fix sync bugs (nil timestamp, duplicate save)
* fiatRates: add FiatRates configs for different coins
* worker.go: make GetBlockInfoFromBlockID private again
* fiatRates: wait & retry on errors, remove Ping function
* websocket.go: remove incorrect comment
* fiatRates: move coingecko-related code to a separate file, use interface
* fiatRates: if the new rates are the same as previous, try five more times, and only then store them
* coingecko: fix getting actual rates, add a timestamp parameter to get uncached responses
* vertcoin_testnet.json: remove fiat rates parameters
* fiat_rates: add timestamp to log message about skipping the repeating rates
2019-12-17 02:40:02 -07:00
|
|
|
"queryBackendOnMempoolResync": true,
|
|
|
|
"fiat_rates": "coingecko",
|
|
|
|
"fiat_rates_params": "{\"url\": \"https://api.coingecko.com/api/v3\", \"coin\": \"ethereum-classic\", \"periodSeconds\": 60}"
|
2019-04-08 06:39:29 -06:00
|
|
|
}
|
2018-08-02 10:05:10 -06:00
|
|
|
}
|
|
|
|
},
|
|
|
|
"meta": {
|
2019-08-22 12:16:37 -06:00
|
|
|
"package_maintainer": "IT",
|
|
|
|
"package_maintainer_email": "it@satoshilabs.com"
|
2018-08-02 10:05:10 -06:00
|
|
|
}
|
Add fiat rates functionality (#316)
* Add initial commit for fiat rates functionality
* templates.go: use bash from current user's environment
* bitcoinrpc.go: add FiatRates and FiatRatesParams to config
* blockbook.go: add initFiatRatesDownloader kickoff
* bitcoin.json: add coingecko API URL
* rockdb.go: add FindTicker and StoreTicker functions
* rocksdb_test.go: add a simple test for storing and getting FiatRate tickers
* rocksdb: add FindLastTicker and convertDate, make FindTicker return strings
* rocksdb: add ConvertDate function and CoinGeckoTicker struct, update tests
* blockbook.go, fiat: finalize the CoinGecko downloader
* coingecko.go: do not stop syncing when encountered an error
* rocksdb_test: fix the exported function name
* worker.go: make getBlockInfoFromBlockID a public function
* public.go: apiTickers kickoff
* rocksdb_test: fix the unittest comment
* coingecko.go: update comments
* blockbook.go, fiat: reword CoinGecko -> FiatRates, fix binary search upper bound, remove assignment of goroutine call result
* rename coingecko -> fiat_rates
* fiat_rates: export only the necessary methods
* blockbook.go: update log message
* bitcoinrpc.go: remove fiatRates settings
* use CurrencyRatesTicker structure everywhere, fix time format string, update tests, use UTC time
* add /api/v2/tickers tests, store rates as strings (json.Number)
* fiat_rates: add more tests, metrics and tickers-list endpoint, make the "currency" parameter mandatory
* public, worker: move FiatRates API logic to worker.go
* fiat_rates: add a future date test, fix comments, add more checks, store time as a pointer
* rocksdb_test: remove unneeded code
* fiat_rates: add a "ping" call to check server availability
* fiat_rates: do not return empty ticker, return nil instead if not found
add a test for non-existent ticker
* rocksdb_test: remove Sleep from tests
* worker.go: do not propagate all API errors to the client
* move InitTestFiatRates from rocksdb.go to public_test.go
* public.go: fix FiatRatesFindLastTicker result check
* fiat_rates: mock API server responses
* remove commented-out code
* fiat_rates: add comment explaining what periodSeconds attribute is used for
* websocket.go: implement fiatRates websocket endpoints & add tests
* fiatRates: add getFiatRatesTickersList websocket endpoint & test
* fiatRates: make websocket getFiatRatesByDate accept an array of dates, add more tests
* fiatRates: remove getFiatRatesForBlockID from websocket endpoints
* fiatRates: remove "if test", use custom startTime instead
Update tests and mock data
* fiatRates: finalize websocket functionality
add "date" parameter to TickerList
return data timestamps where needed
fix sync bugs (nil timestamp, duplicate save)
* fiatRates: add FiatRates configs for different coins
* worker.go: make GetBlockInfoFromBlockID private again
* fiatRates: wait & retry on errors, remove Ping function
* websocket.go: remove incorrect comment
* fiatRates: move coingecko-related code to a separate file, use interface
* fiatRates: if the new rates are the same as previous, try five more times, and only then store them
* coingecko: fix getting actual rates, add a timestamp parameter to get uncached responses
* vertcoin_testnet.json: remove fiat rates parameters
* fiat_rates: add timestamp to log message about skipping the repeating rates
2019-12-17 02:40:02 -07:00
|
|
|
}
|