test-infra icon indicating copy to clipboard operation
test-infra copied to clipboard

PR with "Change requested" leads to Tide repeatedly attempting MERGE

Open sdowell opened this issue 2 years ago • 10 comments

What happened:

For a Github PR that has passed all checks but has the Change requested state, Tide repeatedly attempts to MERGE but fails (presumably rejected by Github due to the Change requested state).

What you expected to happen:

I would expect Tide to be aware of the Change requested state and that it is blocking - and therefore not try to perform MERGE.

How to reproduce it (as minimally and precisely as possible):

  • Create a pull request
  • Request changes on the PR
  • Pass all other checks (e.g. presubmits, lgtm, approve, etc)
  • Observe that Tide repeatedly attempts to perform MERGE and fails

Please provide links to example occurrences, if any:

Here is an example PR and tide history:

  • https://github.com/GoogleContainerTools/kpt-config-sync/pull/210
  • https://oss.gprow.dev/tide-history?repo=GoogleContainerTools%2Fkpt-config-sync&branch=main&pull=210

Anything else we need to know?: N/A

sdowell avatar Oct 14 '22 21:10 sdowell

/sig testing

sdowell avatar Oct 14 '22 21:10 sdowell

We might add some logic to Tide:

jihoon-seo avatar Dec 01 '22 08:12 jihoon-seo

We could also thing about handling the "Tide wants to merge but GitHub forbids it" situation in general. "Changes requested" is just one of the branch protection mechanisms that can prevent merging.

petr-muller avatar Dec 01 '22 16:12 petr-muller

We could also thing about handling the "Tide wants to merge but GitHub forbids it" situation in general. "Changes requested" is just one of the branch protection mechanisms that can prevent merging.

We recently encountered a situation where tide was unable to merge a PR due to the merge method not being allowed on the repo. As far as the user was aware, tide was just stuck. There was a log message like:

Tide needs to be configured to use the 'rebase' merge method for this repo or the repo needs to allow merge commits: Merge commits are not allowed on this repository.

We need to figure out a way to surface stuff like this to users on the 'PR Status' page, if not as a message on the PR itself.

smg247 avatar Jan 26 '23 19:01 smg247

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle stale
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot avatar Apr 26 '23 20:04 k8s-triage-robot

/remove-lifecycle stale

sdowell avatar Apr 27 '23 15:04 sdowell

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle stale
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot avatar Jan 19 '24 07:01 k8s-triage-robot

/remove-lifecycle stale

sdowell avatar Jan 19 '24 19:01 sdowell

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle stale
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot avatar Apr 18 '24 20:04 k8s-triage-robot

/remove-lifecycle stale

sdowell avatar Apr 18 '24 20:04 sdowell

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle stale
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot avatar Jul 17 '24 21:07 k8s-triage-robot

/remove-lifecycle stale

sdowell avatar Jul 18 '24 17:07 sdowell