Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat!: NNS-managed RPC providers #252

Merged
merged 115 commits into from
Sep 5, 2024
Merged
Show file tree
Hide file tree
Changes from 101 commits
Commits
Show all changes
115 commits
Select commit Hold shift + click to select a range
7b7961b
Update Provider data structures
rvanasa Aug 13, 2024
9d5e14b
Merge branch 'main' of https://github.com/internet-computer-protocol/…
rvanasa Aug 13, 2024
3c9b372
Progress
rvanasa Aug 13, 2024
152712e
Refactor / simplify
rvanasa Aug 13, 2024
cec84b2
Progress
rvanasa Aug 13, 2024
13f2ae4
Progress
rvanasa Aug 13, 2024
60875aa
Adjust provider URL / API key definitions
rvanasa Aug 13, 2024
760ee78
Update 'main.rs'
rvanasa Aug 13, 2024
bbd1c66
Update tests
rvanasa Aug 14, 2024
035113d
Check hostname in 'validate_url_pattern
rvanasa Aug 14, 2024
e96300e
Test new validation logic
rvanasa Aug 14, 2024
6da4160
Update API key validation logic
rvanasa Aug 14, 2024
91e6da3
Update Candid interface for clarity
rvanasa Aug 19, 2024
7cc7fdd
Update Cargo.lock
rvanasa Aug 19, 2024
4b0dda9
Add 'ProviderId' struct
rvanasa Aug 19, 2024
69df269
Update tests
rvanasa Aug 19, 2024
ff8ceeb
Implement NNS upgrade actions to add/update/remove providers
rvanasa Aug 19, 2024
d58ca13
Add API key map in stable memory and 'insertApiKeys()' Candid method
rvanasa Aug 20, 2024
32ed787
Remove 'Auth::RegisterProvider' capability
rvanasa Aug 20, 2024
4fbb880
Remove 'authorize', 'deauthorize', and 'getAuthorized' Candid methods
rvanasa Aug 20, 2024
7e40d87
Refactor auth system to use init arg
rvanasa Aug 20, 2024
fbebbaf
Add code comment
rvanasa Aug 20, 2024
a789716
Remove 'Auth::FreeRpc'
rvanasa Aug 20, 2024
f32d2d1
Misc
rvanasa Aug 20, 2024
112fdf1
Add 'SetServiceProvider' action
rvanasa Aug 20, 2024
13e5200
Use hard-coded RPC providers and service mappings
rvanasa Aug 21, 2024
21550a0
Remove tests related to registering / updating providers
rvanasa Aug 21, 2024
0b8a6c9
Remove open RPC access system
rvanasa Aug 21, 2024
60c6988
Refactor / simplify
rvanasa Aug 21, 2024
744ded4
Adjust test output
rvanasa Aug 21, 2024
f1729eb
Misc. adjustments
rvanasa Aug 21, 2024
22685a6
Use hard-coded number of subnet nodes
rvanasa Aug 21, 2024
2e1cc61
Fix linter warnings
rvanasa Aug 21, 2024
e116d0a
Add URL / header / API key validation
rvanasa Aug 21, 2024
cc8c420
Simplify validation error handling
rvanasa Aug 21, 2024
bb35879
Update dfx.json
rvanasa Aug 22, 2024
218288f
Update provider URL patterns
rvanasa Aug 22, 2024
17d8c2c
Remove 'PrincipalStorable'
rvanasa Aug 22, 2024
b599b57
Adjust code comments
rvanasa Aug 22, 2024
478876b
Refactor API key validation
rvanasa Aug 22, 2024
5087dfe
Use constant Provider array
rvanasa Aug 22, 2024
8b5a276
Reintroduce 'ProviderView' and update tests
rvanasa Aug 22, 2024
1489e16
Implement 'From<Provider>' for 'ProviderView'
rvanasa Aug 22, 2024
9b022bd
Update 'InitArgs' in Candid interface
rvanasa Aug 22, 2024
e435894
Update Cargo.lock
rvanasa Aug 22, 2024
3748953
Fix linter warnings
rvanasa Aug 22, 2024
77e220c
Rename 'apiKeyPrincipals' to 'manageApiKeys'
rvanasa Aug 23, 2024
12f1d5a
Refactor unit tests for consistency between files
rvanasa Aug 23, 2024
a2cc302
Use 'ic_stable_structures::Vec<>' for API key principals
rvanasa Aug 23, 2024
007c133
Send API key in header for Alchemy providers
rvanasa Aug 26, 2024
cf05035
Merge 'cketh-minter' changes and update codebase accordingly
rvanasa Aug 26, 2024
1d45e60
Update Candid interface
rvanasa Aug 26, 2024
edad463
Add custom 'Debug' impl for 'ApiKey'
rvanasa Aug 26, 2024
ad6c584
Set up optional API keys with 'default_url' and 'default_headers'
rvanasa Aug 26, 2024
947c555
Progress
rvanasa Aug 26, 2024
93df00a
Update 'ProviderView' and Candid interface
rvanasa Aug 26, 2024
6b7f5b7
Progress
rvanasa Aug 26, 2024
428c720
Populate 'public_url' for providers without required API keys
rvanasa Aug 26, 2024
3c6d9c1
Update API key validation logic
rvanasa Aug 26, 2024
ab76e07
Merge branch 'main' of https://github.com/internet-computer-protocol/…
rvanasa Aug 26, 2024
06bb591
Remove unused import
rvanasa Aug 26, 2024
0e2b127
Fix linter warnings
rvanasa Aug 26, 2024
8ad70da
Rename 'service' to 'alias' in 'Provider' and 'ProviderView'
rvanasa Aug 26, 2024
45e344e
Add 'demo' field to 'InitArgs'
rvanasa Aug 26, 2024
0fbcc95
Bypass charging cycles in demo mode
rvanasa Aug 26, 2024
a00876d
Update API key validation test cases
rvanasa Aug 26, 2024
2281d45
Add unit test for API key 'Debug' impl
rvanasa Aug 27, 2024
ffd51b7
Remove 'Clone' and derive zero-memory traits for 'ApiKey'
rvanasa Aug 27, 2024
d599354
Refactor header validation
rvanasa Aug 27, 2024
a7d64bc
Add public URLs to all RPC providers
rvanasa Aug 27, 2024
8896374
Update dfx.json / E2E test configuration
rvanasa Aug 27, 2024
51c60fb
Remove default public URLs for Alchemy and BlockPi providers
rvanasa Aug 27, 2024
70af7ea
Merge branch 'main' of https://github.com/internet-computer-protocol/…
rvanasa Aug 28, 2024
16391d1
Remove unused imports
rvanasa Aug 28, 2024
471ad21
Allow passing custom 'Content-Type' header
rvanasa Aug 28, 2024
0cf7f2e
Optimize 'Content-Type' header comparison
rvanasa Aug 28, 2024
6fee07d
Refactor 'Provider' to use 'RpcAccess' and 'RpcAuth'
rvanasa Aug 28, 2024
91d988b
Update Candid interface
rvanasa Aug 28, 2024
897d68a
Finish refactor
rvanasa Aug 28, 2024
50b1dbe
Fix Candid interface
rvanasa Aug 28, 2024
bdfa9d6
Remove 'ProviderView', 'RpcAccessView', and 'RpcAuthView' structs
rvanasa Aug 28, 2024
55f8ce6
Merge branch 'main' into nns-providers
rvanasa Aug 29, 2024
c5a8bec
Test API key insertion
rvanasa Aug 29, 2024
05dd1dd
Update tests; adjust cycles charged metric condition
rvanasa Aug 29, 2024
5459f96
Merge branch 'nns-providers' of https://github.com/internet-computer-…
rvanasa Aug 29, 2024
bc7b34e
Update 'candid_rpc_should_err_without_cycles' test
rvanasa Aug 29, 2024
b35506a
Rename 'prepare_api_keys()' -> 'mock_api_keys()'
rvanasa Aug 29, 2024
7611685
Implement fallback public URLs for 'Authenticated' providers
rvanasa Aug 29, 2024
a440833
Finish updating tests
rvanasa Aug 29, 2024
9bc17ea
Fix linter warnings
rvanasa Aug 29, 2024
94a6680
Update Rust / Motoko E2E tests
rvanasa Aug 29, 2024
60342bc
Update Cargo.lock
rvanasa Aug 29, 2024
8efdd7a
Add public URLs for BlockPi providers
rvanasa Aug 29, 2024
ee23255
Add public URLs for Alchemy
rvanasa Aug 29, 2024
4f9ad8a
Try removing 'rust-cache' from CI
rvanasa Aug 29, 2024
0ce1c77
Try renaming Rust E2E canister in Cargo.toml
rvanasa Aug 29, 2024
1f6ba0a
Update dfx.json
rvanasa Aug 29, 2024
56ea848
Simplify Rust canister
rvanasa Aug 29, 2024
46f4730
Adjust E2E script
rvanasa Aug 29, 2024
2f060b7
Reformat
rvanasa Aug 30, 2024
051785e
Remove extraneous test
rvanasa Aug 30, 2024
7aec116
Increase 'API_KEY_MAX_SIZE' from 256 to 512
rvanasa Sep 4, 2024
08d0002
Log API key updates
rvanasa Sep 4, 2024
83fa123
Use 'Authorization' header for Cloudflare provider
rvanasa Sep 4, 2024
2135b6a
Test 'provider_id' being equivalent to index in provider array
rvanasa Sep 4, 2024
fc3c5ae
Refactor memory IDs
rvanasa Sep 4, 2024
ff38c02
Refactor stable memory to use 'DefaultMemoryImpl'
rvanasa Sep 4, 2024
aeabd74
Update src/main.rs
rvanasa Sep 4, 2024
a425c0b
Add Rustdoc for 'updateApiKeys'
rvanasa Sep 4, 2024
e3c54ea
Merge branch 'nns-providers' of https://github.com/internet-computer-…
rvanasa Sep 4, 2024
eaed081
Refactor 'demo_status' -> 'demo_active'
rvanasa Sep 4, 2024
5dfc31e
Use stable memory for demo status
rvanasa Sep 5, 2024
fedebf1
Remove unnecessary mutable borrow
rvanasa Sep 5, 2024
14440e4
Remove 'wasm-bindgen' patch
rvanasa Sep 5, 2024
b90e516
Reformat
rvanasa Sep 5, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
862 changes: 451 additions & 411 deletions Cargo.lock

