-
Notifications
You must be signed in to change notification settings - Fork 0
/
init.js
56 lines (48 loc) · 1.18 KB
/
init.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
var async = require('async'),
fs = require('fs');
var directories = [
{
name: 'tiles',
path: __dirname + '/tiles',
mask: 0744
},
{
name: 'build',
path: __dirname + '/build',
mask: 0744
}
];
var mkdir = function (path, mask, cb) {
if (typeof mask == 'function') { // allow the `mask` parameter to be optional
cb = mask;
mask = 0777;
}
fs.mkdir(path, mask, function(err) {
if (err) {
if (err.code == 'EEXIST') cb(null); // ignore the error if the folder already exists
else cb(err); // something else went wrong
} else cb(null); // successfully created folder
});
};
var init = function (cb) {
async.each(directories, function(dir, callback){
mkdir(dir.path, dir.mask, function(err) {
if (err) console.log("error creating folder");
else callback()
});
}, function(err) {
if(err) {
console.log("init failed");
// throw something
return false;
}
mkdir(__dirname + '/tiles/16', 0744, function(err) {
if (err) console.log("error creating folder");
else {
console.log("init finished");
cb();
}
});
});
};
module.exports = init;