@guanjinke/artifact-client 1.0.1 → 1.0.2
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 +1 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +10 -45
- package/dist/cli/setup.js.map +1 -1
- package/dist/providers/azure-provider.d.ts +5 -18
- package/dist/providers/azure-provider.d.ts.map +1 -1
- package/dist/providers/azure-provider.js +91 -188
- package/dist/providers/azure-provider.js.map +1 -1
- package/dist/providers/oss-provider.d.ts +5 -17
- package/dist/providers/oss-provider.d.ts.map +1 -1
- package/dist/providers/oss-provider.js +97 -195
- package/dist/providers/oss-provider.js.map +1 -1
- package/dist/types.d.ts +4 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/semver.d.ts +6 -32
- package/dist/utils/semver.d.ts.map +1 -1
- package/dist/utils/semver.js +18 -55
- package/dist/utils/semver.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -107,7 +107,7 @@ afm az upload myPlugin 1.0.6 bundle.zip ./dist/bundle.zip
|
|
|
107
107
|
afm az download --path "plugin_artifacts/myPlugin/1.0.5/bundle.zip" --out ./downloads
|
|
108
108
|
|
|
109
109
|
# Download by name
|
|
110
|
-
afm az download --plugin myPlugin --
|
|
110
|
+
afm az download --plugin myPlugin --ver 1.0.5 --file bundle.zip --out ./downloads
|
|
111
111
|
|
|
112
112
|
# Manage config
|
|
113
113
|
afm az config show
|
package/dist/cli/setup.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC;;;GAGG;AACH,wBAAgB,aAAa,IAAI,OAAO,CA+BvC"}
|
package/dist/cli/setup.js
CHANGED
|
@@ -114,14 +114,7 @@ function addSharedCommands(program, type) {
|
|
|
114
114
|
console.log('No plugins found.');
|
|
115
115
|
return;
|
|
116
116
|
}
|
|
117
|
-
|
|
118
|
-
if (options.size && p.totalSizeMB !== undefined) {
|
|
119
|
-
console.log(`${p.name}\t${p.totalSizeMB.toFixed(2)} MB\t${p.path}`);
|
|
120
|
-
}
|
|
121
|
-
else {
|
|
122
|
-
console.log(`${p.name}\t${p.path}`);
|
|
123
|
-
}
|
|
124
|
-
}
|
|
117
|
+
console.table(plugins);
|
|
125
118
|
}
|
|
126
119
|
catch (err) {
|
|
127
120
|
console.error('Error:', err.message);
|
|
@@ -151,17 +144,7 @@ function addSharedCommands(program, type) {
|
|
|
151
144
|
console.log(`No major versions found for plugin "${plugin}".`);
|
|
152
145
|
return;
|
|
153
146
|
}
|
|
154
|
-
|
|
155
|
-
const parts = [m.majorVersion];
|
|
156
|
-
if (m.latestVersion)
|
|
157
|
-
parts.push(`(latest: ${m.latestVersion})`);
|
|
158
|
-
parts.push(`minors: ${m.minorCount}`);
|
|
159
|
-
if (options.size && m.totalSizeMB !== undefined) {
|
|
160
|
-
parts.push(`${m.totalSizeMB.toFixed(2)} MB`);
|
|
161
|
-
}
|
|
162
|
-
parts.push(m.path);
|
|
163
|
-
console.log(parts.join('\t'));
|
|
164
|
-
}
|
|
147
|
+
console.table(majors);
|
|
165
148
|
}
|
|
166
149
|
catch (err) {
|
|
167
150
|
console.error('Error:', err.message);
|
|
@@ -184,11 +167,7 @@ function addSharedCommands(program, type) {
|
|
|
184
167
|
const client = createClient(type, options);
|
|
185
168
|
try {
|
|
186
169
|
const info = await client.getLatestVersion(plugin, major, { includeSize: options.size });
|
|
187
|
-
|
|
188
|
-
if (options.size && info.totalSizeMB !== undefined) {
|
|
189
|
-
parts.push(`${info.totalSizeMB.toFixed(2)} MB`);
|
|
190
|
-
}
|
|
191
|
-
console.log(parts.join('\t'));
|
|
170
|
+
console.table([info]);
|
|
192
171
|
}
|
|
193
172
|
catch (err) {
|
|
194
173
|
console.error('Error:', err.message);
|
|
@@ -219,14 +198,7 @@ function addSharedCommands(program, type) {
|
|
|
219
198
|
console.log(`No minor versions found for plugin "${plugin}" major "${major}".`);
|
|
220
199
|
return;
|
|
221
200
|
}
|
|
222
|
-
|
|
223
|
-
const parts = [v.version];
|
|
224
|
-
if (options.size && v.totalSizeMB !== undefined) {
|
|
225
|
-
parts.push(`${v.totalSizeMB.toFixed(2)} MB`);
|
|
226
|
-
}
|
|
227
|
-
parts.push(v.path);
|
|
228
|
-
console.log(parts.join('\t'));
|
|
229
|
-
}
|
|
201
|
+
console.table(versions);
|
|
230
202
|
}
|
|
231
203
|
catch (err) {
|
|
232
204
|
console.error('Error:', err.message);
|
|
@@ -255,14 +227,7 @@ function addSharedCommands(program, type) {
|
|
|
255
227
|
console.log(`No artifacts found for plugin "${plugin}" version "${version}".`);
|
|
256
228
|
return;
|
|
257
229
|
}
|
|
258
|
-
|
|
259
|
-
const parts = [a.name];
|
|
260
|
-
if (options.size && a.sizeMB !== undefined) {
|
|
261
|
-
parts.push(`${a.sizeMB.toFixed(2)} MB`);
|
|
262
|
-
}
|
|
263
|
-
parts.push(a.path);
|
|
264
|
-
console.log(parts.join('\t'));
|
|
265
|
-
}
|
|
230
|
+
console.table(artifacts);
|
|
266
231
|
}
|
|
267
232
|
catch (err) {
|
|
268
233
|
console.error('Error:', err.message);
|
|
@@ -299,7 +264,7 @@ function addSharedCommands(program, type) {
|
|
|
299
264
|
.description('Download an artifact')
|
|
300
265
|
.option('--path <fullPath>', 'Full storage path of the artifact')
|
|
301
266
|
.option('--plugin <name>', 'Plugin name')
|
|
302
|
-
.option('--
|
|
267
|
+
.option('--ver <version>', 'Version (e.g., "1.0.5")')
|
|
303
268
|
.option('--file <name>', 'Artifact file name')
|
|
304
269
|
.option('--out <dir>', 'Local output directory', './')
|
|
305
270
|
.option('--sasurl <url>', 'Azure SAS URL')
|
|
@@ -316,13 +281,13 @@ function addSharedCommands(program, type) {
|
|
|
316
281
|
const fileName = options.path.split('/').pop();
|
|
317
282
|
console.log(`Downloaded: ${options.path} -> ${options.out}/${fileName}`);
|
|
318
283
|
}
|
|
319
|
-
else if (options.plugin && options.
|
|
284
|
+
else if (options.plugin && options.ver && options.file) {
|
|
320
285
|
// Download by plugin + version + file
|
|
321
|
-
await client.downloadArtifact(options.plugin, options.
|
|
322
|
-
console.log(`Downloaded:
|
|
286
|
+
await client.downloadArtifact(options.plugin, options.ver, options.file, options.out);
|
|
287
|
+
console.log(`Downloaded: ${options.plugin}/${options.ver}/${options.file} -> ${options.out}/${options.file}`);
|
|
323
288
|
}
|
|
324
289
|
else {
|
|
325
|
-
console.error('Error: Specify either --path for full path download, or --plugin, --
|
|
290
|
+
console.error('Error: Specify either --path for full path download, or --plugin, --ver, and --file.');
|
|
326
291
|
process.exit(1);
|
|
327
292
|
}
|
|
328
293
|
}
|
package/dist/cli/setup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
import { StorageProvider } from './storage-provider';
|
|
2
2
|
import { AzureConfig, PluginInfo, MajorVersionInfo, VersionInfo, ArtifactInfo, ListOptions, GetLatestOptions } from '../types';
|
|
3
|
-
/**
|
|
4
|
-
* Azure Blob Storage provider.
|
|
5
|
-
* Connects via SAS URL and operates within a single container.
|
|
6
|
-
*/
|
|
7
3
|
export declare class AzureProvider extends StorageProvider {
|
|
8
4
|
private containerClient;
|
|
5
|
+
private base;
|
|
9
6
|
constructor(config: AzureConfig);
|
|
10
7
|
listPlugins(options?: {
|
|
11
8
|
includeSize?: boolean;
|
|
@@ -19,22 +16,12 @@ export declare class AzureProvider extends StorageProvider {
|
|
|
19
16
|
uploadArtifact(pluginName: string, version: string, artifactName: string, localFilePath: string): Promise<void>;
|
|
20
17
|
downloadArtifactByPath(fullPath: string, localDir: string): Promise<void>;
|
|
21
18
|
downloadArtifact(pluginName: string, version: string, fileName: string, localDir: string): Promise<void>;
|
|
22
|
-
/**
|
|
23
|
-
* Calculate the total size in MB of all blobs under a given prefix.
|
|
24
|
-
*/
|
|
25
19
|
private calculatePrefixSize;
|
|
26
|
-
/**
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
private readLatestVersionFromFile;
|
|
31
|
-
/**
|
|
32
|
-
* Create or update a version file with the latestversion metadata.
|
|
33
|
-
*/
|
|
20
|
+
/** Read latest version from metadata, falling back to directory scanning. */
|
|
21
|
+
private readLatestVersion;
|
|
22
|
+
/** Scan version directories to find the latest matching major. */
|
|
23
|
+
private scanLatest;
|
|
34
24
|
private updateLatestVersion;
|
|
35
|
-
/**
|
|
36
|
-
* Compare two major version strings (e.g., "1.0" vs "2.3").
|
|
37
|
-
*/
|
|
38
25
|
private compareMajorVersions;
|
|
39
26
|
}
|
|
40
27
|
//# sourceMappingURL=azure-provider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"azure-provider.d.ts","sourceRoot":"","sources":["../../src/providers/azure-provider.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EACL,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,gBAAgB,EACjB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"azure-provider.d.ts","sourceRoot":"","sources":["../../src/providers/azure-provider.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EACL,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAYlB,qBAAa,aAAc,SAAQ,eAAe;IAChD,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,IAAI,CAAS;gBAET,MAAM,EAAE,WAAW;IAMzB,WAAW,CAAC,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAmBvE,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAuCzF,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC;IAQ5G,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAsB1G,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAiBhH,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/G,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMzE,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAIhG,mBAAmB;IAQjC,6EAA6E;YAC/D,iBAAiB;IAa/B,kEAAkE;YACpD,UAAU;YAcV,mBAAmB;IAcjC,OAAO,CAAC,oBAAoB;CAO7B"}
|
|
@@ -39,295 +39,198 @@ const path = __importStar(require("path"));
|
|
|
39
39
|
const storage_blob_1 = require("@azure/storage-blob");
|
|
40
40
|
const storage_provider_1 = require("./storage-provider");
|
|
41
41
|
const semver_1 = require("../utils/semver");
|
|
42
|
+
const semver_2 = require("semver");
|
|
42
43
|
const format_1 = require("../utils/format");
|
|
43
|
-
const PLUGIN_ARTIFACTS_PREFIX = 'plugin_artifacts/';
|
|
44
|
-
/**
|
|
45
|
-
* Azure Blob Storage provider.
|
|
46
|
-
* Connects via SAS URL and operates within a single container.
|
|
47
|
-
*/
|
|
48
44
|
class AzureProvider extends storage_provider_1.StorageProvider {
|
|
49
45
|
containerClient;
|
|
46
|
+
base;
|
|
50
47
|
constructor(config) {
|
|
51
48
|
super();
|
|
52
49
|
this.containerClient = new storage_blob_1.ContainerClient(config.sasUrl);
|
|
50
|
+
this.base = config.basePrefix ?? 'plugin_artifacts';
|
|
53
51
|
}
|
|
54
|
-
// ============================================================
|
|
55
|
-
// listPlugins
|
|
56
|
-
// ============================================================
|
|
57
52
|
async listPlugins(options) {
|
|
58
53
|
const plugins = [];
|
|
59
|
-
const
|
|
54
|
+
const prefix = this.base ? this.base + '/' : '';
|
|
60
55
|
for await (const item of this.containerClient.listBlobsByHierarchy('/', {
|
|
61
|
-
prefix
|
|
56
|
+
prefix,
|
|
62
57
|
})) {
|
|
63
58
|
if (item.kind === 'prefix') {
|
|
64
|
-
|
|
65
|
-
const name = item.name
|
|
66
|
-
.slice(PLUGIN_ARTIFACTS_PREFIX.length)
|
|
67
|
-
.replace(/\/$/, '');
|
|
59
|
+
const name = item.name.slice(prefix.length).replace(/\/$/, '');
|
|
68
60
|
if (!name)
|
|
69
61
|
continue;
|
|
70
|
-
const plugin = {
|
|
71
|
-
|
|
72
|
-
path: item.name,
|
|
73
|
-
};
|
|
74
|
-
if (includeSize) {
|
|
62
|
+
const plugin = { name, path: item.name };
|
|
63
|
+
if (options?.includeSize)
|
|
75
64
|
plugin.totalSizeMB = await this.calculatePrefixSize(item.name);
|
|
76
|
-
}
|
|
77
65
|
plugins.push(plugin);
|
|
78
66
|
}
|
|
79
67
|
}
|
|
80
68
|
return plugins.sort((a, b) => a.name.localeCompare(b.name));
|
|
81
69
|
}
|
|
82
|
-
// ============================================================
|
|
83
|
-
// listMajorVersions
|
|
84
|
-
// ============================================================
|
|
85
70
|
async listMajorVersions(pluginName, options) {
|
|
86
|
-
const includeSize = options?.includeSize ?? false;
|
|
87
71
|
const majorMap = new Map();
|
|
88
|
-
|
|
89
|
-
const pluginPrefix = (0, semver_1.getPluginPrefix)(pluginName);
|
|
72
|
+
const pluginPrefix = (0, semver_1.getPluginPrefix)(this.base, pluginName);
|
|
90
73
|
for await (const item of this.containerClient.listBlobsByHierarchy('/', {
|
|
91
74
|
prefix: pluginPrefix,
|
|
92
75
|
})) {
|
|
93
76
|
if (item.kind === 'prefix') {
|
|
94
|
-
|
|
95
|
-
const dirName = item.name
|
|
96
|
-
.slice(pluginPrefix.length)
|
|
97
|
-
.replace(/\/$/, '');
|
|
77
|
+
const dirName = item.name.slice(pluginPrefix.length).replace(/\/$/, '');
|
|
98
78
|
if (!dirName)
|
|
99
79
|
continue;
|
|
100
80
|
const major = (0, semver_1.extractMajorMinor)(dirName);
|
|
101
81
|
if (!majorMap.has(major)) {
|
|
102
|
-
majorMap.set(major, {
|
|
103
|
-
majorVersion: major,
|
|
104
|
-
minorCount: 0,
|
|
105
|
-
path: `${pluginPrefix}${major}/`,
|
|
106
|
-
});
|
|
82
|
+
majorMap.set(major, { majorVersion: major, minorCount: 0, path: pluginPrefix + major + '/' });
|
|
107
83
|
}
|
|
108
84
|
const entry = majorMap.get(major);
|
|
109
85
|
entry.minorCount++;
|
|
110
|
-
if (includeSize) {
|
|
111
|
-
|
|
112
|
-
entry.totalSizeMB = (entry.totalSizeMB ?? 0) + dirSize;
|
|
86
|
+
if (options?.includeSize) {
|
|
87
|
+
entry.totalSizeMB = (entry.totalSizeMB ?? 0) + await this.calculatePrefixSize(item.name);
|
|
113
88
|
}
|
|
114
89
|
}
|
|
115
90
|
}
|
|
116
|
-
// Read latest version from version files for each major
|
|
117
91
|
for (const [major, info] of majorMap) {
|
|
118
92
|
try {
|
|
119
|
-
const
|
|
120
|
-
if (
|
|
121
|
-
info.latestVersion =
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
catch {
|
|
125
|
-
// Version file may not exist yet — that's ok
|
|
93
|
+
const v = await this.readLatestVersion(pluginName, major);
|
|
94
|
+
if (v)
|
|
95
|
+
info.latestVersion = v;
|
|
126
96
|
}
|
|
97
|
+
catch { /* ok */ }
|
|
127
98
|
}
|
|
128
99
|
const result = Array.from(majorMap.values());
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
});
|
|
138
|
-
}
|
|
139
|
-
else {
|
|
140
|
-
result.sort((a, b) => {
|
|
141
|
-
if (a.majorVersion === 'dev')
|
|
142
|
-
return 1;
|
|
143
|
-
if (b.majorVersion === 'dev')
|
|
144
|
-
return -1;
|
|
145
|
-
return this.compareMajorVersions(a.majorVersion, b.majorVersion);
|
|
146
|
-
});
|
|
147
|
-
}
|
|
100
|
+
result.sort((a, b) => {
|
|
101
|
+
if (a.majorVersion === 'dev')
|
|
102
|
+
return 1;
|
|
103
|
+
if (b.majorVersion === 'dev')
|
|
104
|
+
return -1;
|
|
105
|
+
const cmp = this.compareMajorVersions(a.majorVersion, b.majorVersion);
|
|
106
|
+
return options?.sortOrder === 'asc' ? cmp : -cmp;
|
|
107
|
+
});
|
|
148
108
|
return result;
|
|
149
109
|
}
|
|
150
|
-
// ============================================================
|
|
151
|
-
// getLatestVersion
|
|
152
|
-
// ============================================================
|
|
153
110
|
async getLatestVersion(pluginName, majorVersion, options) {
|
|
154
|
-
const
|
|
155
|
-
if (!
|
|
156
|
-
throw new Error(`No latest version found for plugin "${pluginName}" major "${majorVersion}"
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
const version = {
|
|
160
|
-
version: latestVersion,
|
|
161
|
-
path: (0, semver_1.getVersionPrefix)(pluginName, latestVersion),
|
|
162
|
-
};
|
|
163
|
-
if (options?.includeSize) {
|
|
111
|
+
const latest = await this.readLatestVersion(pluginName, majorVersion);
|
|
112
|
+
if (!latest)
|
|
113
|
+
throw new Error(`No latest version found for plugin "${pluginName}" major "${majorVersion}".`);
|
|
114
|
+
const version = { version: latest, path: (0, semver_1.getVersionPrefix)(this.base, pluginName, latest) };
|
|
115
|
+
if (options?.includeSize)
|
|
164
116
|
version.totalSizeMB = await this.calculatePrefixSize(version.path);
|
|
165
|
-
}
|
|
166
117
|
return version;
|
|
167
118
|
}
|
|
168
|
-
// ============================================================
|
|
169
|
-
// listMinorVersions
|
|
170
|
-
// ============================================================
|
|
171
119
|
async listMinorVersions(pluginName, majorVersion, options) {
|
|
172
|
-
const includeSize = options?.includeSize ?? false;
|
|
173
120
|
const versions = [];
|
|
174
|
-
const pluginPrefix = (0, semver_1.getPluginPrefix)(pluginName);
|
|
121
|
+
const pluginPrefix = (0, semver_1.getPluginPrefix)(this.base, pluginName);
|
|
175
122
|
for await (const item of this.containerClient.listBlobsByHierarchy('/', {
|
|
176
123
|
prefix: pluginPrefix,
|
|
177
124
|
})) {
|
|
178
125
|
if (item.kind === 'prefix') {
|
|
179
|
-
const dirName = item.name
|
|
180
|
-
.slice(pluginPrefix.length)
|
|
181
|
-
.replace(/\/$/, '');
|
|
126
|
+
const dirName = item.name.slice(pluginPrefix.length).replace(/\/$/, '');
|
|
182
127
|
if (!dirName)
|
|
183
128
|
continue;
|
|
184
|
-
|
|
185
|
-
// Only include versions matching the requested major
|
|
186
|
-
if (major !== majorVersion)
|
|
129
|
+
if ((0, semver_1.extractMajorMinor)(dirName) !== majorVersion)
|
|
187
130
|
continue;
|
|
188
|
-
const
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
if (includeSize) {
|
|
193
|
-
version.totalSizeMB = await this.calculatePrefixSize(item.name);
|
|
194
|
-
}
|
|
195
|
-
versions.push(version);
|
|
131
|
+
const v = { version: dirName, path: item.name };
|
|
132
|
+
if (options?.includeSize)
|
|
133
|
+
v.totalSizeMB = await this.calculatePrefixSize(item.name);
|
|
134
|
+
versions.push(v);
|
|
196
135
|
}
|
|
197
136
|
}
|
|
198
|
-
|
|
199
|
-
const
|
|
200
|
-
|
|
201
|
-
// Reorder the versions array according to sorted order
|
|
202
|
-
const versionMap = new Map(versions.map(v => [v.version, v]));
|
|
203
|
-
return sorted.map(v => versionMap.get(v)).filter(Boolean);
|
|
137
|
+
const sorted = (0, semver_1.sortVersions)(versions.map(v => v.version), options?.sortOrder ?? 'desc');
|
|
138
|
+
const map = new Map(versions.map(v => [v.version, v]));
|
|
139
|
+
return sorted.map(v => map.get(v)).filter(Boolean);
|
|
204
140
|
}
|
|
205
|
-
// ============================================================
|
|
206
|
-
// listArtifacts
|
|
207
|
-
// ============================================================
|
|
208
141
|
async listArtifacts(pluginName, version, options) {
|
|
209
|
-
const includeSize = options?.includeSize ?? false;
|
|
210
142
|
const artifacts = [];
|
|
211
|
-
const versionPrefix = (0, semver_1.getVersionPrefix)(pluginName, version);
|
|
212
|
-
for await (const blob of this.containerClient.listBlobsFlat({
|
|
213
|
-
prefix: versionPrefix,
|
|
214
|
-
})) {
|
|
143
|
+
const versionPrefix = (0, semver_1.getVersionPrefix)(this.base, pluginName, version);
|
|
144
|
+
for await (const blob of this.containerClient.listBlobsFlat({ prefix: versionPrefix })) {
|
|
215
145
|
const fileName = blob.name.slice(versionPrefix.length);
|
|
216
146
|
if (!fileName)
|
|
217
|
-
continue;
|
|
218
|
-
const
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
};
|
|
222
|
-
if (includeSize && blob.properties.contentLength !== undefined) {
|
|
223
|
-
artifact.sizeMB = (0, format_1.bytesToMB)(blob.properties.contentLength);
|
|
147
|
+
continue;
|
|
148
|
+
const a = { name: fileName, path: blob.name };
|
|
149
|
+
if (options?.includeSize && blob.properties.contentLength !== undefined) {
|
|
150
|
+
a.sizeMB = (0, format_1.bytesToMB)(blob.properties.contentLength);
|
|
224
151
|
}
|
|
225
|
-
artifacts.push(
|
|
152
|
+
artifacts.push(a);
|
|
226
153
|
}
|
|
227
154
|
return artifacts.sort((a, b) => a.name.localeCompare(b.name));
|
|
228
155
|
}
|
|
229
|
-
// ============================================================
|
|
230
|
-
// uploadArtifact
|
|
231
|
-
// ============================================================
|
|
232
156
|
async uploadArtifact(pluginName, version, artifactName, localFilePath) {
|
|
233
|
-
const blobPath = (0, semver_1.getArtifactPath)(pluginName, version, artifactName);
|
|
234
|
-
|
|
235
|
-
// Upload the file
|
|
236
|
-
await blockBlobClient.uploadFile(localFilePath);
|
|
237
|
-
// Update the version file with the latest version
|
|
157
|
+
const blobPath = (0, semver_1.getArtifactPath)(this.base, pluginName, version, artifactName);
|
|
158
|
+
await this.containerClient.getBlockBlobClient(blobPath).uploadFile(localFilePath);
|
|
238
159
|
const major = (0, semver_1.extractMajorMinor)(version);
|
|
239
160
|
await this.updateLatestVersion(pluginName, major, version);
|
|
240
161
|
}
|
|
241
|
-
// ============================================================
|
|
242
|
-
// downloadArtifactByPath
|
|
243
|
-
// ============================================================
|
|
244
162
|
async downloadArtifactByPath(fullPath, localDir) {
|
|
245
|
-
const blockBlobClient = this.containerClient.getBlockBlobClient(fullPath);
|
|
246
|
-
// Extract file name from path
|
|
247
163
|
const fileName = fullPath.split('/').pop() || 'artifact';
|
|
248
164
|
await fs.mkdir(localDir, { recursive: true });
|
|
249
|
-
|
|
250
|
-
await blockBlobClient.downloadToFile(localPath);
|
|
165
|
+
await this.containerClient.getBlockBlobClient(fullPath).downloadToFile(path.join(localDir, fileName));
|
|
251
166
|
}
|
|
252
|
-
// ============================================================
|
|
253
|
-
// downloadArtifact
|
|
254
|
-
// ============================================================
|
|
255
167
|
async downloadArtifact(pluginName, version, fileName, localDir) {
|
|
256
|
-
|
|
257
|
-
return this.downloadArtifactByPath(blobPath, localDir);
|
|
168
|
+
return this.downloadArtifactByPath((0, semver_1.getArtifactPath)(this.base, pluginName, version, fileName), localDir);
|
|
258
169
|
}
|
|
259
|
-
// ============================================================
|
|
260
|
-
// Private helpers
|
|
261
|
-
// ============================================================
|
|
262
|
-
/**
|
|
263
|
-
* Calculate the total size in MB of all blobs under a given prefix.
|
|
264
|
-
*/
|
|
265
170
|
async calculatePrefixSize(prefix) {
|
|
266
|
-
let
|
|
171
|
+
let bytes = 0;
|
|
267
172
|
for await (const blob of this.containerClient.listBlobsFlat({ prefix })) {
|
|
268
|
-
if (blob.properties.contentLength)
|
|
269
|
-
|
|
270
|
-
}
|
|
173
|
+
if (blob.properties.contentLength)
|
|
174
|
+
bytes += blob.properties.contentLength;
|
|
271
175
|
}
|
|
272
|
-
return (0, format_1.bytesToMB)(
|
|
176
|
+
return (0, format_1.bytesToMB)(bytes);
|
|
273
177
|
}
|
|
274
|
-
/**
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
async readLatestVersionFromFile(pluginName, majorVersion) {
|
|
279
|
-
const filePath = (0, semver_1.getVersionFilePath)(pluginName, majorVersion);
|
|
280
|
-
const blockBlobClient = this.containerClient.getBlockBlobClient(filePath);
|
|
178
|
+
/** Read latest version from metadata, falling back to directory scanning. */
|
|
179
|
+
async readLatestVersion(pluginName, majorVersion) {
|
|
180
|
+
// Try version file metadata first
|
|
181
|
+
const fp = (0, semver_1.getVersionFilePath)(this.base, pluginName, majorVersion);
|
|
281
182
|
try {
|
|
282
|
-
const
|
|
283
|
-
|
|
183
|
+
const props = await this.containerClient.getBlockBlobClient(fp).getProperties();
|
|
184
|
+
if (props.metadata?.latestversion)
|
|
185
|
+
return props.metadata.latestversion;
|
|
284
186
|
}
|
|
285
187
|
catch (err) {
|
|
286
|
-
if (err?.statusCode
|
|
287
|
-
|
|
188
|
+
if (err?.statusCode !== 404 && err?.code !== 'BlobNotFound')
|
|
189
|
+
throw err;
|
|
190
|
+
}
|
|
191
|
+
// Fallback: scan directories
|
|
192
|
+
return this.scanLatest(pluginName, majorVersion);
|
|
193
|
+
}
|
|
194
|
+
/** Scan version directories to find the latest matching major. */
|
|
195
|
+
async scanLatest(pluginName, majorVersion) {
|
|
196
|
+
const pluginPrefix = (0, semver_1.getPluginPrefix)(this.base, pluginName);
|
|
197
|
+
const versions = [];
|
|
198
|
+
for await (const item of this.containerClient.listBlobsByHierarchy('/', { prefix: pluginPrefix })) {
|
|
199
|
+
if (item.kind === 'prefix') {
|
|
200
|
+
const v = item.name.slice(pluginPrefix.length).replace(/\/$/, '');
|
|
201
|
+
if (v && (0, semver_1.extractMajorMinor)(v) === majorVersion)
|
|
202
|
+
versions.push(v);
|
|
288
203
|
}
|
|
289
|
-
throw err;
|
|
290
204
|
}
|
|
205
|
+
if (!versions.length)
|
|
206
|
+
return null;
|
|
207
|
+
versions.sort(semver_2.rcompare);
|
|
208
|
+
return versions[0];
|
|
291
209
|
}
|
|
292
|
-
/**
|
|
293
|
-
* Create or update a version file with the latestversion metadata.
|
|
294
|
-
*/
|
|
295
210
|
async updateLatestVersion(pluginName, majorVersion, latestVersion) {
|
|
296
|
-
const
|
|
297
|
-
const
|
|
298
|
-
// Check if the version file exists
|
|
211
|
+
const fp = (0, semver_1.getVersionFilePath)(this.base, pluginName, majorVersion);
|
|
212
|
+
const client = this.containerClient.getBlockBlobClient(fp);
|
|
299
213
|
let exists = false;
|
|
300
214
|
try {
|
|
301
|
-
await
|
|
215
|
+
await client.getProperties();
|
|
302
216
|
exists = true;
|
|
303
217
|
}
|
|
304
218
|
catch (err) {
|
|
305
|
-
if (err?.statusCode !== 404 && err?.code !== 'BlobNotFound')
|
|
219
|
+
if (err?.statusCode !== 404 && err?.code !== 'BlobNotFound')
|
|
306
220
|
throw err;
|
|
307
|
-
}
|
|
308
221
|
}
|
|
309
222
|
if (exists) {
|
|
310
|
-
|
|
311
|
-
await blockBlobClient.setMetadata({ latestversion: latestVersion });
|
|
223
|
+
await client.setMetadata({ latestversion: latestVersion });
|
|
312
224
|
}
|
|
313
225
|
else {
|
|
314
|
-
|
|
315
|
-
await blockBlobClient.upload(latestVersion, latestVersion.length, {
|
|
316
|
-
metadata: { latestversion: latestVersion },
|
|
317
|
-
});
|
|
226
|
+
await client.upload(latestVersion, latestVersion.length, { metadata: { latestversion: latestVersion } });
|
|
318
227
|
}
|
|
319
228
|
}
|
|
320
|
-
/**
|
|
321
|
-
* Compare two major version strings (e.g., "1.0" vs "2.3").
|
|
322
|
-
*/
|
|
323
229
|
compareMajorVersions(a, b) {
|
|
324
|
-
const
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
const numB = partsB[i] ?? 0;
|
|
329
|
-
if (numA !== numB)
|
|
330
|
-
return numA - numB;
|
|
230
|
+
const pa = a.split('.').map(Number), pb = b.split('.').map(Number);
|
|
231
|
+
for (let i = 0; i < Math.max(pa.length, pb.length); i++) {
|
|
232
|
+
if ((pa[i] ?? 0) !== (pb[i] ?? 0))
|
|
233
|
+
return (pa[i] ?? 0) - (pb[i] ?? 0);
|
|
331
234
|
}
|
|
332
235
|
return 0;
|
|
333
236
|
}
|