@@ -64,6 +64,8 @@ module.exports = config => ({
64
64
throw boom . notFound ( `Pipeline ${ pipelineId } does not exist` ) ;
65
65
}
66
66
67
+ logger . info ( `looking up pipeline from:${ pipelineId } , and found pipeline:${ pipeline } ` ) ;
68
+
67
69
tokenConfig . pipelineName = pipeline . name ;
68
70
}
69
71
@@ -82,50 +84,57 @@ module.exports = config => ({
82
84
83
85
const selfSonar = new CoveragePlugin ( selfSonarConfig ) ;
84
86
const data = await selfSonar . coveragePlugin . getAccessToken ( tokenConfig ) ;
85
- const projectUrl = selfSonar . coveragePlugin . getProjectData ( tokenConfig ) ;
86
-
87
- if ( pipeline && projectUrl ) {
88
- try {
89
- const pipelineSonarBadge = {
90
- defaultName : pipelineId ,
91
- defaultUri : projectUrl
92
- } ;
93
- let shouldPipelineUpdate = true ;
94
-
95
- if (
96
- pipeline . badges &&
97
- pipeline . badges . sonar &&
98
- pipeline . badges . sonar . defaultName === pipelineId &&
99
- pipeline . badges . sonar . defaultUri === projectUrl
100
- ) {
101
- shouldPipelineUpdate = false ;
102
- }
103
87
104
- if ( shouldPipelineUpdate ) {
105
- if ( pipeline . badges ) {
106
- pipeline . badges . sonar = pipelineSonarBadge ;
107
- } else {
108
- pipeline . badges = {
109
- sonar : pipelineSonarBadge
110
- } ;
111
- }
112
-
113
- await pipeline . update ( ) ;
114
- logger . info (
115
- `update pipeline:${ pipeline . id } 's sonar badge with defaultName:${ pipelineId } , defaultUri: ${ projectUrl } `
116
- ) ;
88
+ return h . response ( data ) ;
89
+ }
90
+
91
+ const data = await config . coveragePlugin . getAccessToken ( tokenConfig ) ;
92
+ const { projectUrl } = config . coveragePlugin . getProjectData ( tokenConfig ) ;
93
+
94
+ if ( ! pipeline && pipelineId ) {
95
+ pipeline = await pipelineFactory . get ( pipelineId ) ;
96
+
97
+ logger . info ( `looking up again, pipeline:${ pipelineId } , and found pipeline: ${ pipeline } ` ) ;
98
+ }
99
+
100
+ if ( pipeline && projectUrl ) {
101
+ try {
102
+ const pipelineSonarBadge = {
103
+ defaultName : `${ pipelineId } ` , // ensure pipelineId is stored as String instead of Integer
104
+ defaultUri : projectUrl
105
+ } ;
106
+ let shouldPipelineUpdate = true ;
107
+
108
+ if (
109
+ pipeline . badges &&
110
+ pipeline . badges . sonar &&
111
+ pipeline . badges . sonar . defaultName === pipelineId &&
112
+ pipeline . badges . sonar . defaultUri === projectUrl
113
+ ) {
114
+ shouldPipelineUpdate = false ;
115
+ }
116
+
117
+ if ( shouldPipelineUpdate ) {
118
+ if ( pipeline . badges ) {
119
+ pipeline . badges . sonar = pipelineSonarBadge ;
120
+ } else {
121
+ pipeline . badges = {
122
+ sonar : pipelineSonarBadge
123
+ } ;
117
124
}
118
- } catch ( err ) {
119
- logger . error ( `Failed to update pipeline:${ pipelineId } ` , err ) ;
120
125
121
- throw err ;
126
+ await pipeline . update ( ) ;
122
127
}
123
- }
124
128
125
- return h . response ( data ) ;
126
- }
129
+ logger . info (
130
+ `update pipeline:${ pipeline . id } 's sonar badge with pipeline.badges, ${ pipeline . badges } `
131
+ ) ;
132
+ } catch ( err ) {
133
+ logger . error ( `Failed to update pipeline:${ pipelineId } ` , err ) ;
127
134
128
- const data = await config . coveragePlugin . getAccessToken ( tokenConfig ) ;
135
+ throw err ;
136
+ }
137
+ }
129
138
130
139
return h . response ( data ) ;
131
140
}
0 commit comments