renovatebot / config-help

Please use the Discussions feature of https://github.com/renovatebot/renovate instead
https://github.com/renovatebot/renovate/discussions
MIT License
27 stars 16 forks source link

Update image versions in docker-compose.production.yml #970

Closed hongbo-miao closed 3 years ago

hongbo-miao commented 4 years ago

What would you like Renovate to be able to do?

Currently renovate auto pull request to update the image versions in docker-compose.development.yml. However, it does not update the image versions in docker-compose.production.yml, it would be great to scan image versions in this file too.

As you can see, renovate touched this docker-compose.development.yml file

image

but not this docker-compose.production.yml

image

Did you already have any implementation ideas?

n/a

rarkins commented 4 years ago

Please check your logs.

hongbo-miao commented 4 years ago

Thanks @rarkins ! I saw many logs but don't know which one should I post here. So I just copied the latest one.

Sorry, I already removed the part I am sure won't help, but still a little bit long.

I do see docker-compose.development.yml inside, but no docker-compose.production.yml.

INFO: Repository started
{
  "renovateVersion": "23.83.0"
}
DEBUG: Using localDir: /mnt/renovate/gh/Hongbo-Miao/hongbomiao.com
DEBUG: Repository cache is valid
DEBUG: initRepo("Hongbo-Miao/hongbomiao.com")
DEBUG: Overriding default GitHub endpoint
{
  "endpoint": "https://api.github.com/"
}
DEBUG: No dangling containers to remove
DEBUG: Hongbo-Miao/hongbomiao.com default branch = master
DEBUG: Using personal access token for git init
DEBUG: resetMemCache()
DEBUG: checkOnboarding()
DEBUG: isOnboarded()
DEBUG: findFile(renovate.json)
DEBUG: Initializing git repository into /mnt/renovate/gh/Hongbo-Miao/hongbomiao.com
DEBUG: git clone completed
{
  "durationMs": 872
}
DEBUG: latest commit
{
  "latestCommitDate": "2020-11-13T20:26:11+00:00"
}
DEBUG: Setting git author name
{
  "gitAuthorName": "Renovate Bot"
}
DEBUG: Setting git author email
{
  "gitAuthorEmail": "bot@renovateapp.com"
}
DEBUG: config file exists
DEBUG: Retrieving issueList
DEBUG: Retrieved 0 issues
DEBUG: Repo is onboarded
DEBUG: Found renovate.json config file
DEBUG: Repository config
{
  "fileName": "renovate.json",
  "config": {
    "extends": [
      "config:base"
    ]
  }
}
DEBUG: migrateAndValidate()
DEBUG: No config migration necessary
DEBUG: massaged config
{
  "config": {
    "extends": [
      "config:base"
    ]
  }
}
DEBUG: migrated config
{
  "config": {
    "extends": [
      "config:base"
    ]
  }
}
DEBUG: Found repo ignorePaths
{
  "ignorePaths": [
    "**/node_modules/**",
    "**/bower_components/**",
    "**/vendor/**",
    "**/examples/**",
    "**/__tests__/**",
    "**/test/**",
    "**/tests/**",
    "**/__fixtures__/**"
  ]
}
DEBUG: detectSemanticCommits()
DEBUG: getCommitMessages
DEBUG: Semantic commits detection: angular
DEBUG: angular semantic commits detected
DEBUG: Setting branchPrefix: renovate/
DEBUG: GitHub vulnerability details
{
  "alerts": {
    "npm/node-fetch": {
      "< 2.6.1": "2.6.1"
    },
    "npm/systeminformation": {
      "< 4.27.11": "4.27.11"
    }
  }
}
DEBUG: alert package rules
{
  "alertPackageRules": [
    {
      "datasources": [
        "npm"
      ],
      "packageNames": [
        "systeminformation"
      ],
      "matchCurrentVersion": "= 4.27.5",
      "allowedVersions": "4.27.11",
      "prBodyNotes": [
        "### GitHub Vulnerability Alerts",
        "#### [CVE-2020-7752](https://github.com/sebhildebrandt/systeminformation/security/advisories/GHSA-94xh-2fmc-xf5j)\n\n### Impact\ncommand injection vulnerability\n\n### Patches\nProblem was fixed with a shell string sanitation fix. Please upgrade to version >= 4.27.11\n\n### Workarounds\nIf you cannot upgrade, be sure to check or sanitize service parameter strings that are passed to si.inetChecksite()\n\n### References\n_Are there any links users can visit to find out more?_\n\n### For more information\nIf you have any questions or comments about this advisory:\n* Open an issue in [systeminformation](https://github.com/sebhildebrandt/systeminformation/issues/new?template=bug_report.md)"
      ],
      "force": {
        "groupName": null,
        "schedule": [],
        "dependencyDashboardApproval": false,
        "rangeStrategy": "update-lockfile",
        "commitMessageSuffix": "[SECURITY]",
        "vulnerabilityAlert": true,
        "branchTopic": "npm-systeminformation-vulnerability"
      }
    }
  ]
}
DEBUG: processRepo()
DEBUG: No baseBranches
DEBUG: extract()
DEBUG: Found cached extract
{
  "baseBranch": "master",
  "baseBranchSha": "622b5d6316b7c120dffc914152d56bee2873e5ef"
}
DEBUG: Deleted cached dep updates
INFO: Dependency extraction complete
{
  "baseBranch": "master",
  "stats": {
    "managers": {
      "docker-compose": {
        "fileCount": 1,
        "depCount": 11
      },
      "dockerfile": {
        "fileCount": 4,
        "depCount": 4
      },
      "npm": {
        "fileCount": 3,
        "depCount": 200
      },
      "nvm": {
        "fileCount": 1,
        "depCount": 1
      },
      "pip_requirements": {
        "fileCount": 1,
        "depCount": 2
      },
      "travis": {
        "fileCount": 1,
        "depCount": 1
      }
    },
    "total": {
      "fileCount": 11,
      "depCount": 219
    }
  }
}
DEBUG: getLabels(https://index.docker.io, library/redis, latest)
DEBUG: getLabels(https://index.docker.io, library/postgres, latest)
DEBUG: getLabels(https://index.docker.io, library/node, latest)
DEBUG: getLabels(https://docker.elastic.co, elasticsearch/elasticsearch-oss, master-SNAPSHOT)
DEBUG: getLabels(https://docker.elastic.co, kibana/kibana-oss, master-SNAPSHOT)
DEBUG: getLabels(https://index.docker.io, prom/prometheus, latest)
DEBUG: getLabels(https://index.docker.io, grafana/grafana, latest)
DEBUG: getManifestResponse(https://index.docker.io, grafana/grafana, latest)
DEBUG: getLabels(https://index.docker.io, fluent/fluent-bit, latest)
DEBUG: getManifestResponse(https://index.docker.io, fluent/fluent-bit, latest)
DEBUG: getLabels(https://index.docker.io, library/nginx, latest)
DEBUG: found labels in manifest
{
  "labels": {
    "Description": "Fluent Bit docker image",
    "Vendor": "Fluent Organization",
    "Version": "1.1"
  }
}
DEBUG: Found deprecationMessage (@types/storybook__react)(dependency="@types/storybook__react")
DEBUG: Package releases lookups complete
{
  "baseBranch": "master"
}
DEBUG: packageFiles with updates
{
  "config": {
    "docker-compose": [
      {
        "packageFile": "docker-compose.development.yml",
        "manager": "docker-compose",
        "deps": [
          {
            "depName": "redis",
            "currentValue": "6.0.9-alpine",
            "replaceString": "redis:6.0.9-alpine",
            "autoReplaceStringTemplate": "{{depName}}{{#if newValue}}:{{newValue}}{{/if}}{{#if newDigest}}@{{newDigest}}{{/if}}",
            "datasource": "docker",
            "depIndex": 0,
            "warnings": [],
            "fixedVersion": "6.0.9-alpine",
            "dockerRegistry": "https://index.docker.io",
            "dockerRepository": "library/redis",
            "updates": []
          },
          // ...
        ]
      }
    ],
    "dockerfile": [
      {
        "packageFile": "Dockerfile.nginx.development",
        "manager": "dockerfile",
        "deps": [
          {
            "depName": "nginx",
            "currentValue": "1.19.4-alpine",
            "replaceString": "nginx:1.19.4-alpine",
            "autoReplaceStringTemplate": "{{depName}}{{#if newValue}}:{{newValue}}{{/if}}{{#if newDigest}}@{{newDigest}}{{/if}}",
            "datasource": "docker",
            "depType": "final",
            "depIndex": 0,
            "warnings": [],
            "fixedVersion": "1.19.4-alpine",
            "dockerRegistry": "https://index.docker.io",
            "dockerRepository": "library/nginx",
            "updates": []
          }
        ]
      },
      {
        "packageFile": "Dockerfile.nginx.production",
        "manager": "dockerfile",
        "deps": [
          {
            "depName": "nginx",
            "currentValue": "1.19.4-alpine",
            "replaceString": "nginx:1.19.4-alpine",
            "autoReplaceStringTemplate": "{{depName}}{{#if newValue}}:{{newValue}}{{/if}}{{#if newDigest}}@{{newDigest}}{{/if}}",
            "datasource": "docker",
            "depType": "final",
            "depIndex": 0,
            "warnings": [],
            "fixedVersion": "1.19.4-alpine",
            "dockerRegistry": "https://index.docker.io",
            "dockerRepository": "library/nginx",
            "updates": []
          }
        ]
      },
      {
        "packageFile": "Dockerfile.server.development",
        "manager": "dockerfile",
        "deps": [
          {
            "depName": "node",
            "currentValue": "15.2.0-alpine",
            "replaceString": "node:15.2.0-alpine",
            "autoReplaceStringTemplate": "{{depName}}{{#if newValue}}:{{newValue}}{{/if}}{{#if newDigest}}@{{newDigest}}{{/if}}",
            "datasource": "docker",
            "commitMessageTopic": "Node.js",
            "depType": "final",
            "depIndex": 0,
            "warnings": [],
            "fixedVersion": "15.2.0-alpine",
            "sourceUrl": "https://github.com/nodejs/node",
            "dockerRegistry": "https://index.docker.io",
            "dockerRepository": "library/node",
            "updates": []
          }
        ]
      },
      {
        "packageFile": "Dockerfile.server.production",
        "manager": "dockerfile",
        "deps": [
          {
            "depName": "node",
            "currentValue": "15.2.0-alpine",
            "replaceString": "node:15.2.0-alpine",
            "autoReplaceStringTemplate": "{{depName}}{{#if newValue}}:{{newValue}}{{/if}}{{#if newDigest}}@{{newDigest}}{{/if}}",
            "datasource": "docker",
            "commitMessageTopic": "Node.js",
            "depType": "final",
            "depIndex": 0,
            "warnings": [],
            "fixedVersion": "15.2.0-alpine",
            "sourceUrl": "https://github.com/nodejs/node",
            "dockerRegistry": "https://index.docker.io",
            "dockerRepository": "library/node",
            "updates": []
          }
        ]
      }
    ],
    "npm": [
      {
        "packageFile": "client/package.json",
        "deps": [
          {
            "depType": "dependencies",
            "depName": "@analytics/google-tag-manager",
            "currentValue": "0.3.0",
            "datasource": "npm",
            "prettyDepType": "dependency",
            "lockedVersion": "0.3.0",
            "depIndex": 0,
            "warnings": [],
            "fixedVersion": "0.3.0",
            "sourceUrl": "https://github.com/DavidWells/analytics",
            "updates": []
          },
          // ...
        ],
        "packageJsonName": "client",
        "packageJsonType": "app",
        "yarnrc": "***********",
        "yarnLock": "client/yarn.lock",
        "skipInstalls": true,
        "constraints": {
          "node": "15.x"
        }
      },
      {
        "packageFile": "package.json",
        "deps": [
          {
            "depType": "devDependencies",
            "depName": "@commitlint/cli",
            "currentValue": "11.0.0",
            "datasource": "npm",
            "prettyDepType": "devDependency",
            "lockedVersion": "11.0.0",
            "depIndex": 0,
            "warnings": [],
            "fixedVersion": "11.0.0",
            "sourceUrl": "https://github.com/conventional-changelog/commitlint",
            "updates": []
          },
          // ...
        ],
        "packageJsonName": "hongbomiao.com",
        "packageJsonType": "app",
        "yarnrc": "***********",
        "yarnLock": "yarn.lock",
        "skipInstalls": true,
        "constraints": {
          "node": "15.x"
        }
      },
      {
        "packageFile": "server/package.json",
        "deps": [
          {
            "depType": "dependencies",
            "depName": "@godaddy/terminus",
            "currentValue": "4.4.1",
            "datasource": "npm",
            "prettyDepType": "dependency",
            "lockedVersion": "4.4.1",
            "depIndex": 0,
            "warnings": [],
            "fixedVersion": "4.4.1",
            "sourceUrl": "https://github.com/godaddy/terminus",
            "updates": []
          },
          // ...
        ],
        "packageJsonName": "server",
        "packageJsonType": "app",
        "yarnrc": "***********",
        "yarnLock": "server/yarn.lock",
        "skipInstalls": true,
        "constraints": {
          "node": "15.x"
        }
      }
    ],
    "nvm": [
      {
        "packageFile": ".nvmrc",
        "manager": "nvm",
        "deps": [
          {
            "depName": "node",
            "currentValue": "15.2.0",
            "datasource": "github-tags",
            "lookupName": "nodejs/node",
            "depIndex": 0,
            "warnings": [],
            "fixedVersion": "15.2.0",
            "sourceUrl": "https://github.com/nodejs/node",
            "updates": []
          }
        ]
      }
    ],
    "pip_requirements": [
      {
        "packageFile": "locust/requirements.txt",
        "manager": "pip_requirements",
        "deps": [
          {
            "depName": "locust",
            "currentValue": "==1.4.0",
            "datasource": "pypi",
            "fromVersion": "1.4.0",
            "depIndex": 0,
            "warnings": [],
            "fixedVersion": "1.4.0",
            "sourceUrl": "https://github.com/locustio/locust",
            "homepage": "https://locust.io/",
            "updates": []
          },
          {
            "depName": "python-dotenv",
            "currentValue": "==0.15.0",
            "datasource": "pypi",
            "fromVersion": "0.15.0",
            "depIndex": 1,
            "warnings": [],
            "fixedVersion": "0.15.0",
            "sourceUrl": "https://github.com/theskumar/python-dotenv",
            "updates": []
          }
        ]
      }
    ],
    "travis": [
      {
        "packageFile": ".travis.yml",
        "manager": "travis",
        "deps": [
          {
            "depName": "node",
            "currentValue": [
              "15"
            ],
            "depIndex": 0,
            "updates": []
          }
        ]
      }
    ]
  }
}
DEBUG: branchifyUpgrades
DEBUG: Using group branchName template
DEBUG: Dependency @opentelemetry/plugin-document-load is part of group opentelemetry monorepo
DEBUG: Using group branchName template
DEBUG: Dependency @storybook/addon-links is part of group storybook monorepo
DEBUG: Using group branchName template
DEBUG: Dependency @storybook/addons is part of group storybook monorepo
DEBUG: Using group branchName template
DEBUG: Dependency @opentelemetry/plugin-dns is part of group opentelemetry monorepo
DEBUG: Using group branchName template
DEBUG: Dependency @opentelemetry/plugin-express is part of group opentelemetry monorepo
DEBUG: Using group branchName template
DEBUG: Dependency @opentelemetry/plugin-ioredis is part of group opentelemetry monorepo
DEBUG: Using group branchName template
DEBUG: Dependency @opentelemetry/plugin-pg is part of group opentelemetry monorepo
DEBUG: Using group branchName template
DEBUG: Dependency @opentelemetry/plugin-pg-pool is part of group opentelemetry monorepo
DEBUG: 8 flattened updates found: @opentelemetry/plugin-document-load, @storybook/addon-links, @storybook/addons, @opentelemetry/plugin-dns, @opentelemetry/plugin-express, @opentelemetry/plugin-ioredis, @opentelemetry/plugin-pg, @opentelemetry/plugin-pg-pool
DEBUG: Returning 2 branch(es)
DEBUG: config.repoIsOnboarded=true
DEBUG: processRepo()
DEBUG: Processing 2 branches: renovate/opentelemetry-monorepo, renovate/storybook-monorepo
DEBUG: Calculating hourly PRs remaining
DEBUG: Retrieving PR list
DEBUG: Retrieved 639 Pull Requests
DEBUG: currentHourStart=2020-11-13T22:00:00.000+00:00
DEBUG: PR hourly limit remaining: 2
DEBUG: Calculating prConcurrentLimit (20)
DEBUG: getBranchPr(renovate/storybook-monorepo)
DEBUG: findPr(renovate/storybook-monorepo, undefined, open)
DEBUG: getBranchPr(renovate/opentelemetry-monorepo)
DEBUG: findPr(renovate/opentelemetry-monorepo, undefined, open)
DEBUG: 0 PRs are currently open
DEBUG: PR concurrent limit remaining: 20
DEBUG: Calculated maximum PRs remaining this run
{
  "prsRemaining": 2
}
DEBUG: getBranchPr(renovate/storybook-monorepo)(branch="renovate/storybook-monorepo")
DEBUG: findPr(renovate/storybook-monorepo, undefined, open)(branch="renovate/storybook-monorepo")
DEBUG: processBranch with 2 upgrades(branch="renovate/storybook-monorepo")
DEBUG: Setting current branch to master(branch="renovate/storybook-monorepo")
DEBUG: latest commit(branch="renovate/storybook-monorepo")
{
  "branchName": "master",
  "latestCommitDate": "2020-11-13T20:26:11+00:00"
}
DEBUG: getBranchPr(renovate/storybook-monorepo)(branch="renovate/storybook-monorepo")
DEBUG: findPr(renovate/storybook-monorepo, undefined, open)(branch="renovate/storybook-monorepo")
DEBUG: branchExists=false(branch="renovate/storybook-monorepo")
DEBUG: Branch has 2 upgrade(s)(branch="renovate/storybook-monorepo")
DEBUG: recreateClosed is false(branch="renovate/storybook-monorepo")
DEBUG: findPr(renovate/storybook-monorepo, chore(deps): update storybook monorepo to v6.0.28, !open)(branch="renovate/storybook-monorepo")
DEBUG: Found PR #1147(branch="renovate/storybook-monorepo")
DEBUG: Found closed PR with current title(branch="renovate/storybook-monorepo")
DEBUG: No graphql res.data(branch="renovate/storybook-monorepo")
{
  "query": "\n      query {\n        repository(owner: \"Hongbo-Miao\", name: \"hongbomiao.com\") {\n          pullRequests(states: [OPEN], first: 100, orderBy: {field: UPDATED_AT, direction: DESC}) {\n            nodes {\n              number\n              headRefName\n              baseRefName\n              title\n              mergeable\n              mergeStateStatus\n              labels(last: 100) {\n                nodes {\n                  name\n                }\n              }\n              assignees {\n                totalCount\n              }\n              reviewRequests {\n                totalCount\n              }\n              commits(first: 2) {\n                nodes {\n                  commit {\n                    author {\n                      email\n                    }\n                    committer {\n                      email\n                    }\n                    parents(last: 1) {\n                      edges {\n                        node {\n                          abbreviatedOid\n                          oid\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n              body\n              reviews(first: 1, states:[CHANGES_REQUESTED]){\n                nodes{\n                  state\n                }\n              }\n            }\n          }\n        }\n      }\n      "
}
DEBUG: Retrieved closed PR list with graphql(branch="renovate/storybook-monorepo")
{
  "prNumbers": [
    1125,
    // ...
  ]
}
DEBUG: Returning from graphql closed PR list(branch="renovate/storybook-monorepo")
DEBUG: Closed PR already exists. Skipping branch.(branch="renovate/storybook-monorepo")
{
  "prTitle": "chore(deps): update storybook monorepo to v6.0.28"
}
DEBUG: Merged PR is blocking this branch(branch="renovate/storybook-monorepo")
{
  "pr": 1147
}
DEBUG: getBranchPr(renovate/storybook-monorepo)(branch="renovate/storybook-monorepo")
DEBUG: findPr(renovate/storybook-monorepo, undefined, open)(branch="renovate/storybook-monorepo")
DEBUG: getBranchPr(renovate/opentelemetry-monorepo)(branch="renovate/opentelemetry-monorepo")
DEBUG: findPr(renovate/opentelemetry-monorepo, undefined, open)(branch="renovate/opentelemetry-monorepo")
DEBUG: processBranch with 6 upgrades(branch="renovate/opentelemetry-monorepo")
DEBUG: Setting current branch to master(branch="renovate/opentelemetry-monorepo")
DEBUG: latest commit(branch="renovate/opentelemetry-monorepo")
{
  "branchName": "master",
  "latestCommitDate": "2020-11-13T20:26:11+00:00"
}
DEBUG: getBranchPr(renovate/opentelemetry-monorepo)(branch="renovate/opentelemetry-monorepo")
DEBUG: findPr(renovate/opentelemetry-monorepo, undefined, open)(branch="renovate/opentelemetry-monorepo")
DEBUG: branchExists=false(branch="renovate/opentelemetry-monorepo")
DEBUG: Branch has 6 upgrade(s)(branch="renovate/opentelemetry-monorepo")
DEBUG: recreateClosed is false(branch="renovate/opentelemetry-monorepo")
DEBUG: findPr(renovate/opentelemetry-monorepo, fix(deps): update opentelemetry monorepo to v0.11.0, !open)(branch="renovate/opentelemetry-monorepo")
DEBUG: Found PR #740(branch="renovate/opentelemetry-monorepo")
DEBUG: Found closed PR with current title(branch="renovate/opentelemetry-monorepo")
DEBUG: PR not found in open or closed PRs list - trying to fetch it directly(branch="renovate/opentelemetry-monorepo")
{
  "prNo": 740
}
DEBUG: Closed PR already exists. Skipping branch.(branch="renovate/opentelemetry-monorepo")
{
  "prTitle": "fix(deps): update opentelemetry monorepo to v0.11.0"
}
DEBUG: Merged PR is blocking this branch(branch="renovate/opentelemetry-monorepo")
{
  "pr": 740
}
DEBUG: getBranchPr(renovate/opentelemetry-monorepo)(branch="renovate/opentelemetry-monorepo")
DEBUG: findPr(renovate/opentelemetry-monorepo, undefined, open)(branch="renovate/opentelemetry-monorepo")
DEBUG: Removing any stale branches
DEBUG: config.repoIsOnboarded=true
DEBUG: No renovate branches found
DEBUG: Repository timing splits (milliseconds)
{
  "splits": {
    "init": 3170,
    "extract": 2,
    "lookup": 11901,
    "update": 11031
  },
  "total": 26252
}
DEBUG: http statistics
{
  "hostStats": [
    "api.github.com, 17 requests, 1674ms request average, 0ms queue average",
    "auth.docker.io, 3 requests, 517ms request average, 0ms queue average",
    "index.docker.io, 7 requests, 1051ms request average, 0ms queue average",
    "pypi.org, 2 requests, 2408ms request average, 0ms queue average",
    "registry.npmjs.org, 54 requests, 1595ms request average, 0ms queue average"
  ],
  "totalRequests": 83
}
INFO: Repository finished
{
  "durationMs": 26252
}
rarkins commented 4 years ago

This log has DEBUG: Found cached extract which means it's using a cached extraction and therefore not trying to detect/extract all files and there's nothing useful to look at. You either need a new commit to master to invalidate the cache and check the next logs, or to find the logs where the extract was run and cached.

rarkins commented 4 years ago

The docker-compose manager will match this pattern: https://github.com/renovatebot/renovate/blob/93711e1463d22962bf2060c9307277ca3a1b3f85/lib/manager/docker-compose/index.ts#L9

This means the only reason it's not matching the production one is if it thinks it's not a valid docker compose file or if it detects no dependencies.

hongbo-miao commented 3 years ago

Thanks @rarkins !

You are right. It was my mistake. My production config missed one space in front of one of my depends_on. Once fixed it, Renovate works well now!