@flarestudio/fcc-workbench 1.0.18 → 1.0.20
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/dist/index.js +73 -13
- package/dist/index.js.map +1 -1
- package/dist/modules/docker.d.ts +2 -0
- package/dist/modules/docker.js +4 -2
- package/dist/modules/docker.js.map +1 -1
- package/dist/modules/officialTools.d.ts +4 -0
- package/dist/modules/officialTools.js +84 -0
- package/dist/modules/officialTools.js.map +1 -0
- package/dist/modules/registry.d.ts +1 -1
- package/dist/modules/registry.js +86 -38
- package/dist/modules/registry.js.map +1 -1
- package/dist/modules/scaffold.js +11 -2
- package/dist/modules/scaffold.js.map +1 -1
- package/dist/templates/index.js +6 -8
- package/dist/templates/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -6,10 +6,36 @@ import * as config from './modules/config.js';
|
|
|
6
6
|
import * as scaffold from './modules/scaffold.js';
|
|
7
7
|
import * as crypto from './modules/crypto.js';
|
|
8
8
|
import * as contract from './modules/contract.js';
|
|
9
|
-
import * as registry from './modules/registry.js';
|
|
10
9
|
import * as docker from './modules/docker.js';
|
|
11
10
|
import * as tee from './modules/tee.js';
|
|
11
|
+
import * as officialTools from './modules/officialTools.js';
|
|
12
12
|
const program = new Command();
|
|
13
|
+
function normalizeExtensionId(value) {
|
|
14
|
+
const trimmed = value.trim();
|
|
15
|
+
if (!trimmed)
|
|
16
|
+
throw new Error('Missing EXTENSION_ID.');
|
|
17
|
+
return BigInt(trimmed);
|
|
18
|
+
}
|
|
19
|
+
function assertProxyExtensionMatchesEnv(envExtensionId, proxyExtensionId) {
|
|
20
|
+
if (!proxyExtensionId)
|
|
21
|
+
return;
|
|
22
|
+
const expected = normalizeExtensionId(envExtensionId);
|
|
23
|
+
const actual = normalizeExtensionId(proxyExtensionId);
|
|
24
|
+
if (expected !== actual) {
|
|
25
|
+
throw new Error(`Running TEE proxy is configured for extension ID ${proxyExtensionId}, but .env has ${envExtensionId}.\n` +
|
|
26
|
+
'Restart/recreate the Docker stack after updating EXTENSION_ID, or update .env to match the running TEE before continuing.');
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
async function assertInitialOwnerMatchesPrivateKey(env) {
|
|
30
|
+
if (!env.PRIVATE_KEY || !env.INITIAL_OWNER)
|
|
31
|
+
return;
|
|
32
|
+
const keyMatchesOwner = await contract.verifyKeyMatchesOwner(env.PRIVATE_KEY, env.INITIAL_OWNER);
|
|
33
|
+
if (!keyMatchesOwner) {
|
|
34
|
+
const derivedOwner = contract.getAddressFromKey(env.PRIVATE_KEY);
|
|
35
|
+
throw new Error(`PRIVATE_KEY does not match INITIAL_OWNER in .env.\n` +
|
|
36
|
+
`Private key resolves to ${derivedOwner}, but INITIAL_OWNER is ${env.INITIAL_OWNER}.`);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
13
39
|
program
|
|
14
40
|
.name('flare-fcc')
|
|
15
41
|
.description('Tactical Workbench for Flare Confidential Compute (FCC)')
|
|
@@ -36,8 +62,27 @@ program
|
|
|
36
62
|
.description('Step 0.5: Setup environment and proxy configuration')
|
|
37
63
|
.action(async () => {
|
|
38
64
|
console.log(chalk.cyan.bold('\n⚙️ ENVIRONMENT CONFIGURATION\n'));
|
|
65
|
+
const language = await select({
|
|
66
|
+
message: 'Extension language:',
|
|
67
|
+
choices: [
|
|
68
|
+
{ name: 'TypeScript (Node.js)', value: 'typescript' },
|
|
69
|
+
{ name: 'Python', value: 'python' },
|
|
70
|
+
{ name: 'Go', value: 'go' }
|
|
71
|
+
],
|
|
72
|
+
default: 'typescript'
|
|
73
|
+
});
|
|
39
74
|
const pkey = await input({ message: 'Your EVM Private Key (Hex):' });
|
|
40
|
-
|
|
75
|
+
const derivedOwner = contract.getAddressFromKey(pkey);
|
|
76
|
+
const initialOwner = await input({
|
|
77
|
+
message: 'Initial Owner Address:',
|
|
78
|
+
default: derivedOwner,
|
|
79
|
+
});
|
|
80
|
+
const keyMatchesOwner = await contract.verifyKeyMatchesOwner(pkey, initialOwner);
|
|
81
|
+
if (!keyMatchesOwner) {
|
|
82
|
+
throw new Error(`PRIVATE_KEY does not match INITIAL_OWNER.\n` +
|
|
83
|
+
`Private key resolves to ${derivedOwner}, but INITIAL_OWNER is ${initialOwner}.`);
|
|
84
|
+
}
|
|
85
|
+
config.writeEnv({ LANGUAGE: language, PRIVATE_KEY: pkey, INITIAL_OWNER: initialOwner });
|
|
41
86
|
console.log(chalk.gray('\nFlare Indexer Database Credentials (for ext-proxy):'));
|
|
42
87
|
const dbHost = await input({ message: 'DB Host:', default: 'indexer-db.test.flare.network' });
|
|
43
88
|
const dbPort = await input({ message: 'DB Port:', default: '3306' });
|
|
@@ -55,6 +100,7 @@ program
|
|
|
55
100
|
const env = config.loadEnv();
|
|
56
101
|
if (!env.PRIVATE_KEY)
|
|
57
102
|
throw new Error('Missing PRIVATE_KEY in .env file. Add it manually or run setup.');
|
|
103
|
+
await assertInitialOwnerMatchesPrivateKey(env);
|
|
58
104
|
const address = await contract.deployInstructionSender(env.PRIVATE_KEY);
|
|
59
105
|
config.writeEnv({ INSTRUCTION_SENDER: address });
|
|
60
106
|
console.log(chalk.green('\n✔ Contract Deployed:'), address);
|
|
@@ -68,11 +114,10 @@ program
|
|
|
68
114
|
if (!env.PRIVATE_KEY || !env.INSTRUCTION_SENDER) {
|
|
69
115
|
throw new Error('Missing PRIVATE_KEY or INSTRUCTION_SENDER in .env file.');
|
|
70
116
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
});
|
|
117
|
+
await assertInitialOwnerMatchesPrivateKey(env);
|
|
118
|
+
console.log(chalk.gray('Using Flare official registration tool so owner allowlists are configured automatically.'));
|
|
119
|
+
const output = await officialTools.runGoTool('register-extension', env, ['-instructionSender', env.INSTRUCTION_SENDER], true);
|
|
120
|
+
const id = officialTools.parseExtensionId(output);
|
|
76
121
|
config.writeEnv({ EXTENSION_ID: id });
|
|
77
122
|
console.log(chalk.green('\n✔ Extension Registered! ID:'), id);
|
|
78
123
|
});
|
|
@@ -82,7 +127,9 @@ program
|
|
|
82
127
|
.description('Step 3: Start the local Docker stack')
|
|
83
128
|
.action(async () => {
|
|
84
129
|
console.log(chalk.yellow.bold('\n🐳 STARTING TEE STACK\n'));
|
|
85
|
-
await docker.runDockerCompose(['up', '-d']);
|
|
130
|
+
await docker.runDockerCompose(['up', '-d', '--build']);
|
|
131
|
+
console.log(chalk.gray('\nWaiting for ext-proxy /info on http://localhost:6676 ...'));
|
|
132
|
+
await docker.fetchProxyInfo('http://localhost:6676', 40, 3000);
|
|
86
133
|
console.log(chalk.green('\n✔ Stack started in background.'));
|
|
87
134
|
console.log(chalk.gray(' Use "docker compose logs -f" to view logs.'));
|
|
88
135
|
});
|
|
@@ -105,22 +152,33 @@ program
|
|
|
105
152
|
const env = config.loadEnv();
|
|
106
153
|
if (!env.PRIVATE_KEY || !env.EXTENSION_ID)
|
|
107
154
|
throw new Error('Missing environment vars.');
|
|
155
|
+
await assertInitialOwnerMatchesPrivateKey(env);
|
|
108
156
|
const info = await docker.fetchProxyInfo();
|
|
109
|
-
|
|
157
|
+
assertProxyExtensionMatchesEnv(env.EXTENSION_ID, info.extensionId);
|
|
158
|
+
console.log(chalk.gray('Using Flare official allow-tee-version tool in local mode.'));
|
|
159
|
+
await officialTools.runGoTool('allow-tee-version', env, ['-p', 'http://localhost:6676', '-version', 'v0.1.0', '-l']);
|
|
110
160
|
console.log(chalk.green('\n✔ TEE Version Allowed.'));
|
|
111
161
|
});
|
|
112
162
|
program
|
|
113
163
|
.command('register-tee')
|
|
114
164
|
.description('Step 6: Register TEE machine on-chain (local mode)')
|
|
115
|
-
.
|
|
165
|
+
.option('-l, --local', 'Register as local (non-SGX) machine')
|
|
166
|
+
.action(async (options) => {
|
|
116
167
|
console.log(chalk.blue.bold('\n💻 REGISTER TEE MACHINE\n'));
|
|
117
168
|
const env = config.loadEnv();
|
|
118
169
|
if (!env.PRIVATE_KEY || !env.EXTENSION_ID || !env.TUNNEL_URL) {
|
|
119
170
|
throw new Error('Missing environment vars or tunnel URL.');
|
|
120
171
|
}
|
|
172
|
+
await assertInitialOwnerMatchesPrivateKey(env);
|
|
121
173
|
const info = await docker.fetchProxyInfo();
|
|
122
|
-
|
|
123
|
-
const
|
|
174
|
+
assertProxyExtensionMatchesEnv(env.EXTENSION_ID, info.extensionId);
|
|
175
|
+
const isLocal = options.local ?? await confirm({ message: 'Register as local (non-SGX) machine?', default: true });
|
|
176
|
+
const args = ['-p', 'http://localhost:6676', '-host', env.TUNNEL_URL];
|
|
177
|
+
if (isLocal)
|
|
178
|
+
args.push('-l');
|
|
179
|
+
console.log(chalk.gray('Using Flare official register-tee tool for pre-registration, attestation, and production promotion.'));
|
|
180
|
+
await officialTools.runGoTool('register-tee', env, args);
|
|
181
|
+
const id = 'registered';
|
|
124
182
|
console.log(chalk.green('\n✔ TEE Machine Registered! ID:'), id);
|
|
125
183
|
});
|
|
126
184
|
program
|
|
@@ -132,7 +190,9 @@ program
|
|
|
132
190
|
if (!env.PRIVATE_KEY || !env.EXTENSION_ID || !env.INSTRUCTION_SENDER) {
|
|
133
191
|
throw new Error('Missing environment vars.');
|
|
134
192
|
}
|
|
135
|
-
await
|
|
193
|
+
await assertInitialOwnerMatchesPrivateKey(env);
|
|
194
|
+
console.log(chalk.gray('Using Flare official E2E test tool.'));
|
|
195
|
+
await officialTools.runGoTool('run-test', env, ['-p', 'http://localhost:6676', '-instructionSender', env.INSTRUCTION_SENDER]);
|
|
136
196
|
});
|
|
137
197
|
// --- 4. UTILITIES ---
|
|
138
198
|
program
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/modules/docker.d.ts
CHANGED
package/dist/modules/docker.js
CHANGED
|
@@ -41,7 +41,7 @@ export function runDockerCompose(args) {
|
|
|
41
41
|
* Check if the ext-proxy is healthy by polling its /info endpoint.
|
|
42
42
|
* Returns true when ready, throws after timeout.
|
|
43
43
|
*/
|
|
44
|
-
export async function waitForProxy(proxyUrl = 'http://localhost:
|
|
44
|
+
export async function waitForProxy(proxyUrl = 'http://localhost:6675', timeoutMs = 60000) {
|
|
45
45
|
const deadline = Date.now() + timeoutMs;
|
|
46
46
|
while (Date.now() < deadline) {
|
|
47
47
|
try {
|
|
@@ -61,7 +61,7 @@ export async function waitForProxy(proxyUrl = 'http://localhost:6685', timeoutMs
|
|
|
61
61
|
* The /info endpoint lives on the EXTERNAL port (6676).
|
|
62
62
|
* Retries because the external server starts after the DB sync completes.
|
|
63
63
|
*/
|
|
64
|
-
export async function fetchProxyInfo(proxyUrl = 'http://localhost:
|
|
64
|
+
export async function fetchProxyInfo(proxyUrl = 'http://localhost:6676', retries = 15, delayMs = 3000) {
|
|
65
65
|
for (let i = 0; i < retries; i++) {
|
|
66
66
|
try {
|
|
67
67
|
const res = await fetch(`${proxyUrl}/info`);
|
|
@@ -78,6 +78,8 @@ export async function fetchProxyInfo(proxyUrl = 'http://localhost:6686', retries
|
|
|
78
78
|
publicKey,
|
|
79
79
|
platform: machineData.platform ?? teeInfo.platform ?? machineData.platform_hash ?? '0x0000000000000000000000000000000000000000000000000000000000000000',
|
|
80
80
|
codeHash: machineData.codeHash ?? teeInfo.codeHash ?? machineData.code_hash ?? '',
|
|
81
|
+
extensionId: machineData.extensionId ?? machineData.extension_id ?? teeInfo.extensionId ?? teeInfo.extension_id ?? '',
|
|
82
|
+
initialOwner: machineData.initialOwner ?? machineData.initial_owner ?? teeInfo.initialOwner ?? teeInfo.initial_owner ?? '',
|
|
81
83
|
version: teeInfo.version ?? machineData.version ?? '',
|
|
82
84
|
};
|
|
83
85
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../../src/modules/docker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEtC;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAc;IAC7C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,+DAA+D;QAC/D,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,EAAE;YAClD,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACxB,iCAAiC;YACjC,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBACxE,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,EAAE,IAAI,EAAE;oBAC7C,KAAK,EAAE,SAAS;oBAChB,KAAK,EAAE,IAAI;iBACZ,CAAC,CAAC;gBACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC7B,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;oBAC5B,IAAI,IAAI,KAAK,CAAC;wBAAE,OAAO,EAAE,CAAC;;wBACrB,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,IAAI,EAAE,CAAC,CAAC,CAAC;gBACpE,CAAC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACzB,IAAI,IAAI,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;;gBACrB,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,IAAI,EAAE,CAAC,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,QAAQ,GAAG,uBAAuB,EAClC,SAAS,GAAG,KAAK;IAEjB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACxC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,QAAQ,OAAO,CAAC,CAAC;YAC5C,IAAI,GAAG,CAAC,EAAE;gBAAE,OAAO,IAAI,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,gBAAgB;QAClB,CAAC;QACD,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,YAAY,QAAQ,kCAAkC,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC;AAC7F,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAQ,GAAG,uBAAuB,EAAE,OAAO,GAAG,EAAE,EAAE,OAAO,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../../src/modules/docker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { FccEnv } from './config.js';
|
|
2
|
+
export declare function ensureFceSignTools(projectDir?: string): Promise<string>;
|
|
3
|
+
export declare function runGoTool(command: string, env: FccEnv, args?: string[], capture?: boolean): Promise<string>;
|
|
4
|
+
export declare function parseExtensionId(output: string): string;
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import fs from 'fs-extra';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import { spawn } from 'child_process';
|
|
4
|
+
const REPO_URL = 'https://github.com/flare-foundation/fce-sign.git';
|
|
5
|
+
const TOOLS_DIR = path.join('.flare-fcc-tools', 'fce-sign');
|
|
6
|
+
function run(command, args, options) {
|
|
7
|
+
return new Promise((resolve, reject) => {
|
|
8
|
+
const child = spawn(command, args, {
|
|
9
|
+
cwd: options.cwd,
|
|
10
|
+
env: { ...process.env, ...options.env },
|
|
11
|
+
shell: true,
|
|
12
|
+
stdio: options.capture ? ['ignore', 'pipe', 'pipe'] : 'inherit',
|
|
13
|
+
});
|
|
14
|
+
let output = '';
|
|
15
|
+
if (options.capture) {
|
|
16
|
+
child.stdout?.on('data', (chunk) => {
|
|
17
|
+
const text = chunk.toString();
|
|
18
|
+
output += text;
|
|
19
|
+
process.stdout.write(text);
|
|
20
|
+
});
|
|
21
|
+
child.stderr?.on('data', (chunk) => {
|
|
22
|
+
const text = chunk.toString();
|
|
23
|
+
output += text;
|
|
24
|
+
process.stderr.write(text);
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
child.on('error', reject);
|
|
28
|
+
child.on('close', (code) => {
|
|
29
|
+
if (code === 0)
|
|
30
|
+
resolve(output);
|
|
31
|
+
else
|
|
32
|
+
reject(new Error(`${command} ${args.join(' ')} exited with code ${code}`));
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
export async function ensureFceSignTools(projectDir = process.cwd()) {
|
|
37
|
+
const toolsPath = path.resolve(projectDir, TOOLS_DIR);
|
|
38
|
+
if (fs.existsSync(path.join(toolsPath, 'go', 'tools', 'go.mod'))) {
|
|
39
|
+
return toolsPath;
|
|
40
|
+
}
|
|
41
|
+
fs.ensureDirSync(path.dirname(toolsPath));
|
|
42
|
+
await run('git', ['clone', '--depth', '1', REPO_URL, toolsPath], {
|
|
43
|
+
cwd: projectDir,
|
|
44
|
+
});
|
|
45
|
+
return toolsPath;
|
|
46
|
+
}
|
|
47
|
+
function toolEnv(env) {
|
|
48
|
+
const cleanPrivateKey = env.PRIVATE_KEY?.trim().replace(/^0x/, '');
|
|
49
|
+
return {
|
|
50
|
+
LANGUAGE: env.LANGUAGE || 'typescript',
|
|
51
|
+
PRIVATE_KEY: cleanPrivateKey,
|
|
52
|
+
INITIAL_OWNER: env.INITIAL_OWNER,
|
|
53
|
+
INSTRUCTION_SENDER: env.INSTRUCTION_SENDER,
|
|
54
|
+
EXTENSION_ID: env.EXTENSION_ID,
|
|
55
|
+
TUNNEL_URL: env.TUNNEL_URL,
|
|
56
|
+
CHAIN_URL: env.RPC_URL || 'https://coston2-api.flare.network/ext/C/rpc',
|
|
57
|
+
RPC_URL: env.RPC_URL || 'https://coston2-api.flare.network/ext/C/rpc',
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
function addressesFile(toolsPath) {
|
|
61
|
+
return path.join(toolsPath, 'config', 'coston2', 'deployed-addresses.json');
|
|
62
|
+
}
|
|
63
|
+
export async function runGoTool(command, env, args = [], capture = false) {
|
|
64
|
+
const toolsPath = await ensureFceSignTools();
|
|
65
|
+
const cwd = path.join(toolsPath, 'go', 'tools');
|
|
66
|
+
const rpc = env.RPC_URL || 'https://coston2-api.flare.network/ext/C/rpc';
|
|
67
|
+
return run('go', [
|
|
68
|
+
'run',
|
|
69
|
+
`./cmd/${command}`,
|
|
70
|
+
'-a',
|
|
71
|
+
addressesFile(toolsPath),
|
|
72
|
+
'-c',
|
|
73
|
+
rpc,
|
|
74
|
+
...args,
|
|
75
|
+
], { cwd, env: toolEnv(env), capture });
|
|
76
|
+
}
|
|
77
|
+
export function parseExtensionId(output) {
|
|
78
|
+
const matches = output.match(/0x[a-fA-F0-9]{64}/g);
|
|
79
|
+
if (!matches?.length) {
|
|
80
|
+
throw new Error('Official register-extension completed but no 32-byte extension ID was found in its output.');
|
|
81
|
+
}
|
|
82
|
+
return matches[matches.length - 1];
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=officialTools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"officialTools.js","sourceRoot":"","sources":["../../src/modules/officialTools.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,9 +15,9 @@ export declare function registerExtension(options: any): Promise<string>;
|
|
|
15
15
|
* Must be called after the Docker stack is running and proxy is healthy.
|
|
16
16
|
*/
|
|
17
17
|
export declare function allowTeeVersion(privateKey: string, extensionId: string, platform: string, codeHash: string, registryAddress?: string): Promise<string>;
|
|
18
|
+
export declare function registerTeeNode(privateKey: string, extensionId: string, tunnelUrl: string, platform: string, codeHash: string, teePublicKey: string, isLocal: boolean, registryAddress?: string): Promise<string>;
|
|
18
19
|
/**
|
|
19
20
|
* Register a TEE machine node on-chain.
|
|
20
21
|
* The -l flag enables local/laptop mode (no real GCP enclave required).
|
|
21
22
|
*/
|
|
22
|
-
export declare function registerTeeNode(privateKey: string, extensionId: string, tunnelUrl: string, platform: string, codeHash: string, teePublicKey: string, isLocal: boolean, registryAddress?: string): Promise<string>;
|
|
23
23
|
export { TEE_EXTENSION_REGISTRY };
|
package/dist/modules/registry.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createWalletClient, createPublicClient, http, defineChain } from 'viem';
|
|
1
|
+
import { createWalletClient, createPublicClient, http, defineChain, stringToHex, toEventSelector } from 'viem';
|
|
2
2
|
import { privateKeyToAccount } from 'viem/accounts';
|
|
3
3
|
const coston2 = defineChain({
|
|
4
4
|
id: 114,
|
|
@@ -18,6 +18,16 @@ const TEE_EXTENSION_REGISTRY = '0x3d478d43426081BD5854be9C7c5c183bfe76C981';
|
|
|
18
18
|
const TEE_MACHINE_REGISTRY = '0x5918Cd58e5caf755b8584649Aa24077822F87613';
|
|
19
19
|
const TEE_STATE_VERIFIER = '0x1cE508dF0974d3D1b716A5EBd7ee7D14c7f98758';
|
|
20
20
|
const REGISTRY_ABI = [
|
|
21
|
+
{
|
|
22
|
+
name: 'VersionAlreadyExists',
|
|
23
|
+
type: 'error',
|
|
24
|
+
inputs: [],
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
name: 'PlatformAlreadyExists',
|
|
28
|
+
type: 'error',
|
|
29
|
+
inputs: [{ name: 'platform', type: 'bytes32' }],
|
|
30
|
+
},
|
|
21
31
|
{
|
|
22
32
|
name: 'register',
|
|
23
33
|
type: 'function',
|
|
@@ -29,22 +39,35 @@ const REGISTRY_ABI = [
|
|
|
29
39
|
outputs: [{ name: '_extensionId', type: 'uint256' }],
|
|
30
40
|
},
|
|
31
41
|
{
|
|
32
|
-
name: '
|
|
42
|
+
name: 'addTeeVersion',
|
|
33
43
|
type: 'function',
|
|
34
44
|
stateMutability: 'nonpayable',
|
|
35
45
|
inputs: [
|
|
36
|
-
{ name: '_extensionId', type: '
|
|
37
|
-
{ name: '
|
|
46
|
+
{ name: '_extensionId', type: 'uint256' },
|
|
47
|
+
{ name: '_version', type: 'string' },
|
|
38
48
|
{ name: '_codeHash', type: 'bytes32' },
|
|
49
|
+
{ name: '_platforms', type: 'bytes32[]' },
|
|
50
|
+
{ name: '_governanceHash', type: 'bytes32' },
|
|
39
51
|
],
|
|
40
52
|
outputs: [],
|
|
41
53
|
},
|
|
54
|
+
{
|
|
55
|
+
name: 'isCodeHashPlatformSupported',
|
|
56
|
+
type: 'function',
|
|
57
|
+
stateMutability: 'view',
|
|
58
|
+
inputs: [
|
|
59
|
+
{ name: '_extensionId', type: 'uint256' },
|
|
60
|
+
{ name: '_codeHash', type: 'bytes32' },
|
|
61
|
+
{ name: '_platform', type: 'bytes32' },
|
|
62
|
+
],
|
|
63
|
+
outputs: [{ name: '', type: 'bool' }],
|
|
64
|
+
},
|
|
42
65
|
{
|
|
43
66
|
name: 'registerTeeNode',
|
|
44
67
|
type: 'function',
|
|
45
68
|
stateMutability: 'nonpayable',
|
|
46
69
|
inputs: [
|
|
47
|
-
{ name: '_extensionId', type: '
|
|
70
|
+
{ name: '_extensionId', type: 'uint256' },
|
|
48
71
|
{ name: '_tunnelUrl', type: 'string' },
|
|
49
72
|
{ name: '_platform', type: 'bytes32' },
|
|
50
73
|
{ name: '_codeHash', type: 'bytes32' },
|
|
@@ -61,7 +84,7 @@ const REGISTRY_ABI = [
|
|
|
61
84
|
outputs: [],
|
|
62
85
|
},
|
|
63
86
|
{
|
|
64
|
-
name: '
|
|
87
|
+
name: 'TeeExtensionRegistered',
|
|
65
88
|
type: 'event',
|
|
66
89
|
inputs: [
|
|
67
90
|
{ name: 'extensionId', type: 'uint256', indexed: true },
|
|
@@ -85,6 +108,16 @@ function makeClients(privateKey) {
|
|
|
85
108
|
});
|
|
86
109
|
return { account, walletClient, publicClient };
|
|
87
110
|
}
|
|
111
|
+
/**
|
|
112
|
+
* Ensures a value is a 32-byte hex string.
|
|
113
|
+
* If already hex, returns it. If string, encodes it.
|
|
114
|
+
*/
|
|
115
|
+
function toBytes32(value) {
|
|
116
|
+
if (value.startsWith('0x') && value.length === 66) {
|
|
117
|
+
return value;
|
|
118
|
+
}
|
|
119
|
+
return stringToHex(value, { size: 32 });
|
|
120
|
+
}
|
|
88
121
|
/**
|
|
89
122
|
* Register a new TEE extension in the TeeExtensionRegistry.
|
|
90
123
|
* Links the extension to the InstructionSender contract.
|
|
@@ -98,7 +131,7 @@ export async function registerExtension(options) {
|
|
|
98
131
|
abi: REGISTRY_ABI,
|
|
99
132
|
functionName: 'register',
|
|
100
133
|
args: [
|
|
101
|
-
|
|
134
|
+
TEE_STATE_VERIFIER, // Use real verifier instead of zero address
|
|
102
135
|
options.instructionSender,
|
|
103
136
|
],
|
|
104
137
|
account,
|
|
@@ -106,10 +139,12 @@ export async function registerExtension(options) {
|
|
|
106
139
|
});
|
|
107
140
|
console.log(`Tx sent: ${hash}`);
|
|
108
141
|
const receipt = await publicClient.waitForTransactionReceipt({ hash });
|
|
109
|
-
//
|
|
110
|
-
|
|
142
|
+
// Use event selector to filter the correct log
|
|
143
|
+
const EVENT_SIG = toEventSelector('TeeExtensionRegistered(uint256,address)');
|
|
144
|
+
console.log(`Searching for Event Signature: ${EVENT_SIG}`);
|
|
111
145
|
for (const log of receipt.logs) {
|
|
112
|
-
|
|
146
|
+
console.log(`Found Event: ${log.topics[0]}`);
|
|
147
|
+
if (log.topics[0] === EVENT_SIG && log.topics[1]) {
|
|
113
148
|
console.log(`✅ Extension Registered! ID: ${log.topics[1]}`);
|
|
114
149
|
return log.topics[1];
|
|
115
150
|
}
|
|
@@ -123,55 +158,68 @@ export async function registerExtension(options) {
|
|
|
123
158
|
export async function allowTeeVersion(privateKey, extensionId, platform, codeHash, registryAddress) {
|
|
124
159
|
const { account, walletClient, publicClient } = makeClients(privateKey);
|
|
125
160
|
const registry = (registryAddress || TEE_EXTENSION_REGISTRY);
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
161
|
+
// simulateContract uses eth_call for gas estimation — works on Coston2
|
|
162
|
+
// writeContract with eth_fillTransaction does NOT work on Coston2
|
|
163
|
+
try {
|
|
164
|
+
const { request } = await publicClient.simulateContract({
|
|
165
|
+
address: registry,
|
|
166
|
+
abi: REGISTRY_ABI,
|
|
167
|
+
functionName: 'addTeeVersion',
|
|
168
|
+
args: [
|
|
169
|
+
BigInt(extensionId),
|
|
170
|
+
'v0.1.0',
|
|
171
|
+
toBytes32(codeHash),
|
|
172
|
+
[toBytes32(platform)],
|
|
173
|
+
'0x0000000000000000000000000000000000000000000000000000000000000000',
|
|
174
|
+
],
|
|
175
|
+
account,
|
|
176
|
+
});
|
|
177
|
+
const hash = await walletClient.writeContract(request);
|
|
178
|
+
await publicClient.waitForTransactionReceipt({ hash });
|
|
179
|
+
return hash;
|
|
180
|
+
}
|
|
181
|
+
catch (err) {
|
|
182
|
+
const msg = String(err?.message ?? err);
|
|
183
|
+
if (msg.includes('PlatformAlreadyExists') ||
|
|
184
|
+
msg.includes('VersionAlreadyExists') ||
|
|
185
|
+
msg.includes('0xaff97f93')) {
|
|
186
|
+
console.log('TEE version already registered for this extension, skipping.');
|
|
187
|
+
return 'already-supported';
|
|
188
|
+
}
|
|
189
|
+
throw err;
|
|
190
|
+
}
|
|
140
191
|
}
|
|
141
|
-
/**
|
|
142
|
-
* Register a TEE machine node on-chain.
|
|
143
|
-
* The -l flag enables local/laptop mode (no real GCP enclave required).
|
|
144
|
-
*/
|
|
145
192
|
export async function registerTeeNode(privateKey, extensionId, tunnelUrl, platform, codeHash, teePublicKey, isLocal, registryAddress) {
|
|
146
193
|
const { account, walletClient, publicClient } = makeClients(privateKey);
|
|
147
|
-
const registry = (registryAddress ||
|
|
148
|
-
// Convert hex public key string to bytes
|
|
194
|
+
const registry = (registryAddress || TEE_MACHINE_REGISTRY);
|
|
149
195
|
const pubKeyBytes = teePublicKey.startsWith('0x')
|
|
150
196
|
? teePublicKey
|
|
151
197
|
: `0x${teePublicKey}`;
|
|
152
|
-
const
|
|
198
|
+
const { request } = await publicClient.simulateContract({
|
|
153
199
|
address: registry,
|
|
154
200
|
abi: REGISTRY_ABI,
|
|
155
201
|
functionName: 'registerTeeNode',
|
|
156
202
|
args: [
|
|
157
|
-
extensionId,
|
|
203
|
+
BigInt(extensionId),
|
|
158
204
|
tunnelUrl,
|
|
159
|
-
platform,
|
|
160
|
-
codeHash,
|
|
205
|
+
toBytes32(platform),
|
|
206
|
+
toBytes32(codeHash),
|
|
161
207
|
pubKeyBytes,
|
|
162
208
|
isLocal,
|
|
163
209
|
],
|
|
164
210
|
account,
|
|
165
|
-
chain: coston2,
|
|
166
211
|
});
|
|
212
|
+
const hash = await walletClient.writeContract(request);
|
|
167
213
|
const receipt = await publicClient.waitForTransactionReceipt({ hash });
|
|
168
|
-
// Extract TEE node ID from logs
|
|
169
214
|
for (const log of receipt.logs) {
|
|
170
|
-
if (log.topics[1])
|
|
215
|
+
if (log.topics[1])
|
|
171
216
|
return log.topics[1];
|
|
172
|
-
}
|
|
173
217
|
}
|
|
174
218
|
return hash;
|
|
175
219
|
}
|
|
220
|
+
/**
|
|
221
|
+
* Register a TEE machine node on-chain.
|
|
222
|
+
* The -l flag enables local/laptop mode (no real GCP enclave required).
|
|
223
|
+
*/
|
|
176
224
|
export { TEE_EXTENSION_REGISTRY };
|
|
177
225
|
//# sourceMappingURL=registry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/modules/registry.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/modules/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/modules/scaffold.js
CHANGED
|
@@ -22,7 +22,16 @@ export async function createAgent(name, language) {
|
|
|
22
22
|
await fs.writeFile(path.join(projectDir, 'extension', 'Dockerfile'), templates.DOCKERFILE);
|
|
23
23
|
await fs.writeFile(path.join(projectDir, 'proxy', 'Dockerfile'), templates.PROXY_DOCKERFILE);
|
|
24
24
|
await fs.writeFile(path.join(projectDir, 'config', 'proxy', 'extension_proxy.toml'), templates.PROXY_CONFIG);
|
|
25
|
-
await fs.writeFile(path.join(projectDir, '.env.example'),
|
|
25
|
+
await fs.writeFile(path.join(projectDir, '.env.example'), [
|
|
26
|
+
'LANGUAGE=' + language,
|
|
27
|
+
'PRIVATE_KEY=0x...',
|
|
28
|
+
'INITIAL_OWNER=0x...',
|
|
29
|
+
'EXTENSION_ID=',
|
|
30
|
+
'INSTRUCTION_SENDER=',
|
|
31
|
+
'TUNNEL_URL=',
|
|
32
|
+
'RPC_URL=https://coston2-api.flare.network/ext/C/rpc',
|
|
33
|
+
].join('\n') + '\n');
|
|
34
|
+
await fs.writeFile(path.join(projectDir, '.gitignore'), ['.env', '.flare-fcc-tools/', 'node_modules/', 'dist/'].join('\n') + '\n');
|
|
26
35
|
// Write App Kernel
|
|
27
36
|
const appFile = language === 'typescript' ? 'app.ts' : language === 'python' ? 'app.py' : 'main.go';
|
|
28
37
|
const appContent = language === 'typescript' ? templates.TS_APP : language === 'python' ? templates.PY_APP : templates.GO_APP;
|
|
@@ -53,7 +62,7 @@ export async function createAgent(name, language) {
|
|
|
53
62
|
console.log(chalk.gray(' - contracts/ (InstructionSender.sol)'));
|
|
54
63
|
console.log(chalk.white('\nNext steps:'));
|
|
55
64
|
console.log(chalk.cyan(` cd ${name}`));
|
|
56
|
-
console.log(chalk.yellow(' 1. Run the setup wizard to configure your DB and
|
|
65
|
+
console.log(chalk.yellow(' 1. Run the setup wizard to configure your DB, Private Key, and Initial Owner:'));
|
|
57
66
|
console.log(chalk.cyan(' npx @flarestudio/fcc-workbench@latest setup'));
|
|
58
67
|
console.log(chalk.yellow(' (Or manually rename .env.example to .env and edit extension_proxy.toml)'));
|
|
59
68
|
console.log(chalk.cyan('\n npx @flarestudio/fcc-workbench@latest deploy # deploy contract'));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../src/modules/scaffold.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAC;AAEnD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAY,EAAE,QAAgB;IAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;IAElD,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,wBAAwB,IAAI,kBAAkB,CAAC,CAAC,CAAC;QACzE,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,4BAA4B,IAAI,KAAK,CAAC,CAAC,CAAC;IAE/D,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC/B,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;QACvD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QACnD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;QACvD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;QAErD,qBAAqB;QACrB,MAAM,EAAE,CAAC,SAAS,CAChB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,EAC3C,SAAS,CAAC,cAAc,CACzB,CAAC;QAEF,qBAAqB;QACrB,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;QAC3F,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAC7F,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,sBAAsB,CAAC,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;QAC7G,MAAM,EAAE,CAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../src/modules/scaffold.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAC;AAEnD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAY,EAAE,QAAgB;IAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;IAElD,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,wBAAwB,IAAI,kBAAkB,CAAC,CAAC,CAAC;QACzE,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,4BAA4B,IAAI,KAAK,CAAC,CAAC,CAAC;IAE/D,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC/B,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;QACvD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QACnD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;QACvD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;QAErD,qBAAqB;QACrB,MAAM,EAAE,CAAC,SAAS,CAChB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,EAC3C,SAAS,CAAC,cAAc,CACzB,CAAC;QAEF,qBAAqB;QACrB,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;QAC3F,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAC7F,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,sBAAsB,CAAC,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;QAC7G,MAAM,EAAE,CAAC,SAAS,CAChB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,EACrC;YACE,WAAW,GAAG,QAAQ;YACtB,mBAAmB;YACnB,qBAAqB;YACrB,eAAe;YACf,qBAAqB;YACrB,aAAa;YACb,qDAAqD;SACtD,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CACpB,CAAC;QACF,MAAM,EAAE,CAAC,SAAS,CAChB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,EACnC,CAAC,MAAM,EAAE,mBAAmB,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAC1E,CAAC;QAEF,mBAAmB;QACnB,MAAM,OAAO,GAAG,QAAQ,KAAK,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QACpG,MAAM,UAAU,GAAG,QAAQ,KAAK,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC;QAC9H,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC;QAE5E,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;YAC5B,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,cAAc,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YACnG,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,eAAe,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnF,eAAe,EAAE;oBACb,MAAM,EAAE,QAAQ;oBAChB,MAAM,EAAE,QAAQ;oBAChB,gBAAgB,EAAE,MAAM;oBACxB,MAAM,EAAE,QAAQ;oBAChB,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,IAAI;oBACZ,eAAe,EAAE,IAAI;oBACrB,YAAY,EAAE,IAAI;iBACrB;aACJ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;QAED,0BAA0B;QAC1B,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,uBAAuB,CAAC,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;QACxG,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC;QAE3F,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,oBAAoB,IAAI,wBAAwB,CAAC,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC,CAAC;QACrF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,iFAAiF,CAAC,CAAC,CAAC;QAC7G,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,2EAA2E,CAAC,CAAC,CAAC;QACvG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAC,CAAC;QACpG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC,CAAC;QACrG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAC,CAAC;IAEpG,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IACzE,CAAC;AACH,CAAC"}
|
package/dist/templates/index.js
CHANGED
|
@@ -28,8 +28,6 @@ export const DOCKER_COMPOSE = [
|
|
|
28
28
|
" depends_on:",
|
|
29
29
|
" redis:",
|
|
30
30
|
" condition: service_healthy",
|
|
31
|
-
" networks:",
|
|
32
|
-
" - flare-fcc",
|
|
33
31
|
" healthcheck:",
|
|
34
32
|
" test: [\"CMD\", \"wget\", \"-q\", \"-O\", \"/dev/null\", \"http://localhost:6663/healthy\"]",
|
|
35
33
|
" interval: 5s",
|
|
@@ -44,19 +42,16 @@ export const DOCKER_COMPOSE = [
|
|
|
44
42
|
" env_file:",
|
|
45
43
|
" - .env",
|
|
46
44
|
" environment:",
|
|
45
|
+
" - INITIAL_OWNER=${INITIAL_OWNER}",
|
|
47
46
|
" - EXTENSION_ID=${EXTENSION_ID}",
|
|
48
47
|
" - PROXY_URL=http://ext-proxy:6663",
|
|
49
48
|
" - SIGN_PORT=8882",
|
|
50
49
|
" - EXTENSION_PORT=8883",
|
|
50
|
+
" - LOG_LEVEL=${LOG_LEVEL:-INFO}",
|
|
51
51
|
" depends_on:",
|
|
52
52
|
" ext-proxy:",
|
|
53
53
|
" condition: service_healthy",
|
|
54
|
-
"
|
|
55
|
-
" - flare-fcc",
|
|
56
|
-
"",
|
|
57
|
-
"networks:",
|
|
58
|
-
" flare-fcc:",
|
|
59
|
-
" driver: bridge"
|
|
54
|
+
""
|
|
60
55
|
].join("\n");
|
|
61
56
|
export const PROXY_DOCKERFILE = [
|
|
62
57
|
"ARG TEE_PROXY_VERSION=main",
|
|
@@ -125,6 +120,9 @@ export const DOCKERFILE = [
|
|
|
125
120
|
"ARG TEE_NODE_VERSION",
|
|
126
121
|
"WORKDIR /node",
|
|
127
122
|
"RUN git clone --depth 1 --branch ${TEE_NODE_VERSION} https://github.com/flare-foundation/tee-node.git .",
|
|
123
|
+
"RUN sed -i '/github.com\\/ethereum\\/go-ethereum\\/common\"/a\\\\\\t\"github.com/ethereum/go-ethereum/common/hexutil\"' internal/attestation/attestation.go \\",
|
|
124
|
+
" && sed -i 's/Attestation: string(attestationBytes),/Attestation: hexutil.Bytes(attestationBytes),/' internal/attestation/attestation.go \\",
|
|
125
|
+
" && sed -i 's/Attestation string `json:\"attestation\"`/Attestation hexutil.Bytes `json:\"attestation\"`/' pkg/types/tee.go",
|
|
128
126
|
"RUN go mod download",
|
|
129
127
|
"RUN CGO_ENABLED=0 GOOS=linux go build -o /node/server cmd/extension/main.go",
|
|
130
128
|
"",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,WAAW;IACX,UAAU;IACV,2BAA2B;IAC3B,uDAAuD;IACvD,YAAY;IACZ,iCAAiC;IACjC,YAAY;IACZ,eAAe;IACf,kBAAkB;IAClB,gDAAgD;IAChD,oBAAoB;IACpB,mBAAmB;IACnB,kBAAkB;IAClB,EAAE;IACF,cAAc;IACd,YAAY;IACZ,wBAAwB;IACxB,8BAA8B;IAC9B,yBAAyB;IACzB,cAAc;IACd,wEAAwE;IACxE,kBAAkB;IAClB,oCAAoC;IACpC,YAAY;IACZ,+BAA+B;IAC/B,+BAA+B;IAC/B,iBAAiB;IACjB,cAAc;IACd,oCAAoC;IACpC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED