1
1
const { getSuiteHistory, getLastLaunchByName, getLaunchDetails } = require ( '../helpers/report-portal' ) ;
2
+ const { addExtension } = require ( '../helpers/teams' ) ;
3
+ const { addSectionText } = require ( '../helpers/slack' ) ;
2
4
3
5
async function getLaunchHistory ( inputs ) {
4
6
if ( ! inputs . launch_id && inputs . launch_name ) {
@@ -31,28 +33,18 @@ function getSymbols(launches) {
31
33
return symbols ;
32
34
}
33
35
34
- function attachForTeams ( payload , symbols ) {
35
- payload . body . push ( {
36
- "type" : "TextBlock" ,
37
- "text" : `Last ${ symbols . length } Runs` ,
38
- "isSubtle" : true ,
39
- "weight" : "bolder" ,
40
- "separator" : true
41
- } ) ;
42
- payload . body . push ( {
43
- "type" : "TextBlock" ,
44
- "text" : symbols . join ( ' ' )
45
- } ) ;
36
+ function attachForTeams ( { payload, symbols, extension } ) {
37
+ if ( extension . inputs . title === 'Last Runs' ) {
38
+ extension . inputs . title = `Last ${ symbols . length } Runs`
39
+ }
40
+ addExtension ( { payload, extension, text : symbols . join ( ' ' ) } ) ;
46
41
}
47
42
48
- function attachForSlack ( payload , symbols ) {
49
- payload . blocks . push ( {
50
- "type" : "section" ,
51
- "text" : {
52
- "type" : "mrkdwn" ,
53
- "text" : `*Last ${ symbols . length } Runs*\n\n${ symbols . join ( ' ' ) } `
54
- }
55
- } ) ;
43
+ function attachForSlack ( { payload, symbols, extension } ) {
44
+ if ( extension . inputs . title === 'Last Runs' ) {
45
+ extension . inputs . title = `Last ${ symbols . length } Runs`
46
+ }
47
+ addSectionText ( { payload, extension, text : symbols . join ( ' ' ) } ) ;
56
48
}
57
49
58
50
async function run ( { extension, target, payload } ) {
@@ -62,9 +54,11 @@ async function run({ extension, target, payload }) {
62
54
const symbols = getSymbols ( launches ) ;
63
55
if ( symbols . length > 0 ) {
64
56
if ( target . name === 'teams' ) {
65
- attachForTeams ( payload , symbols ) ;
57
+ extension . inputs = Object . assign ( { } , default_inputs_teams , extension . inputs ) ;
58
+ attachForTeams ( { payload, symbols, extension } ) ;
66
59
} else {
67
- attachForSlack ( payload , symbols ) ;
60
+ extension . inputs = Object . assign ( { } , default_inputs_slack , extension . inputs ) ;
61
+ attachForSlack ( { payload, symbols, extension } ) ;
68
62
}
69
63
}
70
64
} catch ( error ) {
@@ -74,7 +68,16 @@ async function run({ extension, target, payload }) {
74
68
}
75
69
76
70
const default_inputs = {
77
- history_depth : 5
71
+ history_depth : 5 ,
72
+ title : 'Last Runs' ,
73
+ }
74
+
75
+ const default_inputs_teams = {
76
+ separator : true
77
+ }
78
+
79
+ const default_inputs_slack = {
80
+ separator : false
78
81
}
79
82
80
83
const default_options = {
0 commit comments