Skip to content
Snippets Groups Projects
Select Git revision
  • 22058fa289e0e11da1d50bdd40eff0fa55f9125f
  • master default
2 results

mod.rs

Blame
  • extract.js 1009 B
    const { splitImageParts } = require('../docker/extract');
    
    module.exports = {
      extractDependencies,
    };
    
    function extractDependencies(content) {
      logger.debug('docker-compose.extractDependencies()');
      const deps = [];
      let lineNumber = 0;
      for (const line of content.split('\n')) {
        const match = line.match(/^\s*image:\s*'?"?([^\s'"]+)'?"?\s*$/);
        if (match) {
          const currentFrom = match[1];
          const {
            dockerRegistry,
            depName,
            currentTag,
            currentDigest,
            currentDepTagDigest,
            currentDepTag,
          } = splitImageParts(currentFrom);
          logger.info(
            { dockerRegistry, depName, currentTag, currentDigest },
            'Docker Compose image'
          );
          deps.push({
            depType: 'Docker Compose',
            lineNumber,
            currentFrom,
            currentDepTagDigest,
            dockerRegistry,
            currentDepTag,
            currentDigest,
            depName,
            currentTag,
          });
        }
        lineNumber += 1;
      }
      return deps;
    }