@@ -260,6 +260,34 @@ docker run --rm --network host -v ./.nodes:/root/.nodes \
260260| ` REGISTRY_ADDRESS ` | if not mounted | From ` .nodes/avs_deploy.json ` | Volume | AVS registrar address |
261261| ` FUNDED_KEY ` | if not mounted | From ` .nodes/deployer ` | Volume | Deployer private key |
262262
263+ ### Transfer Ownership
264+
265+ Transfers ownership of the service contracts to new owners.
266+
267+ ``` bash
268+ PROXY_OWNER=$( cast wallet new --json | jq -r ' .[0].private_key' )
269+ PROXY_OWNER_ADDRESS=$( cast wallet addr --private-key " $PROXY_OWNER " )
270+ echo " Proxy owner address: $PROXY_OWNER_ADDRESS "
271+ AVS_OWNER=$( cast wallet new --json | jq -r ' .[0].private_key' )
272+ AVS_OWNER_ADDRESS=$( cast wallet addr --private-key " $AVS_OWNER " )
273+ echo " Avs owner address: $AVS_OWNER_ADDRESS "
274+
275+ # WAVS_SERVICE_MANAGER_ADDRESS=$(jq -r '.addresses.WavsServiceManager' .nodes/avs_deploy.json)
276+
277+ docker run --rm --network host -v ./.nodes:/root/.nodes \
278+ --env-file .env \
279+ wavs-middleware transfer_ownership ${PROXY_OWNER} ${AVS_OWNER}
280+ ```
281+
282+ | Environment Variable | Required | Default | Source | Description |
283+ | ------------------------------ | --------------------- | ----------------------------- | ------ | ---------------------------------------------- |
284+ | ` DEPLOY_ENV ` | for non-default value | ` LOCAL ` | ` .env ` | Deployment environment (` LOCAL ` or ` TESTNET ` ) |
285+ | ` RPC_URL ` | for non-default value | ` http://localhost:8545 ` | ` .env ` | RPC URL |
286+ | ` WAVS_SERVICE_MANAGER_ADDRESS ` | if not mounted | From ` .nodes/avs_deploy.json ` | volume | Service manager contract address |
287+ | ` FUNDED_KEY ` | if not mounted | From ` .nodes/deployer ` | Volume | Deployer private key |
288+ | ` PROXY_OWNER ` | Yes | - | Params | New owner for proxy admin |
289+ | ` AVS_OWNER ` | Yes | - | Params | New owner for AVS registrar and stake registry |
290+
263291### Delegate to Operator
264292
265293Delegates tokens to an operator.
@@ -433,6 +461,32 @@ docker run --rm --network host -v ./.nodes:/root/.nodes \
433461| ` DEPLOY_FILE_MOCK ` | for non-default value | ` mock ` | Command line | File name to store mock deployment |
434462| ` CONFIGURE_FILE ` | for non-default value | ` wavs-mock-config ` | Command line | File name to read configuration data |
435463
464+ ### 5. Mock Transfer Ownership
465+
466+ Transfers ownership of the mock service contracts to new owners.
467+
468+ ``` bash
469+ PROXY_OWNER=$( cast wallet new --json | jq -r ' .[0].private_key' )
470+ PROXY_OWNER_ADDRESS=$( cast wallet addr --private-key " $PROXY_OWNER " )
471+ echo " Proxy owner address: $PROXY_OWNER_ADDRESS "
472+ AVS_OWNER=$( cast wallet new --json | jq -r ' .[0].private_key' )
473+ AVS_OWNER_ADDRESS=$( cast wallet addr --private-key " $AVS_OWNER " )
474+ echo " Avs owner address: $AVS_OWNER_ADDRESS "
475+
476+ docker run --rm --network host -v ./.nodes:/root/.nodes \
477+ --env-file .env \
478+ wavs-middleware -m mock transfer_ownership ${PROXY_OWNER} ${AVS_OWNER}
479+ ```
480+
481+ | Environment Variable | Required | Default | Source | Description |
482+ | ------------------------------ | --------------------- | --------------------------- | ------------ | ---------------------------------------------- |
483+ | ` DEPLOY_ENV ` | for non-default value | ` LOCAL ` | ` .env ` | Deployment environment (` LOCAL ` or ` TESTNET ` ) |
484+ | ` MOCK_RPC_URL ` | for non-default value | ` http://localhost:8546 ` | Command line | RPC URL for mock blockchain |
485+ | ` MOCK_DEPLOYER_KEY ` | if not mounted | From ` .nodes/mock-deployer ` | Volume | Deployer private key |
486+ | ` WAVS_SERVICE_MANAGER_ADDRESS ` | if not mounted | From ` .nodes/mock.json ` | Volume | Service manager contract address |
487+ | ` PROXY_OWNER ` | Yes | - | Params | New owner for proxy admin |
488+ | ` AVS_OWNER ` | Yes | - | Params | New owner for AVS registrar and stake registry |
489+
436490## Deploy Testnet
437491
438492Same as the local deploy, change ` DEPLOY_ENV ` to ` "TESTNET" ` and make sure the ` FUNDED_KEY ` is actually funded on testnet
0 commit comments