Skip to content

Commit 1b87015

Browse files
nchammasHyukjinKwon
andcommitted
[SPARK-31330] Automatically label PRs based on the paths they touch
### What changes were proposed in this pull request? This PR adds some rules that will be used by Probot Auto Labeler to label PRs based on what paths they modify. ### Why are the changes needed? This should make it easier for committers to organize PRs, and it could also help drive downstream tooling like the PR dashboard. ### Does this PR introduce any user-facing change? No. ### How was this patch tested? We'll only be able to test it, I believe, after merging it in. Given that [the Avro project is using this same bot already](https://github.com/apache/avro/blob/master/.github/autolabeler.yml), I expect it will be straightforward to get this working. Closes #28114 from nchammas/SPARK-31330-auto-label-prs. Lead-authored-by: Nicholas Chammas <[email protected]> Co-authored-by: HyukjinKwon <[email protected]> Co-authored-by: Nicholas Chammas <[email protected]> Signed-off-by: HyukjinKwon <[email protected]>
1 parent 6cd0bef commit 1b87015

File tree

1 file changed

+131
-0
lines changed

1 file changed

+131
-0
lines changed

.github/autolabeler.yml

Lines changed: 131 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,131 @@
1+
#
2+
# Licensed to the Apache Software Foundation (ASF) under one or more
3+
# contributor license agreements. See the NOTICE file distributed with
4+
# this work for additional information regarding copyright ownership.
5+
# The ASF licenses this file to You under the Apache License, Version 2.0
6+
# (the "License"); you may not use this file except in compliance with
7+
# the License. You may obtain a copy of the License at
8+
#
9+
# https://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
#
17+
18+
# Bot page: https://github.com/apps/probot-autolabeler
19+
# The matching patterns follow the .gitignore spec.
20+
# See: https://git-scm.com/docs/gitignore#_pattern_format
21+
# Also, note that the plugin uses 'ignore' package. See also
22+
# https://github.com/kaelzhang/node-ignore
23+
INFRA:
24+
- ".github/"
25+
- "appveyor.yml"
26+
- "/tools/"
27+
- "/dev/create-release/"
28+
- ".asf.yaml"
29+
- ".gitattributes"
30+
- ".gitignore"
31+
- "/dev/github_jira_sync.py"
32+
- "/dev/merge_spark_pr.py"
33+
- "/dev/run-tests-jenkins*"
34+
BUILD:
35+
- "/dev/"
36+
- "!/dev/github_jira_sync.py"
37+
- "!/dev/merge_spark_pr.py"
38+
- "!/dev/run-tests-jenkins*"
39+
- "/build/"
40+
- "/project/"
41+
- "/assembly/"
42+
- "*pom.xml"
43+
- "/bin/docker-image-tool.sh"
44+
- "/bin/find-spark-home*"
45+
- "scalastyle-config.xml"
46+
DOCS:
47+
- "docs/"
48+
- "/README.md"
49+
- "/CONTRIBUTING.md"
50+
EXAMPLES:
51+
- "examples/"
52+
- "/bin/run-example*"
53+
CORE:
54+
- "/core/"
55+
- "/common/kvstore/"
56+
- "/common/network-common/"
57+
- "/common/network-shuffle/"
58+
- "/python/pyspark/*.py"
59+
- "/python/pyspark/tests/*.py"
60+
- "/sbin/*master*.sh"
61+
- "/sbin/*slave*.sh"
62+
- "/sbin/spark-config.sh"
63+
- "/sbin/*daemon*.sh"
64+
- "/sbin/*history*.sh"
65+
- "/sbin/*mesos*.sh"
66+
SPARK SUBMIT:
67+
- "/bin/spark-submit*"
68+
SPARK SHELL:
69+
- "/repl/"
70+
SQL:
71+
- "sql/"
72+
- "/common/unsafe/"
73+
- "!/python/pyspark/sql/avro/"
74+
- "!/python/pyspark/sql/streaming.py"
75+
- "!/python/pyspark/sql/tests/test_streaming.py"
76+
- "/bin/spark-sql*"
77+
- "/bin/beeline*"
78+
- "/sbin/*thriftserver*.sh"
79+
- "*SQL*.R"
80+
- "DataFrame.R"
81+
- "WindowSpec.R"
82+
- "catalog.R"
83+
- "column.R"
84+
- "functions.R"
85+
- "group.R"
86+
- "schema.R"
87+
- "types.R"
88+
AVRO:
89+
- "/external/avro/"
90+
- "/python/pyspark/sql/avro/"
91+
DSTREAM:
92+
- "/streaming/"
93+
- "/data/streaming/"
94+
- "/external/flume*"
95+
- "/external/kinesis*"
96+
- "/external/kafka*"
97+
- "/python/pyspark/streaming/"
98+
GRAPHX:
99+
- "/graphx/"
100+
- "/data/graphx/"
101+
ML:
102+
- "ml/"
103+
- "*mllib_*.R"
104+
MLLIB:
105+
- "spark/mllib/"
106+
- "/mllib-local/"
107+
- "/python/pyspark/mllib/"
108+
STRUCTURED STREAMING:
109+
- "sql/**/streaming/"
110+
- "/external/kafka-0-10-sql/"
111+
- "/python/pyspark/sql/streaming.py"
112+
- "/python/pyspark/sql/tests/test_streaming.py"
113+
- "*streaming.R"
114+
PYTHON:
115+
- "/bin/pyspark*"
116+
- "python/"
117+
R:
118+
- "r/"
119+
- "R/"
120+
- "/bin/sparkR*"
121+
YARN:
122+
- "/resource-managers/yarn/"
123+
MESOS:
124+
- "/resource-managers/mesos/"
125+
KUBERNETES:
126+
- "/resource-managers/kubernetes/"
127+
WINDOWS:
128+
- "*.cmd"
129+
- "/R/pkg/tests/fulltests/test_Windows.R"
130+
WEB UI:
131+
- "ui/"

0 commit comments

Comments
 (0)