github.com/ouraigua/jenkins-library@v0.0.0-20231028010029-fbeaf2f3aa9b/pkg/toolrecord/REAMDE_toolrecord.md (about)

     1  Purpose of the "toolrecord" feature is to provide a common result file for tools (e.g. code scanners) to allow consumers of the piper result files to locate the results in the respective tool backends for further reporting and post processing
     2  
     3  Currently it contains the minimal information to detect which tools have been executed, and where to locate the results in the respective tool backends.
     4  
     5  The result files are called "tr_toolname_YYYYMMDDHHMMSS.json" and have the following structure:
     6  
     7  {
     8      "RecordVersion":1,
     9      "ToolName":"dummyTool",
    10      "ToolInstance":"dummyInstance",   // Tool backend URL
    11  
    12      // Tool-agnostic DisplayName and DisplayUrl for simple reportings
    13      // ( this is deried from the keys details )
    14      "DisplayName":"dummyOrgName - dummyProjName - dummyScanName",
    15      "DisplayURL":"dummyScanUrl",
    16  
    17      // tool-dependend identifiers; order is taken of tool's data model e.g. 'team owns project has scan'
    18      "Keys":[
    19          {
    20              "Name":"Organization",         // the technical name from the tool's data model
    21              "Value":"dummyOrgId",          // the key value needed to access the tool's backend via api
    22              "DisplayName":"dummyOrgName",  // User-friendly identifiert - optional can be empty
    23              "URL":"dummyOrgUrl"            // Url to access this data in the tool's ui - optional can be empty
    24          },
    25          {"Name":"Project","Value":"dummyProjectId","DisplayName":"dummyProjName","Url":"dummyProjUrl"},
    26          {"Name":"ScanId","Value":"dummyScanId","DisplayName":"dummyScanName","Url":"dummyScanUrl"}
    27          ],
    28  
    29      "Context":{}                            // additional context data - optional tool dependend
    30  }