Carga de un manifiesto de contrato en el registro
Puede utilizar Blockchain App Builder para validar y publicar metadatos de despliegue de un proyecto de Hardhat seleccionado en servicios de registro de contratos.
La herramienta Cargar manifiesto de contrato ejecuta el plugin hardhat-upload-contract-artefacts propiedad del proyecto y transfiere los puntos finales del registro como valores de tiempo de ejecución; no modifica las variables de Hardhat del proyecto.
La carga de manifiesto solo está disponible para los entornos guardados de Oracle Blockchain Platform Besu.
Requisitos previos
- Seleccione un proyecto Hardhat importado o compuesto que se haya desplegado correctamente.
- Confirme que el proyecto incluya el paquete
hardhat-upload-contract-artefactsen el archivopackage.json, importe el plugin enhardhat.config.tsohardhat.config.jsy defina la configuraciónuploadContractManifest. - Cree o seleccione un entorno de Oracle Blockchain Platform Besu con el ID de cadena y la autenticación de proxy RPC correctos.
- Asegúrese de que existen los registros de despliegue local necesarios para el modo de carga que elija.
Se admiten los siguientes modos de carga.
| Modo de carga | Registros locales necesarios | Destino de registro |
|---|---|---|
| Ambos | manifiesto de OpenZeppelin, ERC-7201 JSON de contratos de despliegue y JSON de contratos de despliegue de SOLC | Ambos puntos finales de registro |
| ERC-7201 / Actualizable | manifiesto de OpenZeppelin y ERC-7201 JSON de contratos desplegados | Punto final del registro ERC-7201 |
| Inmutable / SOLC | SOLC desplegado-contrata JSON | Punto final del registro SOLC |
Para un proyecto importado preempaquetado o contratos de activos digitales generados por Blockchain App Builder, normalmente el modo ERC-7201 es suficiente.
./.openzeppelin/unknown-1500.json
./.obp-da/.erc7201/deployedContracts-1500.json
./.obp-da/.solc/deployedContracts-1500.jsonAjuste las rutas si el proyecto almacena registros de despliegue en otro lugar.- Abra Herramientas para desarrolladores y, a continuación, seleccione Cargar manifiesto de contrato.
- Seleccione el proyecto Hardhat y un entorno de Oracle Blockchain Platform Besu.
- Seleccione el modo de carga.
- Introduzca la URL o las URL de punto final de registro necesarias:
- Punto final de registro de carga de manifiesto ERC-7201 para registros actualizables
- Punto final de registro de carga de manifiesto de SOLC para registros inmutables
- Confirme las rutas de acceso de archivos de OpenZeppelin y de contrato desplegado. Opcionalmente, defina el timeout y la salida detallada.
- Seleccione Validate (Validar). El plugin se ejecuta y no publica datos de registro.
- Cuando la validación se realice correctamente, desactive Validar y seleccione Cargar.
Solución de problemas
| Condición | Resolución |
|---|---|
| No hay ningún entorno disponible | Cree un entorno guardado de Oracle Blockchain Platform Besu. Los EVM y el nodo local Hardhat no son entornos válidos para cargar manifiestos. |
| El punto final del registro no es válido | Introduzca una URL de registro HTTP o HTTPS completa para cada punto final necesario para el modo seleccionado. |
| No se encontró el archivo necesario | Compile y despliegue los contratos relevantes o corrija el manifiesto relativo al proyecto y la ruta de archivo del contrato desplegado. |
| Falta el plugin o la configuración | Instale o importe hardhat-upload-contract-artefacts y agregue la configuración uploadContractManifest que se muestra en la guía de verificación previa de la herramienta.
|
| La carga falla después de que la ejecución en seco se realiza correctamente | Revise la autenticación del servicio de registro, la disponibilidad, la política de punto final y la salida completa del plugin. La ejecución en seco valida las entradas locales, pero no garantiza la aceptación del registro. |