66
77 function runTaskGraph(plugin , pluginData )
88 runTaskGraph@matlab.buildtool.plugins.BuildRunnerPlugin(plugin , pluginData );
9- fID = fopen(fullfile(getenv(" WORKSPACE" ),' .matlab/buildArtifact.json' ), ' w' );
10- taskDetails = struct();
11- for idx = 1 : numel(pluginData .TaskResults )
12- taskDetails(idx ).name = pluginData .TaskResults(idx ).Name;
13- taskDetails(idx ).description = pluginData .TaskGraph .Tasks(idx ).Description;
14- taskDetails(idx ).failed = pluginData .TaskResults(idx ).Failed;
15- taskDetails(idx ).skipped = pluginData .TaskResults(idx ).Skipped;
16- taskDetails(idx ).duration = string(pluginData .TaskResults(idx ).Duration);
9+ [fID , msg ] = fopen(fullfile(getenv(" WORKSPACE" )," .matlab/buildArtifact.json" ), " w" );
10+
11+ if fID == - 1
12+ warning(" ciplugins:jenkins:BuildReportPlugin:UnableToOpenFile" ," Could not open a file for Jenkins build result table due to: %s" , msg );
13+ else
14+ closeFile = onCleanup(@()fclose(fID ));
15+ taskDetails = struct();
16+ for idx = 1 : numel(pluginData .TaskResults )
17+ taskDetails(idx ).name = pluginData .TaskResults(idx ).Name;
18+ taskDetails(idx ).description = pluginData .TaskGraph .Tasks(idx ).Description;
19+ taskDetails(idx ).failed = pluginData .TaskResults(idx ).Failed;
20+ taskDetails(idx ).skipped = pluginData .TaskResults(idx ).Skipped;
21+ taskDetails(idx ).duration = string(pluginData .TaskResults(idx ).Duration);
22+ end
23+ a = struct(" taskDetails" ,taskDetails );
24+ s = jsonencode(a ,PrettyPrint= true );
25+ fprintf(fID , " %s" ,s );
1726 end
18- a = struct(" taskDetails" ,taskDetails );
19- s = jsonencode(a ," PrettyPrint" ,true );
20- fprintf(fID , ' %s ' ,s );
21- fclose(fID );
2227 end
23-
2428 end
2529end
0 commit comments