LagoonAutomatedDeployment
Documentation for eth_defi.erc_4626.vault_protocol.lagoon.deployment.LagoonAutomatedDeployment Python class.
- class LagoonAutomatedDeployment
Bases:
objectCapture information of the lagoon automated deployment.
Have the deployment report for the users for diagnostics
Attributes summary
chain_idThe deployed Lagoon vault, or
LagoonSatelliteVaultfor satellite chains.trading_strategy_moduleasset_managersvaluation_managermultisig_ownersdeployerblock_numberparametersVault ABI file we use
The Safe multisig address, stored explicitly so it is available even on satellite chains where there is no vault contract.
In redeploy guard, the old module
Address of beacon proxy factory
How much ETH deployment used
Salt nonce used for deterministic Safe proxy deployment.
Items whitelisted on the guard during deployment.
Get the primary asset manager.
Whether this deployment is a satellite chain (Safe + guard only, no vault).
safeMethods summary
__init__(chain_id, vault, ...[, ...])Get JSON-serialisable deployment data.
format_whitelisted_items([indent])Format whitelisted items as a human-readable string.
from_json_friendly_dict(web3, data)Recreate deployment information from JSON data.
Get JSON data describing the deployment.
is_asset_manager(address)pformat()Return pretty print of deployment info.
- vault: Union[eth_defi.erc_4626.vault_protocol.lagoon.vault.LagoonVault, eth_defi.erc_4626.vault_protocol.lagoon.vault.LagoonSatelliteVault]
The deployed Lagoon vault, or
LagoonSatelliteVaultfor satellite chains.
- vault_abi: str
Vault ABI file we use
- safe_address: eth_typing.evm.HexAddress
The Safe multisig address, stored explicitly so it is available even on satellite chains where there is no vault contract.
- old_trading_strategy_module: Optional[web3.contract.contract.Contract]
In redeploy guard, the old module
- beacon_proxy_factory: Optional[eth_typing.evm.HexAddress]
Address of beacon proxy factory
- gas_used: Optional[decimal.Decimal]
How much ETH deployment used
- safe_salt_nonce: Optional[int]
Salt nonce used for deterministic Safe proxy deployment.
Recorded so the deployment can be reproduced or debugged later.
Nonewhen deployed without a deterministic address (e.g. from-scratch testnet).
- whitelisted_items: tuple[eth_defi.erc_4626.vault_protocol.lagoon.deployment.WhitelistEntry, ...]
Items whitelisted on the guard during deployment.
- property asset_manager: eth_typing.evm.HexAddress
Get the primary asset manager.
Kept for backwards compatibility with single-key deployments.
- property is_satellite: bool
Whether this deployment is a satellite chain (Safe + guard only, no vault).
- get_deployment_data()
Get JSON data describing the deployment.
Store all addresses etc.
- Return type
- as_json_friendly_dict()
Get JSON-serialisable deployment data.
LagoonAutomatedDeploymentcontains live Web3 contract and vault objects that cannot be written to JSON directly. This method captures the deployment as plain JSON values, keeping enough addresses and parameters to reconstruct the deployment object withfrom_json_friendly_dict().
- classmethod from_json_friendly_dict(web3, data)
Recreate deployment information from JSON data.
This recreates the live Web3 contract and vault reader objects from addresses stored by
as_json_friendly_dict(). The JSON payload does not contain private keys or signed transactions.- Parameters
web3 (web3.main.Web3) – Web3 connection for the deployment chain.
data (dict[str, Any]) – JSON data produced by
as_json_friendly_dict().
- Returns
Hydrated Lagoon deployment information.
- Return type
eth_defi.erc_4626.vault_protocol.lagoon.deployment.LagoonAutomatedDeployment
- pformat()
Return pretty print of deployment info.
- Return type
- format_whitelisted_items(indent=' ')
Format whitelisted items as a human-readable string.
- __init__(chain_id, vault, trading_strategy_module, asset_managers, valuation_manager, multisig_owners, deployer, block_number, parameters, vault_abi, safe_address=None, old_trading_strategy_module=None, beacon_proxy_factory=None, gas_used=None, safe_salt_nonce=None, whitelisted_items=())
- Parameters
chain_id (int) –
vault (Union[eth_defi.erc_4626.vault_protocol.lagoon.vault.LagoonVault, eth_defi.erc_4626.vault_protocol.lagoon.vault.LagoonSatelliteVault]) –
trading_strategy_module (web3.contract.contract.Contract) –
asset_managers (tuple[eth_typing.evm.HexAddress, ...]) –
valuation_manager (eth_typing.evm.HexAddress) –
multisig_owners (list[eth_typing.evm.HexAddress]) –
deployer (eth_typing.evm.HexAddress) –
block_number (eth_typing.evm.BlockNumber) –
parameters (eth_defi.erc_4626.vault_protocol.lagoon.deployment.LagoonDeploymentParameters) –
vault_abi (str) –
safe_address (eth_typing.evm.HexAddress) –
old_trading_strategy_module (Optional[web3.contract.contract.Contract]) –
beacon_proxy_factory (Optional[eth_typing.evm.HexAddress]) –
gas_used (Optional[decimal.Decimal]) –
whitelisted_items (tuple[eth_defi.erc_4626.vault_protocol.lagoon.deployment.WhitelistEntry, ...]) –
- Return type
None