@elisra-devops/docgen-data-provider 0.4.6 → 0.4.13
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/.github/sonar-project.properties +4 -4
- package/.github/workflows/ci.yml +21 -21
- package/.github/workflows/release.yml +45 -40
- package/LICENSE +21 -21
- package/README.md +39 -38
- package/bin/helpers/helper.d.ts +37 -0
- package/bin/helpers/helper.js +83 -0
- package/bin/helpers/helper.js.map +1 -0
- package/bin/helpers/tfs.d.ts +5 -0
- package/bin/helpers/tfs.js +100 -0
- package/bin/helpers/tfs.js.map +1 -0
- package/bin/index.d.ts +16 -0
- package/bin/index.js +53 -0
- package/bin/index.js.map +1 -0
- package/bin/models/tfs-data.d.ts +86 -0
- package/bin/models/tfs-data.js +63 -0
- package/bin/models/tfs-data.js.map +1 -0
- package/bin/modules/GitDataProvider.d.ts +26 -0
- package/bin/modules/GitDataProvider.js +301 -0
- package/bin/modules/GitDataProvider.js.map +1 -0
- package/bin/modules/MangementDataProvider.d.ts +9 -0
- package/bin/modules/MangementDataProvider.js +62 -0
- package/bin/modules/MangementDataProvider.js.map +1 -0
- package/bin/modules/PipelinesDataProvider.d.ts +13 -0
- package/bin/modules/PipelinesDataProvider.js +103 -0
- package/bin/modules/PipelinesDataProvider.js.map +1 -0
- package/bin/modules/TestDataProvider.d.ts +24 -0
- package/bin/modules/TestDataProvider.js +294 -0
- package/bin/modules/TestDataProvider.js.map +1 -0
- package/bin/modules/TicketsDataProvider.d.ts +26 -0
- package/bin/modules/TicketsDataProvider.js +385 -0
- package/bin/modules/TicketsDataProvider.js.map +1 -0
- package/bin/modules/test/gitDataProvider.test.d.ts +1 -0
- package/bin/modules/test/gitDataProvider.test.js +138 -0
- package/bin/modules/test/gitDataProvider.test.js.map +1 -0
- package/bin/modules/test/managmentDataProvider.test.d.ts +1 -0
- package/bin/modules/test/managmentDataProvider.test.js +40 -0
- package/bin/modules/test/managmentDataProvider.test.js.map +1 -0
- package/bin/modules/test/pipelineDataProvider.test.d.ts +1 -0
- package/bin/modules/test/pipelineDataProvider.test.js +62 -0
- package/bin/modules/test/pipelineDataProvider.test.js.map +1 -0
- package/bin/modules/test/testDataProvider.test.d.ts +1 -0
- package/bin/modules/test/testDataProvider.test.js +103 -0
- package/bin/modules/test/testDataProvider.test.js.map +1 -0
- package/bin/modules/test/ticketsDataProvider.test.d.ts +1 -0
- package/bin/modules/test/ticketsDataProvider.test.js +103 -0
- package/bin/modules/test/ticketsDataProvider.test.js.map +1 -0
- package/bin/utils/logger.d.ts +3 -0
- package/bin/utils/logger.js +33 -0
- package/bin/utils/logger.js.map +1 -0
- package/enviroment.d.ts +12 -12
- package/package.json +53 -53
- package/src/helpers/helper.ts +117 -117
- package/src/helpers/tfs.ts +92 -92
- package/src/index.ts +36 -36
- package/src/models/tfs-data.ts +136 -136
- package/src/modules/GitDataProvider.ts +446 -446
- package/src/modules/MangementDataProvider.ts +59 -59
- package/src/modules/PipelinesDataProvider.ts +142 -142
- package/src/modules/TestDataProvider.ts +423 -423
- package/src/modules/TicketsDataProvider.ts +435 -435
- package/src/modules/test/gitDataProvider.test.ts +207 -207
- package/src/modules/test/managmentDataProvider.test.ts +33 -33
- package/src/modules/test/pipelineDataProvider.test.ts +79 -79
- package/src/modules/test/testDataProvider.test.ts +139 -139
- package/src/modules/test/ticketsDataProvider.test.ts +138 -138
- package/src/utils/logger.ts +37 -37
- package/tsconfig.json +27 -27
package/src/helpers/helper.ts
CHANGED
|
@@ -1,117 +1,117 @@
|
|
|
1
|
-
import { Query, Workitem } from "../models/tfs-data";
|
|
2
|
-
|
|
3
|
-
export class suiteData {
|
|
4
|
-
name: string;
|
|
5
|
-
id: string;
|
|
6
|
-
parent: string;
|
|
7
|
-
level: number;
|
|
8
|
-
url: string;
|
|
9
|
-
constructor(name: string, id: string, parent: string, level: number) {
|
|
10
|
-
this.name = name;
|
|
11
|
-
this.id = id;
|
|
12
|
-
this.parent = parent;
|
|
13
|
-
this.level = level;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
export class Relations {
|
|
17
|
-
id: string;
|
|
18
|
-
rels: Array<string> = new Array<string>();
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export class Links {
|
|
22
|
-
id: string;
|
|
23
|
-
title: string;
|
|
24
|
-
description: string;
|
|
25
|
-
url: string;
|
|
26
|
-
type: string;
|
|
27
|
-
customerId: string;
|
|
28
|
-
}
|
|
29
|
-
export class Trace {
|
|
30
|
-
id: string;
|
|
31
|
-
title: string;
|
|
32
|
-
url: string;
|
|
33
|
-
customerId: string;
|
|
34
|
-
links: Array<Links>;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
export class Helper {
|
|
38
|
-
static level: number = 1;
|
|
39
|
-
static first: boolean = true;
|
|
40
|
-
static buildSuiteslevel(dataSuites: any): any {}
|
|
41
|
-
public static suitList: Array<suiteData> = new Array<suiteData>();
|
|
42
|
-
public static findSuitesRecursive(
|
|
43
|
-
planId: string,
|
|
44
|
-
url: string,
|
|
45
|
-
project: string,
|
|
46
|
-
suits: any,
|
|
47
|
-
foundId: string,
|
|
48
|
-
recursive: boolean
|
|
49
|
-
): Array<suiteData> {
|
|
50
|
-
for (let i = 0; i < suits.length; i++) {
|
|
51
|
-
if (suits[i].parentSuiteId != 0) {
|
|
52
|
-
if (suits[i].parentSuiteId == foundId) {
|
|
53
|
-
let suit: suiteData = new suiteData(
|
|
54
|
-
suits[i].title,
|
|
55
|
-
suits[i].id,
|
|
56
|
-
foundId,
|
|
57
|
-
this.level++
|
|
58
|
-
);
|
|
59
|
-
suit.url =
|
|
60
|
-
url +
|
|
61
|
-
project +
|
|
62
|
-
"/_testManagement?planId=" +
|
|
63
|
-
planId +
|
|
64
|
-
"&suiteId=" +
|
|
65
|
-
suits[i].id +
|
|
66
|
-
"&_a=tests";
|
|
67
|
-
this.suitList.push(suit);
|
|
68
|
-
if (recursive == false) {
|
|
69
|
-
return this.suitList;
|
|
70
|
-
}
|
|
71
|
-
this.findSuitesRecursive(
|
|
72
|
-
planId,
|
|
73
|
-
url,
|
|
74
|
-
project,
|
|
75
|
-
suits,
|
|
76
|
-
suits[i].id,
|
|
77
|
-
true
|
|
78
|
-
);
|
|
79
|
-
this.level--;
|
|
80
|
-
}
|
|
81
|
-
} else {
|
|
82
|
-
if (suits[i].id == foundId && Helper.first) {
|
|
83
|
-
let suit: suiteData = new suiteData(
|
|
84
|
-
suits[i].title,
|
|
85
|
-
suits[i].id,
|
|
86
|
-
foundId,
|
|
87
|
-
this.level
|
|
88
|
-
);
|
|
89
|
-
suit.url = url + project + "/_workitems/edit/" + suits[i].id;
|
|
90
|
-
Helper.first = false;
|
|
91
|
-
if (recursive == false) {
|
|
92
|
-
return this.suitList;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
return this.suitList;
|
|
98
|
-
}
|
|
99
|
-
public static levelList: Array<Workitem> = new Array<Workitem>();
|
|
100
|
-
public static LevelBuilder(results: Query, foundId: string): Array<Workitem> {
|
|
101
|
-
for (let i = 0; i < results.workItems.length; i++) {
|
|
102
|
-
if (results.workItems[i].Source == 0) {
|
|
103
|
-
results.workItems[i].level = 0;
|
|
104
|
-
if (!this.levelList.includes(results.workItems[i]))
|
|
105
|
-
this.levelList.push(results.workItems[i]);
|
|
106
|
-
} else if (results.workItems[i].Source.toString() == foundId) {
|
|
107
|
-
results.workItems[i].level = this.level++;
|
|
108
|
-
this.levelList.push(results.workItems[i]);
|
|
109
|
-
|
|
110
|
-
this.LevelBuilder(results, results.workItems[i].fields[0].value);
|
|
111
|
-
this.level--;
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
return this.levelList;
|
|
116
|
-
}
|
|
117
|
-
}
|
|
1
|
+
import { Query, Workitem } from "../models/tfs-data";
|
|
2
|
+
|
|
3
|
+
export class suiteData {
|
|
4
|
+
name: string;
|
|
5
|
+
id: string;
|
|
6
|
+
parent: string;
|
|
7
|
+
level: number;
|
|
8
|
+
url: string;
|
|
9
|
+
constructor(name: string, id: string, parent: string, level: number) {
|
|
10
|
+
this.name = name;
|
|
11
|
+
this.id = id;
|
|
12
|
+
this.parent = parent;
|
|
13
|
+
this.level = level;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
export class Relations {
|
|
17
|
+
id: string;
|
|
18
|
+
rels: Array<string> = new Array<string>();
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export class Links {
|
|
22
|
+
id: string;
|
|
23
|
+
title: string;
|
|
24
|
+
description: string;
|
|
25
|
+
url: string;
|
|
26
|
+
type: string;
|
|
27
|
+
customerId: string;
|
|
28
|
+
}
|
|
29
|
+
export class Trace {
|
|
30
|
+
id: string;
|
|
31
|
+
title: string;
|
|
32
|
+
url: string;
|
|
33
|
+
customerId: string;
|
|
34
|
+
links: Array<Links>;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export class Helper {
|
|
38
|
+
static level: number = 1;
|
|
39
|
+
static first: boolean = true;
|
|
40
|
+
static buildSuiteslevel(dataSuites: any): any {}
|
|
41
|
+
public static suitList: Array<suiteData> = new Array<suiteData>();
|
|
42
|
+
public static findSuitesRecursive(
|
|
43
|
+
planId: string,
|
|
44
|
+
url: string,
|
|
45
|
+
project: string,
|
|
46
|
+
suits: any,
|
|
47
|
+
foundId: string,
|
|
48
|
+
recursive: boolean
|
|
49
|
+
): Array<suiteData> {
|
|
50
|
+
for (let i = 0; i < suits.length; i++) {
|
|
51
|
+
if (suits[i].parentSuiteId != 0) {
|
|
52
|
+
if (suits[i].parentSuiteId == foundId) {
|
|
53
|
+
let suit: suiteData = new suiteData(
|
|
54
|
+
suits[i].title,
|
|
55
|
+
suits[i].id,
|
|
56
|
+
foundId,
|
|
57
|
+
this.level++
|
|
58
|
+
);
|
|
59
|
+
suit.url =
|
|
60
|
+
url +
|
|
61
|
+
project +
|
|
62
|
+
"/_testManagement?planId=" +
|
|
63
|
+
planId +
|
|
64
|
+
"&suiteId=" +
|
|
65
|
+
suits[i].id +
|
|
66
|
+
"&_a=tests";
|
|
67
|
+
this.suitList.push(suit);
|
|
68
|
+
if (recursive == false) {
|
|
69
|
+
return this.suitList;
|
|
70
|
+
}
|
|
71
|
+
this.findSuitesRecursive(
|
|
72
|
+
planId,
|
|
73
|
+
url,
|
|
74
|
+
project,
|
|
75
|
+
suits,
|
|
76
|
+
suits[i].id,
|
|
77
|
+
true
|
|
78
|
+
);
|
|
79
|
+
this.level--;
|
|
80
|
+
}
|
|
81
|
+
} else {
|
|
82
|
+
if (suits[i].id == foundId && Helper.first) {
|
|
83
|
+
let suit: suiteData = new suiteData(
|
|
84
|
+
suits[i].title,
|
|
85
|
+
suits[i].id,
|
|
86
|
+
foundId,
|
|
87
|
+
this.level
|
|
88
|
+
);
|
|
89
|
+
suit.url = url + project + "/_workitems/edit/" + suits[i].id;
|
|
90
|
+
Helper.first = false;
|
|
91
|
+
if (recursive == false) {
|
|
92
|
+
return this.suitList;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
return this.suitList;
|
|
98
|
+
}
|
|
99
|
+
public static levelList: Array<Workitem> = new Array<Workitem>();
|
|
100
|
+
public static LevelBuilder(results: Query, foundId: string): Array<Workitem> {
|
|
101
|
+
for (let i = 0; i < results.workItems.length; i++) {
|
|
102
|
+
if (results.workItems[i].Source == 0) {
|
|
103
|
+
results.workItems[i].level = 0;
|
|
104
|
+
if (!this.levelList.includes(results.workItems[i]))
|
|
105
|
+
this.levelList.push(results.workItems[i]);
|
|
106
|
+
} else if (results.workItems[i].Source.toString() == foundId) {
|
|
107
|
+
results.workItems[i].level = this.level++;
|
|
108
|
+
this.levelList.push(results.workItems[i]);
|
|
109
|
+
|
|
110
|
+
this.LevelBuilder(results, results.workItems[i].fields[0].value);
|
|
111
|
+
this.level--;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
return this.levelList;
|
|
116
|
+
}
|
|
117
|
+
}
|
package/src/helpers/tfs.ts
CHANGED
|
@@ -1,92 +1,92 @@
|
|
|
1
|
-
import axios from "axios";
|
|
2
|
-
import logger from "../utils/logger";
|
|
3
|
-
import * as request from "request";
|
|
4
|
-
|
|
5
|
-
export class TFSServices {
|
|
6
|
-
public static async downloadZipFile(url: string, pat: string): Promise<any> {
|
|
7
|
-
let json;
|
|
8
|
-
try {
|
|
9
|
-
var d = {
|
|
10
|
-
request: {
|
|
11
|
-
method: "getUser",
|
|
12
|
-
auth: {
|
|
13
|
-
username: "",
|
|
14
|
-
password: `${pat}`,
|
|
15
|
-
},
|
|
16
|
-
},
|
|
17
|
-
};
|
|
18
|
-
let res = await request({
|
|
19
|
-
url: url,
|
|
20
|
-
headers: { "Content-Type": "application/zip" },
|
|
21
|
-
auth: {
|
|
22
|
-
username: "",
|
|
23
|
-
password: pat,
|
|
24
|
-
},
|
|
25
|
-
encoding: null,
|
|
26
|
-
});
|
|
27
|
-
return res;
|
|
28
|
-
} catch (e) {
|
|
29
|
-
logger.error(`error download zip file , url : ${url}`);
|
|
30
|
-
throw new Error(String(e));
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
public static async getItemContent(
|
|
35
|
-
url: string,
|
|
36
|
-
pat: string,
|
|
37
|
-
requestMethod: string = "get",
|
|
38
|
-
data: any = {},
|
|
39
|
-
customHeaders: any = {}
|
|
40
|
-
): Promise<any> {
|
|
41
|
-
let config: any = {
|
|
42
|
-
headers: customHeaders,
|
|
43
|
-
method: requestMethod,
|
|
44
|
-
auth: {
|
|
45
|
-
username: "",
|
|
46
|
-
password: pat,
|
|
47
|
-
},
|
|
48
|
-
data: data,
|
|
49
|
-
};
|
|
50
|
-
let json;
|
|
51
|
-
logger.silly(`making request:
|
|
52
|
-
url: ${url}
|
|
53
|
-
config: ${JSON.stringify(config)}`);
|
|
54
|
-
try {
|
|
55
|
-
let result = await axios(url, config);
|
|
56
|
-
json = JSON.parse(JSON.stringify(result.data));
|
|
57
|
-
} catch (e) {
|
|
58
|
-
logger.error(`error making request to azure devops , url : ${url}`);
|
|
59
|
-
// logger.error(JSON.stringify(e.data));
|
|
60
|
-
}
|
|
61
|
-
return json;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
public static async postRequest(
|
|
65
|
-
url: string,
|
|
66
|
-
pat: string,
|
|
67
|
-
requestMethod: string = "post",
|
|
68
|
-
data: any,
|
|
69
|
-
customHeaders: any = {}
|
|
70
|
-
): Promise<any> {
|
|
71
|
-
let config: any = {
|
|
72
|
-
headers: customHeaders,
|
|
73
|
-
method: requestMethod,
|
|
74
|
-
auth: {
|
|
75
|
-
username: "",
|
|
76
|
-
password: pat,
|
|
77
|
-
},
|
|
78
|
-
data: data,
|
|
79
|
-
};
|
|
80
|
-
let result;
|
|
81
|
-
logger.silly(`making request:
|
|
82
|
-
url: ${url}
|
|
83
|
-
config: ${JSON.stringify(config)}`);
|
|
84
|
-
try {
|
|
85
|
-
result = await axios(url, config);
|
|
86
|
-
} catch (e) {
|
|
87
|
-
logger.error(`error making post request to azure devops`);
|
|
88
|
-
console.log(e);
|
|
89
|
-
}
|
|
90
|
-
return result;
|
|
91
|
-
}
|
|
92
|
-
}
|
|
1
|
+
import axios from "axios";
|
|
2
|
+
import logger from "../utils/logger";
|
|
3
|
+
import * as request from "request";
|
|
4
|
+
|
|
5
|
+
export class TFSServices {
|
|
6
|
+
public static async downloadZipFile(url: string, pat: string): Promise<any> {
|
|
7
|
+
let json;
|
|
8
|
+
try {
|
|
9
|
+
var d = {
|
|
10
|
+
request: {
|
|
11
|
+
method: "getUser",
|
|
12
|
+
auth: {
|
|
13
|
+
username: "",
|
|
14
|
+
password: `${pat}`,
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
let res = await request({
|
|
19
|
+
url: url,
|
|
20
|
+
headers: { "Content-Type": "application/zip" },
|
|
21
|
+
auth: {
|
|
22
|
+
username: "",
|
|
23
|
+
password: pat,
|
|
24
|
+
},
|
|
25
|
+
encoding: null,
|
|
26
|
+
});
|
|
27
|
+
return res;
|
|
28
|
+
} catch (e) {
|
|
29
|
+
logger.error(`error download zip file , url : ${url}`);
|
|
30
|
+
throw new Error(String(e));
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
public static async getItemContent(
|
|
35
|
+
url: string,
|
|
36
|
+
pat: string,
|
|
37
|
+
requestMethod: string = "get",
|
|
38
|
+
data: any = {},
|
|
39
|
+
customHeaders: any = {}
|
|
40
|
+
): Promise<any> {
|
|
41
|
+
let config: any = {
|
|
42
|
+
headers: customHeaders,
|
|
43
|
+
method: requestMethod,
|
|
44
|
+
auth: {
|
|
45
|
+
username: "",
|
|
46
|
+
password: pat,
|
|
47
|
+
},
|
|
48
|
+
data: data,
|
|
49
|
+
};
|
|
50
|
+
let json;
|
|
51
|
+
logger.silly(`making request:
|
|
52
|
+
url: ${url}
|
|
53
|
+
config: ${JSON.stringify(config)}`);
|
|
54
|
+
try {
|
|
55
|
+
let result = await axios(url, config);
|
|
56
|
+
json = JSON.parse(JSON.stringify(result.data));
|
|
57
|
+
} catch (e) {
|
|
58
|
+
logger.error(`error making request to azure devops , url : ${url}`);
|
|
59
|
+
// logger.error(JSON.stringify(e.data));
|
|
60
|
+
}
|
|
61
|
+
return json;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
public static async postRequest(
|
|
65
|
+
url: string,
|
|
66
|
+
pat: string,
|
|
67
|
+
requestMethod: string = "post",
|
|
68
|
+
data: any,
|
|
69
|
+
customHeaders: any = {}
|
|
70
|
+
): Promise<any> {
|
|
71
|
+
let config: any = {
|
|
72
|
+
headers: customHeaders,
|
|
73
|
+
method: requestMethod,
|
|
74
|
+
auth: {
|
|
75
|
+
username: "",
|
|
76
|
+
password: pat,
|
|
77
|
+
},
|
|
78
|
+
data: data,
|
|
79
|
+
};
|
|
80
|
+
let result;
|
|
81
|
+
logger.silly(`making request:
|
|
82
|
+
url: ${url}
|
|
83
|
+
config: ${JSON.stringify(config)}`);
|
|
84
|
+
try {
|
|
85
|
+
result = await axios(url, config);
|
|
86
|
+
} catch (e) {
|
|
87
|
+
logger.error(`error making post request to azure devops`);
|
|
88
|
+
console.log(e);
|
|
89
|
+
}
|
|
90
|
+
return result;
|
|
91
|
+
}
|
|
92
|
+
}
|
package/src/index.ts
CHANGED
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
import MangementDataProvider from './modules/MangementDataProvider'
|
|
2
|
-
import TicketsDataProvider from './modules/TicketsDataProvider'
|
|
3
|
-
import GitDataProvider from "./modules/GitDataProvider";
|
|
4
|
-
import PipelinesDataProvider from './modules/PipelinesDataProvider'
|
|
5
|
-
import TestDataProvider from './modules/TestDataProvider'
|
|
6
|
-
|
|
7
|
-
import logger from "./utils/logger";
|
|
8
|
-
|
|
9
|
-
export default class DgDataProviderAzureDevOps {
|
|
10
|
-
orgUrl: string = "";
|
|
11
|
-
token: string = "";
|
|
12
|
-
apiVersion: string;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
constructor(orgUrl: string, token: string, apiVersion?: string) {
|
|
16
|
-
this.orgUrl = orgUrl;
|
|
17
|
-
this.token = token;
|
|
18
|
-
logger.info(`azure devops data provider initilized`);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
async getMangementDataProvider() : Promise<MangementDataProvider> {
|
|
22
|
-
return new MangementDataProvider(this.orgUrl, this.token);
|
|
23
|
-
}
|
|
24
|
-
async getTicketsDataProvider() : Promise<TicketsDataProvider> {
|
|
25
|
-
return new TicketsDataProvider(this.orgUrl, this.token);
|
|
26
|
-
}
|
|
27
|
-
async getGitDataProvider() : Promise<GitDataProvider> {
|
|
28
|
-
return new GitDataProvider(this.orgUrl, this.token);
|
|
29
|
-
}
|
|
30
|
-
async getPipelinesDataProvider() : Promise<PipelinesDataProvider> {
|
|
31
|
-
return new PipelinesDataProvider(this.orgUrl, this.token);
|
|
32
|
-
}
|
|
33
|
-
async getTestDataProvider() : Promise<TestDataProvider> {
|
|
34
|
-
return new TestDataProvider(this.orgUrl, this.token);
|
|
35
|
-
}
|
|
36
|
-
} //class
|
|
1
|
+
import MangementDataProvider from './modules/MangementDataProvider'
|
|
2
|
+
import TicketsDataProvider from './modules/TicketsDataProvider'
|
|
3
|
+
import GitDataProvider from "./modules/GitDataProvider";
|
|
4
|
+
import PipelinesDataProvider from './modules/PipelinesDataProvider'
|
|
5
|
+
import TestDataProvider from './modules/TestDataProvider'
|
|
6
|
+
|
|
7
|
+
import logger from "./utils/logger";
|
|
8
|
+
|
|
9
|
+
export default class DgDataProviderAzureDevOps {
|
|
10
|
+
orgUrl: string = "";
|
|
11
|
+
token: string = "";
|
|
12
|
+
apiVersion: string;
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
constructor(orgUrl: string, token: string, apiVersion?: string) {
|
|
16
|
+
this.orgUrl = orgUrl;
|
|
17
|
+
this.token = token;
|
|
18
|
+
logger.info(`azure devops data provider initilized`);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
async getMangementDataProvider() : Promise<MangementDataProvider> {
|
|
22
|
+
return new MangementDataProvider(this.orgUrl, this.token);
|
|
23
|
+
}
|
|
24
|
+
async getTicketsDataProvider() : Promise<TicketsDataProvider> {
|
|
25
|
+
return new TicketsDataProvider(this.orgUrl, this.token);
|
|
26
|
+
}
|
|
27
|
+
async getGitDataProvider() : Promise<GitDataProvider> {
|
|
28
|
+
return new GitDataProvider(this.orgUrl, this.token);
|
|
29
|
+
}
|
|
30
|
+
async getPipelinesDataProvider() : Promise<PipelinesDataProvider> {
|
|
31
|
+
return new PipelinesDataProvider(this.orgUrl, this.token);
|
|
32
|
+
}
|
|
33
|
+
async getTestDataProvider() : Promise<TestDataProvider> {
|
|
34
|
+
return new TestDataProvider(this.orgUrl, this.token);
|
|
35
|
+
}
|
|
36
|
+
} //class
|