aboutsummaryrefslogtreecommitdiff
path: root/node_modules/liftoff/lib/find_config.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/liftoff/lib/find_config.js')
-rw-r--r--node_modules/liftoff/lib/find_config.js25
1 files changed, 25 insertions, 0 deletions
diff --git a/node_modules/liftoff/lib/find_config.js b/node_modules/liftoff/lib/find_config.js
new file mode 100644
index 000000000..71c3f077d
--- /dev/null
+++ b/node_modules/liftoff/lib/find_config.js
@@ -0,0 +1,25 @@
+const fs = require('fs');
+const path = require('path');
+const fileSearch = require('./file_search');
+
+module.exports = function (opts) {
+ opts = opts || {};
+ var configNameSearch = opts.configNameSearch;
+ var configPath = opts.configPath;
+ var searchPaths = opts.searchPaths;
+ // only search for a config if a path to one wasn't explicitly provided
+ if (!configPath) {
+ if (!Array.isArray(searchPaths)) {
+ throw new Error('Please provide an array of paths to search for config in.');
+ }
+ if (!configNameSearch) {
+ throw new Error('Please provide a configNameSearch.');
+ }
+ configPath = fileSearch(configNameSearch, searchPaths);
+ }
+ // confirm the configPath exists and return an absolute path to it
+ if (fs.existsSync(configPath)) {
+ return path.resolve(configPath);
+ }
+ return null;
+};