0

In order to publish my plugin into the Aragon OSx plugin registry, I understand I need to call on the createPluginRepoWithFirstVersion function from the PluginRepoFactory contract. However, I keep getting this error.

PolygonScan

1 Answer 1

0

A few things may be happening:

  1. Make sure you deployed your PluginSetup contract in the same network you're intending to register your plugin. So if you want your plugin to be for Polygon Aragon DAOs, then make sure you deploy your PluginSetup contract in Polygon and use that address to pass as the _pluginSetup address.

  2. The _subdomain attribute needs to be unique for each plugin, so make sure the name you're using there hasn't been used in the past.

  3. You can also try to register your plugin through code, using something like:

import { ethers } from "hardhat";
import { deployAragonFrameworkWithEns } from "../deployments/deploy_AragonOSxFramework";
import { toBytes, getEvents } from "../utils/utils";

const { aragonOSxFramework } = await deployAragonFrameworkWithEns();
const SetupContract = await ethers.getContractFactory("YOUR PLUGIN SETUP CONTRACT NAME");
const Setup = await SetupContract.deploy();
const [owner] = await ethers.getSigners();

const tx = await aragonOSxFramework.PluginRepoFactory.createPluginRepoWithFirstVersion(
  "my-plugin" + Math.round(Math.random() * 100000),
  Setup.address,
  owner.address,
  toBytes("releaseMetadata"),
  toBytes("buildMetadata")
);

const receipt = await tx.wait();
const PluginRepoAddress = getEvents(
  aragonOSxFramework.PluginRepoRegistry,
  "PluginRepoRegistered",
  receipt
)[0].args.pluginRepo;

console.log(PluginRepoAddress);

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.