Skip to content
Snippets Groups Projects
Select Git revision
  • 62d5d670bf24e077b3c3643707219493148e4fa3
  • main default protected
  • next
  • renovate/main-ghcr.io-renovatebot-base-image-10.x
  • renovate/main-ghcr.io-containerbase-devcontainer-13.x
  • revert-31645-feat/rename-gradle-wrapper-validation-action
  • renovate/main-redis-5.x
  • fix/36615b-branch-reuse-no-cache
  • chore/punycode
  • fix/36615-branch-reuse-bug
  • refactor/pin-new-value
  • feat/36219--git-x509-signing
  • feat/structured-logger
  • hotfix/39.264.1
  • feat/skip-dangling
  • gh-readonly-queue/next/pr-36034-7a061c4ca1024a19e2c295d773d9642625d1c2be
  • hotfix/39.238.3
  • refactor/gitlab-auto-approve
  • feat/template-strings
  • gh-readonly-queue/next/pr-35654-137d934242c784e0c45d4b957362214f0eade1d7
  • fix/32307-global-extends-merging
  • 41.32.1
  • 41.32.0
  • 41.31.1
  • 41.31.0
  • 41.30.5
  • 41.30.4
  • 41.30.3
  • 41.30.2
  • 41.30.1
  • 41.30.0
  • 41.29.1
  • 41.29.0
  • 41.28.2
  • 41.28.1
  • 41.28.0
  • 41.27.1
  • 41.27.0
  • 41.26.2
  • 41.26.1
  • 41.26.0
41 results

object.spec.ts

Blame
  • manager-files.ts 1.95 KiB
    import is from '@sindresorhus/is';
    import { RenovateConfig } from '../../../config/common';
    import { logger } from '../../../logger';
    import {
      extractAllPackageFiles,
      extractPackageFile,
      get,
    } from '../../../manager';
    import { PackageFile } from '../../../manager/common';
    import { readLocalFile } from '../../../util/gitfs';
    
    export async function getManagerPackageFiles(
      config: RenovateConfig
    ): Promise<PackageFile[]> {
      const { enabled, manager, fileList } = config;
      logger.trace(`getPackageFiles(${manager})`);
      if (!enabled) {
        logger.debug(`${manager} is disabled`);
        return [];
      }
      // istanbul ignore else
      if (is.nonEmptyArray(fileList)) {
        logger.debug(
          `Matched ${
            fileList.length
          } file(s) for manager ${manager}: ${fileList.join(', ')}`
        );
      } else {
        return [];
      }
      // Extract package files synchronously if manager requires it
      if (get(manager, 'extractAllPackageFiles')) {
        const allPackageFiles = await extractAllPackageFiles(
          manager,
          config,
          fileList
        );
        if (allPackageFiles) {
          for (const packageFile of allPackageFiles) {
            for (let index = 0; index < packageFile.deps.length; index += 1) {
              packageFile.deps[index].depIndex = index;
            }
          }
        }
        return allPackageFiles;
      }
      const packageFiles: PackageFile[] = [];
      for (const packageFile of fileList) {
        const content = await readLocalFile(packageFile, 'utf8');
        if (content) {
          const res = await extractPackageFile(
            manager,
            content,
            packageFile,
            config
          );
          if (res) {
            for (let index = 0; index < res.deps.length; index += 1) {
              res.deps[index].depIndex = index;
            }
            packageFiles.push({
              packageFile,
              manager,
              ...res,
            });
          }
        } else {
          // istanbul ignore next
          logger.debug({ packageFile }, 'packageFile has no content');
        }
      }
      return packageFiles;
    }