@skalenetwork/upgrade-tools 3.0.0-develop.20 → 3.0.0-develop.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,4 @@
1
+ import { AddressLike, Contract, Transaction } from "ethers";
2
+ export declare const getProxyAdmin: (proxy: AddressLike) => Promise<Contract>;
3
+ export declare const isNewProxyAdmin: (proxyAdmin: Contract) => Promise<boolean>;
4
+ export declare const getUpgradeTransaction: (proxy: AddressLike, implementation: AddressLike) => Promise<Transaction>;
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getUpgradeTransaction = exports.isNewProxyAdmin = exports.getProxyAdmin = void 0;
7
+ const ethers_1 = require("ethers");
8
+ const hardhat_1 = require("hardhat");
9
+ const chalk_1 = __importDefault(require("chalk"));
10
+ const getProxyAdmin = async (proxy) => {
11
+ const proxyAdminAddress = await hardhat_1.upgrades.erc1967.getAdminAddress(await hardhat_1.ethers.resolveAddress(proxy));
12
+ const generalProxyAdminAbi = [
13
+ "function UPGRADE_INTERFACE_VERSION() view returns (string)",
14
+ "function upgrade(address,address)",
15
+ "function upgradeAndCall(address,address,bytes) payable",
16
+ "function owner() view returns (address)"
17
+ ];
18
+ return new hardhat_1.ethers.Contract(proxyAdminAddress, generalProxyAdminAbi, await hardhat_1.ethers.provider.getSigner());
19
+ };
20
+ exports.getProxyAdmin = getProxyAdmin;
21
+ const isNewProxyAdmin = async (proxyAdmin) => {
22
+ try {
23
+ console.log(chalk_1.default.gray(`ProxyAdmin version ${
24
+ // This function name is set in external library
25
+ // eslint-disable-next-line new-cap
26
+ await proxyAdmin.UPGRADE_INTERFACE_VERSION()}`));
27
+ return true;
28
+ }
29
+ catch (error) {
30
+ console.log(chalk_1.default.gray("Use old ProxyAdmin"));
31
+ return false;
32
+ }
33
+ };
34
+ exports.isNewProxyAdmin = isNewProxyAdmin;
35
+ const getUpgradeTransaction = async (proxy, implementation) => {
36
+ const proxyAdmin = await (0, exports.getProxyAdmin)(proxy);
37
+ if (await (0, exports.isNewProxyAdmin)(proxyAdmin)) {
38
+ return ethers_1.Transaction.from({
39
+ "data": proxyAdmin.interface.encodeFunctionData("upgradeAndCall", [
40
+ await hardhat_1.ethers.resolveAddress(proxy),
41
+ await hardhat_1.ethers.resolveAddress(implementation),
42
+ "0x"
43
+ ]),
44
+ "to": await hardhat_1.ethers.resolveAddress(proxyAdmin)
45
+ });
46
+ }
47
+ return ethers_1.Transaction.from({
48
+ "data": proxyAdmin.interface.encodeFunctionData("upgrade", [
49
+ await hardhat_1.ethers.resolveAddress(proxy),
50
+ await hardhat_1.ethers.resolveAddress(implementation),
51
+ ]),
52
+ "to": await hardhat_1.ethers.resolveAddress(proxyAdmin)
53
+ });
54
+ };
55
+ exports.getUpgradeTransaction = getUpgradeTransaction;
56
+ //# sourceMappingURL=proxyAdmin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxyAdmin.js","sourceRoot":"","sources":["../../src/proxyAdmin.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA0D;AAC1D,qCAAyC;AACzC,kDAA0B;AAEnB,MAAM,aAAa,GAAG,KAAK,EAAE,KAAkB,EAAE,EAAE;IACtD,MAAM,iBAAiB,GAAG,MAAM,kBAAQ,CAAC,OAAO,CAAC,eAAe,CAC5D,MAAM,gBAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CACrC,CAAC;IACF,MAAM,oBAAoB,GAAG;QACzB,4DAA4D;QAC5D,mCAAmC;QACnC,wDAAwD;QACxD,yCAAyC;KAC5C,CAAC;IACF,OAAO,IAAI,gBAAM,CAAC,QAAQ,CACtB,iBAAiB,EACjB,oBAAoB,EACpB,MAAM,gBAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,CACpC,CAAC;AACN,CAAC,CAAA;AAfY,QAAA,aAAa,iBAezB;AAEM,MAAM,eAAe,GAAG,KAAK,EAAE,UAAoB,EAAE,EAAE;IAC1D,IAAI;QACA,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sBAAsB;QACzC,gDAAgD;QAChD,mCAAmC;QACnC,MAAM,UAAU,CAAC,yBAAyB,EAC9C,EAAE,CAAC,CAAC,CAAC;QACL,OAAO,IAAI,CAAC;KACf;IAAC,OAAO,KAAK,EAAE;QACZ,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC9C,OAAO,KAAK,CAAC;KAChB;AACL,CAAC,CAAA;AAZY,QAAA,eAAe,mBAY3B;AAEM,MAAM,qBAAqB,GAAG,KAAK,EAAE,KAAkB,EAAE,cAA2B,EAAE,EAAE;IAC3F,MAAM,UAAU,GAAG,MAAM,IAAA,qBAAa,EAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,MAAM,IAAA,uBAAe,EAAC,UAAU,CAAC,EAAE;QACnC,OAAO,oBAAW,CAAC,IAAI,CAAC;YACpB,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,kBAAkB,CAC3C,gBAAgB,EAChB;gBACI,MAAM,gBAAM,CAAC,cAAc,CAAC,KAAK,CAAC;gBAClC,MAAM,gBAAM,CAAC,cAAc,CAAC,cAAc,CAAC;gBAC3C,IAAI;aACP,CACJ;YACD,IAAI,EAAE,MAAM,gBAAM,CAAC,cAAc,CAAC,UAAU,CAAC;SAChD,CAAC,CAAC;KACN;IACD,OAAO,oBAAW,CAAC,IAAI,CAAC;QACpB,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,kBAAkB,CAC3C,SAAS,EACT;YACI,MAAM,gBAAM,CAAC,cAAc,CAAC,KAAK,CAAC;YAClC,MAAM,gBAAM,CAAC,cAAc,CAAC,cAAc,CAAC;SAC9C,CACJ;QACD,IAAI,EAAE,MAAM,gBAAM,CAAC,cAAc,CAAC,UAAU,CAAC;KAChD,CAAC,CAAC;AACP,CAAC,CAAA;AAzBY,QAAA,qBAAqB,yBAyBjC"}
@@ -1,7 +1,10 @@
1
1
  import { Transaction } from "ethers";
