mirror of
https://github.com/S2-/gitlit
synced 2025-08-04 05:10:05 +02:00
add node modules to repo
This commit is contained in:
86
node_modules/mksnapshot/lib/mksnapshot-path.js
generated
vendored
Normal file
86
node_modules/mksnapshot/lib/mksnapshot-path.js
generated
vendored
Normal file
@@ -0,0 +1,86 @@
|
||||
(function() {
|
||||
var REPO_URL, downloadFileToLocation, fs, getPathOfMksnapshot, path, request, unzipFile;
|
||||
|
||||
fs = require('fs-extra');
|
||||
|
||||
path = require('path');
|
||||
|
||||
request = require('request');
|
||||
|
||||
REPO_URL = 'https://github.com/electron/electron';
|
||||
|
||||
downloadFileToLocation = function(url, filename, callback) {
|
||||
var requestStream, stream;
|
||||
stream = fs.createWriteStream(filename);
|
||||
stream.on('close', callback);
|
||||
stream.on('error', callback);
|
||||
requestStream = request.get(url);
|
||||
requestStream.on('error', callback);
|
||||
return requestStream.on('response', function(response) {
|
||||
if (response.statusCode === 200) {
|
||||
return requestStream.pipe(stream);
|
||||
} else {
|
||||
return callback(new Error("Server responded " + response.statusCode));
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
unzipFile = function(zipPath, callback) {
|
||||
var DecompressZip, unzipper;
|
||||
DecompressZip = require('decompress-zip');
|
||||
unzipper = new DecompressZip(zipPath);
|
||||
unzipper.on('error', callback);
|
||||
unzipper.on('extract', function() {
|
||||
return callback(null);
|
||||
});
|
||||
return unzipper.extract({
|
||||
path: path.dirname(zipPath)
|
||||
});
|
||||
};
|
||||
|
||||
getPathOfMksnapshot = function(version, arch, builddir, callback) {
|
||||
var mksnapshot, versionFile;
|
||||
mksnapshot = path.resolve(builddir, 'mksnapshot');
|
||||
if (process.platform === 'win32') {
|
||||
mksnapshot += '.exe';
|
||||
}
|
||||
versionFile = path.join(builddir, '.mksnapshot_version');
|
||||
return fs.readFile(versionFile, function(error, currentVersion) {
|
||||
if (!error && String(currentVersion).trim() === version) {
|
||||
return callback(null, mksnapshot);
|
||||
}
|
||||
return fs.mkdirp(builddir, function(error) {
|
||||
var filename, target, url;
|
||||
if (error) {
|
||||
return callback(error);
|
||||
}
|
||||
filename = "mksnapshot-v" + version + "-" + process.platform + "-" + arch + ".zip";
|
||||
url = "" + REPO_URL + "/releases/download/v" + version + "/" + filename;
|
||||
target = path.join(builddir, filename);
|
||||
return downloadFileToLocation(url, target, function(error) {
|
||||
if (error) {
|
||||
return callback(error);
|
||||
}
|
||||
return unzipFile(target, function(error) {
|
||||
if (error) {
|
||||
return callback(error);
|
||||
}
|
||||
try {
|
||||
if (process.platform !== 'win32') {
|
||||
fs.chmodSync(mksnapshot, '755');
|
||||
}
|
||||
fs.writeFileSync(versionFile, version);
|
||||
} catch (_error) {
|
||||
error = _error;
|
||||
return callback(error);
|
||||
}
|
||||
return callback(null, mksnapshot);
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
module.exports = getPathOfMksnapshot;
|
||||
|
||||
}).call(this);
|
Reference in New Issue
Block a user