Closed tobybellwood closed 2 years ago
It doesn't look like there's any changes to the git-submodule
manager recently, but the bug reliably reproduces your branch rebasing 🤔
I'll need to reproduce this locally and debug it to get some more info, as nothing really sticks out in the logs at first glance.
We have the same issue in keptn/keptn. Here is an example Renovate PR: https://github.com/keptn/keptn/pull/8107
Hi there,
Get your issue fixed faster by creating a minimal reproduction. This means a repository dedicated to reproducing this issue with the minimal dependencies and config possible.
Before we start working on your issue we need to know exactly what's causing the current behavior. A minimal reproduction helps us with this.
To get started, please read our guide on creating a minimal reproduction.
We may close the issue if you, or someone else, haven't created a minimal reproduction within two weeks. If you need more time, or are stuck, please ask for help or more time in a comment.
Good luck,
The Renovate team
We have the same issue in keptn/keptn. Here is an example Renovate PR: https://github.com/keptn/keptn/pull/8107
Without explanation, this looks like a perfectly valid PR
Sorry, you are very right :D
When you check the commit history in https://github.com/keptn/keptn/pull/8107, you will see that I manually re-added the submodule after the initial commit by renovate.
The commit by renovate: keptn/keptn@4de2575
(#8107)
My follow-up commit to re-add the submodule: keptn/keptn@5792330
(#8107)
We first saw it happen in the main branch (branch strategy, no required checks) so I reverted there and changed renovate to a PR strategy with required checks to hopefully trap the error. Our CI does the submodule sync and update too, and that worked fine
I can try and get a minimal repro up tomorrow.
@mowies thanks! I missed that when looking from mobile. When was the last similar PR which you think worked? i.e. updated the same files as this one which removed a submodule.
Searching the logs from that commit, I unfortunately don't see any logs related to "submodule" or "specification" which give us a hint
The last time we made changes to our git files at all (i.e. for any reason, not just submodules) was 2 months ago: https://github.com/renovatebot/renovate/commits/main/lib/util/git
So the last renovate PR I merged was on June 14th and that one was still fine (link: https://github.com/keptn/keptn/pull/8067). It didn't include the same files but I am not sure whether this issue is actually related to specific files. I have a few PRs that were opened or updated by renovate today (June 20th) with different files that all have the submodule removed. (https://github.com/keptn/keptn/pull/7981, https://github.com/keptn/keptn/pull/7980, https://github.com/keptn/keptn/pull/8085, https://github.com/keptn/keptn/pull/7992)
I'm pretty sure I know what changed: I set platformCommit=true
for all public repos in the app. This is a setting we had been testing ourselves, but I guess we never had or hit a submodule problem.
For now I'll add manual rules to your repos before deciding whether to roll back the setting. Any reproduction is still appreciated!
FYI @zharinov
@mowies could you try requesting a rebase retry on one of your PRs now?
Requested a rebase here: https://github.com/keptn/keptn/pull/8085
BTW this can only be reproduced with an app token, i.e. in the app, because the platform commit feature is restricted to apps only
Requested a rebase here: keptn/keptn#8085
I think the problem has been resolved. Subtle change, but the committer for that is back to renovate-bot instead of renovate[bot]
For anyone else reading this who wishes to fix this themselves, the solution is to configure platformCommit=false
in your repo config
nice - that fixed me up too - https://github.com/uselagoon/lagoon-examples/pull/222
Is this something we need to persist - or are you going to fix it in the backend?
My goal is that we will figure out a way to fix it in the backend. I added a rule for your repo manually in our backend for now so that you don't need the config manually.
Note to self: keptn has cloneSubmodules=true although lagoon-examples does not (it has git-submodules enabled however).
@rarkins Just to let you know, I see exactly the same issue in my ASF repo: https://github.com/JustArchiNET/ArchiSteamFarm/tree/renovate/asf-ui-digest. The issue is happening since approx 6 days from now, so 3 days before opening this issue.
I don't have anything fancy in my config, and it still fails, so I believe reverting whatever that change was until it's fixed is warranted. Thank you in advance for looking into it, and feel free to clone/test on my repo with ASF-ui
module if you'd like to.
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:base",
":assignee(JustArchi)",
":automergeBranch",
":automergeDigest",
":automergeMinor",
":disableDependencyDashboard",
":disableRateLimiting",
":label(🤖 Automatic)"
],
"git-submodules": {
"enabled": true
},
"packageRules": [
{
// TODO: <= 3.1 for Mono support, last failed version 6.12, https://steamcommunity.com/groups/archiasf/discussions/1/2997673517556002529
"allowedVersions": "<= 3.1",
"matchManagers": [ "nuget" ],
"matchPackageNames": [ "Microsoft.Extensions.Configuration.Json", "Microsoft.Extensions.Logging.Configuration" ]
},
{
// TODO: https://github.com/AngleSharp/AngleSharp.XPath/issues/36
"allowedVersions": "< 2.0",
"matchManagers": [ "nuget" ],
"matchPackageNames": [ "AngleSharp.XPath" ]
}
]
}
:tada: This issue has been resolved in version 32.94.1 :tada:
The release is available on:
32.94.1
Your semantic-release bot :package::rocket:
How are you running Renovate?
Mend Renovate hosted app on github.com
If you're self-hosting Renovate, tell us what version of Renovate you run.
No response
Please select which platform you are using if self-hosting.
No response
If you're self-hosting Renovate, tell us what version of the platform you run.
No response
Was this something which used to work for you, and then stopped?
It used to work, and then stopped
Describe the bug
We use Renovate across a number of our repositories, but pertinent to this issue, we use it to keep a repo of submodules up-to-date.
The most recent updates to Renovate appear to not be able to pull my submodules correctly (they do work locally and in CI) - and this results in the commit coming back to my repo without the submodule folders.
Reference PR - https://github.com/uselagoon/lagoon-examples/pull/222 and accompanying app log below - but nothing stands out
The last good auto-update was 4 days ago (https://github.com/uselagoon/lagoon-examples/commit/0b5237ed8e947beb69c564cb4b44231a3e2ecae8) (but those app logs have rolled off the bottom for me)
Just wondering if you've had anything else reported, or are aware of anything that's changed?
Relevant debug logs
Logs
``` DEBUG: No dangling containers to remove INFO: Repository started { "renovateVersion": "32.89.2" } DEBUG: Using localDir: /mnt/renovate/gh/uselagoon/lagoon-examples DEBUG: PackageFiles.clear() - Package files deleted { "baseBranches": [] } DEBUG: resetMemCache() DEBUG: initRepo("uselagoon/lagoon-examples") DEBUG: uselagoon/lagoon-examples default branch = main DEBUG: Using app token for git init DEBUG: Repository cache is valid DEBUG: Resetting npmrc DEBUG: detectSemanticCommits() DEBUG: checkOnboarding() DEBUG: isOnboarded() DEBUG: Checking cached config file name DEBUG: Existing config file confirmed DEBUG: Repo is onboarded DEBUG: migrateAndValidate() DEBUG: No config migration necessary DEBUG: massaged config { "config": { "extends": [ "github>whitesource/merge-confidence:beta", "github>renovatebot/spring-remediations", "config:base" ], "dependencyDashboard": true, "prHourlyLimit": 0, "git-submodules": { "enabled": true }, "regexManagers": [ { "fileMatch": [ "^.circleci/config.yml$" ], "matchStrings": [ "PYGMY_GO_VERSION_V=(?Have you created a minimal reproduction repository?
No reproduction, but I have linked to a public repo where it occurs