Contracts Wizard Deploy Plugin

当从 Contracts Wizard 配置合约时,你可以直接使用你的 Defender 账户部署配置好的 Smart Contract。

使用方法

API Key 生成

在你的 Defender 仪表盘中,进入 设置 → API Keys 并点击 创建 API Key,你只需要 管理部署 权限。

我们也建议为 API Key 设置一个过期时间,考虑到它将从外部网站使用。
Defender Remix Plugin Api Key

从 Contracts Wizard 部署

前往 Contracts Wizard 站点,并在编辑完你的合约后,点击 "Deploy with Defender"。

Defender Wizard Plugin Getting Started

配置

设置你的 API KeyAPI Secret 并点击 "Authenticate"。你应该在按钮下方看到一条消息,表明凭据有效。

Defender Wizard Plugin Configure
Defender Wizard Plugin API keys

网络

选择任何受支持的网络。 这也包括在你的租户中配置的私有和派生网络。

Defender Wizard Plugin Network

审批流程

这里你有 3 个选项:

  • 从为所选网络配置的 Deployment Environment 中选择现有的审批流程。

如果你在所选网络中有一个现有的部署环境,则这是唯一允许的选项。
  • 如果所选网络不存在 Deployment Envoronment,则你可以创建一个新的。

如果要创建的审批流程是 Relayer,则 API Key 必须包含 管理 Relayers 权限。
  • 此外,你可以使用来自 Remix(浏览器钱包)的 注入提供程序 来部署合约,这将在部署合约后创建一个 Defender Deployment Environment

Defender Wizard Plugin Approval Process

部署

在这一步,你应该看到你配置的合约的构造函数输入(如果有),以及创建确定性部署的选项。

这一步是响应式的,如果你修改了合约,你将立即看到更新后的新构造函数参数。
尚未完全支持可升级合约。 此操作只会部署实现合约而不进行初始化。 为了安全升级,我们强烈建议使用 Upgrades Package
Defender Wizard Plugin Deploy

确定性部署

Defender Deploy 支持使用 salt 值来使用 CREATE2 创建到确定性地址的部署。 点击 Deterministic 复选框,并将 salt 字段设置为任何任意值。

如果所选的审批流程是 Multisig,则 salt 是必需的,因为 Defender 仅在使用 Multisig 时支持确定性部署。
Defender Wizard Plugin Deterministic Deployments

后续步骤

一旦合约部署被提交到 Defender,在某些情况下你可能需要从 Defender 仪表盘完成部署。 你将看到一条消息,表明合约已提交,以及一个将你重定向到 Defender 中部署的按钮。

Defender Wizard Plugin Further Steps

反馈

Defender Deploy Plugin 是开源的,有关插件的反馈,请在 Github Repository 中提交问题或发送电子邮件至 defender-support@openzeppelin.com