Large diffs are not rendered by default.

18 changes: 9 additions & 9 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,11 @@ ic-canisters-http-types = { workspace = true }
ic-nervous-system-common = { workspace = true }
ic-metrics-encoder = { workspace = true }
ic-stable-structures = { workspace = true }
ic-certified-map = { workspace = true }
ic-canister-log = { git = "https://github.com/dfinity/ic", rev = "1f551bea63354370b6e7a5037e96d464bdab3b41", package = "ic-canister-log" }
ic-cdk = { workspace = true }
ic-cdk-macros = { workspace = true }
ic-canister-log = { git = "https://github.com/dfinity/ic", rev = "5991b07d0e396b7885d5b4d4c917f7290dd70814", package = "ic-canister-log" }
cketh-common = { git = "https://github.com/dfinity/ic", rev = "5991b07d0e396b7885d5b4d4c917f7290dd70814", package = "ic-cketh-minter" }
ic-certified-map = { workspace = true }
cketh-common = { git = "https://github.com/dfinity/ic", rev = "1f551bea63354370b6e7a5037e96d464bdab3b41", package = "ic-cketh-minter" }
maplit = "1.0"
num = "0.4"
num-traits = "0.2"
Expand All @@ -39,6 +39,7 @@ url = "2.5"
async-trait = "0.1"
hex = "0.4"
ethers-core = "2.0"
zeroize = "1.8"

