34 Commits

Author SHA1 Message Date
David Spickett
77249546aa
[GitHub] Add greeting comment to opened PRs from new contributors (#72384)
This includes some commonly needed information like how to add
reviewers.

This is implemented as a job before the labeler, so that on a new PR the
comment is added before there are any subscribers and only the author
gets a nofitication.

The labeler job depends on the greeter having run or having been
skipped. So if the PR wasn't just opened, or it's from a regular
contributor, the labeling still happens.

But we can be sure that when a greeting comment is left, it's the very
first thing we do.
2023-12-05 11:28:43 +00:00
Danny Mösch
6a4489a733
[GitHub] Use proper Markdown syntax and avoid child list items (#73700) 2023-11-29 08:47:57 +01:00
Da-Viper
dc8b055c71
[GitHub] Update bot message to suggest GitHub pull requests (#65914)
Fixes #65890.

---------

Co-authored-by: Danny Mösch <danny.moesch@icloud.com>
2023-11-26 16:53:37 +01:00
Timm Baeder
81761bd0f1
Try to fix good-first-issue bot (#71816)
The previous code was just overriding the `comment` variable. Fix this by writing two comments if necessary instead.
2023-11-24 07:57:14 +01:00
Aiden Grossman
5d39f3f685
[Github] Fix github automation script on empty descriptions (#71274)
Before this patch, the github automation script would fail when trying
to escape the text of a PR/issue description that was empty as the
Github library returns None instead of an empty string in those
scenarios. This patch special cases this and makes the escape function
return an empty string when given a value of None.
2023-11-06 21:46:39 -08:00
Aiden Grossman
f8148e4815
[Github] Add PR author name to subscription email (#68440)
Currently the email that gets sent out to people subscribing to a label
that the bot tags on the PR doesn't include any authorship information
which some people are interested in having. This patch adds an author
field to the message with the relevant information.
2023-10-09 15:46:53 -07:00
Corentin Jabot
3ce8eda592 [Github] Add a new line before the line separator to avoid paragraphs being treated as titles 2023-09-18 16:17:38 +02:00
Corentin Jabot
3058d2908e [Github] Fix issue number escaping 2023-09-15 17:40:09 +02:00
cor3ntin
1b18e98642
[Github] Improve formating of PR diffs in bot notifications (#66118)
* This avoid pinging folks on all issue when they got pinged on bugzilla
eons ago
* Avoid formatting bugs when there is html in the issue description
* Truncate the list of files and the diff independently of each other.
This avoids truncating cutting a file line in 2 and to cut in the middle
of html markup. This is a fringe case but it does happen when people
accidentally push weird branches conflicting on all the files.
2023-09-15 16:58:05 +02:00
Mehdi Amini
d2cd5a4595
Fix PR description HTML escaping, the surrounding <pre> tag shouldn't be escaped (#66322) 2023-09-13 21:40:57 -07:00
Tom Stellard
64751ea2c5
github-automation: Use a single comment for team mentions on pull requests (#66037)
This will reduce the number of notifications created when a pull request
label is added. Each team will only get a notification when their team's
label is added and not when other teams' labels are added.
2023-09-12 13:21:29 -07:00
Tom Stellard
cff72d7022
workflows/pr-subscriber: Handle libc++ and libc++abi labels (#66029) 2023-09-12 13:06:57 -07:00
Mehdi Amini
38e9006896
Include the issue description in the subscription comment so that email notification is self-contained (#65839)
This makes it so that we don't need to open the issue to have the
description in our inbox on subscription.
2023-09-11 22:39:01 -07:00
Mehdi Amini
4085cb380d
Improve the pull-request subcription notification format by adding the description and files statistics (#65828) 2023-09-08 22:54:53 -07:00
Tom Stellard
5f16a3a489
workflows: Add a simple pull request subscription workflow (#64913)
This new workflow will make it possible for people to subscribe to pull
requests based on the labels that are added. Labels will be added
automatically to the pull requests based on the modified files and each
label will be associated with a GitHub team that will be notified when
the label is added.

See
https://discourse.llvm.org/t/changes-to-pull-request-subscription-system/73296
2023-09-08 09:40:37 -07:00
Timm Bäder
405932afc0 [llvm][github] Allow github links in /cherry-pick actions
Differential Revision: https://reviews.llvm.org/D151191
2023-05-23 12:31:07 +02:00
Tobias Hieta
b71edfaa4e
[NFC][Py Reformat] Reformat python files in llvm
This is the first commit in a series that will reformat
all the python files in the LLVM repository.

Reformatting is done with `black`.

See more information here:

https://discourse.llvm.org/t/rfc-document-and-standardize-python-code-style

Reviewed By: jhenderson, JDevlieghere, MatzeB

Differential Revision: https://reviews.llvm.org/D150545
2023-05-17 10:48:52 +02:00
Timm Bäder
7a356de83c [clang][github] Try to fix multi-line py comment
Introduced in 09effa706a026c7ebcc01bf14f9f710cb1a8fa87
2023-04-13 14:47:24 +02:00
Timm Bäder
09effa706a [llvm][github] Add good-first-issue comment to issues
Differential Revision: https://reviews.llvm.org/D146819
2023-04-13 14:39:59 +02:00
Keith Smiley
c116bd9f60
[github] Fix minor lint warnings (NFC)
Differential Revision: https://reviews.llvm.org/D135532
2022-10-14 15:46:57 -07:00
Kazu Hirata
a2d4501718 [llvm] Fix comment typos (NFC) 2022-08-07 00:16:14 -07:00
Tom Stellard
560efad701 workflows: Release Workflow - Avoid selecting random reviewers when no phab review
If you pass a NULL reivew ID to the differential.revision.search API,
it returns all revisions and we were just taking the first one and
assuming it was associated with the commit in the PR.

We need to exit early if we can't find a Phabricator review associated
with a commit.
2022-08-02 14:07:22 -07:00
Tom Stellard
e0a3964aff workflows: Fix error when searching for backport reviewers 2022-08-02 01:09:02 -07:00
Tom Stellard
89d3c9634b workflows: Fix pull request creation for backports
This was broken by 17d4796cc84618e9b15f9484e5576127c431bc60.
2022-07-27 13:12:07 -07:00
Tom Stellard
f673dcc693 github: Automatically assign reviewers for backport requests
When there is a backport request, the GitHub Action that handles the
backport will now automatically assign the issue to the user(s) who
approved the commit in Phabricator and create an issue comment asking
them to review the request.

Reviewed By: thieta, kwk

Differential Revision: https://reviews.llvm.org/D126423
2022-07-26 15:30:27 -07:00
Tom Stellard
17d4796cc8 github: Fix release automation /branch command with new repo
We started using the llvm/llvm-project-release-prs repo for
backport pull requests, but since this repo is not a fork of
llvm/llvm-project it will reject pull requests from other repos. In
order to fix this, when ever someone uses the /branch command to request
a branch be merged into the release branch, we first copy the branch to
the llvm-project-release-prs repo and then create the pull request.

Reviewed By: thieta

Differential Revision: https://reviews.llvm.org/D126940
2022-07-26 15:05:05 -07:00
Tom Stellard
51eaaa3092 github: Add a helpful message for issues without milestones
The /branch and /cherry-pick commands only work when an isssue has
a milestone, so give the user a helpful error message when they
try these commands on issue without a milestone.

Reviewed By: thieta, kwk

Differential Revision: https://reviews.llvm.org/D125744
2022-07-15 10:11:40 -07:00
Tobias Hieta
fde9ef5214 [NFC][workflow] Fix issue where the workflow would say all PR's already exists 2022-06-02 08:20:21 +02:00
Tobias Hieta
49ad577c07 [workflow] Don't fail workflow if we already have a PR for an issue
When running /cherry-pick several times you will get an
error when it tries to create a new PR since there already
is one.

This checks if we have PR first.

Fixes #54862

Reviewed By: tstellar

Differential Revision: https://reviews.llvm.org/D123657
2022-05-27 16:02:39 +02:00
Tom Stellard
21c060c497 github: Switch release PR repository to llvm/llvm-project-release-prs
As discussed in https://discourse.llvm.org/t/creating-a-new-repository-for-release-branch-pull-requests/61339

Reviewed By: asl

Differential Revision: https://reviews.llvm.org/D125851
2022-05-23 15:10:27 -07:00
Tobias Hieta
1889170aeb workflow: When updating the issueXX branch, use force push
Otherwise if you try to update the branch with a new /cherry-pick
from the same issue you will run into problems similar as to the
one shown in this workflow:
https://github.com/llvm/llvm-project/runs/5864672298?check_suite_focus=true

Reviewed By: tstellar

Differential Revision: https://reviews.llvm.org/D123365
2022-04-12 08:03:59 +02:00
Tom Stellard
3929f91397 Release Workflow: Remove cherry-pick-failed label when pull request is created
Reviewed By: nikic

Differential Revision: https://reviews.llvm.org/D121032
2022-03-25 00:45:28 -07:00
Tom Stellard
daf82a51a0 github: Add actions to automate part of the release workflow
This adds support for automatically cherry-picking and testing fixes for the
release branch using 'commands' in issue comments.  The two supported commands are:

/cherry-pick <commit1> <commit2> ...

Which will backport and test commits from main.  And also

/branch owner/repo/branch

Which will test commits from the given branch.

Reviewed By: alexbatashev, kwk

Differential Revision: https://reviews.llvm.org/D117386
2022-02-03 15:03:59 -08:00
Tom Stellard
a2adebf409 workflows: Make issue-subscriber more robust for labels with special characters
Also, replace the existing actionscript implementation with a python
script that can be run outside of GitHub Actions.  The intention is
that going forward, all github action functionality would be implemented
in this script.

Reviewed By: kwk

Differential Revision: https://reviews.llvm.org/D116762
2022-01-14 22:04:54 -08:00