@@ -94,12 +94,13 @@ cp ./lib/WAVS/packages/cli/cli.toml .
9494# TODO: this is a temp workaround for MacOS (running anvil out of compose)
9595anvil
9696
97- docker compose up --build
97+ make clean-docker ; docker compose up --build
9898```
9999
100- Deploy Eigenlayer and upload your WAVS Service contract
100+ Upload your WAVS Service contract
101101
102102``` bash
103+ # Grab Eigenlayer contracts
103104docker_cmd=" docker exec -it wavs bash -c"
104105export CLI_EIGEN_CORE_DELEGATION_MANAGER=` ${docker_cmd} ' jq -r .eigen_core.local.delegation_manager ~/wavs/cli/deployments.json' | tr -d ' \r' `
105106export CLI_EIGEN_CORE_REWARDS_COORDINATOR=` ${docker_cmd} ' jq -r .eigen_core.local.rewards_coordinator ~/wavs/cli/deployments.json' | tr -d ' \r' `
@@ -108,14 +109,16 @@ export FOUNDRY_ANVIL_PRIVATE_KEY=0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5
108109
109110forge script ./script/WavsServiceManager.s.sol --rpc-url http://localhost:8545 --broadcast
110111
111- # set this in the your terminal from the script output
112- export SERVICE_MANAGER_ADDRESS=0x851356ae760d987E095750cCeb3bC6014560891C
112+ # Grab deployed service manager address by name
113+ BROADCAST_FILE=./broadcast/WavsServiceManager.s.sol/31337/run-latest.json
114+ export SERVICE_MANAGER_ADDRESS=` jq -r ' .transactions[] | select(.contractName == "WavsServiceManager") | .contractAddress' " ${BROADCAST_FILE} " `
115+ echo " Service Manager Address: $SERVICE_MANAGER_ADDRESS "
113116```
114117
115118Build WAVS WASI component(s)
116119
117120``` bash
118- # build all components/*
121+ # build all wasi components/*
119122# https://github.com/bytecodealliance/cargo-component#installation / cargo binstall cargo-component
120123make wasi-build
121124
@@ -129,6 +132,7 @@ Deploy service and verify with adding a task
129132``` bash
130133sudo chmod 0666 .docker/cli/deployments.json
131134
135+ # Contract trigger function signature to listen for
132136trigger_event=$( cast sig-event " NewTrigger(bytes)" ) ; echo $trigger_event
133137
134138service_info=` wavs-cli deploy-service --log-level=error --data ./.docker/cli --component $( pwd) /compiled/eth_trigger_weather.wasm \
@@ -139,10 +143,11 @@ service_info=`wavs-cli deploy-service --log-level=error --data ./.docker/cli --c
139143
140144echo " Service info: $service_info "
141145
146+ # Submit AVS request -> chain
142147SERVICE_ID=` echo $service_info | jq -r .service[0]` ; echo " Service ID: $SERVICE_ID "
143148wavs-cli add-task --input " Nashville,TN" --data ./.docker/cli --service-id ${SERVICE_ID}
144149
145- # Where the call address is the service manager in ./.docker/cli/deployments.json
150+ # Grab data from the contract directly
146151hex_bytes=$( cast decode-abi " getData(uint64)(bytes)" ` cast call ${SERVICE_MANAGER_ADDRESS} " getData(uint64)" 1` )
147152echo ` cast --to-ascii $hex_bytes `
148153```
0 commit comments