2022-01-13 13:44:32 -08:00
|
|
|
require("dotenv").config({ path: ".env" });
|
|
|
|
const HDWalletProvider = require("@truffle/hdwallet-provider");
|
2020-08-06 14:32:31 -07:00
|
|
|
|
|
|
|
module.exports = {
|
Merge Dev.v2 into main (#181)
* Move js sdk on p2w-sdk to js folder
Also modifies other dependencies to correct path
* Reversed removal of wasm build for nodejs
* Add newline to a file
* pyth2wormhole: Fix attestation validation bug
commit-id:567942d7
* Add p2w sdk
It uses Pyth clients structs and cleans some of definitions for Pyth2Wormhole structures.
* Add emitter type and add wasm function for it
- It requires solitaire and it requires nightly rust
- No logic is applied, code is from p2w solana contract. (Eventually will be removed from there)
* Add new line
* Move WASM gen docker to root
It is because wasm is going to be used for p2w-sdk too.
* Fix unchanged cache mount paths
* Move terra relayer into the repo
* Update readme
* p2w-client: Add lib target, make helpers into lib functions there
commit-id:3aeb9ee6
* pyth2wormhole-client: Implement retries
commit-id:462677a2
* Make p2w-sdk js use p2w-sdk rust wasm bindings (#65)
* Make p2w-sdk js use p2w-sdk rust wasm bindings (instead of solana contract bindings)
- Removes `wasm.rs` in solana contract too.
* p2w attester contract use p2w-sdk (#68)
* Make solana pyth2wormhole contract to use the sdk
* Use threadpool to set up price symbols (#69)
* Add solana feature flag for p2w sdk (#71)
* Pyth bridge terra contract support batch attestation + use p2w sdk (#72)
* Make terra contract to use pyth2wormhole-sdk and support batch attestation
* Update packages + code format
* Move terra dockerfile out to support third-party dependency
* pyth2wormhole-client: Add polling-based concurrent tx confirmation
commit-id:5d16d035
* chore: p2w spy guarding improve Dockerfile
* fix: p2w_autoattest don't die after initialization
also minimal formatting
* add P2W_EXIT_ON_ERROR
* set P2W_EXIT_ON_ERROR default to True
* Remove bool test
* hopefully this time.
* add tilt p2w-attest P2W_EXIT_ON_ERROR
* convert P2W_EXIT_ON_ERROR to "true"
* Fix pyth test publisher (#76)
* Fix test pyth publisher to actually publish price
- Uses newer pyth images and removes existing hacks for old versions. It essentially makes dockers cleaner.
- Also improve some adds in dockers to cache more efficiently
* Support Batch Price attestation for terra relay (#75)
* Support Batch Price attestation for terra relay
* Abehjati/update p2w sdk to pyth sdk (#83)
* Make p2w-sdk use pyth-sdk
* Correct test values to reflect .env.test
* update p2w sdk to use ema instead of twa (#84)
* Rename twa to ema in terra relay (#85)
* Bring PythStructs.PriceAttestation struct in line with new API
* Add ability to parse batch price attestations
* Pyth terra remove wormhole governance (#87)
* Pyth in terra: remove wormhole governance
* [WIP] p2w-relay-iface: Add NPM package with relayer interface PoC
commit-id:efcb9b34
* Define Pyth SDK Price struct
* Define internal PythStructs.PriceInfo struct
* Cache price updates in standardised PriceInfo format
* Cache price updates from batch attestations
* p2w-relay-iface -> p2w-relay-terra/src/relay/iface.ts
commit-id:ed9846e3
* p2w relay interface: remove config from Relay iface
commit-id:0359d886
* Remove now unnused parsePriceAttestation function
* Pyth terra bridge: add contract deployment script (#88)
* Add pyth deployment script
- Also updates build.sh to build pyth completely
- Add a readme for deployment guide
* Add test for partial update behaviour
* update p2w sdk to new pyth (#91)
* p2w-sdk/rust use pyth sdk solana v2
* Dockerfile.client: solana 1.8.1 -> 1.9.4
commit-id:643299d3
* p2w-terra-relay: ignore lib and node, own project dir in docker
commit-id:b084bc40
* p2w-terra-relay: iface.ts review nits, naive impl for Terra
commit-id:0ecbfdd6
* Terra contract public api (#79)
* Use pyth-sdk in terra contract
* Update terra contract according to agreed API
- Also adds v2 suffix to price_info key because this migration is breaking.
* p2w-terra-relay: apply review nits
commit-id:aec39c85
* p2w-terra-relay: make worker.ts generic w.r.t. Relay interface
commit-id:5937a08c
* terra.ts: add missing return statement
commit-id:ba0365e6
* Update worket to handle timeout in callback correctly (#97)
* Remove wormhole-based governance
* Remove now unused legacy governance state and variables
* Remove Pyth Implementation implementation
* p2w-terra-relay: run formatter
commit-id:df311e23
* p2w-terra-relay: apply review nits
commit-id:5034b061
* Run formatter to trigger CI
commit-id:7c643d79
* p2w-terra-relay: EVM boilerplate
commit-id:8ad73ded
* Remove old PythProxy inheritance hierarchy
* Remove now unnused initialized implementations map
* Remove old mock bridge implementation
* Remove dependency to wormhole sdk as path and cleanup wrong eth copies (#104)
* Dockerfile.pyth_relay: Fix lockfile issue in ethereum
This commit fixes a lockfile issue resulting from newer NPM in our
container.
Specifically, our Dockerfile is pinned, relaxes Ethereum's
lockfile (npm ci -> npm install) and hardens our lockfile (npm install
-> npm ci)
commit-id:3381c8ec
* p2w-terra-relay: Admit loss against mkdir -p
commit-id:3abdb58d
* Remove unused components from wormhole (#108)
* Remove unused components from wormhole
Removes the following:
- explorer
- e2e
- bridge_ui
- algorand stuff (teal dockerfile and third_party/algorand)
- ci_tests (testing directory) which are for JS/Bridge UI
* Remove unused terra contracts (#109)
- Note: Terra contract addresses are changed by this PR due to deterministic ordering.
- Removed unused nft and token bridge, and migration contracts in Terra
- Modified documentation to remove info regarding removed contracts.(docs/devnet.md)
* Remove unused solana contracts and their wasm creations (#110)
Removes token bridge, nft bridge, migration. Also removes them from deployments and docs.
* Add fee estimate for terra relay (#112)
* Removes directores which are not related to p2w (#111)
Removes
- audits
- dashboards (dashboard is removed from Tilt)
- event_database (all of it's dependencies are removed from Tilt and it's not for p2w)
- lp_ui: a project (pressumably liquidity pool) not related to p2w
- sdk: wormhole sdk, p2w depends on it's npm package and there is no dependency to rust one
- spydk: it's not anywhere in p2w
- staging/algorand: these are for alrogrand which is not used in p2w
- whitepapers: these are for wormhole
* Add and update openzeppelin packages
* Add initializer to Pyth contract
* Add upgradable PythProxy contract
* Update tests to work with new proxy setup
* Update migrate script to work with new proxy setup
* Add tests for new proxy setup
* Inline PythStorage.Provider struct
* Make Pyth.verifyPythVM function internal
* Fix struct field names
* Rename Price to PriceFeed to be consistent with SDK
* Replace PythGetters.latestPriceInfo with Pyth.queryPriceFeed in public API
* p2w-terra-relay: Add a query() EVM call and Tilt boilerplate
commit-id:f97d0c16
* Clarify test comments
* Add health probe (#107)
* Rename PythProxy to PythUpgradable
* p2w-evm-relay: Backport the proxy address change from debug session
commit-id:55b63ed5
* p2w-terra-relay -> p2w-relay, split EVM relay into new service
commit-id:36d0db6e
* Tiltfile: typo
commit-id:3bbba986
* p2w-evm-relay.yaml: typo
commit-id:35c87c79
* p2w-evm-relay.yaml: typo 2: electric boogaloo
commit-id:40892265
* Add build folder to dockerignore
* Rename attestPriceBatch to updatePriceBatchFromVm
* Update comment on time check
* Trigger Build
* Tiltfile: Fix port forwards for p2w-evm-relay
commit-id:6e5e9c14
* p2w-relay: PythImplementation -> PythUpgradable
commit-id:bfea7eb5
* Remove unused Pyth Chain ID metadata
* Add the query() call
commit-id:02966ce5
* p2w-terra-relay: Fix evm.ts after contract rename
commit-id:87381bec
* Make truffle migrations directory configurable
* p2w-evm-relay: Fix wrong EVM contract ID, add a check for it
This commit takes care of an outdated pyth2wormhole EVM contract
address and implements a contract/non-contract check using
web3.eth.getCode() (empty for non-contracts).
This problem cost us several hours of debugging and resulted from an
EVM gotcha - a contract call to a non-contract address will simply
ignore the call payload and make a plain transfer. Additionally, ETH
accounts don't have a notion of initialization - used and unused
addresses are equally valid tx recipients. Resulting from both
properties, any unused address could potentially yield wrongly
successful calls, wasting funds and debug time over p2w-relay. Thus
the heuristic to protect us from this is to see if the address' code
storage is populated.
commit-id:b655a720
* p2w-relay: Also implement the contract check in EVM relay()
commit-id:e28709e5
* evm.ts: Fix wording in changed/unchanged logs
commit-id:13c81625
* Make terra relayer more resillient (#120)
- Increase retry attempts (4 to 6) and retry_delay (250ms to 1s) to be more resillient
- This is because when account sequence mismatch happens it might take some time be fixed
- Removed estimate fee because it's being done in wallet.createAndSignTx (less requests)
- Improved logging on when error happens
* Update dockerfile to chown less files (#121)
* Update dockerfile to chown sooner
* p2w-relay: review nits
* p2w-evm-relay: make feed verification queries configurable
* p2w-relay: cache wormhole import
* p2w-relay: formatter, remove getcode() from relay(), add comments
commit-id:1a65c52c
* p2w-relay: typos and leftovers
commit-id:9b523b25
* Change websocket to json socket to support bsc testnet + improves env vars (#139)
* Change websocket to json socket to support bsc testnet + imporving env vars
* Add unit test to Pyth Terra Contract (#123)
* Add unit test to the terra contract
- Refactors the code into multiple functions to make unit testing easier
- Adds build and test of terra contract to CI according to #73
* p2w-relay: harden exception handling, yell about uncaught stuff
commit-id:24e14835
* p2w-relay: Correct outdated comment
commit-id:d0b57d33
* p2w-evm-relay: s/async (e)/(e)/
commit-id:11b3a474
* Modify proto docker and tiltfile to stop creating unnecessary files (#144)
* Remove sdk/spydk from wasm and remove buf gen web yaml (#145)
* Remove wormhole contract from wasm generation (#160)
* pyth2wormhole: Add num_publishers to libraries and contracts
commit-id:f7263eed
* pyth2wormhole: add max_num_publishers to cross-chain metadata
commit-id:7550fa50
* Move p2w relayer parsing to p2w sdk js (#162)
* Move Price Attestation parsing logic to the sdk
* pyth2wormhole: Add contract testing boilerplate for attest()
commit-id:51949fbe
* Create p2w-api base (from p2w-relay) (#142)
* Create p2w-api base (from p2w-relay)
* Refactor project structure
* Rename p2w to pyth price service (#166)
* Abehjati/price-service-add-rest-layer (#167)
* Add rest api for latest vaa
Co-authored-by: Stan Drozd <[email protected]>
Co-authored-by: Eran Davidovich <[email protected]>
Co-authored-by: Eran Davidovich <[email protected]>
Co-authored-by: Tom Pointon <[email protected]>
Co-authored-by: Stan Drozd <[email protected]>
2022-04-11 09:15:20 -07:00
|
|
|
migrations_directory: process.env.MIGRATIONS_DIR,
|
2022-01-13 13:44:32 -08:00
|
|
|
networks: {
|
|
|
|
development: {
|
|
|
|
host: "127.0.0.1",
|
|
|
|
port: 8545,
|
|
|
|
network_id: "*",
|
|
|
|
},
|
2022-10-13 17:09:52 -07:00
|
|
|
ethereum: {
|
2022-01-13 13:44:32 -08:00
|
|
|
provider: () =>
|
|
|
|
new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
`https://mainnet.infura.io/v3/` + process.env.INFURA_KEY
|
|
|
|
),
|
|
|
|
network_id: 1,
|
|
|
|
gas: 10000000,
|
2022-12-06 08:56:21 -08:00
|
|
|
gasPrice: 17000000000,
|
2022-01-13 13:44:32 -08:00
|
|
|
confirmations: 1,
|
|
|
|
timeoutBlocks: 200,
|
|
|
|
skipDryRun: false,
|
2020-08-14 15:09:48 -07:00
|
|
|
},
|
2022-05-20 06:16:24 -07:00
|
|
|
ropsten: {
|
|
|
|
provider: () =>
|
|
|
|
new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
`https://ropsten.infura.io/v3/` + process.env.INFURA_KEY
|
|
|
|
),
|
|
|
|
network_id: 3,
|
|
|
|
gas: 5500000,
|
|
|
|
confirmations: 2,
|
|
|
|
timeoutBlocks: 200,
|
|
|
|
skipDryRun: true,
|
|
|
|
},
|
2022-01-13 13:44:32 -08:00
|
|
|
rinkeby: {
|
|
|
|
provider: () =>
|
|
|
|
new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
`https://rinkeby.infura.io/v3/` + process.env.INFURA_KEY
|
|
|
|
),
|
|
|
|
network_id: 4,
|
|
|
|
gas: 5500000,
|
|
|
|
confirmations: 2,
|
|
|
|
timeoutBlocks: 200,
|
|
|
|
skipDryRun: true,
|
|
|
|
},
|
|
|
|
goerli: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://goerli.infura.io/v3/" + process.env.INFURA_KEY
|
|
|
|
);
|
|
|
|
},
|
|
|
|
network_id: "5",
|
2022-09-30 01:38:05 -07:00
|
|
|
gas: 8465030,
|
|
|
|
gasPrice: 15000000000,
|
2022-08-10 06:58:13 -07:00
|
|
|
skipDryRun: true,
|
2022-01-13 13:44:32 -08:00
|
|
|
},
|
2022-05-20 06:16:24 -07:00
|
|
|
bnb: {
|
2022-01-13 13:44:32 -08:00
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
2022-12-06 08:56:21 -08:00
|
|
|
"https://rpc.ankr.com/bsc"
|
2022-01-13 13:44:32 -08:00
|
|
|
);
|
|
|
|
},
|
|
|
|
network_id: "56",
|
|
|
|
gas: 70000000,
|
2022-09-09 23:35:07 -07:00
|
|
|
gasPrice: 5500000000,
|
2022-01-13 13:44:32 -08:00
|
|
|
},
|
2022-05-20 06:16:24 -07:00
|
|
|
bnb_testnet: {
|
2022-11-24 05:14:29 -08:00
|
|
|
provider: () =>
|
|
|
|
new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
2022-12-06 08:56:21 -08:00
|
|
|
"https://rpc.ankr.com/bsc_testnet_chapel"
|
2022-11-24 05:14:29 -08:00
|
|
|
),
|
2022-01-26 08:15:10 -08:00
|
|
|
network_id: "97",
|
2022-05-13 01:25:35 -07:00
|
|
|
confirmations: 10,
|
|
|
|
networkCheckTimeout: 1000000,
|
|
|
|
timeoutBlocks: 1000,
|
|
|
|
skipDryRun: true,
|
2022-01-26 08:15:10 -08:00
|
|
|
},
|
|
|
|
polygon: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://polygon-rpc.com"
|
|
|
|
);
|
|
|
|
},
|
|
|
|
network_id: "137",
|
2022-10-17 04:46:11 -07:00
|
|
|
gas: 20000000,
|
|
|
|
gasPrice: 300000000000,
|
2022-01-26 08:15:10 -08:00
|
|
|
},
|
|
|
|
mumbai: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
2022-11-24 05:14:29 -08:00
|
|
|
"https://polygon-testnet-rpc.allthatnode.com:8545"
|
|
|
|
);
|
2022-01-26 08:15:10 -08:00
|
|
|
},
|
|
|
|
network_id: "80001",
|
|
|
|
},
|
|
|
|
avalanche: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://api.avax.network/ext/bc/C/rpc"
|
|
|
|
);
|
|
|
|
},
|
|
|
|
network_id: "43114",
|
|
|
|
gas: 8000000,
|
2022-09-30 01:38:05 -07:00
|
|
|
gasPrice: 30000000000,
|
2022-01-26 08:15:10 -08:00
|
|
|
},
|
|
|
|
fuji: {
|
2022-11-24 05:14:29 -08:00
|
|
|
provider: () =>
|
|
|
|
new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://api.avax-test.network/ext/bc/C/rpc"
|
|
|
|
),
|
2022-01-26 08:15:10 -08:00
|
|
|
network_id: "43113",
|
|
|
|
},
|
2022-01-13 13:44:32 -08:00
|
|
|
oasis: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://emerald.oasis.dev/"
|
|
|
|
);
|
|
|
|
},
|
|
|
|
network_id: 42262,
|
|
|
|
gas: 4465030,
|
|
|
|
gasPrice: 30000000000,
|
|
|
|
},
|
2022-01-31 12:48:37 -08:00
|
|
|
aurora: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://mainnet.aurora.dev"
|
|
|
|
);
|
|
|
|
},
|
2022-09-09 23:35:07 -07:00
|
|
|
network_id: 0x4e454152,
|
|
|
|
gas: 10000000,
|
|
|
|
from: "0xC42e9476b0a458097087336e2395Dbf45B0BdC12", // creator public key
|
2022-09-30 01:38:05 -07:00
|
|
|
networkCheckTimeout: 1000000,
|
|
|
|
timeoutBlocks: 1000,
|
2022-01-31 12:48:37 -08:00
|
|
|
},
|
|
|
|
aurora_testnet: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://testnet.aurora.dev"
|
2022-11-24 05:14:29 -08:00
|
|
|
);
|
2022-01-31 12:48:37 -08:00
|
|
|
},
|
|
|
|
network_id: 0x4e454153,
|
2022-06-20 01:22:25 -07:00
|
|
|
gas: 10000000,
|
|
|
|
from: "0xC42e9476b0a458097087336e2395Dbf45B0BdC12", // public key
|
2022-10-13 17:09:52 -07:00
|
|
|
networkCheckTimeout: 1000000,
|
|
|
|
timeoutBlocks: 1000,
|
2022-01-31 12:48:37 -08:00
|
|
|
},
|
2022-09-09 23:35:07 -07:00
|
|
|
arbitrum: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://arb1.arbitrum.io/rpc"
|
|
|
|
);
|
|
|
|
},
|
|
|
|
network_id: 42161,
|
|
|
|
},
|
2022-12-20 10:02:59 -08:00
|
|
|
arbitrum_testnet: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://goerli-rollup.arbitrum.io/rpc"
|
|
|
|
);
|
|
|
|
},
|
|
|
|
network_id: 421613,
|
|
|
|
},
|
2022-09-09 23:35:07 -07:00
|
|
|
optimism: {
|
|
|
|
provider: () => {
|
2022-12-06 08:56:21 -08:00
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://rpc.ankr.com/optimism"
|
|
|
|
);
|
2022-09-09 23:35:07 -07:00
|
|
|
},
|
|
|
|
network_id: 10,
|
|
|
|
},
|
2022-10-27 11:01:14 -07:00
|
|
|
optimism_goerli: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
2022-12-06 08:56:21 -08:00
|
|
|
"https://rpc.ankr.com/optimism_testnet"
|
2022-10-27 11:01:14 -07:00
|
|
|
);
|
|
|
|
},
|
|
|
|
network_id: 420,
|
|
|
|
},
|
2022-02-28 13:32:22 -08:00
|
|
|
fantom: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
2022-12-06 08:56:21 -08:00
|
|
|
"https://rpc.ankr.com/fantom"
|
2022-11-24 05:14:29 -08:00
|
|
|
);
|
2022-02-28 13:32:22 -08:00
|
|
|
},
|
|
|
|
network_id: 250,
|
|
|
|
gas: 8000000,
|
2022-12-06 08:56:21 -08:00
|
|
|
gasPrice: 50000000000,
|
2022-02-28 13:32:22 -08:00
|
|
|
timeoutBlocks: 15000,
|
|
|
|
},
|
2022-01-31 12:48:37 -08:00
|
|
|
fantom_testnet: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
2022-12-06 08:56:21 -08:00
|
|
|
"https://rpc.ankr.com/fantom_testnet"
|
2022-11-24 05:14:29 -08:00
|
|
|
);
|
2022-01-31 12:48:37 -08:00
|
|
|
},
|
|
|
|
network_id: 0xfa2,
|
2022-09-30 01:38:05 -07:00
|
|
|
gas: 8000000,
|
2022-01-31 12:48:37 -08:00
|
|
|
gasPrice: 300000000000,
|
|
|
|
},
|
2022-05-20 06:16:24 -07:00
|
|
|
celo: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://forno.celo.org"
|
2022-11-24 05:14:29 -08:00
|
|
|
);
|
2022-05-20 06:16:24 -07:00
|
|
|
},
|
|
|
|
network_id: 42220,
|
2022-11-24 05:14:29 -08:00
|
|
|
},
|
2022-05-20 06:16:24 -07:00
|
|
|
celo_alfajores_testnet: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://alfajores-forno.celo-testnet.org"
|
2022-11-24 05:14:29 -08:00
|
|
|
);
|
2022-05-20 06:16:24 -07:00
|
|
|
},
|
|
|
|
network_id: 44787,
|
|
|
|
},
|
2022-12-08 09:14:18 -08:00
|
|
|
kcc: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://rpc-mainnet.kcc.network"
|
|
|
|
);
|
|
|
|
},
|
|
|
|
network_id: 321,
|
|
|
|
},
|
|
|
|
kcc_testnet: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://rpc-testnet.kcc.network"
|
|
|
|
);
|
|
|
|
},
|
|
|
|
network_id: 322,
|
|
|
|
},
|
|
|
|
zksync: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://zksync2-mainnet.zksync.io"
|
|
|
|
);
|
|
|
|
},
|
|
|
|
network_id: 324,
|
|
|
|
},
|
|
|
|
zksync_testnet: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://zksync2-testnet.zksync.dev"
|
|
|
|
);
|
|
|
|
},
|
|
|
|
network_id: 280,
|
|
|
|
},
|
|
|
|
cronos: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://cronosrpc-1.xstaking.sg"
|
|
|
|
);
|
|
|
|
},
|
|
|
|
network_id: 25,
|
|
|
|
},
|
|
|
|
cronos_testnet: {
|
|
|
|
provider: () => {
|
|
|
|
return new HDWalletProvider(
|
|
|
|
process.env.MNEMONIC,
|
|
|
|
"https://evm-t3.cronos.org"
|
|
|
|
);
|
|
|
|
},
|
|
|
|
network_id: 338,
|
|
|
|
},
|
2022-01-13 13:44:32 -08:00
|
|
|
},
|
2020-08-06 14:32:31 -07:00
|
|
|
|
2022-01-13 13:44:32 -08:00
|
|
|
compilers: {
|
|
|
|
solc: {
|
|
|
|
version: "0.8.4",
|
|
|
|
settings: {
|
|
|
|
optimizer: {
|
|
|
|
enabled: true,
|
2022-11-30 06:56:44 -08:00
|
|
|
runs: 10000,
|
2022-01-13 13:44:32 -08:00
|
|
|
},
|
|
|
|
},
|
2020-08-06 14:32:31 -07:00
|
|
|
},
|
2022-01-13 13:44:32 -08:00
|
|
|
},
|
2020-08-17 14:01:59 -07:00
|
|
|
|
2022-11-29 03:11:49 -08:00
|
|
|
plugins: [
|
|
|
|
"@chainsafe/truffle-plugin-abigen",
|
|
|
|
"truffle-plugin-verify",
|
|
|
|
"truffle-contract-size",
|
|
|
|
],
|
2021-07-20 10:59:56 -07:00
|
|
|
|
2022-01-13 13:44:32 -08:00
|
|
|
api_keys: {
|
|
|
|
etherscan: process.env.ETHERSCAN_KEY,
|
2022-09-07 03:00:18 -07:00
|
|
|
bscscan: process.env.BSCSCAN_KEY,
|
2022-09-09 23:35:07 -07:00
|
|
|
snowtrace: process.env.SNOWTRACE_KEY,
|
|
|
|
ftmscan: process.env.FTMSCAN_KEY,
|
|
|
|
polygonscan: process.env.POLYGONSCAN_KEY,
|
|
|
|
optimistic_etherscan: process.env.OPTIMISTIC_ETHERSCAN_KEY,
|
|
|
|
aurorascan: process.env.AURORASCAN_KEY,
|
|
|
|
arbiscan: process.env.ARBISCAN_KEY,
|
2022-01-13 13:44:32 -08:00
|
|
|
},
|
2020-08-06 14:32:31 -07:00
|
|
|
};
|