Skip to content

Commit

Permalink
feat: add "message executed" event (#16)
Browse files Browse the repository at this point in the history
* feat: add "message executed" event
* fix: create a new match context for gas service events
  • Loading branch information
roberts-pumpurs authored Jan 17, 2025
1 parent 28facf3 commit a72dbcf
Show file tree
Hide file tree
Showing 11 changed files with 683 additions and 77 deletions.
115 changes: 72 additions & 43 deletions Cargo.lock

Large diffs are not rendered by default.

32 changes: 16 additions & 16 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -73,24 +73,24 @@ solana-gateway-task-processor = { path = "crates/solana-gateway-task-processor"
effective-tx-sender = { path = "crates/effective-tx-sender" }

# Relayer core
amplifier-api = { git = "https://github.com/eigerco/axelar-relayer-core.git", branch = "main" }
relayer-engine = { git = "https://github.com/eigerco/axelar-relayer-core.git", branch = "main" }
relayer-amplifier-api-integration = { git = "https://github.com/eigerco/axelar-relayer-core.git", branch = "main" }
relayer-amplifier-state = { git = "https://github.com/eigerco/axelar-relayer-core.git", branch = "main" }
core-common-serde-utils = { git = "https://github.com/eigerco/axelar-relayer-core.git", package = "common-serde-utils", branch = "main" }
amplifier-api = { git = "https://github.com/eigerco/axelar-relayer-core.git", rev = "7f84b8d" }
relayer-engine = { git = "https://github.com/eigerco/axelar-relayer-core.git", rev = "7f84b8d" }
relayer-amplifier-api-integration = { git = "https://github.com/eigerco/axelar-relayer-core.git", rev = "7f84b8d" }
relayer-amplifier-state = { git = "https://github.com/eigerco/axelar-relayer-core.git", rev = "7f84b8d" }
core-common-serde-utils = { git = "https://github.com/eigerco/axelar-relayer-core.git", package = "common-serde-utils", rev = "7f84b8d" }

# Solana Gateway
axelar-solana-gateway = { git = "https://github.com/eigerco/solana-axelar.git", rev = "c08f0925", features = ["no-entrypoint"] }
axelar-solana-its = { git = "https://github.com/eigerco/solana-axelar.git", rev = "c08f0925", features = ["no-entrypoint"] }
axelar-solana-governance = { git = "https://github.com/eigerco/solana-axelar.git", rev = "c08f0925", features = ["no-entrypoint"] }
gateway-event-stack = { git = "https://github.com/eigerco/solana-axelar.git", rev = "c08f0925" }
axelar-solana-encoding = { git = "https://github.com/eigerco/solana-axelar.git", rev = "c08f0925" }
axelar-solana-gas-service = { git = "https://github.com/eigerco/solana-axelar.git", rev = "c08f0925" }
axelar-solana-memo-program = { git = "https://github.com/eigerco/solana-axelar.git", rev = "c08f0925" }
axelar-solana-gateway-test-fixtures = { git = "https://github.com/eigerco/solana-axelar.git", rev = "c08f0925" }
axelar-message-primitives = { git = "https://github.com/eigerco/solana-axelar.git", rev = "c08f0925" }
axelar-executable = { git = "https://github.com/eigerco/solana-axelar.git", rev = "c08f0925" }
its-instruction-builder = { git = "https://github.com/eigerco/solana-axelar.git", rev = "c08f0925" }
axelar-solana-gateway = { git = "https://github.com/eigerco/solana-axelar.git", rev = "61b074d460", features = ["no-entrypoint"] }
axelar-solana-its = { git = "https://github.com/eigerco/solana-axelar.git", rev = "61b074d460", features = ["no-entrypoint"] }
axelar-solana-governance = { git = "https://github.com/eigerco/solana-axelar.git", rev = "61b074d460", features = ["no-entrypoint"] }
gateway-event-stack = { git = "https://github.com/eigerco/solana-axelar.git", rev = "61b074d460" }
axelar-solana-encoding = { git = "https://github.com/eigerco/solana-axelar.git", rev = "61b074d460" }
axelar-solana-gas-service = { git = "https://github.com/eigerco/solana-axelar.git", rev = "61b074d460", features = ["no-entrypoint"] }
axelar-solana-memo-program = { git = "https://github.com/eigerco/solana-axelar.git", rev = "61b074d460", features = ["no-entrypoint"] }
axelar-solana-gateway-test-fixtures = { git = "https://github.com/eigerco/solana-axelar.git", rev = "61b074d460" }
axelar-message-primitives = { git = "https://github.com/eigerco/solana-axelar.git", rev = "61b074d460" }
axelar-executable = { git = "https://github.com/eigerco/solana-axelar.git", rev = "61b074d460" }
its-instruction-builder = { git = "https://github.com/eigerco/solana-axelar.git", rev = "61b074d460" }

# CLI
clap = { version = "4", features = ["derive"] }
Expand Down
5 changes: 5 additions & 0 deletions crates/solana-axelar-relayer/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ async fn main() {
let rpc_client = retrying_solana_http_sender::new_client(&config.solana_rpc);
let event_forwarder_config = solana_event_forwarder::Config::new(
&config.solana_listener_component,
&config.solana_gateway_task_processor,
&config.amplifier_component,
);
let name_on_amplifier = config.amplifier_component.chain.clone();
Expand Down Expand Up @@ -128,6 +129,8 @@ mod tests {
let gateway_program_address_as_str = gateway_program_address.to_string();
let gas_service_config_pda = Pubkey::new_unique();
let gas_service_config_pda_as_str = gas_service_config_pda.to_string();
let gas_service_program_id = Pubkey::new_unique();
let gas_service_program_id_as_str = gas_service_program_id.to_string();
let solana_rpc = "https://api.solana-devnet.com".parse()?;
let solana_ws = "wss://api.solana-devnet.com".parse()?;
let solana_tx_scan_poll_period = Duration::from_millis(42);
Expand Down Expand Up @@ -166,6 +169,7 @@ mod tests {
[solana_gateway_task_processor]
signing_keypair = "{signing_keypair_as_str}"
gateway_program_address = "{gateway_program_address_as_str}"
gas_service_program_address = "{gas_service_program_id_as_str}"
gas_service_config_pda = "{gas_service_config_pda_as_str}"
[solana_rpc]
Expand Down Expand Up @@ -200,6 +204,7 @@ mod tests {
},
solana_gateway_task_processor: solana_gateway_task_processor::Config {
gateway_program_address,
gas_service_program_address: gas_service_program_id,
gas_service_config_pda,
signing_keypair,
},
Expand Down
10 changes: 9 additions & 1 deletion crates/solana-event-forwarder/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ edition.workspace = true
[dependencies]
futures.workspace = true
axelar-solana-gas-service.workspace = true
solana-gateway-task-processor.workspace = true
relayer-amplifier-api-integration.workspace = true
solana-listener.workspace = true
relayer-engine.workspace = true
Expand All @@ -23,8 +24,15 @@ gateway-event-stack.workspace = true

[dev-dependencies]
base64.workspace = true
pretty_assertions.workspace = true
axelar-solana-gateway-test-fixtures.workspace = true
retrying-solana-http-sender.workspace = true
axelar-solana-memo-program.workspace = true
solana-test-validator.workspace = true
solana-rpc-client-api.workspace = true
solana-rpc.workspace = true
test-log.workspace = true
tokio.workspace = true
pretty_assertions.workspace = true

[lints]
workspace = true
Loading

0 comments on commit a72dbcf

Please sign in to comment.