@@ -16,8 +16,27 @@ type LogLine = {
16
16
message: string ;
17
17
};
18
18
19
- const LogLinePrefixGroup = ' ::group::' ;
20
- const LogLinePrefixEndGroup = ' ::endgroup::' ;
19
+ const LogLinePrefixesGroup = [' ::group::' , ' ##[group]' ];
20
+ const LogLinePrefixesEndGroup = [' ::endgroup::' , ' ##[endgroup]' ];
21
+
22
+ type LogLineCommand = {
23
+ name: ' group' | ' endgroup' ,
24
+ prefix: string ,
25
+ }
26
+
27
+ function parseLineCommand(line : LogLine ): LogLineCommand | null {
28
+ for (const prefix of LogLinePrefixesGroup ) {
29
+ if (line .message .startsWith (prefix )) {
30
+ return {name: ' group' , prefix };
31
+ }
32
+ }
33
+ for (const prefix of LogLinePrefixesEndGroup ) {
34
+ if (line .message .startsWith (prefix )) {
35
+ return {name: ' endgroup' , prefix };
36
+ }
37
+ }
38
+ return null ;
39
+ }
21
40
22
41
const sfc = {
23
42
name: ' RepoActionView' ,
@@ -129,13 +148,13 @@ const sfc = {
129
148
return el ._stepLogsActiveContainer ?? el ;
130
149
},
131
150
// begin a log group
132
- beginLogGroup(stepIndex : number , startTime : number , line : LogLine ) {
151
+ beginLogGroup(stepIndex : number , startTime : number , line : LogLine , cmd : LogLineCommand ) {
133
152
const el = this .$refs .logs [stepIndex ];
134
153
const elJobLogGroupSummary = createElementFromAttrs (' summary' , {class: ' job-log-group-summary' },
135
154
this .createLogLine (stepIndex , startTime , {
136
155
index: line .index ,
137
156
timestamp: line .timestamp ,
138
- message: line .message .substring (LogLinePrefixGroup .length ),
157
+ message: line .message .substring (cmd . prefix .length ),
139
158
}),
140
159
);
141
160
const elJobLogList = createElementFromAttrs (' div' , {class: ' job-log-list' });
@@ -147,13 +166,13 @@ const sfc = {
147
166
el ._stepLogsActiveContainer = elJobLogList ;
148
167
},
149
168
// end a log group
150
- endLogGroup(stepIndex : number , startTime : number , line : LogLine ) {
169
+ endLogGroup(stepIndex : number , startTime : number , line : LogLine , cmd : LogLineCommand ) {
151
170
const el = this .$refs .logs [stepIndex ];
152
171
el ._stepLogsActiveContainer = null ;
153
172
el .append (this .createLogLine (stepIndex , startTime , {
154
173
index: line .index ,
155
174
timestamp: line .timestamp ,
156
- message: line .message .substring (LogLinePrefixEndGroup .length ),
175
+ message: line .message .substring (cmd . prefix .length ),
157
176
}));
158
177
},
159
178
@@ -201,11 +220,12 @@ const sfc = {
201
220
appendLogs(stepIndex : number , startTime : number , logLines : LogLine []) {
202
221
for (const line of logLines ) {
203
222
const el = this .getLogsContainer (stepIndex );
204
- if (line .message .startsWith (LogLinePrefixGroup )) {
205
- this .beginLogGroup (stepIndex , startTime , line );
223
+ const cmd = parseLineCommand (line );
224
+ if (cmd ?.name === ' group' ) {
225
+ this .beginLogGroup (stepIndex , startTime , line , cmd );
206
226
continue ;
207
- } else if (line . message . startsWith ( LogLinePrefixEndGroup ) ) {
208
- this .endLogGroup (stepIndex , startTime , line );
227
+ } else if (cmd ?. name === ' endgroup ' ) {
228
+ this .endLogGroup (stepIndex , startTime , line , cmd );
209
229
continue ;
210
230
}
211
231
el .append (this .createLogLine (stepIndex , startTime , line ));
@@ -393,7 +413,7 @@ export function initRepositoryActionView() {
393
413
<button class =" ui basic small compact button red" @click =" cancelRun()" v-else-if =" run.canCancel" >
394
414
{{ locale.cancel }}
395
415
</button >
396
- <button class =" ui basic small compact button tw-mr-0 tw-whitespace-nowrap link-action" :data-url =" `${run.link}/rerun`" v-else-if =" run.canRerun" >
416
+ <button class =" ui basic small compact button link-action" :data-url =" `${run.link}/rerun`" v-else-if =" run.canRerun" >
397
417
{{ locale.rerun_all }}
398
418
</button >
399
419
</div >
@@ -539,6 +559,11 @@ export function initRepositoryActionView() {
539
559
overflow-wrap : anywhere;
540
560
}
541
561
562
+ .action-info-summary .ui.button {
563
+ margin : 0 ;
564
+ white-space : nowrap ;
565
+ }
566
+
542
567
.action-commit-summary {
543
568
display : flex ;
544
569
flex-wrap : wrap ;
0 commit comments