Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
2,608 changes: 1,439 additions & 1,169 deletions Cargo.lock

Large diffs are not rendered by default.

8 changes: 4 additions & 4 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,12 @@ rust-version = "1.81"

[dependencies]
# Gadget
blueprint-sdk = { git = "https://github.com/tangle-network/gadget-workspace.git", default-features = false, features = ["eigenlayer", "evm", "macros", "build"] }
serde = { version = "1.0.188", features = ["derive"] }
blueprint-sdk = { git = "https://github.com/tangle-network/gadget.git", default-features = false, features = ["std", "eigenlayer", "evm", "macros", "build"] }
serde = { version = "1.0.208", features = ["derive"] }


[build-dependencies]
blueprint-sdk = { git = "https://github.com/tangle-network/gadget-workspace.git", default-features = false, features = ["build"] }
blueprint-sdk = { git = "https://github.com/tangle-network/gadget.git", default-features = false, features = ["std", "build"] }

[features]
default = ["std"]
Expand All @@ -33,7 +33,7 @@ name = "{{project-name}}"
path = "src/main.rs"

[package.metadata.blueprint]
manager = { Evm = "HelloBlueprint" }
manager = { Evm = "TangleTaskManager" }

[[package.metadata.gadget.Native.sources]]
owner = "{{gh-username}}"
Expand Down
1 change: 0 additions & 1 deletion contracts/src/TangleServiceManager.sol
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ pragma solidity >=0.8.13;

import "eigenlayer-contracts/src/contracts/libraries/BytesLib.sol";
import "contracts/src/ITangleTaskManager.sol";
//import "@eigenlayer-middleware/src/ServiceManagerBase.sol";
import "eigenlayer-middleware/src/ServiceManagerBase.sol";

/**
Expand Down
2 changes: 1 addition & 1 deletion foundry.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ remappings_location = "txt"
remappings_version = false

[dependencies]
eigenlayer-middleware = { version = "0.2.1", git = "https://github.com/Layr-Labs/eigenlayer-middleware.git", tag = "v0.2.1-mainnet-rewards" }
eigenlayer-middleware = { version = "0.5.4", git = "https://github.com/Layr-Labs/eigenlayer-middleware.git", tag = "v0.5.4-mainnet-rewards-v2" }
forge-std = { version = "1.9.4" }

# See more config options https://github.com/foundry-rs/foundry/blob/master/crates/config/README.md#all-options
2 changes: 1 addition & 1 deletion remappings.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
eigenlayer-middleware/=dependencies/eigenlayer-middleware-0.2.1
eigenlayer-middleware/=dependencies/eigenlayer-middleware-0.5.4/
forge-std/=dependencies/forge-std-1.9.4
2 changes: 1 addition & 1 deletion rust-toolchain.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# Currently we are using this specific nightly version since we rely on the
# rustdoc API which is not yet stabilized. We will keep updating this version
# as we go along.
channel = "nightly-2024-10-13"
channel = "nightly-2025-01-30"
components = ["rustfmt", "clippy", "rust-src"]
targets = ["wasm32-unknown-unknown"]
profile = "minimal"
8 changes: 8 additions & 0 deletions settings.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
REGISTRY_COORDINATOR_ADDRESS=c3e53f4d16ae77db1c982e75a937b9f60fe63690
OPERATOR_STATE_RETRIEVER_ADDRESS=1613beb3b2c4f22ee086b2b38c1476a3ce7f78e8
DELEGATION_MANAGER_ADDRESS=dc64a140aa3e981100a9beca4e685f962f0cf6c9
STRATEGY_MANAGER_ADDRESS=5fc8d32690cc91d4c39d9d3abcbd16989f875707
SERVICE_MANAGER_ADDRESS=67d269191c92caf3cd7723f116c85e6e9bf55933
STAKE_REGISTRY_ADDRESS=5fc8d32690cc91d4c39d9d3abcbd16989f875707
AVS_DIRECTORY_ADDRESS=0000000000000000000000000000000000000000
REWARDS_COORDINATOR_ADDRESS=0000000000000000000000000000000000000000
4 changes: 2 additions & 2 deletions soldeer.lock
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[[dependencies]]
name = "eigenlayer-middleware"
version = "0.2.1"
version = "0.5.4"
git = "https://github.com/Layr-Labs/eigenlayer-middleware.git"
rev = "74438b7915c35ca5a0d312654716160c2499169d"
rev = "2475ab8b8c7698e69bb18f3a19e0c518381f24df"

[[dependencies]]
name = "forge-std"
Expand Down
4 changes: 3 additions & 1 deletion src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -41,13 +41,15 @@ pub struct ExampleContext {
id = 0,
params(who),
event_listener(
listener = EvmContractEventListener<TangleTaskManager::NewTaskCreated>,
listener = EvmContractEventListener<ExampleContext, TangleTaskManager::NewTaskCreated>,
instance = TangleTaskManager,
abi = TANGLE_TASK_MANAGER_ABI_STRING,
pre_processor = example_pre_processor,
),
)]
pub fn say_hello(context: ExampleContext, who: String) -> Result<String, Infallible> {
blueprint_sdk::logging::trace!("Successfully ran job function!");
println!("Successfully ran job function!");
Ok(format!("Hello, {who}!"))
}

Expand Down
29 changes: 25 additions & 4 deletions src/main.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use {{project-name | snake_case}} as blueprint;
use blueprint::{TangleTaskManager, TASK_MANAGER_ADDRESS};
use blueprint_sdk::alloy::primitives::Address;
use blueprint_sdk::logging::info;
use blueprint_sdk::alloy::primitives::{address, Address, U256};
use blueprint_sdk::logging::{info, warn};
use blueprint_sdk::macros::main;
use blueprint_sdk::runners::core::runner::BlueprintRunner;
use blueprint_sdk::runners::eigenlayer::bls::EigenlayerBLSConfig;
Expand All @@ -16,13 +16,34 @@ async fn main() {
};

// Get the provider
let provider = get_provider_http(&env.http_rpc_endpoint);
let rpc_endpoint = env.http_rpc_endpoint.clone();
let provider = get_provider_http(&rpc_endpoint);

// Create an instance of your task manager
let contract = TangleTaskManager::new(*TASK_MANAGER_ADDRESS, provider);

// Create the event handler from the job
let say_hello_job = blueprint::SayHelloEventHandler::new(contract, context);
let say_hello_job = blueprint::SayHelloEventHandler::new(contract, context.clone());

// Spawn a task to create a task - this is just for testing/example purposes
info!("Spawning a task to create a task on the contract...");
blueprint_sdk::tokio::spawn(async move {
let provider = get_provider_http(&rpc_endpoint);
let contract = TangleTaskManager::new(*TASK_MANAGER_ADDRESS, provider);
loop {
blueprint_sdk::tokio::time::sleep(std::time::Duration::from_secs(5)).await;
// We use the Anvil Account #4 as the Task generator address
let task = contract
.createNewTask(U256::from(5), 100u32, vec![0].into())
.from(address!("15d34AAf54267DB7D7c367839AAf71A00a2C6A65"));
let receipt = task.send().await.unwrap().get_receipt().await.unwrap();
if receipt.status() {
info!("Task created successfully");
} else {
warn!("Task creation failed");
}
}
});

info!("Starting the event watcher ...");
let eigen_config = EigenlayerBLSConfig::new(Address::default(), Address::default());
Expand Down
Loading