configSearchPaths static method

List<String> configSearchPaths(
  1. String startDir, {
  2. int maxDepth = 6,
})

Implementation

static List<String> configSearchPaths(String startDir, {int maxDepth = 6}) {
  final List<String> searchPaths = <String>[];
  final Set<String> seen = <String>{};
  String cursor = p.normalize(startDir);

  for (int depth = 0; depth <= maxDepth; depth++) {
    final String configPath = p.join(cursor, 'config', 'setup_config.env');
    if (seen.add(configPath)) {
      searchPaths.add(configPath);
    }

    final String parent = p.dirname(cursor);
    if (parent == cursor) {
      break;
    }
    cursor = parent;
  }

  return searchPaths;
}