@helium/helium-admin-cli 0.8.6 → 0.9.0-alpha.0
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.
- package/lib/cjs/create-dao.js +88 -61
- package/lib/cjs/create-dao.js.map +1 -1
- package/lib/cjs/create-subdao.js +107 -82
- package/lib/cjs/create-subdao.js.map +1 -1
- package/lib/cjs/set-proxy-config.js +139 -0
- package/lib/cjs/set-proxy-config.js.map +1 -0
- package/lib/esm/src/create-dao.js +105 -78
- package/lib/esm/src/create-dao.js.map +1 -1
- package/lib/esm/src/create-subdao.js +120 -95
- package/lib/esm/src/create-subdao.js.map +1 -1
- package/lib/esm/src/set-proxy-config.js +98 -0
- package/lib/esm/src/set-proxy-config.js.map +1 -0
- package/lib/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/lib/types/src/create-dao.d.ts.map +1 -1
- package/lib/types/src/create-subdao.d.ts.map +1 -1
- package/lib/types/src/set-proxy-config.d.ts +2 -0
- package/lib/types/src/set-proxy-config.d.ts.map +1 -0
- package/package.json +14 -13
|
@@ -1,20 +1,22 @@
|
|
|
1
|
-
import * as anchor from
|
|
2
|
-
import { ThresholdType } from
|
|
3
|
-
import { init as initHem, rewardableEntityConfigKey, } from
|
|
4
|
-
import
|
|
5
|
-
import { init as
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import
|
|
17
|
-
import {
|
|
1
|
+
import * as anchor from "@coral-xyz/anchor";
|
|
2
|
+
import { ThresholdType } from "@helium/circuit-breaker-sdk";
|
|
3
|
+
import { init as initHem, rewardableEntityConfigKey, } from "@helium/helium-entity-manager-sdk";
|
|
4
|
+
import fs from "fs";
|
|
5
|
+
import { daoKey, init as initDao, subDaoKey, threadKey, delegatorRewardsPercent, } from "@helium/helium-sub-daos-sdk";
|
|
6
|
+
import { init as initLazy, lazyDistributorKey, } from "@helium/lazy-distributor-sdk";
|
|
7
|
+
import { oracleSignerKey } from "@helium/rewards-oracle-sdk";
|
|
8
|
+
import { sendInstructions, toBN } from "@helium/spl-utils";
|
|
9
|
+
import { toU128 } from "@helium/treasury-management-sdk";
|
|
10
|
+
import { init as initVsr, registrarKey, } from "@helium/voter-stake-registry-sdk";
|
|
11
|
+
import { getGovernanceProgramVersion, GoverningTokenConfigAccountArgs, GoverningTokenType, MintMaxVoteWeightSource, SetRealmAuthorityAction, withCreateRealm, withSetRealmAuthority, } from "@solana/spl-governance";
|
|
12
|
+
import { getAssociatedTokenAddress } from "@solana/spl-token";
|
|
13
|
+
import { LAMPORTS_PER_SOL, PublicKey, SystemProgram, } from "@solana/web3.js";
|
|
14
|
+
import Squads from "@sqds/sdk";
|
|
15
|
+
import os from "os";
|
|
16
|
+
import yargs from "yargs/yargs";
|
|
17
|
+
import { createAndMint, exists, getUnixTimestamp, isLocalhost, loadKeypair, parseEmissionsSchedule, sendInstructionsOrSquads, } from "./utils";
|
|
18
|
+
import { init } from "@helium/nft-proxy-sdk";
|
|
19
|
+
import BN from "bn.js";
|
|
18
20
|
const SECS_PER_DAY = 86400;
|
|
19
21
|
const SECS_PER_YEAR = 365 * SECS_PER_DAY;
|
|
20
22
|
const MAX_LOCKUP = 4 * SECS_PER_YEAR;
|
|
@@ -23,127 +25,131 @@ const SCALE = 100;
|
|
|
23
25
|
export async function run(args = process.argv) {
|
|
24
26
|
const yarg = yargs(args).options({
|
|
25
27
|
wallet: {
|
|
26
|
-
alias:
|
|
27
|
-
describe:
|
|
28
|
+
alias: "k",
|
|
29
|
+
describe: "Anchor wallet keypair",
|
|
28
30
|
default: `${os.homedir()}/.config/solana/id.json`,
|
|
29
31
|
},
|
|
30
32
|
noHotspots: {
|
|
31
|
-
type:
|
|
33
|
+
type: "boolean",
|
|
32
34
|
default: false,
|
|
33
35
|
},
|
|
34
36
|
url: {
|
|
35
|
-
alias:
|
|
36
|
-
default:
|
|
37
|
-
describe:
|
|
37
|
+
alias: "u",
|
|
38
|
+
default: "http://127.0.0.1:8899",
|
|
39
|
+
describe: "The solana url",
|
|
38
40
|
},
|
|
39
41
|
hntPubkey: {
|
|
40
|
-
type:
|
|
41
|
-
describe:
|
|
42
|
+
type: "string",
|
|
43
|
+
describe: "Pubkey of the HNT token",
|
|
42
44
|
},
|
|
43
45
|
dcPubkey: {
|
|
44
|
-
type:
|
|
45
|
-
describe:
|
|
46
|
+
type: "string",
|
|
47
|
+
describe: "Pubkey of the DC token",
|
|
46
48
|
},
|
|
47
49
|
name: {
|
|
48
|
-
alias:
|
|
49
|
-
describe:
|
|
50
|
-
type:
|
|
50
|
+
alias: "n",
|
|
51
|
+
describe: "The name of the subdao",
|
|
52
|
+
type: "string",
|
|
51
53
|
required: true,
|
|
52
54
|
},
|
|
53
55
|
realmName: {
|
|
54
|
-
describe:
|
|
55
|
-
type:
|
|
56
|
+
describe: "The name of the realm",
|
|
57
|
+
type: "string",
|
|
56
58
|
required: true,
|
|
57
59
|
},
|
|
58
60
|
subdaoKeypair: {
|
|
59
|
-
type:
|
|
60
|
-
describe:
|
|
61
|
+
type: "string",
|
|
62
|
+
describe: "Keypair of the subdao token",
|
|
61
63
|
required: true,
|
|
62
64
|
},
|
|
63
65
|
executeTransaction: {
|
|
64
|
-
type:
|
|
66
|
+
type: "boolean",
|
|
65
67
|
},
|
|
66
68
|
numTokens: {
|
|
67
|
-
type:
|
|
68
|
-
describe:
|
|
69
|
+
type: "number",
|
|
70
|
+
describe: "Number of subdao tokens to pre mint before assigning authority to lazy distributor",
|
|
69
71
|
default: 0,
|
|
70
72
|
},
|
|
71
73
|
bucket: {
|
|
72
|
-
type:
|
|
73
|
-
describe:
|
|
74
|
-
default:
|
|
74
|
+
type: "string",
|
|
75
|
+
describe: "Bucket URL prefix holding all of the metadata jsons",
|
|
76
|
+
default: "https://shdw-drive.genesysgo.net/6tcnBSybPG7piEDShBcrVtYJDPSvGrDbVvXmXKpzBvWP",
|
|
75
77
|
},
|
|
76
78
|
rewardsOracleUrl: {
|
|
77
|
-
alias:
|
|
78
|
-
type:
|
|
79
|
-
describe:
|
|
80
|
-
default:
|
|
79
|
+
alias: "ro",
|
|
80
|
+
type: "string",
|
|
81
|
+
describe: "The rewards oracle URL",
|
|
82
|
+
default: "http://localhost:8080",
|
|
81
83
|
},
|
|
82
84
|
oracleKeypair: {
|
|
83
|
-
type:
|
|
84
|
-
describe:
|
|
85
|
+
type: "string",
|
|
86
|
+
describe: "Keypair of the oracle",
|
|
85
87
|
default: `${__dirname}/../../keypairs/oracle.json`,
|
|
86
88
|
},
|
|
87
89
|
aggregatorKeypair: {
|
|
88
|
-
type:
|
|
89
|
-
describe:
|
|
90
|
+
type: "string",
|
|
91
|
+
describe: "Keypair of the aggregtor",
|
|
90
92
|
},
|
|
91
93
|
dcBurnAuthority: {
|
|
92
|
-
type:
|
|
93
|
-
describe:
|
|
94
|
+
type: "string",
|
|
95
|
+
describe: "The authority to burn DC tokens",
|
|
94
96
|
required: true,
|
|
95
97
|
},
|
|
96
98
|
queue: {
|
|
97
|
-
type:
|
|
98
|
-
describe:
|
|
99
|
-
default:
|
|
99
|
+
type: "string",
|
|
100
|
+
describe: "Switchbaord oracle queue",
|
|
101
|
+
default: "uPeRMdfPmrPqgRWSrjAnAkH78RqAhe5kXoW6vBYRqFX",
|
|
100
102
|
},
|
|
101
103
|
crank: {
|
|
102
|
-
type:
|
|
103
|
-
describe:
|
|
104
|
-
default:
|
|
104
|
+
type: "string",
|
|
105
|
+
describe: "Switchboard crank",
|
|
106
|
+
default: "UcrnK4w2HXCEjY8z6TcQ9tysYr3c9VcFLdYAU9YQP5e",
|
|
105
107
|
},
|
|
106
108
|
switchboardNetwork: {
|
|
107
|
-
type:
|
|
108
|
-
describe:
|
|
109
|
-
default:
|
|
109
|
+
type: "string",
|
|
110
|
+
describe: "The switchboard network",
|
|
111
|
+
default: "mainnet-beta",
|
|
110
112
|
},
|
|
111
113
|
decimals: {
|
|
112
|
-
type:
|
|
114
|
+
type: "number",
|
|
113
115
|
default: 6,
|
|
114
116
|
},
|
|
115
117
|
govProgramId: {
|
|
116
|
-
type:
|
|
117
|
-
describe:
|
|
118
|
-
default:
|
|
118
|
+
type: "string",
|
|
119
|
+
describe: "Pubkey of the GOV program",
|
|
120
|
+
default: "hgovkRU6Ghe1Qoyb54HdSLdqN7VtxaifBzRmh9jtd3S",
|
|
119
121
|
},
|
|
120
122
|
councilKeypair: {
|
|
121
|
-
type:
|
|
122
|
-
describe:
|
|
123
|
+
type: "string",
|
|
124
|
+
describe: "Keypair of gov council token",
|
|
123
125
|
default: `${__dirname}/../../keypairs/council.json`,
|
|
124
126
|
},
|
|
125
127
|
multisig: {
|
|
126
|
-
type:
|
|
127
|
-
describe:
|
|
128
|
+
type: "string",
|
|
129
|
+
describe: "Address of the squads multisig for subdao authority. If not provided, your wallet will be the authority",
|
|
128
130
|
},
|
|
129
131
|
authorityIndex: {
|
|
130
|
-
type:
|
|
131
|
-
describe:
|
|
132
|
+
type: "number",
|
|
133
|
+
describe: "Authority index for squads. Defaults to 1",
|
|
132
134
|
default: 1,
|
|
133
135
|
},
|
|
134
136
|
delegatorRewardsPercent: {
|
|
135
|
-
type:
|
|
137
|
+
type: "number",
|
|
136
138
|
required: true,
|
|
137
|
-
describe:
|
|
139
|
+
describe: "Percentage of rewards allocated to delegators. Must be between 0-100 and can have 8 decimal places.",
|
|
138
140
|
},
|
|
139
141
|
emissionSchedulePath: {
|
|
140
142
|
required: true,
|
|
141
|
-
describe:
|
|
142
|
-
type:
|
|
143
|
+
describe: "Path to file that contains the dnt emissions schedule",
|
|
144
|
+
type: "string",
|
|
143
145
|
},
|
|
144
146
|
activeDeviceAuthority: {
|
|
145
|
-
type:
|
|
146
|
-
describe:
|
|
147
|
+
type: "string",
|
|
148
|
+
describe: "The authority that can set hotspot active status",
|
|
149
|
+
},
|
|
150
|
+
delegationSeasonsFile: {
|
|
151
|
+
type: "string",
|
|
152
|
+
default: `${__dirname}/../../proxy-seasons.json`,
|
|
147
153
|
},
|
|
148
154
|
});
|
|
149
155
|
const argv = await yarg.argv;
|
|
@@ -168,20 +174,22 @@ export async function run(args = process.argv) {
|
|
|
168
174
|
const govProgramId = new PublicKey(argv.govProgramId);
|
|
169
175
|
const councilKeypair = await loadKeypair(argv.councilKeypair);
|
|
170
176
|
const me = provider.wallet.publicKey;
|
|
171
|
-
console.log(
|
|
172
|
-
console.log(
|
|
173
|
-
console.log(
|
|
177
|
+
console.log("Subdao mint", subdaoKeypair.publicKey.toBase58());
|
|
178
|
+
console.log("GOV PID", govProgramId.toBase58());
|
|
179
|
+
console.log("COUNCIL", councilKeypair.publicKey.toBase58());
|
|
174
180
|
const conn = provider.connection;
|
|
175
181
|
const dao = (await daoKey(new PublicKey(argv.hntPubkey)))[0];
|
|
176
182
|
const subdao = (await subDaoKey(subdaoKeypair.publicKey))[0];
|
|
177
|
-
console.log(
|
|
178
|
-
console.log(
|
|
183
|
+
console.log("DAO", dao.toString());
|
|
184
|
+
console.log("SUBDAO", subdao.toString());
|
|
179
185
|
const daoAcc = await heliumSubDaosProgram.account.daoV0.fetch(dao);
|
|
180
|
-
const
|
|
181
|
-
const
|
|
186
|
+
const delegationSeasonsFile = fs.readFileSync(argv.delegationSeasonsFile, "utf8");
|
|
187
|
+
const seasons = JSON.parse(delegationSeasonsFile).map((s) => new anchor.BN(Math.floor(Date.parse(s) / 1000)));
|
|
188
|
+
const calculateThread = threadKey(subdao, "calculate")[0];
|
|
189
|
+
const issueThread = threadKey(subdao, "issue")[0];
|
|
182
190
|
const emissionSchedule = await parseEmissionsSchedule(argv.emissionSchedulePath);
|
|
183
191
|
const squads = Squads.endpoint(process.env.ANCHOR_PROVIDER_URL, wallet, {
|
|
184
|
-
commitmentOrConfig:
|
|
192
|
+
commitmentOrConfig: "finalized",
|
|
185
193
|
});
|
|
186
194
|
let authority = provider.wallet.publicKey;
|
|
187
195
|
const multisig = argv.multisig ? new PublicKey(argv.multisig) : null;
|
|
@@ -190,8 +198,8 @@ export async function run(args = process.argv) {
|
|
|
190
198
|
}
|
|
191
199
|
if (await exists(conn, subdao)) {
|
|
192
200
|
console.log(`Subdao exists. Key: ${subdao.toBase58()}.`);
|
|
193
|
-
console.log(
|
|
194
|
-
console.log(
|
|
201
|
+
console.log("Calculate thread", calculateThread.toString());
|
|
202
|
+
console.log("Issue thread", issueThread.toString());
|
|
195
203
|
return;
|
|
196
204
|
}
|
|
197
205
|
const [lazyDist] = await lazyDistributorKey(subdaoKeypair.publicKey);
|
|
@@ -199,7 +207,7 @@ export async function run(args = process.argv) {
|
|
|
199
207
|
let payer = provider.wallet.publicKey;
|
|
200
208
|
const auth = await provider.connection.getAccountInfo(daoAcc.authority);
|
|
201
209
|
if (auth.owner.equals(govProgramId)) {
|
|
202
|
-
const daoPayer = PublicKey.findProgramAddressSync([Buffer.from(
|
|
210
|
+
const daoPayer = PublicKey.findProgramAddressSync([Buffer.from("native-treasury", "utf-8"), daoAcc.authority.toBuffer()], govProgramId)[0];
|
|
203
211
|
payer = daoPayer;
|
|
204
212
|
}
|
|
205
213
|
await createAndMint({
|
|
@@ -213,13 +221,29 @@ export async function run(args = process.argv) {
|
|
|
213
221
|
updateAuthority: authority,
|
|
214
222
|
});
|
|
215
223
|
let instructions = [];
|
|
216
|
-
const govProgramVersion = await getGovernanceProgramVersion(conn, govProgramId, isLocalhost(provider) ?
|
|
224
|
+
const govProgramVersion = await getGovernanceProgramVersion(conn, govProgramId, isLocalhost(provider) ? "localnet" : undefined);
|
|
225
|
+
const delProgram = await init(provider);
|
|
226
|
+
const { pubkeys: { proxyConfig }, instruction, } = await delProgram.methods
|
|
227
|
+
.initializeProxyConfigV0({
|
|
228
|
+
// Set max time to 2 years, though seasons should take precedent
|
|
229
|
+
maxProxyTime: new anchor.BN(24 * 60 * 60 * 365 * 2),
|
|
230
|
+
seasons,
|
|
231
|
+
name: "Helium V1",
|
|
232
|
+
})
|
|
233
|
+
.accounts({
|
|
234
|
+
authority,
|
|
235
|
+
})
|
|
236
|
+
.prepare();
|
|
237
|
+
if (!(await exists(provider.connection, proxyConfig))) {
|
|
238
|
+
console.log("Creating delegation config");
|
|
239
|
+
await sendInstructions(provider, [instruction]);
|
|
240
|
+
}
|
|
217
241
|
const realmName = argv.realmName;
|
|
218
|
-
const realm = await PublicKey.findProgramAddressSync([Buffer.from(
|
|
219
|
-
console.log(
|
|
242
|
+
const realm = await PublicKey.findProgramAddressSync([Buffer.from("governance", "utf-8"), Buffer.from(realmName, "utf-8")], govProgramId)[0];
|
|
243
|
+
console.log("Realm, ", realm.toBase58());
|
|
220
244
|
const isFreshRealm = !(await exists(conn, realm));
|
|
221
245
|
if (isFreshRealm) {
|
|
222
|
-
console.log(
|
|
246
|
+
console.log("Initializing Realm");
|
|
223
247
|
await withCreateRealm(instructions, govProgramId, govProgramVersion, realmName, provider.wallet.publicKey, // realmAuthorityPk
|
|
224
248
|
subdaoKeypair.publicKey, // communityMintPk
|
|
225
249
|
provider.wallet.publicKey, // payer
|
|
@@ -241,7 +265,7 @@ export async function run(args = process.argv) {
|
|
|
241
265
|
}
|
|
242
266
|
const registrar = (await registrarKey(realm, subdaoKeypair.publicKey))[0];
|
|
243
267
|
if (!(await exists(conn, registrar))) {
|
|
244
|
-
console.log(
|
|
268
|
+
console.log("Initializing VSR Registrar");
|
|
245
269
|
instructions.push(await heliumVsrProgram.methods
|
|
246
270
|
.initializeRegistrarV0({
|
|
247
271
|
positionUpdateAuthority: null,
|
|
@@ -249,9 +273,10 @@ export async function run(args = process.argv) {
|
|
|
249
273
|
.accounts({
|
|
250
274
|
realm,
|
|
251
275
|
realmGoverningTokenMint: subdaoKeypair.publicKey,
|
|
276
|
+
proxyConfig,
|
|
252
277
|
})
|
|
253
278
|
.instruction());
|
|
254
|
-
console.log(
|
|
279
|
+
console.log("Configuring VSR voting mint at [0]");
|
|
255
280
|
instructions.push(await heliumVsrProgram.methods
|
|
256
281
|
.configureVotingMintV0({
|
|
257
282
|
idx: 0,
|
|
@@ -324,8 +349,8 @@ export async function run(args = process.argv) {
|
|
|
324
349
|
},
|
|
325
350
|
},
|
|
326
351
|
// $40 for iot, $0 for mobile
|
|
327
|
-
onboardingDcFee: name.toUpperCase() ==
|
|
328
|
-
onboardingDataOnlyDcFee: name.toUpperCase() ==
|
|
352
|
+
onboardingDcFee: name.toUpperCase() == "IOT" ? toBN(4000000, 0) : toBN(0, 0),
|
|
353
|
+
onboardingDataOnlyDcFee: name.toUpperCase() == "IOT" ? toBN(1000000, 0) : toBN(0, 0),
|
|
329
354
|
delegatorRewardsPercent: delegatorRewardsPercent(argv.delegatorRewardsPercent),
|
|
330
355
|
activeDeviceAuthority: argv.activeDeviceAuthority
|
|
331
356
|
? new PublicKey(argv.activeDeviceAuthority)
|
|
@@ -394,7 +419,7 @@ export async function run(args = process.argv) {
|
|
|
394
419
|
const instructions = [];
|
|
395
420
|
console.log(`Initalizing ${name} RewardableEntityConfig`);
|
|
396
421
|
let settings;
|
|
397
|
-
if (name.toUpperCase() ==
|
|
422
|
+
if (name.toUpperCase() == "IOT") {
|
|
398
423
|
settings = {
|
|
399
424
|
iotConfig: {
|
|
400
425
|
minGain: 10,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-subdao.js","sourceRoot":"","sources":["../../../src/create-subdao.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"create-subdao.js","sourceRoot":"","sources":["../../../src/create-subdao.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import yargs from "yargs/yargs";
|
|
2
|
+
import { exists, loadKeypair, sendInstructionsOrSquads } from "./utils";
|
|
3
|
+
import os from "os";
|
|
4
|
+
import * as anchor from "@coral-xyz/anchor";
|
|
5
|
+
import { init } from "@helium/nft-proxy-sdk";
|
|
6
|
+
import { init as initVsr } from "@helium/voter-stake-registry-sdk";
|
|
7
|
+
import fs from "fs";
|
|
8
|
+
import { sendInstructions } from "@helium/spl-utils";
|
|
9
|
+
import { PublicKey } from "@solana/web3.js";
|
|
10
|
+
import Squads from "@sqds/sdk";
|
|
11
|
+
export async function run(args = process.argv) {
|
|
12
|
+
const yarg = yargs(args).options({
|
|
13
|
+
wallet: {
|
|
14
|
+
alias: "k",
|
|
15
|
+
describe: "Anchor wallet keypair",
|
|
16
|
+
default: `${os.homedir()}/.config/solana/id.json`,
|
|
17
|
+
},
|
|
18
|
+
url: {
|
|
19
|
+
alias: "u",
|
|
20
|
+
default: "http://127.0.0.1:8899",
|
|
21
|
+
describe: "The solana url",
|
|
22
|
+
},
|
|
23
|
+
registrar: {
|
|
24
|
+
type: "string",
|
|
25
|
+
required: true,
|
|
26
|
+
},
|
|
27
|
+
multisig: {
|
|
28
|
+
type: "string",
|
|
29
|
+
describe: "Address of the squads multisig to control the dao. If not provided, your wallet will be the authority",
|
|
30
|
+
},
|
|
31
|
+
authorityIndex: {
|
|
32
|
+
type: "number",
|
|
33
|
+
describe: "Authority index for squads. Defaults to 1",
|
|
34
|
+
default: 1,
|
|
35
|
+
},
|
|
36
|
+
proxySeasonsFile: {
|
|
37
|
+
type: "string",
|
|
38
|
+
default: `${__dirname}/../../proxy-seasons.json`,
|
|
39
|
+
},
|
|
40
|
+
});
|
|
41
|
+
const argv = await yarg.argv;
|
|
42
|
+
process.env.ANCHOR_WALLET = argv.wallet;
|
|
43
|
+
process.env.ANCHOR_PROVIDER_URL = argv.url;
|
|
44
|
+
anchor.setProvider(anchor.AnchorProvider.local(argv.url));
|
|
45
|
+
const provider = anchor.getProvider();
|
|
46
|
+
const wallet = new anchor.Wallet(loadKeypair(argv.wallet));
|
|
47
|
+
const squads = Squads.endpoint(process.env.ANCHOR_PROVIDER_URL, wallet, {
|
|
48
|
+
commitmentOrConfig: "finalized",
|
|
49
|
+
});
|
|
50
|
+
let authority = provider.wallet.publicKey;
|
|
51
|
+
let multisig = argv.multisig ? new PublicKey(argv.multisig) : null;
|
|
52
|
+
if (multisig) {
|
|
53
|
+
authority = squads.getAuthorityPDA(multisig, argv.authorityIndex);
|
|
54
|
+
}
|
|
55
|
+
const delProgram = await init(provider);
|
|
56
|
+
const vsrProgram = await initVsr(provider);
|
|
57
|
+
const registrar = new PublicKey(argv.registrar);
|
|
58
|
+
const proxySeasonsFile = fs.readFileSync(argv.proxySeasonsFile, "utf8");
|
|
59
|
+
const seasons = JSON.parse(proxySeasonsFile).map((s) => ({
|
|
60
|
+
start: new anchor.BN(Math.floor(Date.parse(s.start) / 1000)),
|
|
61
|
+
end: new anchor.BN(Math.floor(Date.parse(s.end) / 1000)),
|
|
62
|
+
}));
|
|
63
|
+
const { pubkeys: { proxyConfig }, instruction, } = await delProgram.methods
|
|
64
|
+
.initializeProxyConfigV0({
|
|
65
|
+
// Set max time to 2 years, though seasons should take precedent
|
|
66
|
+
maxProxyTime: new anchor.BN(24 * 60 * 60 * 365 * 2),
|
|
67
|
+
seasons,
|
|
68
|
+
name: "Helium V1",
|
|
69
|
+
})
|
|
70
|
+
.accounts({
|
|
71
|
+
authority,
|
|
72
|
+
})
|
|
73
|
+
.prepare();
|
|
74
|
+
if (!(await exists(provider.connection, proxyConfig))) {
|
|
75
|
+
console.log("Creating delegation config");
|
|
76
|
+
await sendInstructions(provider, [instruction]);
|
|
77
|
+
}
|
|
78
|
+
console.log("Updating registrar to delegation config");
|
|
79
|
+
await sendInstructionsOrSquads({
|
|
80
|
+
provider,
|
|
81
|
+
instructions: [
|
|
82
|
+
await vsrProgram.methods
|
|
83
|
+
.updateRegistrarV0()
|
|
84
|
+
.accounts({
|
|
85
|
+
proxyConfig,
|
|
86
|
+
registrar,
|
|
87
|
+
realmAuthority: authority,
|
|
88
|
+
})
|
|
89
|
+
.instruction(),
|
|
90
|
+
],
|
|
91
|
+
executeTransaction: false,
|
|
92
|
+
squads,
|
|
93
|
+
multisig: argv.multisig ? new PublicKey(argv.multisig) : undefined,
|
|
94
|
+
authorityIndex: argv.authorityIndex,
|
|
95
|
+
signers: [],
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=set-proxy-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set-proxy-config.js","sourceRoot":"","sources":["../../../src/set-proxy-config.ts"],"names":[],"mappings":"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"}
|