@dcl/opscli 1.0.0-34383266436.commit-41a928d → 1.0.0-34505710176.commit-d00f7bd
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/README.md +34 -0
- package/dist/bin.d.ts.map +1 -1
- package/dist/bin.js +3 -1
- package/dist/bin.js.map +1 -1
- package/dist/commands/ab-queue-status.d.ts +2 -0
- package/dist/commands/ab-queue-status.d.ts.map +1 -0
- package/dist/commands/ab-queue-status.js +40 -0
- package/dist/commands/ab-queue-status.js.map +1 -0
- package/dist/commands/pointer-consistency.d.ts.map +1 -1
- package/dist/commands/pointer-consistency.js +14 -31
- package/dist/commands/pointer-consistency.js.map +1 -1
- package/dist/commands/world-ab-status.d.ts.map +1 -1
- package/dist/commands/world-ab-status.js +11 -34
- package/dist/commands/world-ab-status.js.map +1 -1
- package/dist/helpers/ab-registry.d.ts +10 -0
- package/dist/helpers/ab-registry.d.ts.map +1 -0
- package/dist/helpers/ab-registry.js +55 -0
- package/dist/helpers/ab-registry.js.map +1 -0
- package/dist/helpers/env-domains.d.ts +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -17,6 +17,7 @@ npx @dcl/opscli pointer-consistency --cid "bafkrei..."
|
|
|
17
17
|
- `--pointer` Scene pointer coordinate (e.g. `"0,0"`)
|
|
18
18
|
- `--cid` Entity ID to resolve the pointer from (alternative to `--pointer`)
|
|
19
19
|
- `--env` Environment: `org` (default), `today`, or `zone`
|
|
20
|
+
- `--registry` Which registry to read: `unity` (default) or `abgen` — see [asset bundle registries](#asset-bundle-registries)
|
|
20
21
|
|
|
21
22
|
### Check world asset bundle status
|
|
22
23
|
|
|
@@ -25,10 +26,43 @@ Check asset bundle conversion status for all scenes in a world. Fetches scenes f
|
|
|
25
26
|
```
|
|
26
27
|
npx @dcl/opscli world-ab-status --world "dalkia.dcl.eth"
|
|
27
28
|
npx @dcl/opscli world-ab-status --world "dalkia.dcl.eth" --env zone
|
|
29
|
+
npx @dcl/opscli world-ab-status --world "dalkia.dcl.eth" --registry abgen
|
|
28
30
|
```
|
|
29
31
|
|
|
30
32
|
- `--world` World name (e.g. `"dalkia.dcl.eth"`)
|
|
31
33
|
- `--env` Environment: `org` (default), `today`, or `zone`
|
|
34
|
+
- `--registry` Which registry to read: `unity` (default) or `abgen` — see [asset bundle registries](#asset-bundle-registries)
|
|
35
|
+
|
|
36
|
+
### Check the conversion queue
|
|
37
|
+
|
|
38
|
+
Report how many jobs are pending per platform queue, and optionally where given entities sit in them.
|
|
39
|
+
|
|
40
|
+
```
|
|
41
|
+
npx @dcl/opscli ab-queue-status
|
|
42
|
+
npx @dcl/opscli ab-queue-status --env zone --registry abgen
|
|
43
|
+
npx @dcl/opscli ab-queue-status --cid "bafkrei..." --cid "bafkrei..."
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
- `--env` Environment: `org` (default), `today`, or `zone`
|
|
47
|
+
- `--registry` Which registry's queue to read: `unity` (default) or `abgen`
|
|
48
|
+
- `--cid` Entity ID to locate in each queue; repeatable. Positions are 1-indexed — the next entity to convert is `#1`
|
|
49
|
+
|
|
50
|
+
### Asset bundle registries
|
|
51
|
+
|
|
52
|
+
The Unity converters and the abgen generator publish to two separate registries:
|
|
53
|
+
|
|
54
|
+
| Registry | Base URL | Environments |
|
|
55
|
+
|---|---|---|
|
|
56
|
+
| `unity` (default) | `https://asset-bundle-registry.decentraland.<env>` | `org`, `today`, `zone` |
|
|
57
|
+
| `abgen` | `https://asset-bundle-registry-abgen.decentraland.<env>` | `org`, `zone` |
|
|
58
|
+
|
|
59
|
+
`--registry abgen` on `today` is rejected: abgen has no queue there and the hostname does not resolve.
|
|
60
|
+
|
|
61
|
+
The two count bundle versions in **separate series** — abgen is in the `v1000`s while the Unity
|
|
62
|
+
converters are in the `v40`s — so an abgen `v1003` is not "newer" than a Unity `v49`.
|
|
63
|
+
|
|
64
|
+
Both registries still return a `webgl` platform key, empty or years stale. It is decommissioned and
|
|
65
|
+
the status commands do not report it.
|
|
32
66
|
|
|
33
67
|
### Schedule asset bundle conversion
|
|
34
68
|
|
package/dist/bin.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bin.d.ts","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"bin.d.ts","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":";AAmBA,qBAAa,QAAS,SAAQ,KAAK;CAAG"}
|
package/dist/bin.js
CHANGED
|
@@ -20,6 +20,7 @@ const check_ab_conversion_1 = __importDefault(require("./commands/check-ab-conve
|
|
|
20
20
|
const circleci_1 = __importDefault(require("./commands/circleci"));
|
|
21
21
|
const concat_snapshots_1 = __importDefault(require("./commands/concat-snapshots"));
|
|
22
22
|
const world_ab_status_1 = __importDefault(require("./commands/world-ab-status"));
|
|
23
|
+
const ab_queue_status_1 = __importDefault(require("./commands/ab-queue-status"));
|
|
23
24
|
class CliError extends Error {
|
|
24
25
|
}
|
|
25
26
|
exports.CliError = CliError;
|
|
@@ -38,7 +39,8 @@ const commands = {
|
|
|
38
39
|
'check-ab-conversion': check_ab_conversion_1.default,
|
|
39
40
|
circleci: circleci_1.default,
|
|
40
41
|
'concat-snapshots': concat_snapshots_1.default,
|
|
41
|
-
'world-ab-status': world_ab_status_1.default
|
|
42
|
+
'world-ab-status': world_ab_status_1.default,
|
|
43
|
+
'ab-queue-status': ab_queue_status_1.default
|
|
42
44
|
};
|
|
43
45
|
async function main() {
|
|
44
46
|
const commandName = process.argv[2];
|
package/dist/bin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":";;;;;;;AAEA,6EAAmD;AACnD,6FAAmE;AACnE,yFAA+D;AAC/D,yFAA8D;AAC9D,+EAAqD;AACrD,uFAA6D;AAC7D,iFAAuD;AACvD,6EAAmD;AACnD,yFAA8D;AAC9D,2GAA+E;AAC/E,qGAAyE;AACzE,yFAA8D;AAC9D,mEAA0C;AAC1C,mFAAyD;AACzD,iFAAsD;AAEtD,MAAa,QAAS,SAAQ,KAAK;CAAG;AAAtC,4BAAsC;AAEtC,MAAM,QAAQ,GAAG;IACf,eAAe,EAAE,uBAAY;IAC7B,uBAAuB,EAAE,+BAAoB;IAC7C,qBAAqB,EAAE,6BAAkB;IACzC,qBAAqB,EAAE,6BAAiB;IACxC,gBAAgB,EAAE,wBAAa;IAC/B,oBAAoB,EAAE,4BAAiB;IACvC,iBAAiB,EAAE,yBAAc;IACjC,eAAe,EAAE,uBAAY;IAC7B,qBAAqB,EAAE,6BAAiB;IACxC,8BAA8B,EAAE,sCAAyB;IACzD,2BAA2B,EAAE,mCAAsB;IACnD,qBAAqB,EAAE,6BAAiB;IACxC,QAAQ,EAAE,kBAAQ;IAClB,kBAAkB,EAAE,0BAAe;IACnC,iBAAiB,EAAE,yBAAa;CACjC,CAAA;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAA0B,CAAA;IAE5D,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;QAC1C,MAAM,IAAI,QAAQ,CAChB,kCAAkC;YAChC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;iBAClB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,GAAG,CAAC,GAAG,IAAI,CAAC;iBAC3C,IAAI,CAAC,EAAE,CAAC,CACd,CAAA;KACF;IAED,MAAM,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAA;AAC/B,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,IAAI,GAAG,YAAY,QAAQ,EAAE;QAC3B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;KACzB;SAAM;QACL,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;KACnB;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":";;;;;;;AAEA,6EAAmD;AACnD,6FAAmE;AACnE,yFAA+D;AAC/D,yFAA8D;AAC9D,+EAAqD;AACrD,uFAA6D;AAC7D,iFAAuD;AACvD,6EAAmD;AACnD,yFAA8D;AAC9D,2GAA+E;AAC/E,qGAAyE;AACzE,yFAA8D;AAC9D,mEAA0C;AAC1C,mFAAyD;AACzD,iFAAsD;AACtD,iFAAsD;AAEtD,MAAa,QAAS,SAAQ,KAAK;CAAG;AAAtC,4BAAsC;AAEtC,MAAM,QAAQ,GAAG;IACf,eAAe,EAAE,uBAAY;IAC7B,uBAAuB,EAAE,+BAAoB;IAC7C,qBAAqB,EAAE,6BAAkB;IACzC,qBAAqB,EAAE,6BAAiB;IACxC,gBAAgB,EAAE,wBAAa;IAC/B,oBAAoB,EAAE,4BAAiB;IACvC,iBAAiB,EAAE,yBAAc;IACjC,eAAe,EAAE,uBAAY;IAC7B,qBAAqB,EAAE,6BAAiB;IACxC,8BAA8B,EAAE,sCAAyB;IACzD,2BAA2B,EAAE,mCAAsB;IACnD,qBAAqB,EAAE,6BAAiB;IACxC,QAAQ,EAAE,kBAAQ;IAClB,kBAAkB,EAAE,0BAAe;IACnC,iBAAiB,EAAE,yBAAa;IAChC,iBAAiB,EAAE,yBAAa;CACjC,CAAA;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAA0B,CAAA;IAE5D,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;QAC1C,MAAM,IAAI,QAAQ,CAChB,kCAAkC;YAChC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;iBAClB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,GAAG,CAAC,GAAG,IAAI,CAAC;iBAC3C,IAAI,CAAC,EAAE,CAAC,CACd,CAAA;KACF;IAED,MAAM,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAA;AAC/B,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,IAAI,GAAG,YAAY,QAAQ,EAAE;QAC3B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;KACzB;SAAM;QACL,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;KACnB;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ab-queue-status.d.ts","sourceRoot":"","sources":["../../src/commands/ab-queue-status.ts"],"names":[],"mappings":"AASA,0CAqCC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
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
|
+
const arg_1 = __importDefault(require("arg"));
|
|
7
|
+
const undici_1 = require("undici");
|
|
8
|
+
const bin_1 = require("../bin");
|
|
9
|
+
const ab_registry_1 = require("../helpers/ab-registry");
|
|
10
|
+
async function default_1() {
|
|
11
|
+
const args = (0, arg_1.default)({
|
|
12
|
+
'--env': String,
|
|
13
|
+
'--registry': String,
|
|
14
|
+
'--cid': [String]
|
|
15
|
+
});
|
|
16
|
+
const env = args['--env'] || 'org';
|
|
17
|
+
const registry = (0, ab_registry_1.parseRegistry)(args['--registry'], env);
|
|
18
|
+
const cids = args['--cid'] || [];
|
|
19
|
+
const response = await (0, undici_1.fetch)(`${(0, ab_registry_1.registryUrlFor)(registry, env)}/queues/status`);
|
|
20
|
+
if (!response.ok) {
|
|
21
|
+
throw new bin_1.CliError(`! Registry returned ${response.status} for /queues/status`);
|
|
22
|
+
}
|
|
23
|
+
const queues = (await response.json());
|
|
24
|
+
console.log(`> Queue status [${registry}] (${env})`);
|
|
25
|
+
for (const platform of ab_registry_1.REPORTED_PLATFORMS) {
|
|
26
|
+
const jobs = queues[`${platform}PendingJobs`];
|
|
27
|
+
if (!jobs) {
|
|
28
|
+
console.log(` ${platform.padEnd(10)} no queue reported`);
|
|
29
|
+
continue;
|
|
30
|
+
}
|
|
31
|
+
console.log(` ${platform.padEnd(10)} ${jobs.length} pending job(s)`);
|
|
32
|
+
// Positions are 1-indexed: the next entity to be converted is #1.
|
|
33
|
+
for (const cid of cids) {
|
|
34
|
+
const index = jobs.indexOf(cid);
|
|
35
|
+
console.log(` ${cid}: ${index === -1 ? 'not in queue' : `position #${index + 1} of ${jobs.length}`}`);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.default = default_1;
|
|
40
|
+
//# sourceMappingURL=ab-queue-status.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ab-queue-status.js","sourceRoot":"","sources":["../../src/commands/ab-queue-status.ts"],"names":[],"mappings":";;;;;AAAA,8CAAqB;AACrB,mCAA8B;AAC9B,gCAAiC;AACjC,wDAA0F;AAM3E,KAAK;IAClB,MAAM,IAAI,GAAG,IAAA,aAAG,EAAC;QACf,OAAO,EAAE,MAAM;QACf,YAAY,EAAE,MAAM;QACpB,OAAO,EAAE,CAAC,MAAM,CAAC;KAClB,CAAC,CAAA;IAEF,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAA;IAClC,MAAM,QAAQ,GAAG,IAAA,2BAAa,EAAC,IAAI,CAAC,YAAY,CAAC,EAAE,GAAG,CAAC,CAAA;IACvD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;IAEhC,MAAM,QAAQ,GAAG,MAAM,IAAA,cAAK,EAAC,GAAG,IAAA,4BAAc,EAAC,QAAQ,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAA;IAE9E,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;QAChB,MAAM,IAAI,cAAQ,CAAC,uBAAuB,QAAQ,CAAC,MAAM,qBAAqB,CAAC,CAAA;KAChF;IAED,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAgB,CAAA;IAErD,OAAO,CAAC,GAAG,CAAC,mBAAmB,QAAQ,MAAM,GAAG,GAAG,CAAC,CAAA;IAEpD,KAAK,MAAM,QAAQ,IAAI,gCAAkB,EAAE;QACzC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,QAAQ,aAAa,CAAC,CAAA;QAE7C,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAA;YACzD,SAAQ;SACT;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,iBAAiB,CAAC,CAAA;QAErE,kEAAkE;QAClE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAC/B,OAAO,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,KAAK,GAAG,CAAC,OAAO,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;SACzG;KACF;AACH,CAAC;AArCD,4BAqCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pointer-consistency.d.ts","sourceRoot":"","sources":["../../src/commands/pointer-consistency.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pointer-consistency.d.ts","sourceRoot":"","sources":["../../src/commands/pointer-consistency.ts"],"names":[],"mappings":"AAoGA,0CAoEC"}
|
|
@@ -7,19 +7,18 @@ const arg_1 = __importDefault(require("arg"));
|
|
|
7
7
|
const undici_1 = require("undici");
|
|
8
8
|
const ago_1 = require("../helpers/ago");
|
|
9
9
|
const catalysts_1 = require("../helpers/catalysts");
|
|
10
|
+
const ab_registry_1 = require("../helpers/ab-registry");
|
|
10
11
|
function getEnvConfig(env) {
|
|
11
|
-
const registryUrl = `https://asset-bundle-registry.decentraland.${env}`;
|
|
12
12
|
if (env === 'today') {
|
|
13
13
|
return {
|
|
14
14
|
catalystUrls: ['https://peer-testing.decentraland.org'],
|
|
15
|
-
registryUrl,
|
|
16
15
|
peerUrl: 'https://peer-testing.decentraland.org'
|
|
17
16
|
};
|
|
18
17
|
}
|
|
19
18
|
if (env === 'zone') {
|
|
20
|
-
return { catalystUrls: ['https://peer.decentraland.zone'],
|
|
19
|
+
return { catalystUrls: ['https://peer.decentraland.zone'], peerUrl: 'https://peer.decentraland.zone' };
|
|
21
20
|
}
|
|
22
|
-
return { catalystUrls: null,
|
|
21
|
+
return { catalystUrls: null, peerUrl: 'https://peer.decentraland.org' }; // null = fetch from DAO
|
|
23
22
|
}
|
|
24
23
|
async function resolvePointerFromCid(peerUrl, cid) {
|
|
25
24
|
const response = await (0, undici_1.fetch)(`${peerUrl}/content/entities/active`, {
|
|
@@ -38,23 +37,7 @@ async function resolvePointerFromCid(peerUrl, cid) {
|
|
|
38
37
|
console.log(`> Resolved CID ${cid} to pointer: ${pointer}`);
|
|
39
38
|
return pointer;
|
|
40
39
|
}
|
|
41
|
-
function
|
|
42
|
-
switch (status) {
|
|
43
|
-
case 'complete':
|
|
44
|
-
return '✅ complete';
|
|
45
|
-
case 'pending':
|
|
46
|
-
return '⏳ pending';
|
|
47
|
-
case 'failed':
|
|
48
|
-
return '❌ failed';
|
|
49
|
-
case 'obsolete':
|
|
50
|
-
return '🗑️ obsolete';
|
|
51
|
-
case 'fallback':
|
|
52
|
-
return '🔄 fallback';
|
|
53
|
-
default:
|
|
54
|
-
return `⚠️ ${status}`;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
async function checkAssetBundleStatus(registryUrl, pointers, expectedEntityId) {
|
|
40
|
+
async function checkAssetBundleStatus(kind, registryUrl, pointers, expectedEntityId) {
|
|
58
41
|
try {
|
|
59
42
|
const response = await (0, undici_1.fetch)(`${registryUrl}/entities/active`, {
|
|
60
43
|
method: 'POST',
|
|
@@ -72,16 +55,14 @@ async function checkAssetBundleStatus(registryUrl, pointers, expectedEntityId) {
|
|
|
72
55
|
}
|
|
73
56
|
for (const entry of results) {
|
|
74
57
|
const hashMatch = entry.id === expectedEntityId;
|
|
75
|
-
console.log(`> Asset Bundle Registry (pointer: ${entry.pointers.join(', ')}):`);
|
|
58
|
+
console.log(`> Asset Bundle Registry [${kind}] (pointer: ${entry.pointers.join(', ')}):`);
|
|
76
59
|
console.log(` Entity ID match: ${hashMatch ? '✅' : '❌'} registry=${entry.id}`);
|
|
77
|
-
console.log(` Global status: ${statusLabel(entry.status)}`);
|
|
60
|
+
console.log(` Global status: ${(0, ab_registry_1.statusLabel)(entry.status)}`);
|
|
78
61
|
console.log(' Platform status:');
|
|
79
|
-
const
|
|
80
|
-
for (const platform of platforms) {
|
|
62
|
+
for (const platform of ab_registry_1.REPORTED_PLATFORMS) {
|
|
81
63
|
const assetStatus = entry.bundles?.assets?.[platform] || 'unknown';
|
|
82
|
-
const
|
|
83
|
-
|
|
84
|
-
console.log(` ${platform.padEnd(10)} ${statusLabel(assetStatus).padEnd(4)} version: ${versionStr}`);
|
|
64
|
+
const versionStr = (0, ab_registry_1.formatVersion)(entry.versions?.assets?.[platform]);
|
|
65
|
+
console.log(` ${platform.padEnd(10)} ${(0, ab_registry_1.statusLabel)(assetStatus).padEnd(4)} version: ${versionStr}`);
|
|
85
66
|
}
|
|
86
67
|
}
|
|
87
68
|
}
|
|
@@ -93,10 +74,12 @@ async function default_1() {
|
|
|
93
74
|
const args = (0, arg_1.default)({
|
|
94
75
|
'--pointer': String,
|
|
95
76
|
'--cid': String,
|
|
96
|
-
'--env': String
|
|
77
|
+
'--env': String,
|
|
78
|
+
'--registry': String
|
|
97
79
|
});
|
|
98
80
|
const env = args['--env'] || 'org';
|
|
99
|
-
const
|
|
81
|
+
const registry = (0, ab_registry_1.parseRegistry)(args['--registry'], env);
|
|
82
|
+
const { catalystUrls, peerUrl } = getEnvConfig(env);
|
|
100
83
|
let pointer = args['--pointer'] || (args['--cid'] ? await resolvePointerFromCid(peerUrl, args['--cid']) : null);
|
|
101
84
|
if (!pointer) {
|
|
102
85
|
throw new Error('--pointer or --cid is required');
|
|
@@ -137,7 +120,7 @@ async function default_1() {
|
|
|
137
120
|
if (deployments.length > 0) {
|
|
138
121
|
const mostRecent = deployments.reduce((latest, current) => current.timestamp > latest.timestamp ? current : latest);
|
|
139
122
|
console.log(`> Most recent deployment entity ID: ${mostRecent.entityId}`);
|
|
140
|
-
await checkAssetBundleStatus(
|
|
123
|
+
await checkAssetBundleStatus(registry, (0, ab_registry_1.registryUrlFor)(registry, env), [pointer], mostRecent.entityId);
|
|
141
124
|
}
|
|
142
125
|
}
|
|
143
126
|
exports.default = default_1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pointer-consistency.js","sourceRoot":"","sources":["../../src/commands/pointer-consistency.ts"],"names":[],"mappings":";;;;;AAAA,8CAAqB;AACrB,mCAA8B;AAC9B,wCAAoC;AACpC,oDAAyE;
|
|
1
|
+
{"version":3,"file":"pointer-consistency.js","sourceRoot":"","sources":["../../src/commands/pointer-consistency.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"world-ab-status.d.ts","sourceRoot":"","sources":["../../src/commands/world-ab-status.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"world-ab-status.d.ts","sourceRoot":"","sources":["../../src/commands/world-ab-status.ts"],"names":[],"mappings":"AAoBA,0CA6FC"}
|
|
@@ -5,34 +5,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const arg_1 = __importDefault(require("arg"));
|
|
7
7
|
const undici_1 = require("undici");
|
|
8
|
-
|
|
9
|
-
switch (status) {
|
|
10
|
-
case 'complete':
|
|
11
|
-
return '✅ complete';
|
|
12
|
-
case 'pending':
|
|
13
|
-
return '⏳ pending';
|
|
14
|
-
case 'failed':
|
|
15
|
-
return '❌ failed';
|
|
16
|
-
case 'obsolete':
|
|
17
|
-
return '🗑️ obsolete';
|
|
18
|
-
case 'fallback':
|
|
19
|
-
return '🔄 fallback';
|
|
20
|
-
default:
|
|
21
|
-
return `⚠️ ${status}`;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
8
|
+
const ab_registry_1 = require("../helpers/ab-registry");
|
|
24
9
|
async function default_1() {
|
|
25
10
|
const args = (0, arg_1.default)({
|
|
26
11
|
'--world': String,
|
|
27
|
-
'--env': String
|
|
12
|
+
'--env': String,
|
|
13
|
+
'--registry': String
|
|
28
14
|
});
|
|
29
15
|
const world = args['--world'];
|
|
30
16
|
if (!world) {
|
|
31
17
|
throw new Error('--world is required');
|
|
32
18
|
}
|
|
33
19
|
const env = args['--env'] || 'org';
|
|
20
|
+
const registry = (0, ab_registry_1.parseRegistry)(args['--registry'], env);
|
|
34
21
|
const worldsUrl = `https://worlds-content-server.decentraland.${env}`;
|
|
35
|
-
const registryUrl =
|
|
22
|
+
const registryUrl = (0, ab_registry_1.registryUrlFor)(registry, env);
|
|
36
23
|
// Step 1: Discover scenes
|
|
37
24
|
console.log(`> Fetching scenes for world: ${world} (${env})`);
|
|
38
25
|
const scenesResponse = await (0, undici_1.fetch)(`${worldsUrl}/world/${encodeURIComponent(world)}/scenes`);
|
|
@@ -45,21 +32,17 @@ async function default_1() {
|
|
|
45
32
|
return;
|
|
46
33
|
}
|
|
47
34
|
console.log(`> Found ${scenes.length} scene(s)`);
|
|
48
|
-
// Collect
|
|
35
|
+
// Collect every parcel of every scene: the registry is queried for all of them at once
|
|
49
36
|
const allPointers = [];
|
|
50
|
-
const entityIdByPointer = new Map();
|
|
51
37
|
for (const scene of scenes) {
|
|
52
38
|
const name = scene.entity.metadata?.display?.title || 'Untitled';
|
|
53
39
|
const base = scene.entity.metadata?.scene?.base || scene.parcels[0];
|
|
54
40
|
console.log(`\n Scene: ${name} (base: ${base}, parcels: ${scene.parcels.length})`);
|
|
55
41
|
console.log(` Entity ID: ${scene.entityId}`);
|
|
56
|
-
|
|
57
|
-
allPointers.push(pointer);
|
|
58
|
-
entityIdByPointer.set(pointer, scene.entityId);
|
|
59
|
-
}
|
|
42
|
+
allPointers.push(...scene.parcels);
|
|
60
43
|
}
|
|
61
44
|
// Step 2: Check Asset Bundle Registry
|
|
62
|
-
console.log(`\n> Querying asset bundle registry...`);
|
|
45
|
+
console.log(`\n> Querying asset bundle registry [${registry}]...`);
|
|
63
46
|
const registryResponse = await (0, undici_1.fetch)(`${registryUrl}/entities/active?world_name=${encodeURIComponent(world)}`, {
|
|
64
47
|
method: 'POST',
|
|
65
48
|
headers: { 'Content-Type': 'application/json' },
|
|
@@ -75,10 +58,6 @@ async function default_1() {
|
|
|
75
58
|
return;
|
|
76
59
|
}
|
|
77
60
|
// Match registry entities back to scenes
|
|
78
|
-
const registryByEntityId = new Map();
|
|
79
|
-
for (const entry of registryEntities) {
|
|
80
|
-
registryByEntityId.set(entry.id, entry);
|
|
81
|
-
}
|
|
82
61
|
console.log('');
|
|
83
62
|
for (const scene of scenes) {
|
|
84
63
|
const name = scene.entity.metadata?.display?.title || 'Untitled';
|
|
@@ -94,12 +73,10 @@ async function default_1() {
|
|
|
94
73
|
const idMatch = registryEntry.id === scene.entityId;
|
|
95
74
|
console.log(` Registry entity: ${registryEntry.id}`);
|
|
96
75
|
console.log(` Entity ID match: ${idMatch ? '✅' : '🚨 STALE — registry has different entity'}`);
|
|
97
|
-
console.log(` Status: ${statusLabel(registryEntry.status)}`);
|
|
98
|
-
const platforms = ['windows', 'mac'];
|
|
76
|
+
console.log(` Status: ${(0, ab_registry_1.statusLabel)(registryEntry.status)}`);
|
|
99
77
|
console.log(' Versions:');
|
|
100
|
-
for (const platform of
|
|
101
|
-
const
|
|
102
|
-
const versionStr = version ? `v${version.version} (${version.buildDate})` : 'N/A';
|
|
78
|
+
for (const platform of ab_registry_1.REPORTED_PLATFORMS) {
|
|
79
|
+
const versionStr = (0, ab_registry_1.formatVersion)(registryEntry.versions?.assets?.[platform]);
|
|
103
80
|
console.log(` ${platform.padEnd(10)} ${versionStr}`);
|
|
104
81
|
}
|
|
105
82
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"world-ab-status.js","sourceRoot":"","sources":["../../src/commands/world-ab-status.ts"],"names":[],"mappings":";;;;;AAAA,8CAAqB;AACrB,mCAA8B;
|
|
1
|
+
{"version":3,"file":"world-ab-status.js","sourceRoot":"","sources":["../../src/commands/world-ab-status.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export type RegistryKind = 'unity' | 'abgen';
|
|
2
|
+
export declare const REPORTED_PLATFORMS: string[];
|
|
3
|
+
export declare function parseRegistry(value: string | undefined, env: string): RegistryKind;
|
|
4
|
+
export declare function registryUrlFor(kind: RegistryKind, env: string): string;
|
|
5
|
+
export declare function formatVersion(version: {
|
|
6
|
+
version: string;
|
|
7
|
+
buildDate: string;
|
|
8
|
+
} | undefined): string;
|
|
9
|
+
export declare function statusLabel(status: string): string;
|
|
10
|
+
//# sourceMappingURL=ab-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ab-registry.d.ts","sourceRoot":"","sources":["../../src/helpers/ab-registry.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,OAAO,CAAA;AAS5C,eAAO,MAAM,kBAAkB,UAAqB,CAAA;AAMpD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY,CAelF;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAGtE;AAID,wBAAgB,aAAa,CAAC,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,GAAG,MAAM,CAEjG;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAelD"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.statusLabel = exports.formatVersion = exports.registryUrlFor = exports.parseRegistry = exports.REPORTED_PLATFORMS = void 0;
|
|
4
|
+
const bin_1 = require("../bin");
|
|
5
|
+
// abgen only runs where the ab-admin has an abgen queue configured; `today` has
|
|
6
|
+
// none, and the registry hostname does not even resolve there.
|
|
7
|
+
const ABGEN_ENVS = ['org', 'zone'];
|
|
8
|
+
// webgl is decommissioned, but both registries still return the key (empty, or a
|
|
9
|
+
// version years stale), so the status commands filter on this list instead of
|
|
10
|
+
// reporting whatever the payload happens to carry.
|
|
11
|
+
exports.REPORTED_PLATFORMS = ['windows', 'mac'];
|
|
12
|
+
function isRegistryKind(value) {
|
|
13
|
+
return value === 'unity' || value === 'abgen';
|
|
14
|
+
}
|
|
15
|
+
function parseRegistry(value, env) {
|
|
16
|
+
const kind = value ?? 'unity';
|
|
17
|
+
if (!isRegistryKind(kind)) {
|
|
18
|
+
throw new bin_1.CliError(`! Unknown --registry "${value}". Valid values are "unity" (default) and "abgen".`);
|
|
19
|
+
}
|
|
20
|
+
if (kind === 'abgen' && !ABGEN_ENVS.includes(env)) {
|
|
21
|
+
throw new bin_1.CliError(`! There is no abgen registry on "${env}" — abgen runs on ${ABGEN_ENVS.join(' and ')} only. ` +
|
|
22
|
+
`Re-run without --registry abgen to read the Unity registry.`);
|
|
23
|
+
}
|
|
24
|
+
return kind;
|
|
25
|
+
}
|
|
26
|
+
exports.parseRegistry = parseRegistry;
|
|
27
|
+
function registryUrlFor(kind, env) {
|
|
28
|
+
const host = kind === 'abgen' ? 'asset-bundle-registry-abgen' : 'asset-bundle-registry';
|
|
29
|
+
return `https://${host}.decentraland.${env}`;
|
|
30
|
+
}
|
|
31
|
+
exports.registryUrlFor = registryUrlFor;
|
|
32
|
+
// The registry already stores the version prefixed ("v49"), so it is printed as
|
|
33
|
+
// it comes; an entry with an empty version is a platform that never built.
|
|
34
|
+
function formatVersion(version) {
|
|
35
|
+
return version?.version ? `${version.version} (${version.buildDate})` : 'N/A';
|
|
36
|
+
}
|
|
37
|
+
exports.formatVersion = formatVersion;
|
|
38
|
+
function statusLabel(status) {
|
|
39
|
+
switch (status) {
|
|
40
|
+
case 'complete':
|
|
41
|
+
return '✅ complete';
|
|
42
|
+
case 'pending':
|
|
43
|
+
return '⏳ pending';
|
|
44
|
+
case 'failed':
|
|
45
|
+
return '❌ failed';
|
|
46
|
+
case 'obsolete':
|
|
47
|
+
return '🗑️ obsolete';
|
|
48
|
+
case 'fallback':
|
|
49
|
+
return '🔄 fallback';
|
|
50
|
+
default:
|
|
51
|
+
return `⚠️ ${status}`;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
exports.statusLabel = statusLabel;
|
|
55
|
+
//# sourceMappingURL=ab-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ab-registry.js","sourceRoot":"","sources":["../../src/helpers/ab-registry.ts"],"names":[],"mappings":";;;AAAA,gCAAiC;AAOjC,gFAAgF;AAChF,+DAA+D;AAC/D,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;AAElC,iFAAiF;AACjF,8EAA8E;AAC9E,mDAAmD;AACtC,QAAA,kBAAkB,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;AAEpD,SAAS,cAAc,CAAC,KAAa;IACnC,OAAO,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,OAAO,CAAA;AAC/C,CAAC;AAED,SAAgB,aAAa,CAAC,KAAyB,EAAE,GAAW;IAClE,MAAM,IAAI,GAAG,KAAK,IAAI,OAAO,CAAA;IAE7B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;QACzB,MAAM,IAAI,cAAQ,CAAC,yBAAyB,KAAK,oDAAoD,CAAC,CAAA;KACvG;IAED,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QACjD,MAAM,IAAI,cAAQ,CAChB,oCAAoC,GAAG,qBAAqB,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS;YAC3F,6DAA6D,CAChE,CAAA;KACF;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAfD,sCAeC;AAED,SAAgB,cAAc,CAAC,IAAkB,EAAE,GAAW;IAC5D,MAAM,IAAI,GAAG,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,uBAAuB,CAAA;IACvF,OAAO,WAAW,IAAI,iBAAiB,GAAG,EAAE,CAAA;AAC9C,CAAC;AAHD,wCAGC;AAED,gFAAgF;AAChF,2EAA2E;AAC3E,SAAgB,aAAa,CAAC,OAA2D;IACvF,OAAO,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,KAAK,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,KAAK,CAAA;AAC/E,CAAC;AAFD,sCAEC;AAED,SAAgB,WAAW,CAAC,MAAc;IACxC,QAAQ,MAAM,EAAE;QACd,KAAK,UAAU;YACb,OAAO,YAAY,CAAA;QACrB,KAAK,SAAS;YACZ,OAAO,WAAW,CAAA;QACpB,KAAK,QAAQ;YACX,OAAO,UAAU,CAAA;QACnB,KAAK,UAAU;YACb,OAAO,eAAe,CAAA;QACxB,KAAK,UAAU;YACb,OAAO,aAAa,CAAA;QACtB;YACE,OAAO,OAAO,MAAM,EAAE,CAAA;KACzB;AACH,CAAC;AAfD,kCAeC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function tldFromEnv(env: string): "
|
|
1
|
+
export declare function tldFromEnv(env: string): "org" | "zone" | "today" | "systems";
|
|
2
2
|
//# sourceMappingURL=env-domains.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dcl/opscli",
|
|
3
|
-
"version": "1.0.0-
|
|
3
|
+
"version": "1.0.0-34505710176.commit-d00f7bd",
|
|
4
4
|
"description": "base component",
|
|
5
5
|
"bin": "dist/bin.js",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -49,5 +49,5 @@
|
|
|
49
49
|
"files": [
|
|
50
50
|
"dist"
|
|
51
51
|
],
|
|
52
|
-
"commit": "
|
|
52
|
+
"commit": "d00f7bd6556a265bed84132d48314728434ed6f3"
|
|
53
53
|
}
|