2
2
  import { Submitter } from "./submitter";
3
+ import { Upgrader } from "../upgrader";
3
4
  export declare class AutoSubmitter extends Submitter {
4
5
  name: string;
6
+ upgrader: Upgrader;
7
+ constructor(upgrader: Upgrader);
5
8
  static marionetteInterface: {
6
9
  inputs: never[];
7
10
  name: string;
@@ -14,7 +17,7 @@ export declare class AutoSubmitter extends Submitter {
14
17
  type: string;
15
18
  }[];
16
19
  submit(transactions: Transaction[]): Promise<void>;
17
- private static getSubmitter;
20
+ private getSubmitter;
18
21
  private static getSubmitterForContractOwner;
19
22
  private static getImaInstance;
20
23
  private static getSafeAddress;
@@ -11,24 +11,23 @@ const marionette_1 = require("./types/marionette");
11
11
  const safe_ima_legacy_marionette_submitter_1 = require("./safe-ima-legacy-marionette-submitter");
12
12
  const safe_submitter_1 = require("./safe-submitter");
13
13
  const submitter_1 = require("./submitter");
14
- const upgrader_1 = require("../upgrader");
15
14
  const chalk_1 = __importDefault(require("chalk"));
16
15
  const hardhat_1 = __importDefault(require("hardhat"));
17
16
  const skale_contracts_ethers_v6_1 = require("@skalenetwork/skale-contracts-ethers-v6");
18
17
  class AutoSubmitter extends submitter_1.Submitter {
19
- constructor() {
20
- super(...arguments);
18
+ constructor(upgrader) {
19
+ super();
21
20
  this.name = "Auto Submitter";
21
+ this.upgrader = upgrader;
22
22
  }
23
23
  async submit(transactions) {
24
24
  console.log(`Submit via ${this.name}`);
25
- const submitter = await AutoSubmitter.getSubmitter();
25
+ const submitter = await this.getSubmitter();
26
26
  await submitter.submit(transactions);
27
27
  }
28
28
  // Private
29
- static async getSubmitter() {
30
- const proxyAdmin = await upgrader_1.Upgrader.getProxyAdmin();
31
- const owner = await proxyAdmin.owner();
29
+ async getSubmitter() {
30
+ const owner = await this.upgrader.getOwner();
32
31
  if (await hardhat_1.default.ethers.provider.getCode(owner) === "0x") {
33
32
  console.log("Owner is not a contract");
34
33
  return new eoa_submitter_1.EoaSubmitter();
@@ -1 +1 @@
1
- {"version":3,"file":"auto-submitter.js","sourceRoot":"","sources":["../../../src/submitters/auto-submitter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto-submitter.js","sourceRoot":"","sources":["../../../src/submitters/auto-submitter.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,23 @@
1
- import { Contract, Transaction } from "ethers";
1
+ import { Transaction } from "ethers";
2
2
  import { Project } from "./types/upgrader";
3
3
  import { Instance } from "@skalenetwork/skale-contracts-ethers-v6";
4
- import { NonceProvider } from "./nonceProvider";
5
- import Semaphore from 'semaphore-async-await';
6
4
  import { Submitter } from "./submitters/submitter";
7
5
  export declare abstract class Upgrader {
8
- instance: Instance;
9
- targetVersion: string;
10
- contractNamesToUpgrade: string[];
11
- projectName: string;
12
- transactions: Transaction[];
13
- submitter: Submitter;
14
- nonceProvider?: NonceProvider;
15
- deploySemaphore: Semaphore;
6
+ private targetVersion;
7
+ private contractNamesToUpgrade;
8
+ private projectName;
9
+ private submitter;
10
+ private nonceProvider?;
11
+ private deploySemaphore;
12
+ protected instance: Instance;
13
+ protected transactions: Transaction[];
16
14
  constructor(project: Project, submitter?: Submitter);
17
15
  abstract getDeployedVersion: () => Promise<string | undefined>;
18
16
  abstract setVersion: (newVersion: string) => Promise<void>;
19
17
  deployNewContracts?: () => Promise<void>;
20
18
  initialize?: () => Promise<void>;
21
19
  upgrade(): Promise<void>;
22
- static getProxyAdmin(): Promise<Contract>;
20
+ getOwner(): Promise<string>;
23
21
  private callInitialize;
24
22
  private callDeployNewContracts;
25
23
  private prepareVersion;
@@ -32,5 +30,4 @@ export declare abstract class Upgrader {
32
30
  private prepareUpgrade;
33
31
  private getNormalizedDeployedVersion;
34
32
  private checkVersion;
35
- private static isNewProxyAdmin;
36
33
  }
@@ -4,9 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.Upgrader = void 0;
7
- const ethers_1 = require("ethers");
8
- const upgrades_core_1 = require("@openzeppelin/upgrades-core");
9
7
  const hardhat_1 = require("hardhat");
8
+ const proxyAdmin_1 = require("./proxyAdmin");
10
9
  const auto_submitter_1 = require("./submitters/auto-submitter");
11
10
  const exitCodes_1 = require("./exitCodes");
12
11
  const nonceProvider_1 = require("./nonceProvider");
@@ -14,6 +13,7 @@ const semaphore_async_await_1 = __importDefault(require("semaphore-async-await")
14
13
  const chalk_1 = __importDefault(require("chalk"));
15
14
  const fs_1 = require("fs");
16
15
  const contractFactory_1 = require("./contractFactory");
16
+ const upgrades_core_1 = require("@openzeppelin/upgrades-core");
17
17
  const version_1 = require("./version");
18
18
  const verification_1 = require("./verification");
19
19
  const withoutNull = (array) => array.
@@ -23,7 +23,7 @@ const maxSimultaneousDeployments = 1;
23
23
  // 10 minutes
24
24
  const deployTimeout = 60e4;
25
25
  class Upgrader {
26
- constructor(project, submitter = new auto_submitter_1.AutoSubmitter()) {
26
+ constructor(project, submitter) {
27
27
  this.targetVersion = project.version;
28
28
  if (!project.version.includes("-")) {
29
29
  this.targetVersion = `${project.version}-stable.0`;
@@ -32,7 +32,7 @@ class Upgrader {
32
32
  this.contractNamesToUpgrade = project.contractNamesToUpgrade;
33
33
  this.projectName = project.name;
34
34
  this.transactions = [];
35
- this.submitter = submitter;
35
+ this.submitter = submitter ?? new auto_submitter_1.AutoSubmitter(this);
36
36
  this.deploySemaphore = new semaphore_async_await_1.default(maxSimultaneousDeployments);
37
37
  }
38
38
  // Public
@@ -40,7 +40,7 @@ class Upgrader {
40
40
  const version = await this.prepareVersion();
41
41
  await this.callDeployNewContracts();
42
42
  const contractsToUpgrade = await this.deployNewImplementations();
43
- await this.switchToNewImplementations(contractsToUpgrade, await Upgrader.getProxyAdmin());
43
+ await this.switchToNewImplementations(contractsToUpgrade);
44
44
  await this.callInitialize();
45
45
  // Write version
46
46
  await this.setVersion(version);
@@ -49,19 +49,16 @@ class Upgrader {
49
49
  await Upgrader.verify(contractsToUpgrade);
50
50
  console.log("Done");
51
51
  }
52
- static async getProxyAdmin() {
53
- const manifest = await upgrades_core_1.Manifest.forNetwork(hardhat_1.network.provider);
54
- const adminDeployment = await manifest.getAdmin();
55
- if (!adminDeployment) {
56
- throw new Error("Can't load ProxyAdmin address");
57
- }
58
- const generalProxyAdminAbi = [
59
- "function UPGRADE_INTERFACE_VERSION() view returns (string)",
60
- "function upgrade(address,address)",
61
- "function upgradeAndCall(address,address,bytes) payable",
62
- "function owner() view returns (address)"
63
- ];
64
- return new hardhat_1.ethers.Contract(adminDeployment.address, generalProxyAdminAbi, await hardhat_1.ethers.provider.getSigner());
52
+ async getOwner() {
53
+ const proxyAddresses = await Promise.all(this.contractNamesToUpgrade.map((contract) => this.instance.getContractAddress(contract), this));
54
+ const admins = await Promise.all(proxyAddresses.map((proxy) => (0, proxyAdmin_1.getProxyAdmin)(proxy)));
55
+ const owners = await Promise.all(admins.map((admin) => admin.owner()));
56
+ return owners.reduce((owner1, owner2) => {
57
+ if (owner1 !== owner2) {
58
+ throw Error("Proxies have different owners");
59
+ }
60
+ return owner1;
61
+ });
65
62
  }
66
63
  // Private
67
64
  async callInitialize() {
@@ -94,33 +91,15 @@ class Upgrader {
94
91
  await Promise.all(contractsToUpgrade.map((contract) => (0, verification_1.verify)(contract.name, contract.implementationAddress, [])));
95
92
  }
96
93
  }
97
- async switchToNewImplementations(contractsToUpgrade, proxyAdmin) {
98
- const proxyAdminAddress = await proxyAdmin.getAddress();
99
- const newProxyAdmin = await Upgrader.isNewProxyAdmin(proxyAdmin);
100
- for (const contract of contractsToUpgrade) {
94
+ async switchToNewImplementations(contractsToUpgrade) {
95
+ const upgradeTransactions = await Promise.all(contractsToUpgrade.map((contract) => (0, proxyAdmin_1.getUpgradeTransaction)(contract.proxyAddress, contract.implementationAddress)));
96
+ contractsToUpgrade.forEach((contract, index) => {
101
97
  const infoMessage = `Prepare transaction to upgrade ${contract.name}` +
102
98
  ` at ${contract.proxyAddress}` +
103
99
  ` to ${contract.implementationAddress}`;
104
100
  console.log(chalk_1.default.yellowBright(infoMessage));
105
- let transaction = ethers_1.Transaction.from({
106
- "data": proxyAdmin.interface.encodeFunctionData("upgradeAndCall", [
107
- contract.proxyAddress,
108
- contract.implementationAddress,
109
- "0x"
110
- ]),
111
- "to": proxyAdminAddress
112
- });
113
- if (!newProxyAdmin) {
114
- transaction = ethers_1.Transaction.from({
115
- "data": proxyAdmin.interface.encodeFunctionData("upgrade", [
116
- contract.proxyAddress,
117
- contract.implementationAddress
118
- ]),
119
- "to": proxyAdminAddress
120
- });
121
- }
122
- this.transactions.push(transaction);
123
- }
101
+ this.transactions.push(upgradeTransactions[index]);
102
+ });
124
103
  }
125
104
  async deployNewImplementations() {
126
105
  const [deployer] = await hardhat_1.ethers.getSigners();
@@ -195,19 +174,6 @@ class Upgrader {
195
174
  console.log(chalk_1.default.yellow(cannotCheckMessage));
196
175
  }
197
176
  }
198
- static async isNewProxyAdmin(proxyAdmin) {
199
- try {
200
- console.log(chalk_1.default.gray(`ProxyAdmin version ${
201
- // This function name is set in external library
202
- // eslint-disable-next-line new-cap
203
- await proxyAdmin.UPGRADE_INTERFACE_VERSION()}`));
204
- return true;
205
- }
206
- catch (error) {
207
- console.log(chalk_1.default.gray("Use old ProxyAdmin"));
208
- return false;
209
- }
210
- }
211
177
  }
212
178
  exports.Upgrader = Upgrader;
213
179
  //# sourceMappingURL=upgrader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"upgrader.js","sourceRoot":"","sources":["../../src/upgrader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upgrader.js","sourceRoot":"","sources":["../../src/upgrader.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skalenetwork/upgrade-tools",
3
- "version": "3.0.0-develop.20",
3
+ "version": "3.0.0-develop.21",
4
4
  "description": "Scripts to support upgrades of smart contracts",
5
5
  "files": [
6
6
  "dist/**/*"