[dev-dependencies]
ic-ic00-types = { git = "https://github.com/dfinity/ic", rev = "release-2023-09-27_23-01" }
Expand All @@ -53,21 +54,20 @@ candid = { version = "0.9" }
getrandom = { version = "0.2", features = ["custom"] }
hex = "0.4.3"
ic-canisters-http-types = { git = "https://github.com/dfinity/ic", rev = "release-2023-09-27_23-01" }
ic-cdk = "0.10"
ic-cdk-bindgen = "0.1"
ic-cdk-macros = "0.7"
ic-certified-map = "0.4"
ic-nervous-system-common = { git = "https://github.com/dfinity/ic", rev = "release-2023-09-27_23-01" }
ic-metrics-encoder = "1.1"
ic-stable-structures = "0.5"
ic-certified-map = "0.4"
ic-cdk = "0.10"
ic-cdk-macros = "0.7"
ic-cdk-bindgen = "0.1"
num-bigint = "0.4.6"
proptest = "1.5.0"
serde = "1.0"
serde_json = "1.0"


[patch.crates-io]
wasm-bindgen = { git = "https://github.com/dfinity/wasm-bindgen", rev = "9cde9c9a88c1fad13a8663277650e01b5671843e" }
wasm-bindgen = { git = "https://github.com/dfinity/wasm-bindgen", rev = "65d81b54cadb7c73e6a8c7643889580dfd4bb7aa" }
gregorydemay marked this conversation as resolved.
Show resolved Hide resolved

