diff --git a/lib/diagnostics.js b/lib/diagnostics.js index 90a64accd..f83221c57 100644 --- a/lib/diagnostics.js +++ b/lib/diagnostics.js @@ -32,6 +32,8 @@ exports.makeDiagnostic = makeDiagnostic; function addDiagnostic(config, diagnostic) { const logger = (0, logging_1.getActionsLogger)(); const diagnosticsPath = path_1.default.resolve(config.dbLocation, "diagnostic", "codeql-action"); + // Create the directory if it doesn't exist yet. + (0, fs_1.mkdirSync)(diagnosticsPath, { recursive: true }); const jsonPath = path_1.default.resolve(diagnosticsPath, `codeql-action-${diagnostic.timestamp}.json`); try { (0, fs_1.writeFileSync)(jsonPath, JSON.stringify(diagnostic)); diff --git a/lib/diagnostics.js.map b/lib/diagnostics.js.map index 3342b869e..530299d99 100644 --- a/lib/diagnostics.js.map +++ b/lib/diagnostics.js.map @@ -1 +1 @@ -{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../src/diagnostics.ts"],"names":[],"mappings":";;;;;;AAAA,2BAAmC;AACnC,gDAAwB;AAGxB,uCAA6C;AAmD7C;;;;;;;GAOG;AACH,SAAgB,cAAc,CAC5B,EAAU,EACV,IAAY,EACZ,OAA+C,SAAS;IAExD,OAAO;QACL,GAAG,IAAI;QACP,SAAS,EAAE,IAAI,EAAE,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACtD,MAAM,EAAE,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE;KACtC,CAAC;AACJ,CAAC;AAVD,wCAUC;AAED;;;;;GAKG;AACH,SAAgB,aAAa,CAAC,MAAc,EAAE,UAA6B;IACzE,MAAM,MAAM,GAAG,IAAA,0BAAgB,GAAE,CAAC;IAClC,MAAM,eAAe,GAAG,cAAI,CAAC,OAAO,CAClC,MAAM,CAAC,UAAU,EACjB,YAAY,EACZ,eAAe,CAChB,CAAC;IACF,MAAM,QAAQ,GAAG,cAAI,CAAC,OAAO,CAC3B,eAAe,EACf,iBAAiB,UAAU,CAAC,SAAS,OAAO,CAC7C,CAAC;IAEF,IAAI;QACF,IAAA,kBAAa,EAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;KACrD;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,CAAC,OAAO,CAAC,mDAAmD,GAAG,EAAE,CAAC,CAAC;KAC1E;AACH,CAAC;AAjBD,sCAiBC"} \ No newline at end of file +{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../src/diagnostics.ts"],"names":[],"mappings":";;;;;;AAAA,2BAA8C;AAC9C,gDAAwB;AAGxB,uCAA6C;AAmD7C;;;;;;;GAOG;AACH,SAAgB,cAAc,CAC5B,EAAU,EACV,IAAY,EACZ,OAA+C,SAAS;IAExD,OAAO;QACL,GAAG,IAAI;QACP,SAAS,EAAE,IAAI,EAAE,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACtD,MAAM,EAAE,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE;KACtC,CAAC;AACJ,CAAC;AAVD,wCAUC;AAED;;;;;GAKG;AACH,SAAgB,aAAa,CAAC,MAAc,EAAE,UAA6B;IACzE,MAAM,MAAM,GAAG,IAAA,0BAAgB,GAAE,CAAC;IAClC,MAAM,eAAe,GAAG,cAAI,CAAC,OAAO,CAClC,MAAM,CAAC,UAAU,EACjB,YAAY,EACZ,eAAe,CAChB,CAAC;IAEF,gDAAgD;IAChD,IAAA,cAAS,EAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhD,MAAM,QAAQ,GAAG,cAAI,CAAC,OAAO,CAC3B,eAAe,EACf,iBAAiB,UAAU,CAAC,SAAS,OAAO,CAC7C,CAAC;IAEF,IAAI;QACF,IAAA,kBAAa,EAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;KACrD;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,CAAC,OAAO,CAAC,mDAAmD,GAAG,EAAE,CAAC,CAAC;KAC1E;AACH,CAAC;AArBD,sCAqBC"} \ No newline at end of file diff --git a/src/diagnostics.ts b/src/diagnostics.ts index 39b9a1ad1..67cb29042 100644 --- a/src/diagnostics.ts +++ b/src/diagnostics.ts @@ -1,4 +1,4 @@ -import { writeFileSync } from "fs"; +import { mkdirSync, writeFileSync } from "fs"; import path from "path"; import { Config } from "./config-utils"; @@ -86,6 +86,10 @@ export function addDiagnostic(config: Config, diagnostic: DiagnosticMessage) { "diagnostic", "codeql-action", ); + + // Create the directory if it doesn't exist yet. + mkdirSync(diagnosticsPath, { recursive: true }); + const jsonPath = path.resolve( diagnosticsPath, `codeql-action-${diagnostic.timestamp}.json`,