upstream now appears to work just fine
[nodejs-repoproxy.git] / lib / config.js
index dd13be4..7cab68a 100644 (file)
@@ -6,7 +6,8 @@ exports.loadConfig = function (conffile) {
        global.repoproxy.listenPort = 8008;
        global.repoproxy.cacheDir = "./cache";
        global.repoproxy.repo = new Object();
-       global.repoproxy.scancache = 1; 
+       global.repoproxy.scancache = 1;
+       global.repoproxy.downloads = new Object();
        
        var confFileData = fs.readFileSync(conffile, "utf8");
        
@@ -33,9 +34,9 @@ exports.loadConfig = function (conffile) {
                        
                        break;
                case "cachedir":
-                       console.log("Cache dir set to: ", line_real[1]);
-                       global.repoproxy.cacheDir = line_real[1];
-                       
+                       var tmppath = line_real[1].replace(/\/+/g, "/");
+                       console.log("Cache dir set to: ", tmppath);
+                       global.repoproxy.cacheDir = tmppath;
                        break;
                case "listenport":
                        console.log("Port set to: ", line_real[1]);
@@ -67,18 +68,28 @@ function createCacheStructure() {
        } catch(e) {
                try {
                        fs.mkdirSync(global.repoproxy.cacheDir);
+                       fs.mkdirSync(global.repoproxy.cacheDir + "/.cleanup");
                } catch(ex) {
                        console.log("ERROR: failure to create cache directory, '%s'", global.repoproxy.cacheDir);
                }
        }
        
+       try {
+               fs.mkdirSync(global.repoproxy.cacheDir + "/.cleanup");
+       } catch(ex) {
+               console.log("ERROR: cant create cleanup directory, '%s'", global.repoproxy.cacheDir + "/.cleanup");
+       }
+       
+       console.log("next: ", global.repoproxy.repo);
        for(var index in global.repoproxy.repo) {
                var fullDir = global.repoproxy.cacheDir + "/" + index;
+               console.log("on end, ", fullDir);
                try {
-                       var state = fs.statSync(global.repoproxy.cacheDir);
-                       //console.log("state is:", state);
+                       var state = fs.statSync(fullDir);
+                       console.log("state is:", state);
                } catch(e) {
                        try {
+                               console.log("attempted to create cache dir, ", fullDir);
                                fs.mkdirSync(fullDir);
                        } catch(ex) {
                                console.log("ERROR: failed to create cache directory, '%s' for '%s'", fullDir, index);