in src/vsts/buildAndReleaseTask/task.js [43:78]
var hashAndCache = function (options) {
options.sourcePath = userOptions.sourcePath || process.cwd();
options.sourceFiles = userOptions.sourceFiles || ["**"];
options.sourceFiles = typeof userOptions.sourceFiles === 'string' ? [userOptions.sourceFiles] : userOptions.sourceFiles;
options.sourceIgnore = userOptions.sourceIgnore || "";
options.hashSuffix = userOptions.hashSuffix || "";
options.execWorkingDirectory = userOptions.execWorkingDirectory || process.cwd();
options.execCommand = userOptions.execCommand || null;
options.storageAccount = userOptions.storageAccount || null;
options.storageContainer = userOptions.storageContainer || null;
options.storageKey = userOptions.storageKey || null;
options.outputPath = userOptions.outputPath || process.cwd();
options.outputFiles = userOptions.outputFiles || ["**"];
options.outputIgnore = userOptions.outputIgnore || "";
options.outputFiles = typeof userOptions.outputFiles === 'string' ? [userOptions.outputFiles] : userOptions.outputFiles;
options.downloadCacheOnHit = userOptions.downloadCacheOnHit === false ? false : true;
options.uploadCacheOnMiss = userOptions.uploadCacheOnMiss === true;
var hash = generateHash(options.sourcePath, options.sourceFiles, options.sourceIgnore, options.hashSuffix, options.execCommand);
doesCacheExist(hash, options.storageAccount, options.storageContainer, options.storageKey).then(function (result) {
if (result) {
console.log(result, "CACHE HIT!");
if (options.downloadCacheOnHit) {
downloadCache(hash, options.storageAccount, options.storageContainer, options.storageKey, options.outputPath).then(function () {
extractCache(options.outputPath, hash);
deleteCache(options.outputPath, hash);
}).catch(function () { return runExecCommand(options) });
}
} else {
console.log("CACHE MISS!");
return onCacheMiss(hash, options);
}
});
}