[workspace]
members = ["e2e/rust", "evm_rpc_types"]
6 changes: 5 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,11 @@ npm install
# Deploy to the local replica
dfx start --background
npm run generate
dfx deploy evm_rpc --argument "(record {nodesInSubnet = 28})"
dfx deploy evm_rpc

# Alternatively, deploy and run test suite
dfx start --background
scripts/e2e
```

Regenerate language bindings with the `generate` [npm script](https://docs.npmjs.com/cli/v10/using-npm/scripts):
Expand Down
79 changes: 29 additions & 50 deletions candid/evm_rpc.did
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
type Auth = variant { FreeRpc; PriorityRpc; RegisterProvider; Manage };
type Block = record {
miner : text;
totalDifficulty : opt nat;
Expand Down Expand Up @@ -43,6 +42,7 @@ type EthSepoliaService = variant {
Ankr;
BlockPi;
PublicNode;
Sepolia;
};
type L2MainnetService = variant {
Alchemy;
Expand Down Expand Up @@ -79,7 +79,8 @@ type HttpOutcallError = variant {
};
};
type InitArgs = record {
nodesInSubnet : nat32;
demo : opt bool;
manageApiKeys : opt vec principal;
};
type JsonRpcError = record { code : int64; message : text };
type LogEntry = record {
Expand All @@ -93,12 +94,6 @@ type LogEntry = record {
logIndex : opt nat;
removed : bool;
};
type ManageProviderArgs = record {
providerId : nat64;
chainId: opt nat64;
"service" : opt RpcService;
primary : opt bool;
};
type Metrics = record {
requests : vec record { record { text; text }; nat64 };
responses : vec record { record { text; text; text }; nat64 };
Expand Down Expand Up @@ -140,22 +135,25 @@ type ProviderError = variant {
NoPermission;
};
type ProviderId = nat64;
type ProviderView = record {
cyclesPerCall : nat64;
owner : principal;
hostname : text;
primary : bool;
chainId : nat64;
cyclesPerMessageByte : nat64;
providerId : nat64;
};
type RegisterProviderArgs = record {
cyclesPerCall : nat64;
credentialPath : text;
hostname : text;
credentialHeaders : opt vec HttpHeader;
chainId : nat64;
cyclesPerMessageByte : nat64;
type ChainId = nat64;
type Provider = record {
providerId : ProviderId;
chainId : ChainId;
access : RpcAccess;
alias : opt RpcService;
};
type RpcAccess = variant {
Authenticated : record {
auth : RpcAuth;
publicUrl : opt text;
};
Unauthenticated : record {
publicUrl : text;
};
};
type RpcAuth = variant {
BearerToken : record { url : text };
UrlParameter : record { urlPattern : text };
};
type RejectionCode = variant {
NoError;
Expand Down Expand Up @@ -200,7 +198,7 @@ type RpcService = variant {
};
type RpcServices = variant {
Custom : record {
chainId : nat64;
chainId : ChainId;
services : vec RpcApi;
};
EthSepolia : opt vec EthSepoliaService;
Expand Down Expand Up @@ -233,13 +231,6 @@ type TransactionReceipt = record {
contractAddress : opt text;
gasUsed : nat;
};
type UpdateProviderArgs = record {
providerId : nat64;
cyclesPerCall : opt nat64;
credentialPath : opt text;
credentialHeaders : opt vec HttpHeader;
cyclesPerMessageByte : opt nat64;
};
type ValidationError = variant {
Custom : text;
HostNotAllowed : text;
Expand All @@ -249,29 +240,17 @@ type ValidationError = variant {
CredentialHeaderNotAllowed;
};
service : (InitArgs) -> {
authorize : (principal, Auth) -> (success : bool);
deauthorize : (principal, Auth) -> (success : bool);
eth_feeHistory : (RpcServices, opt RpcConfig, FeeHistoryArgs) -> (MultiFeeHistoryResult);
eth_getBlockByNumber : (RpcServices, opt RpcConfig, BlockTag) -> (MultiGetBlockByNumberResult);
eth_getLogs : (RpcServices, opt RpcConfig, GetLogsArgs) -> (MultiGetLogsResult);
eth_getTransactionCount : (RpcServices, opt RpcConfig, GetTransactionCountArgs) -> (
MultiGetTransactionCountResult
);
eth_getTransactionCount : (RpcServices, opt RpcConfig, GetTransactionCountArgs) -> (MultiGetTransactionCountResult);
eth_getTransactionReceipt : (RpcServices, opt RpcConfig, hash : text) -> (MultiGetTransactionReceiptResult);
eth_sendRawTransaction : (RpcServices, opt RpcConfig, rawSignedTransactionHex : text) -> (MultiSendRawTransactionResult);
getAccumulatedCycleCount : (ProviderId) -> (cycles : nat) query;
getAuthorized : (Auth) -> (vec principal) query;
getMetrics : () -> (Metrics) query;
getNodesInSubnet : () -> (numberOfNodes : nat32) query;
getOpenRpcAccess : () -> (active : bool) query;
getProviders : () -> (vec ProviderView) query;
getServiceProviderMap : () -> (vec record { RpcService; nat64 }) query;
manageProvider : (ManageProviderArgs) -> ();
registerProvider : (RegisterProviderArgs) -> (nat64);
request : (RpcService, json : text, maxResponseBytes : nat64) -> (RequestResult);
requestCost : (RpcService, json : text, maxResponseBytes : nat64) -> (RequestCostResult) query;
setOpenRpcAccess : (active : bool) -> ();
unregisterProvider : (ProviderId) -> (bool);
updateProvider : (UpdateProviderArgs) -> ();
withdrawAccumulatedCycles : (ProviderId, recipient : principal) -> ();
getMetrics : () -> (Metrics) query;
getNodesInSubnet : () -> (numberOfNodes : nat32) query;
getProviders : () -> (vec Provider) query;
getServiceProviderMap : () -> (vec record { RpcService; ProviderId }) query;
rvanasa marked this conversation as resolved.
Show resolved Hide resolved
updateApiKeys : (vec record { ProviderId; opt text }) -> ();
};
5 changes: 1 addition & 4 deletions canister_ids.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,7 @@
"evm_rpc": {
"ic": "7hfb6-caaaa-aaaar-qadga-cai"
},
"evm_rpc_staging_13_node": {
"ic": "a6d44-nyaaa-aaaap-abp7q-cai"
},
"evm_rpc_staging_fiduciary": {
"evm_rpc_staging": {
"ic": "xhcuo-6yaaa-aaaar-qacqq-cai"
}
}
18 changes: 9 additions & 9 deletions dfx.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,36 +12,36 @@
"pullable": {
"dependencies": [],
"wasm_url": "https://github.com/internet-computer-protocol/evm-rpc-canister/releases/latest/download/evm_rpc.wasm.gz",
"init_guide": "Number of nodes in the subnet, e.g. '(record {nodesInSubnet = 28})'"
"init_guide": "Documentation: https://internetcomputer.org/docs/current/developer-docs/multi-chain/ethereum/evm-rpc/evm-rpc-canister"
},
"gzip": true,
"init_arg": "(record {nodesInSubnet = 28})"
"init_arg": "(record {})"
},
"evm_rpc_staging_13_node": {
"evm_rpc_demo": {
"candid": "candid/evm_rpc.did",
"type": "rust",
"package": "evm_rpc",
"gzip": true,
"init_arg": "(record {nodesInSubnet = 13})"
"init_arg": "(record {demo = opt true})"
},
"evm_rpc_staging_fiduciary": {
"evm_rpc_staging": {
"candid": "candid/evm_rpc.did",
"type": "rust",
"package": "evm_rpc",
"gzip": true,
"init_arg": "(record {nodesInSubnet = 28})"
"init_arg": "(record {})"
},
"e2e_rust": {
"dependencies": ["evm_rpc_staging_fiduciary"],
"dependencies": ["evm_rpc_staging"],
"candid": "e2e/rust/e2e_rust.did",
"type": "rust",
"package": "e2e"
},
"e2e_motoko": {
"dependencies": [
"evm_rpc",
"evm_rpc_staging_13_node",
"evm_rpc_staging_fiduciary"
"evm_rpc_demo",
"evm_rpc_staging"
],
"type": "motoko",
"main": "e2e/motoko/main.mo"
Expand Down
9 changes: 3 additions & 6 deletions e2e/motoko/main.mo
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import EvmRpc "canister:evm_rpc";
import EvmRpcStaging13Node "canister:evm_rpc_staging_13_node";
import EvmRpcStagingFidicuary "canister:evm_rpc_staging_fiduciary";
import EvmRpcStaging "canister:evm_rpc_staging";

import Buffer "mo:base/Buffer";
import Cycles "mo:base/ExperimentalCycles";
Expand All @@ -16,14 +15,12 @@ shared ({ caller = installer }) actor class Main() {
// (`subnet name`, `nodes in subnet`, `expected cycles for JSON-RPC call`)
type SubnetTarget = (Text, Nat32, Nat);
let collateralCycles = 10_000_000;
let defaultSubnet : SubnetTarget = ("13-node", 13, 99_330_400);
let fiduciarySubnet : SubnetTarget = ("fiduciary", 28, 239_142_400);

let testTargets = [
// (`canister module`, `canister type`, `subnet`)
(EvmRpc, #production, fiduciarySubnet),
(EvmRpcStaging13Node, #staging, defaultSubnet),
(EvmRpcStagingFidicuary, #staging, fiduciarySubnet),
(EvmRpcStaging, #staging, fiduciarySubnet),
];

// (`RPC service`, `method`)
Expand Down Expand Up @@ -155,7 +152,7 @@ shared ({ caller = installer }) actor class Main() {
};

// All RPC services suitable for E2E testing
let mainnetServices = [#Alchemy, #Ankr, #BlockPi, #PublicNode, #Llama];
let mainnetServices = [#Ankr, #BlockPi, #PublicNode, #Llama];
let l2Services = [#Ankr, #BlockPi, #PublicNode, #Llama];
let allServices : [(Text, EvmRpc.RpcServices)] = [
(
Expand Down
3 changes: 0 additions & 3 deletions e2e/rust/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,6 @@ description = "End-to-end testing with a Rust canister."
authors = ["DFINITY Foundation"]
edition = "2021"

[lib]
crate-type = ["cdylib", "rlib"]

[dependencies]
candid = { workspace = true }
ic-certified-map = { workspace = true }
Expand Down
2 changes: 1 addition & 1 deletion e2e/rust/build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ fn main() {

builder.add({
// Uppercase canister name is a workaround for using `ic-cdk-bindgen` with `dfx` >= 0.18.0
let mut config = Config::new("EVM_RPC_STAGING_FIDUCIARY");
let mut config = Config::new("EVM_RPC_STAGING");
config.binding.type_attributes =
"#[derive(CandidType, Clone, Debug, Deserialize)]".to_string();
config
Expand Down
1 change: 0 additions & 1 deletion e2e/rust/src/lib.rs

This file was deleted.

6 changes: 4 additions & 2 deletions e2e/rust/src/main.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
use candid::candid_method;
use ic_cdk_macros::update;

use e2e::declarations::EVM_RPC_STAGING_FIDUCIARY::{
mod declarations;

use declarations::EVM_RPC_STAGING::{
BlockTag, EthMainnetService, GetBlockByNumberResult, MultiGetBlockByNumberResult,
ProviderError, RpcError, RpcService, RpcServices, EVM_RPC_STAGING_FIDUCIARY as evm_rpc,
ProviderError, RpcError, RpcService, RpcServices, EVM_RPC_STAGING as evm_rpc,
};

fn main() {}
Expand Down
6 changes: 3 additions & 3 deletions scripts/e2e
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
(
dfx canister create --all &&
npm run generate &&
dfx deploy evm_rpc --argument "(record {nodesInSubnet = 28})" --mode reinstall -y &&
dfx deploy evm_rpc_staging_13_node --argument "(record {nodesInSubnet = 13})" --mode reinstall -y &&
dfx deploy evm_rpc_staging_fiduciary --argument "(record {nodesInSubnet = 28})" --mode reinstall -y &&
dfx deploy evm_rpc --mode reinstall -y &&
dfx deploy evm_rpc_demo --mode reinstall -y &&
dfx deploy evm_rpc_staging --mode reinstall -y &&
dfx deploy e2e_rust &&
dfx canister call e2e_rust test &&
dfx deploy e2e_motoko &&
Expand Down
Loading