Skip to content

A reproduction for an issue with detecting dependencies when using circleci executors

License

Notifications You must be signed in to change notification settings

tlbraams/renovate-circleci-executors

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

#30558

renovatebot/renovate#30558

Current behavior

Docker images used when defining executors are no longer recognized as dependencies by renovate. Before a refactor that changed the circleci manager from regex based parsing to a YAML based schema, these images were recognized by renovate.

I confirmed that this used to work by installing the version (37.429.0) before this change and executing a local run on this reproduction:

Logs
% LOG_LEVEL=debug renovate --platform=local
...
 INFO: Repository started (repository=local)
       "renovateVersion": "37.429.0"
...
DEBUG: Matched 1 file(s) for manager circleci: .circleci/config.yml (repository=local)
DEBUG: CircleCI docker image (repository=local)
       "depName": "cimg/ruby",
       "currentValue": "3.0.3-browsers",
       "currentDigest": undefined
DEBUG: manager extract durations (ms) (repository=local)
       "managers": {"circleci": 1}
DEBUG: Found circleci package files (repository=local)
DEBUG: Found 1 package file(s) (repository=local)
 INFO: Dependency extraction complete (repository=local)
       "stats": {
         "managers": {"circleci": {"fileCount": 1, "depCount": 1}},
         "total": {"fileCount": 1, "depCount": 1}
       }
...
DEBUG: packageFiles with updates (repository=local)
       "config": {
         "circleci": [
           {
             "deps": [
               {
                 "depName": "cimg/ruby",
                 "currentValue": "3.0.3-browsers",
                 "replaceString": "cimg/ruby:3.0.3-browsers",
                 "autoReplaceStringTemplate": "{{depName}}{{#if newValue}}:{{newValue}}{{/if}}{{#if newDigest}}@{{newDigest}}{{/if}}",
                 "datasource": "docker",
                 "depType": "docker",
                 "versioning": "docker",
                 "updates": [
                   {
                     "bucket": "non-major",
                     "newVersion": "3.3.4",
                     "newValue": "3.3.4-browsers",
                     "newMajor": 3,
                     "newMinor": 3,
                     "newPatch": 4,
                     "updateType": "minor",
                     "branchName": "renovate/cimg-ruby-3.x"
                   }
                 ],
                 "packageName": "cimg/ruby",
                 "warnings": [],
                 "registryUrl": "https://index.docker.io",
                 "currentVersion": "3.0.3",
                 "isSingleVersion": true,
                 "fixedVersion": "3.0.3-browsers"
               }
             ],
             "packageFile": ".circleci/config.yml"
           }
         ]
       }
...
DEBUG: Matched 1 file(s) for manager circleci: .circleci/config.yml (repository=local)
DEBUG: manager extract durations (ms) (repository=local)
       "managers": {"circleci": 5}
DEBUG: Found 0 package file(s) (repository=local)
 INFO: Dependency extraction complete (repository=local)
       "stats": {"managers": {}, "total": {"fileCount": 0, "depCount": 0}}
...
DEBUG: packageFiles with updates (repository=local)
       "config": {}

Installing the next available version (37.431.0) fails to detect this image as a dependency:

Logs
% LOG_LEVEL=debug renovate --platform=local
...
 INFO: Repository started (repository=local)
       "renovateVersion": "37.431.0"
...
DEBUG: Matched 1 file(s) for manager circleci: .circleci/config.yml (repository=local)
DEBUG: manager extract durations (ms) (repository=local)
       "managers": {"circleci": 5}
DEBUG: Found 0 package file(s) (repository=local)
 INFO: Dependency extraction complete (repository=local)
       "stats": {"managers": {}, "total": {"fileCount": 0, "depCount": 0}}
...
DEBUG: packageFiles with updates (repository=local)
       "config": {}

Installing the latest version (38.17.0) still fails to detect the image as a dependency:

Logs
...
 INFO: Repository started (repository=local)
       "renovateVersion": "38.17.0"
...
DEBUG: Matched 1 file(s) for manager circleci: .circleci/config.yml (repository=local)
DEBUG: manager extract durations (ms) (repository=local)
       "managers": {"circleci": 2}
DEBUG: Found 0 package file(s) (repository=local)
 INFO: Dependency extraction complete (repository=local)
       "stats": {"managers": {}, "total": {"fileCount": 0, "depCount": 0}}
...
DEBUG: packageFiles with updates (repository=local)
       "config": {}

Expected behavior

I expect renovate to still recognize docker images listed in executors as dependencies.

Link to the Renovate issue or Discussion

Put your link to the Renovate issue or Discussion here.

About

A reproduction for an issue with detecting dependencies when using circleci executors

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published