artifact-engine 1.2.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Engine/artifactEngine.d.ts +12 -12
- package/Engine/artifactEngine.js +166 -166
- package/Engine/artifactEngineOptions.d.ts +8 -8
- package/Engine/artifactEngineOptions.js +13 -15
- package/Engine/cilogger.d.ts +6 -6
- package/Engine/cilogger.js +44 -46
- package/Engine/index.d.ts +2 -2
- package/Engine/index.js +6 -8
- package/Engine/logger.d.ts +13 -13
- package/Engine/logger.js +109 -112
- package/Engine/worker.d.ts +10 -10
- package/Engine/worker.js +49 -51
- package/Models/artifactDownloadTicket.d.ts +11 -11
- package/Models/artifactDownloadTicket.js +5 -7
- package/Models/artifactItem.d.ts +12 -12
- package/Models/artifactItem.js +8 -10
- package/Models/artifactprovider.d.ts +10 -11
- package/Models/artifactprovider.js +2 -3
- package/Models/constants.d.ts +3 -3
- package/Models/constants.js +6 -8
- package/Models/index.d.ts +6 -6
- package/Models/index.js +12 -14
- package/Models/itemType.d.ts +5 -5
- package/Models/itemType.js +8 -10
- package/Models/ticketState.d.ts +7 -7
- package/Models/ticketState.js +10 -12
- package/Providers/filesystemProvider.d.ts +14 -15
- package/Providers/filesystemProvider.js +123 -123
- package/Providers/index.d.ts +4 -4
- package/Providers/index.js +10 -12
- package/Providers/stubProvider.d.ts +20 -21
- package/Providers/stubProvider.js +85 -88
- package/Providers/typed-rest-client/Handlers.d.ts +4 -4
- package/Providers/typed-rest-client/Handlers.js +10 -12
- package/Providers/typed-rest-client/HttpClient.d.ts +84 -77
- package/Providers/typed-rest-client/HttpClient.js +351 -328
- package/Providers/typed-rest-client/Index.d.ts +0 -1
- package/Providers/typed-rest-client/Index.js +2 -3
- package/Providers/typed-rest-client/Interfaces.d.ts +38 -38
- package/Providers/typed-rest-client/Interfaces.js +3 -4
- package/Providers/typed-rest-client/RestClient.d.ts +73 -27
- package/Providers/typed-rest-client/RestClient.js +186 -134
- package/Providers/typed-rest-client/Util.d.ts +7 -1
- package/Providers/typed-rest-client/Util.js +24 -18
- package/Providers/typed-rest-client/handlers/basiccreds.d.ts +9 -9
- package/Providers/typed-rest-client/handlers/basiccreds.js +23 -20
- package/Providers/typed-rest-client/handlers/bearertoken.d.ts +8 -8
- package/Providers/typed-rest-client/handlers/bearertoken.js +22 -19
- package/Providers/typed-rest-client/handlers/ntlm.d.ts +13 -13
- package/Providers/typed-rest-client/handlers/ntlm.js +115 -96
- package/Providers/typed-rest-client/handlers/personalaccesstoken.d.ts +8 -8
- package/Providers/typed-rest-client/handlers/personalaccesstoken.js +22 -19
- package/Providers/typed-rest-client/opensource/node-http-ntlm/readme.txt +6 -0
- package/Providers/webClient.d.ts +8 -8
- package/Providers/webClient.js +60 -60
- package/Providers/webClientFactory.d.ts +5 -5
- package/Providers/webClientFactory.js +59 -55
- package/Providers/webProvider.d.ts +21 -22
- package/Providers/webProvider.js +120 -116
- package/Providers/zipProvider.d.ts +15 -16
- package/Providers/zipProvider.js +53 -55
- package/Store/artifactItemStore.d.ts +18 -18
- package/Store/artifactItemStore.js +94 -96
- package/Store/index.d.ts +1 -1
- package/Store/index.js +4 -6
- package/Strings/resources.resjson/de-DE/resources.resjson +11 -11
- package/Strings/resources.resjson/en-US/resources.resjson +11 -11
- package/Strings/resources.resjson/es-ES/resources.resjson +11 -11
- package/Strings/resources.resjson/fr-FR/resources.resjson +11 -11
- package/Strings/resources.resjson/it-IT/resources.resjson +11 -11
- package/Strings/resources.resjson/ja-JP/resources.resjson +11 -11
- package/Strings/resources.resjson/ko-KR/resources.resjson +11 -11
- package/Strings/resources.resjson/ru-RU/resources.resjson +11 -11
- package/Strings/resources.resjson/zh-CN/resources.resjson +11 -11
- package/Strings/resources.resjson/zh-TW/resources.resjson +11 -11
- package/npm-shrinkwrap.json +1 -1
- package/package.json +1 -1
|
@@ -1,15 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
private
|
|
13
|
-
private
|
|
14
|
-
|
|
15
|
-
}
|
|
1
|
+
import * as models from '../Models';
|
|
2
|
+
import { ArtifactItemStore } from '../Store/artifactItemStore';
|
|
3
|
+
export declare class FilesystemProvider implements models.IArtifactProvider {
|
|
4
|
+
artifactItemStore: ArtifactItemStore;
|
|
5
|
+
constructor(rootLocation: string, rootItemPath?: string);
|
|
6
|
+
getRootItems(): Promise<models.ArtifactItem[]>;
|
|
7
|
+
getArtifactItems(artifactItem: models.ArtifactItem): Promise<models.ArtifactItem[]>;
|
|
8
|
+
getArtifactItem(artifactItem: models.ArtifactItem): Promise<NodeJS.ReadableStream>;
|
|
9
|
+
putArtifactItem(item: models.ArtifactItem, stream: NodeJS.ReadableStream): Promise<models.ArtifactItem>;
|
|
10
|
+
dispose(): void;
|
|
11
|
+
private getItems(itemsPath, parentRelativePath?);
|
|
12
|
+
private _rootLocation;
|
|
13
|
+
private _rootItemPath;
|
|
14
|
+
}
|
|
@@ -1,123 +1,123 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
this.
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
rootItem.
|
|
17
|
-
rootItem.
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
tl.mkdirP(folder);
|
|
51
|
-
logger_1.Logger.logMessage(tl.loc("DownloadingTo", item.path, outputItemPath));
|
|
52
|
-
const outputStream = fs.createWriteStream(outputItemPath);
|
|
53
|
-
stream.pipe(outputStream);
|
|
54
|
-
stream.on("end", () => {
|
|
55
|
-
logger_1.Logger.logMessage(tl.loc("DownloadedTo", item.path, outputItemPath));
|
|
56
|
-
if (!item.metadata) {
|
|
57
|
-
item.metadata = {};
|
|
58
|
-
}
|
|
59
|
-
item.metadata[models.Constants.DestinationUrlKey] = outputItemPath;
|
|
60
|
-
});
|
|
61
|
-
stream.on("error", (error) => {
|
|
62
|
-
reject(error);
|
|
63
|
-
});
|
|
64
|
-
outputStream.on("finish", () => {
|
|
65
|
-
this.artifactItemStore.updateFileSize(item, outputStream.bytesWritten);
|
|
66
|
-
resolve(item);
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
catch (err) {
|
|
70
|
-
reject(err);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
else {
|
|
74
|
-
try {
|
|
75
|
-
tl.mkdirP(outputItemPath);
|
|
76
|
-
resolve(item);
|
|
77
|
-
}
|
|
78
|
-
catch (err) {
|
|
79
|
-
reject(err);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
dispose() {
|
|
85
|
-
}
|
|
86
|
-
getItems(itemsPath, parentRelativePath) {
|
|
87
|
-
var promise = new Promise((resolve, reject) => {
|
|
88
|
-
var items = [];
|
|
89
|
-
fs.readdir(itemsPath, (error, files) => {
|
|
90
|
-
if (!!error) {
|
|
91
|
-
logger_1.Logger.logMessage(tl.loc("UnableToReadDirectory", itemsPath, error));
|
|
92
|
-
reject(error);
|
|
93
|
-
return;
|
|
94
|
-
}
|
|
95
|
-
for (var index = 0; index < files.length; index++) {
|
|
96
|
-
var file = files[index];
|
|
97
|
-
var filePath = path.join(itemsPath, file);
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const path = require("path");
|
|
4
|
+
const fs = require("fs");
|
|
5
|
+
const models = require("../Models");
|
|
6
|
+
const logger_1 = require("../Engine/logger");
|
|
7
|
+
var tl = require('azure-pipelines-task-lib');
|
|
8
|
+
class FilesystemProvider {
|
|
9
|
+
constructor(rootLocation, rootItemPath) {
|
|
10
|
+
this._rootLocation = rootLocation;
|
|
11
|
+
this._rootItemPath = rootItemPath ? rootItemPath : '';
|
|
12
|
+
}
|
|
13
|
+
getRootItems() {
|
|
14
|
+
var rootItem = new models.ArtifactItem();
|
|
15
|
+
rootItem.metadata = { downloadUrl: this._rootLocation };
|
|
16
|
+
rootItem.path = this._rootItemPath;
|
|
17
|
+
rootItem.itemType = models.ItemType.Folder;
|
|
18
|
+
return Promise.resolve([rootItem]);
|
|
19
|
+
}
|
|
20
|
+
getArtifactItems(artifactItem) {
|
|
21
|
+
var itemsPath = artifactItem.metadata["downloadUrl"];
|
|
22
|
+
return this.getItems(itemsPath, artifactItem.path);
|
|
23
|
+
}
|
|
24
|
+
getArtifactItem(artifactItem) {
|
|
25
|
+
var promise = new Promise((resolve, reject) => {
|
|
26
|
+
var itemPath = artifactItem.metadata['downloadUrl'];
|
|
27
|
+
try {
|
|
28
|
+
var contentStream = fs.createReadStream(itemPath);
|
|
29
|
+
contentStream.on('end', () => {
|
|
30
|
+
this.artifactItemStore.updateDownloadSize(artifactItem, contentStream.bytesRead);
|
|
31
|
+
});
|
|
32
|
+
contentStream.on("error", (error) => {
|
|
33
|
+
reject(error);
|
|
34
|
+
});
|
|
35
|
+
resolve(contentStream);
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
reject(error);
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
return promise;
|
|
42
|
+
}
|
|
43
|
+
putArtifactItem(item, stream) {
|
|
44
|
+
return new Promise((resolve, reject) => {
|
|
45
|
+
const outputItemPath = path.join(this._rootLocation, item.path);
|
|
46
|
+
if (item.itemType === models.ItemType.File) {
|
|
47
|
+
const folder = path.dirname(outputItemPath);
|
|
48
|
+
try {
|
|
49
|
+
// create parent folder if it has not already been created
|
|
50
|
+
tl.mkdirP(folder);
|
|
51
|
+
logger_1.Logger.logMessage(tl.loc("DownloadingTo", item.path, outputItemPath));
|
|
52
|
+
const outputStream = fs.createWriteStream(outputItemPath);
|
|
53
|
+
stream.pipe(outputStream);
|
|
54
|
+
stream.on("end", () => {
|
|
55
|
+
logger_1.Logger.logMessage(tl.loc("DownloadedTo", item.path, outputItemPath));
|
|
56
|
+
if (!item.metadata) {
|
|
57
|
+
item.metadata = {};
|
|
58
|
+
}
|
|
59
|
+
item.metadata[models.Constants.DestinationUrlKey] = outputItemPath;
|
|
60
|
+
});
|
|
61
|
+
stream.on("error", (error) => {
|
|
62
|
+
reject(error);
|
|
63
|
+
});
|
|
64
|
+
outputStream.on("finish", () => {
|
|
65
|
+
this.artifactItemStore.updateFileSize(item, outputStream.bytesWritten);
|
|
66
|
+
resolve(item);
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
catch (err) {
|
|
70
|
+
reject(err);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
try {
|
|
75
|
+
tl.mkdirP(outputItemPath);
|
|
76
|
+
resolve(item);
|
|
77
|
+
}
|
|
78
|
+
catch (err) {
|
|
79
|
+
reject(err);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
dispose() {
|
|
85
|
+
}
|
|
86
|
+
getItems(itemsPath, parentRelativePath) {
|
|
87
|
+
var promise = new Promise((resolve, reject) => {
|
|
88
|
+
var items = [];
|
|
89
|
+
fs.readdir(itemsPath, (error, files) => {
|
|
90
|
+
if (!!error) {
|
|
91
|
+
logger_1.Logger.logMessage(tl.loc("UnableToReadDirectory", itemsPath, error));
|
|
92
|
+
reject(error);
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
for (var index = 0; index < files.length; index++) {
|
|
96
|
+
var file = files[index];
|
|
97
|
+
var filePath = path.join(itemsPath, file);
|
|
98
|
+
// do not follow symbolic link
|
|
99
|
+
var itemStat;
|
|
100
|
+
try {
|
|
101
|
+
itemStat = fs.lstatSync(filePath);
|
|
102
|
+
}
|
|
103
|
+
catch (error) {
|
|
104
|
+
reject(error);
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
var item = {
|
|
108
|
+
itemType: itemStat.isFile() ? models.ItemType.File : models.ItemType.Folder,
|
|
109
|
+
path: parentRelativePath ? path.join(parentRelativePath, file) : file,
|
|
110
|
+
fileLength: itemStat.size,
|
|
111
|
+
lastModified: itemStat.mtime,
|
|
112
|
+
contentType: undefined,
|
|
113
|
+
metadata: { "downloadUrl": filePath }
|
|
114
|
+
};
|
|
115
|
+
items = items.concat(item);
|
|
116
|
+
}
|
|
117
|
+
resolve(items);
|
|
118
|
+
});
|
|
119
|
+
});
|
|
120
|
+
return promise;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
exports.FilesystemProvider = FilesystemProvider;
|
package/Providers/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { WebProvider } from "./webProvider";
|
|
2
|
-
export { FilesystemProvider } from "./filesystemProvider";
|
|
3
|
-
export { ZipProvider } from "./zipProvider";
|
|
4
|
-
export { StubProvider } from "./stubProvider";
|
|
1
|
+
export { WebProvider } from "./webProvider";
|
|
2
|
+
export { FilesystemProvider } from "./filesystemProvider";
|
|
3
|
+
export { ZipProvider } from "./zipProvider";
|
|
4
|
+
export { StubProvider } from "./stubProvider";
|
package/Providers/index.js
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
Object.defineProperty(exports, "StubProvider", { enumerable: true, get: function () { return stubProvider_1.StubProvider; } });
|
|
12
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var webProvider_1 = require("./webProvider");
|
|
4
|
+
exports.WebProvider = webProvider_1.WebProvider;
|
|
5
|
+
var filesystemProvider_1 = require("./filesystemProvider");
|
|
6
|
+
exports.FilesystemProvider = filesystemProvider_1.FilesystemProvider;
|
|
7
|
+
var zipProvider_1 = require("./zipProvider");
|
|
8
|
+
exports.ZipProvider = zipProvider_1.ZipProvider;
|
|
9
|
+
var stubProvider_1 = require("./stubProvider");
|
|
10
|
+
exports.StubProvider = stubProvider_1.StubProvider;
|
|
@@ -1,21 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
1
|
+
import * as models from '../Models';
|
|
2
|
+
import { ItemType } from '../Models';
|
|
3
|
+
import { ArtifactItemStore } from '../Store/artifactItemStore';
|
|
4
|
+
export declare class StubProvider implements models.IArtifactProvider {
|
|
5
|
+
artifactItemStore: ArtifactItemStore;
|
|
6
|
+
getArtifactItemCalledCount: number;
|
|
7
|
+
getArtifactItemsCalledCount: number;
|
|
8
|
+
getRootItemsCalledCount: number;
|
|
9
|
+
itemsDownloaded: models.ArtifactItem[];
|
|
10
|
+
itemsUploaded: {
|
|
11
|
+
[item: string]: string;
|
|
12
|
+
};
|
|
13
|
+
getRootItems(): Promise<models.ArtifactItem[]>;
|
|
14
|
+
getArtifactItems(artifactItem: models.ArtifactItem): Promise<models.ArtifactItem[]>;
|
|
15
|
+
getArtifactItem(artifactItem: models.ArtifactItem): Promise<NodeJS.ReadableStream>;
|
|
16
|
+
getItem(index: number, subIndex: number, length: number, itemType: ItemType): models.ArtifactItem;
|
|
17
|
+
putArtifactItem(item: models.ArtifactItem, readStream: NodeJS.ReadableStream): Promise<models.ArtifactItem>;
|
|
18
|
+
dispose(): void;
|
|
19
|
+
delay(ms: number): Promise<{}>;
|
|
20
|
+
}
|
|
@@ -1,88 +1,85 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
function
|
|
6
|
-
function
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
this.
|
|
19
|
-
this.
|
|
20
|
-
this.
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
this.
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
s.
|
|
46
|
-
s
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
artifactItem.
|
|
55
|
-
artifactItem.
|
|
56
|
-
artifactItem
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
}
|
|
87
|
-
exports.StubProvider = StubProvider;
|
|
88
|
-
//# sourceMappingURL=stubProvider.js.map
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
const Stream = require("stream");
|
|
12
|
+
const models = require("../Models");
|
|
13
|
+
const Models_1 = require("../Models");
|
|
14
|
+
class StubProvider {
|
|
15
|
+
constructor() {
|
|
16
|
+
this.getArtifactItemCalledCount = 0;
|
|
17
|
+
this.getArtifactItemsCalledCount = 0;
|
|
18
|
+
this.getRootItemsCalledCount = 0;
|
|
19
|
+
this.itemsDownloaded = [];
|
|
20
|
+
this.itemsUploaded = {};
|
|
21
|
+
}
|
|
22
|
+
getRootItems() {
|
|
23
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
this.getRootItemsCalledCount++;
|
|
25
|
+
return [this.getItem(1, 1, 3, Models_1.ItemType.File), this.getItem(1, 2, 3, Models_1.ItemType.File), this.getItem(1, 3, 3, Models_1.ItemType.File), this.getItem(2, 1, 1, Models_1.ItemType.Folder), this.getItem(3, 1, 5, Models_1.ItemType.File), this.getItem(4, 1, 3, Models_1.ItemType.File), this.getItem(5, 1, 4, Models_1.ItemType.Folder)];
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
getArtifactItems(artifactItem) {
|
|
29
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
30
|
+
this.getArtifactItemsCalledCount++;
|
|
31
|
+
if (artifactItem.path === 'path5') {
|
|
32
|
+
return [this.getItem(5, 1, 2, Models_1.ItemType.File)];
|
|
33
|
+
}
|
|
34
|
+
return [];
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
getArtifactItem(artifactItem) {
|
|
38
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
39
|
+
this.getArtifactItemCalledCount++;
|
|
40
|
+
this.itemsDownloaded.push(artifactItem);
|
|
41
|
+
yield this.delay(artifactItem.fileLength * 100);
|
|
42
|
+
const s = new Stream.Readable();
|
|
43
|
+
s._read = () => { };
|
|
44
|
+
s.push(`stub content for ${artifactItem.path}`);
|
|
45
|
+
s.push(null);
|
|
46
|
+
return s;
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
getItem(index, subIndex, length, itemType) {
|
|
50
|
+
const artifactItem = new models.ArtifactItem();
|
|
51
|
+
const path = itemType === Models_1.ItemType.File ? `path${index}\\path${subIndex}\\file${index}` : `path${index}`;
|
|
52
|
+
artifactItem.path = path;
|
|
53
|
+
artifactItem.fileLength = length;
|
|
54
|
+
artifactItem.itemType = itemType;
|
|
55
|
+
artifactItem.metadata = {};
|
|
56
|
+
return artifactItem;
|
|
57
|
+
}
|
|
58
|
+
putArtifactItem(item, readStream) {
|
|
59
|
+
var promise = new Promise((resolve, reject) => {
|
|
60
|
+
var data = '';
|
|
61
|
+
if (item.itemType === models.ItemType.File) {
|
|
62
|
+
readStream.on('data', (chunk) => {
|
|
63
|
+
data += chunk;
|
|
64
|
+
});
|
|
65
|
+
readStream.on('end', () => {
|
|
66
|
+
this.itemsUploaded[item.path] = data;
|
|
67
|
+
resolve(item);
|
|
68
|
+
});
|
|
69
|
+
readStream.on('error', () => {
|
|
70
|
+
reject(item);
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
resolve(item);
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
return promise;
|
|
78
|
+
}
|
|
79
|
+
dispose() {
|
|
80
|
+
}
|
|
81
|
+
delay(ms) {
|
|
82
|
+
return new Promise(resolve => setTimeout(resolve, ms));
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
exports.StubProvider = StubProvider;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { BasicCredentialHandler } from "./handlers/basiccreds";
|
|
2
|
-
export { BearerCredentialHandler } from "./handlers/bearertoken";
|
|
3
|
-
export { NtlmCredentialHandler } from "./handlers/ntlm";
|
|
4
|
-
export { PersonalAccessTokenCredentialHandler } from "./handlers/personalaccesstoken";
|
|
1
|
+
export { BasicCredentialHandler } from "./handlers/basiccreds";
|
|
2
|
+
export { BearerCredentialHandler } from "./handlers/bearertoken";
|
|
3
|
+
export { NtlmCredentialHandler } from "./handlers/ntlm";
|
|
4
|
+
export { PersonalAccessTokenCredentialHandler } from "./handlers/personalaccesstoken";
|
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
Object.defineProperty(exports, "PersonalAccessTokenCredentialHandler", { enumerable: true, get: function () { return personalaccesstoken_1.PersonalAccessTokenCredentialHandler; } });
|
|
12
|
-
//# sourceMappingURL=Handlers.js.map
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var basiccreds_1 = require("./handlers/basiccreds");
|
|
4
|
+
exports.BasicCredentialHandler = basiccreds_1.BasicCredentialHandler;
|
|
5
|
+
var bearertoken_1 = require("./handlers/bearertoken");
|
|
6
|
+
exports.BearerCredentialHandler = bearertoken_1.BearerCredentialHandler;
|
|
7
|
+
var ntlm_1 = require("./handlers/ntlm");
|
|
8
|
+
exports.NtlmCredentialHandler = ntlm_1.NtlmCredentialHandler;
|
|
9
|
+
var personalaccesstoken_1 = require("./handlers/personalaccesstoken");
|
|
10
|
+
exports.PersonalAccessTokenCredentialHandler = personalaccesstoken_1.PersonalAccessTokenCredentialHandler;
|