Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

issue checker is confused by PRs referencing other PRs #5483

Closed
lavalamp opened this issue Nov 13, 2017 · 27 comments
Closed

issue checker is confused by PRs referencing other PRs #5483

lavalamp opened this issue Nov 13, 2017 · 27 comments
Assignees
Labels
kind/bug Categorizes issue or PR as related to a bug. sig/release Categorizes an issue or PR as relevant to SIG Release.
Milestone

Comments

@lavalamp
Copy link
Member

See kubernetes/kubernetes#55533.

Note the "approved" comment has decided that the associated issue is 55127, which is not even an issue but a PR this one is rebased on top of. (note, I just edited to add the "Ref:" link, it wasn't there when the bot made that comment.)

Seems like whatever does that should at least check that the thing is an issue and not a PR.

This likely means that our release note generating stuff is going to be confused or generate wrong output, but I don't know how widespread this is.

@lavalamp lavalamp added requires-release-czar-attention sig/release Categorizes an issue or PR as relevant to SIG Release. labels Nov 13, 2017
@BenTheElder
Copy link
Member

As far as GitHub is concerned PRs are still issues which is likely the cause of this bug.

/cc @cjwagner

@Bradamant3
Copy link

So many questions, here's just a start (I'm heading up the release note effort for 1.9, so bear with me):

  • the example (#55533) looks as though it's a test? We don't and shouldn't provide release notes for tests, including e2e tests. If the script for generating the release notes is iterating over PRs for tests, then we should fix the script.
  • we should also not be generating release notes at all for PRs that don't have release note content (which should take care of the issue the reporter noted).

@lavalamp
Copy link
Member Author

Yeah, I'm sure that is the cause of the bug.

The test is part of a bigger feature which has a release note. The PR either needs to be associated with that issue, or say NONE for its release note to make the bot happy.

@BenTheElder
Copy link
Member

the example (#55533) looks as though it's a test? We don't and shouldn't provide release notes for tests, including e2e tests. If the script for generating the release notes is iterating over PRs for tests, then we should fix the script.

The reviewer should make sure PRs that shouldn't have release notes don't and that PRs that should, do. The GitHub bot just makes sure you've actually set these values as far as I know.

we should also not be generating release notes at all for PRs that don't have release note content (which should take care of the issue the reporter noted).

/release-note none / putting NONE in the PR body should cover this (?), I don't think we are generating release note for PRs without release note content. If we are that definitely seems like a bug.

@BenTheElder BenTheElder added the kind/bug Categorizes issue or PR as related to a bug. label Nov 14, 2017
@cjwagner
Copy link
Member

/assign

@fejta fejta added this to the 2018-goals milestone Nov 14, 2017
@enisoc
Copy link
Member

enisoc commented Nov 14, 2017

I haven't verified this, but my impression has always been that the "Associated issue" is not used for anything except deciding whether to require /approve no-issue.

I'm not aware of any automation that follows "associated issue" links at this time. For release notes in particular, we don't look at non-PR issues at all. We list PRs with the release-note label, and get the text directly from the PR. We then link to the PR (not an issue) in the generated release notes.

@xiangpengzhao
Copy link
Contributor

We list PRs with the release-note label, and get the text directly from the PR.

If we are going to adopt the new release note tool (kubernetes/release#434, kubernetes/release#435), there might be a corner case here. PR title may also be used as release note. See: kubernetes/release#434 (comment)

As for the associated issue, the Hierarchical release note feature functions will try to extract sig/area info from PRs' associated issues.

@xiangpengzhao
Copy link
Contributor

BTW, are we going to adopt the new release note tool(s) for 1.9, or still use the script one?
Seems like v1.9.0-alpha.2 changelog was updated by @dashpole (kubernetes/kubernetes@e0cac2a), @dashpole which release tool were you using?

@dashpole
Copy link
Contributor

I just used anago.

@xiangpengzhao
Copy link
Contributor

...but my impression has always been that the "Associated issue" is not used for anything except deciding whether to require /approve no-issue.

@enisoc the original discussion is here: Each PR should have an associated issue

@xiangpengzhao
Copy link
Contributor

I just used anago.

@dashpole then it will invoke the script version release notes tool: https://github.com/kubernetes/release/blob/master/anago#L425

@enisoc
Copy link
Member

enisoc commented Nov 14, 2017

Thanks for the info @xiangpengzhao. So to summarize, our current tooling should not be impaired by this problem, but the new hierarchical release note function might get confused by it?

@xiangpengzhao
Copy link
Contributor

but the new hierarchical release note function might get confused by it?

I guess so. cc @roycaihw

@roycaihw
Copy link
Member

@xiangpengzhao @enisoc The new hierarchical release note function assumes PR authors following the PR template and looks for specific "fixes #<issue number>" in PR body.

The tool doesn't use the Associated issue. In this case, the tool will see the PR as having no issue associated.

@cjwagner
Copy link
Member

That tool will have the same problem the approval-handler has now if I say fixes #5 and 5 is a PR.

@roycaihw
Copy link
Member

That tool will have the same problem the approval-handler has now if I say fixes #5 and 5 is a PR.

@cjwagner Ah I see. Yes you're right. I will add a check to that tool to make sure the "issue" is not a PR.

@lavalamp
Copy link
Member Author

lavalamp commented Nov 14, 2017 via email

@roycaihw
Copy link
Member

@lavalamp Totally agree. One concern is that I see many PR referring other PRs. We can filter out the associated PRs and keep only the issues, but maybe we should provide some guideline in PR template about how to use "ref"?

@BenTheElder
Copy link
Member

BenTheElder commented Dec 13, 2017

this is still a bit of a pain point. kubernetes/kubernetes#57126 (comment)
/cc @mindprince see above: #5483 (comment)
edit and more here: #3737

@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Mar 13, 2018
@fejta-bot
Copy link

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle rotten
/remove-lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. label Apr 19, 2018
@k8s-ci-robot k8s-ci-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Apr 19, 2018
@fejta-bot
Copy link

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen.
Mark the issue as fresh with /remove-lifecycle rotten.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/close

@lavalamp
Copy link
Member Author

lavalamp commented May 21, 2018 via email

@k8s-ci-robot k8s-ci-robot reopened this May 21, 2018
@fejta-bot
Copy link

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen.
Mark the issue as fresh with /remove-lifecycle rotten.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/close

@lavalamp
Copy link
Member Author

lavalamp commented Jun 20, 2018 via email

@k8s-ci-robot k8s-ci-robot reopened this Jun 20, 2018
@k8s-ci-robot k8s-ci-robot added lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. and removed lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. labels Jun 20, 2018
@fejta
Copy link
Contributor

fejta commented Jun 20, 2018

/remove-lifecycle frozen

@k8s-ci-robot k8s-ci-robot removed the lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. label Jun 20, 2018
@spiffxp
Copy link
Member

spiffxp commented Jul 17, 2018

/close
@lavalamp The associated issue requirement for PR's was disabled in January (thread) so we're not inclined to work on this unless there's an urgent need. I'll admit, I haven't kept up to date on how release notes are being generated these days, but it's not dependent on this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Categorizes issue or PR as related to a bug. sig/release Categorizes an issue or PR as relevant to SIG Release.
Projects
None yet
Development

No branches or pull requests