Project builder can now ignore files.
This patch adds the ignoreFiles option to the package builder, which permits us to build a list of paths that should be ignored by our tools. For example, this can be used to build a .gitignore or an .eslintignore list. Change-Id: I5ba67a9dbac1b90b72fb0a7ab1994fd2229e39d0
This commit is contained in:
parent
00c98191e4
commit
aaccbb2d0e
|
@ -3,6 +3,7 @@
|
|||
|
||||
var includedFiles = [];
|
||||
var excludedFiles = [];
|
||||
var ignoredFiles = [];
|
||||
|
||||
/**
|
||||
* Ensure that a file is removed, or not present, in the project.
|
||||
|
@ -14,6 +15,20 @@
|
|||
excludedFiles.push(destinationPath);
|
||||
}
|
||||
|
||||
/**
|
||||
* Flag a file path as 'ignored'.
|
||||
*
|
||||
* This does not have a real impact on which files are created/removed from the bootstrapped
|
||||
* project, however it does permit other modules to retrieve this list and modify their
|
||||
* behavior accordingly. For example, eslint could use this to generate .eslintignore
|
||||
*
|
||||
* @param {String} destinationPath Path to the file, relative to output root.
|
||||
* @returns {void}
|
||||
*/
|
||||
function ignoreFile (destinationPath) {
|
||||
ignoredFiles.push(destinationPath);
|
||||
}
|
||||
|
||||
/**
|
||||
* Add a file to the project.
|
||||
*
|
||||
|
@ -54,6 +69,15 @@
|
|||
return excludedFiles;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get a list of all file paths that should be ignored.
|
||||
*
|
||||
* @returns {Array} A list of file paths.
|
||||
*/
|
||||
function getIgnoredFiles () {
|
||||
return ignoredFiles;
|
||||
}
|
||||
|
||||
/**
|
||||
* Clear the current configuration.
|
||||
*
|
||||
|
@ -62,13 +86,16 @@
|
|||
function clearAll () {
|
||||
includedFiles = [];
|
||||
excludedFiles = [];
|
||||
ignoredFiles = [];
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
addFile: addFile,
|
||||
writeFile: writeFile,
|
||||
removeFile: removeFile,
|
||||
ignoreFile: ignoreFile,
|
||||
getIncludedFiles: getIncludedFiles,
|
||||
getIgnoredFiles: getIgnoredFiles,
|
||||
getExcludedFiles: getExcludedFiles,
|
||||
clear: clearAll
|
||||
};
|
||||
|
|
|
@ -47,5 +47,12 @@
|
|||
builder.removeFile(testFilePath);
|
||||
expect(builder.getExcludedFiles()[0]).toBe(testFilePath);
|
||||
});
|
||||
|
||||
it('should permit adding a file to the ignore list',
|
||||
function () {
|
||||
var testFilePath = 'test_path.json';
|
||||
builder.ignoreFile(testFilePath);
|
||||
expect(builder.getIgnoredFiles()[0]).toBe(testFilePath);
|
||||
});
|
||||
});
|
||||
})();
|
||||
|
|
Loading…
Reference in New Issue