From 93c88405242f2dfa008a79a0ff029ecab4d58df1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C3=ABl=20Minelli?= <michael@minelli.me>
Date: Wed, 2 Aug 2023 23:29:23 +0200
Subject: [PATCH] Config => Add artifacts folder and move to fs-extra

---
 ExerciceChecker/src/config/Config.ts | 21 ++++++++-------------
 1 file changed, 8 insertions(+), 13 deletions(-)

diff --git a/ExerciceChecker/src/config/Config.ts b/ExerciceChecker/src/config/Config.ts
index 3c17a1f..249315b 100644
--- a/ExerciceChecker/src/config/Config.ts
+++ b/ExerciceChecker/src/config/Config.ts
@@ -1,10 +1,10 @@
-import fs   from 'fs';
+import fs   from 'fs-extra';
 import path from 'path';
 
 
 class Config {
     public readonly folders: {
-        project: string; resultsVolume: string; resultsDojo: string; resultsExercice: string
+        project: string; resultsVolume: string; resultsDojo: string; resultsExercice: string; artifacts: string;
     };
 
     public readonly exercice: {
@@ -19,8 +19,9 @@ class Config {
         this.folders = {
             project        : process.env.FILES_FOLDER || './',
             resultsVolume  : process.env.RESULTS_VOLUME || '',
-            resultsDojo    : path.join(process.env.RESULTS_VOLUME || './', 'Dojo/'),
-            resultsExercice: path.join(process.env.RESULTS_VOLUME || './', 'Exercice/')
+            resultsDojo    : path.join(process.env.RESULTS_VOLUME || '', 'Dojo/'),
+            resultsExercice: path.join(process.env.RESULTS_VOLUME || '', 'Exercice/'),
+            artifacts      : process.env.ARTIFACTS_FOLDER || ''
         };
         this.resetResultsVolume();
 
@@ -35,15 +36,9 @@ class Config {
     }
 
     private resetResultsVolume(): void {
-        if ( this.folders.resultsVolume !== '' && fs.existsSync(this.folders.resultsVolume) ) {
-            fs.rmSync(this.folders.resultsVolume, {
-                recursive: true,
-                force    : true
-            });
-        }
-        fs.mkdirSync(this.folders.resultsVolume, { recursive: true });
-        fs.mkdirSync(this.folders.resultsDojo, { recursive: true });
-        fs.mkdirSync(this.folders.resultsExercice, { recursive: true });
+        fs.emptyDirSync(this.folders.resultsVolume);
+        fs.emptyDirSync(this.folders.resultsDojo);
+        fs.emptyDirSync(this.folders.resultsExercice);
     }
 }
 
-- 
GitLab