From 52e9418dcc336ef1e063ef80663e112fbb9abc49 Mon Sep 17 00:00:00 2001 From: Rob Bos Date: Sun, 26 Mar 2023 20:05:46 +0000 Subject: [PATCH 1/5] Make the output directories if not exists --- .gitignore | 2 ++ src/action.js | 9 +++++++++ 2 files changed, 11 insertions(+) diff --git a/.gitignore b/.gitignore index 9b49811..087916c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ +reporting + # Logs logs *.log diff --git a/src/action.js b/src/action.js index 0a20e38..dc53e58 100644 --- a/src/action.js +++ b/src/action.js @@ -103,6 +103,10 @@ async function run () { // Save changes core.info('Saving changes to database and report') + // check if the directory exists, if not create it + const reportDirectory = reportPath.split('/').slice(0, -1).join('/') + await stat(reportDirectory).catch(() => exec.exec(`mkdir -p ${reportDirectory}`)) + await writeFile(databasePath, JSON.stringify(newDatabaseState, null, 2)) await writeFile(reportPath, reportTagsEnabled ? updateOrCreateSegment({ @@ -115,6 +119,11 @@ async function run () { if (discoveryEnabled) { core.info('Saving changes to scope...') + + // check if the directory exists, if not create it + const scopetDirectory = scopePath.split('/').slice(0, -1).join('/') + await stat(scopeDirectory).catch(() => exec.exec(`mkdir -p ${scopeDirectory}`)) + await writeFile(scopePath, JSON.stringify(scope, null, 2)) } From c2ba43cff59e60abc228fc74043326d18494ec26 Mon Sep 17 00:00:00 2001 From: Rob Bos Date: Mon, 10 Apr 2023 20:21:10 +0000 Subject: [PATCH 2/5] move functions to utils.js --- src/action.js | 16 +++++----------- src/utils.js | 14 ++++++++++++-- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/src/action.js b/src/action.js index 0d52af2..49ec963 100644 --- a/src/action.js +++ b/src/action.js @@ -7,7 +7,7 @@ const { readFile, writeFile, stat } = require('fs').promises const { isDifferent } = require('@ulisesgascon/is-different') const { updateOrCreateSegment } = require('@ulisesgascon/text-tags-manager') const { generateScores, generateScope } = require('./') -const { validateDatabaseIntegrity, validateScopeIntegrity } = require('./utils') +const { validateDatabaseIntegrity, validateScopeIntegrity, makeDirectory } = require('./utils') async function run () { let octokit @@ -104,10 +104,8 @@ async function run () { // Save changes core.info('Saving changes to database and report') - // check if the directory exists, if not create it - const reportDirectory = reportPath.split('/').slice(0, -1).join('/') - await stat(reportDirectory).catch(() => exec.exec(`mkdir -p ${reportDirectory}`)) - + console.log('Saving changes to database and report') + makeDirectory(reportPath) await writeFile(databasePath, JSON.stringify(newDatabaseState, null, 2)) await writeFile(reportPath, reportTagsEnabled ? updateOrCreateSegment({ @@ -119,12 +117,8 @@ async function run () { : reportContent) if (discoveryEnabled) { - core.info('Saving changes to scope...') - - // check if the directory exists, if not create it - const scopetDirectory = scopePath.split('/').slice(0, -1).join('/') - await stat(scopeDirectory).catch(() => exec.exec(`mkdir -p ${scopeDirectory}`)) - + core.info('Saving changes to scope...') + makeDirectory(scopePath) await writeFile(scopePath, JSON.stringify(scope, null, 2)) } diff --git a/src/utils.js b/src/utils.js index 901d4b0..d42cbf0 100644 --- a/src/utils.js +++ b/src/utils.js @@ -1,7 +1,7 @@ const got = require('got') const core = require('@actions/core') const ejs = require('ejs') -const { readFile } = require('fs').promises +const { readFile, existsSync, mkdir } = require('fs').promises const { join } = require('path') const { softAssign } = require('@ulisesgascon/soft-assign-deep-property') const databaseSchema = require('../schemas/database.json') @@ -58,6 +58,15 @@ const generateIssueContent = async (scores, renderBadge) => { return ejs.render(template, { scores: scoresInScope, renderBadge }) } +const makeDirectory = ({ path }) => { + console.log('Making directory', path) + const directories = path.split('/').slice(0, -1).join('/') + core.debug(`Making directory ${directories}`) + if (!existsSync(directories)) { + mkdirSync(directories, { recursive: true }) + } +} + module.exports = { validateDatabaseIntegrity: validateAgainstSchema(databaseSchema, 'database'), validateScopeIntegrity: validateAgainstSchema(scopeSchema, 'scope'), @@ -65,5 +74,6 @@ module.exports = { saveScore, getScore, generateReportContent, - generateIssueContent + generateIssueContent, + makeDirectory } From 1cb3b946ffa03f7384da724af2d683d2c199470e Mon Sep 17 00:00:00 2001 From: Rob Bos Date: Mon, 10 Apr 2023 20:23:34 +0000 Subject: [PATCH 3/5] Add compiled javascript --- dist/index.js | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/dist/index.js b/dist/index.js index f17e3d6..f779fbf 100644 --- a/dist/index.js +++ b/dist/index.js @@ -27793,7 +27793,7 @@ module.exports = { const got = __nccwpck_require__(3061) const core = __nccwpck_require__(2186) const ejs = __nccwpck_require__(8431) -const { readFile } = (__nccwpck_require__(7147).promises) +const { readFile, existsSync, mkdir } = (__nccwpck_require__(7147).promises) const { join } = __nccwpck_require__(1017) const { softAssign } = __nccwpck_require__(7348) const databaseSchema = __nccwpck_require__(5324) @@ -27850,6 +27850,15 @@ const generateIssueContent = async (scores, renderBadge) => { return ejs.render(template, { scores: scoresInScope, renderBadge }) } +const makeDirectory = ({ path }) => { + console.log('Making directory', path) + const directories = path.split('/').slice(0, -1).join('/') + core.debug(`Making directory ${directories}`) + if (!existsSync(directories)) { + mkdirSync(directories, { recursive: true }) + } +} + module.exports = { validateDatabaseIntegrity: validateAgainstSchema(databaseSchema, 'database'), validateScopeIntegrity: validateAgainstSchema(scopeSchema, 'scope'), @@ -27857,7 +27866,8 @@ module.exports = { saveScore, getScore, generateReportContent, - generateIssueContent + generateIssueContent, + makeDirectory } @@ -28137,7 +28147,7 @@ const { readFile, writeFile, stat } = (__nccwpck_require__(7147).promises) const { isDifferent } = __nccwpck_require__(9497) const { updateOrCreateSegment } = __nccwpck_require__(7794) const { generateScores, generateScope } = __nccwpck_require__(4351) -const { validateDatabaseIntegrity, validateScopeIntegrity } = __nccwpck_require__(1608) +const { validateDatabaseIntegrity, validateScopeIntegrity, makeDirectory } = __nccwpck_require__(1608) async function run () { let octokit @@ -28234,6 +28244,8 @@ async function run () { // Save changes core.info('Saving changes to database and report') + console.log('Saving changes to database and report') + makeDirectory(reportPath) await writeFile(databasePath, JSON.stringify(newDatabaseState, null, 2)) await writeFile(reportPath, reportTagsEnabled ? updateOrCreateSegment({ @@ -28245,7 +28257,8 @@ async function run () { : reportContent) if (discoveryEnabled) { - core.info('Saving changes to scope...') + core.info('Saving changes to scope...') + makeDirectory(scopePath) await writeFile(scopePath, JSON.stringify(scope, null, 2)) } From dcbd9b70af50c0a2977c8b7bc6fbd9ca79e054ed Mon Sep 17 00:00:00 2001 From: Rob Bos Date: Mon, 10 Apr 2023 20:26:50 +0000 Subject: [PATCH 4/5] Cleanup from linters --- dist/index.js | 8 ++++---- src/action.js | 2 +- src/utils.js | 6 +++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/dist/index.js b/dist/index.js index f779fbf..9941db4 100644 --- a/dist/index.js +++ b/dist/index.js @@ -27793,7 +27793,7 @@ module.exports = { const got = __nccwpck_require__(3061) const core = __nccwpck_require__(2186) const ejs = __nccwpck_require__(8431) -const { readFile, existsSync, mkdir } = (__nccwpck_require__(7147).promises) +const { readFile, existsSync, mkdirSync } = (__nccwpck_require__(7147).promises) const { join } = __nccwpck_require__(1017) const { softAssign } = __nccwpck_require__(7348) const databaseSchema = __nccwpck_require__(5324) @@ -27851,10 +27851,10 @@ const generateIssueContent = async (scores, renderBadge) => { } const makeDirectory = ({ path }) => { - console.log('Making directory', path) const directories = path.split('/').slice(0, -1).join('/') - core.debug(`Making directory ${directories}`) + core.debug(`Making directory ${directories}`) if (!existsSync(directories)) { + core.debug('Making directory: ', path) mkdirSync(directories, { recursive: true }) } } @@ -28257,7 +28257,7 @@ async function run () { : reportContent) if (discoveryEnabled) { - core.info('Saving changes to scope...') + core.info('Saving changes to scope...') makeDirectory(scopePath) await writeFile(scopePath, JSON.stringify(scope, null, 2)) } diff --git a/src/action.js b/src/action.js index 49ec963..a8b12b1 100644 --- a/src/action.js +++ b/src/action.js @@ -117,7 +117,7 @@ async function run () { : reportContent) if (discoveryEnabled) { - core.info('Saving changes to scope...') + core.info('Saving changes to scope...') makeDirectory(scopePath) await writeFile(scopePath, JSON.stringify(scope, null, 2)) } diff --git a/src/utils.js b/src/utils.js index d42cbf0..4290291 100644 --- a/src/utils.js +++ b/src/utils.js @@ -1,7 +1,7 @@ const got = require('got') const core = require('@actions/core') const ejs = require('ejs') -const { readFile, existsSync, mkdir } = require('fs').promises +const { readFile, existsSync, mkdirSync } = require('fs').promises const { join } = require('path') const { softAssign } = require('@ulisesgascon/soft-assign-deep-property') const databaseSchema = require('../schemas/database.json') @@ -59,10 +59,10 @@ const generateIssueContent = async (scores, renderBadge) => { } const makeDirectory = ({ path }) => { - console.log('Making directory', path) const directories = path.split('/').slice(0, -1).join('/') - core.debug(`Making directory ${directories}`) + core.debug(`Making directory ${directories}`) if (!existsSync(directories)) { + core.debug('Making directory: ', path) mkdirSync(directories, { recursive: true }) } } From 29d8f44300be2223e64eb5c18a0fa2be147c2e62 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ulises=20Gasc=C3=B3n?= Date: Tue, 11 Apr 2023 11:27:45 +0200 Subject: [PATCH 5/5] fix: typo --- src/utils.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils.js b/src/utils.js index 4290291..f671e8e 100644 --- a/src/utils.js +++ b/src/utils.js @@ -58,7 +58,7 @@ const generateIssueContent = async (scores, renderBadge) => { return ejs.render(template, { scores: scoresInScope, renderBadge }) } -const makeDirectory = ({ path }) => { +const makeDirectory = ( path ) => { const directories = path.split('/').slice(0, -1).join('/') core.debug(`Making directory ${directories}`) if (!existsSync(directories)) {