Commit 5759276e by xzyfer

Revert "Install: Use a cache folder for binary download"

This reverts commit b6558523.
parent 73726fe7
......@@ -260,17 +260,6 @@ function getBinaryPath() {
}
/**
* Looks for the configured cache path. If none is found, fall back to the NPM
* cache folder
*
* @api public
*/
function getCachePath() {
return process.env.npm_config_sass_binary_cache ||
process.env.npm_config_cache;
}
/**
* Does the supplied binary path exist
*
* @param {String} binaryPath
......@@ -298,7 +287,6 @@ module.exports.hasBinary = hasBinary;
module.exports.getBinaryUrl = getBinaryUrl;
module.exports.getBinaryName = getBinaryName;
module.exports.getBinaryPath = getBinaryPath;
module.exports.getCachePath = getCachePath;
module.exports.getVersionInfo = getVersionInfo;
module.exports.getHumanEnvironment = getHumanEnvironment;
module.exports.getInstalledBinaries = getInstalledBinaries;
......
......@@ -103,50 +103,37 @@ function download(url, dest, cb) {
*/
function checkAndDownloadBinary() {
if (process.env.SKIP_SASS_BINARY_DOWNLOAD_FOR_CI) {
console.log('Skipping downloading binaries on CI builds');
if (sass.hasBinary(sass.getBinaryPath())) {
return;
}
var binaryPath = sass.getBinaryPath();
if (sass.hasBinary(binaryPath)) {
return;
}
mkdir(path.dirname(binaryPath), function(err) {
mkdir(path.dirname(sass.getBinaryPath()), function(err) {
if (err) {
console.error(err);
return;
}
var cachePath = path.join(sass.getCachePath(), pkg.name, pkg.version);
var cacheBinary = path.join(cachePath, sass.getBinaryName());
if (fs.existsSync(cacheBinary)) {
console.log('Found existing binary in ' + cacheBinary);
fs.createReadStream(cacheBinary).pipe(fs.createWriteStream(binaryPath));
} else {
// In case the cache path doesn't exist
mkdir(cachePath, function(err) {
if (err) {
console.error(err);
return;
}
download(sass.getBinaryUrl(), cacheBinary, function(err) {
if (err) {
console.error(err);
return;
}
console.log('Binary downloaded to ' + cacheBinary);
fs.createReadStream(cacheBinary).pipe(fs.createWriteStream(binaryPath));
});
});
}
download(sass.getBinaryUrl(), sass.getBinaryPath(), function(err) {
if (err) {
console.error(err);
return;
}
console.log('Binary downloaded and installed at', sass.getBinaryPath());
});
});
}
/**
* Skip if CI
*/
if (process.env.SKIP_SASS_BINARY_DOWNLOAD_FOR_CI) {
console.log('Skipping downloading binaries on CI builds');
return;
}
/**
* If binary does not exist, download it
*/
......
......@@ -134,29 +134,6 @@ describe('runtime parameters', function() {
});
});
describe('Sass Binary Cache', function() {
var npmCacheDir;
before(function() {
npmCacheDir = process.env.npm_config_cache;
});
beforeEach(function() {
delete process.env.npm_config_sass_binary_cache;
});
it('npm config variable', function() {
var overridenCachePath = '/foo/bar/';
process.env.npm_config_sass_binary_cache = overridenCachePath;
var sass = require(extensionsPath);
assert.equal(sass.getCachePath(), overridenCachePath);
});
it('With no value, falls back to NPM cache', function() {
var sass = require(extensionsPath);
assert.equal(sass.getCachePath(), npmCacheDir);
});
});
});
// describe('library detection', function() {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment