-
Notifications
You must be signed in to change notification settings - Fork 257
69 lines (64 loc) · 1.95 KB
/
pull-request-target.yaml
File metadata and controls
69 lines (64 loc) · 1.95 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
name: pull-request-target
on:
pull_request_target:
types: [opened, edited, synchronize, labeled, closed]
branches:
- "*"
concurrency:
# Generally we use `github.ref`, but in pull_request_target, that's always `main`.
group: ${{ github.workflow }}-${{ github.event.pull_request.number }}
cancel-in-progress: true
jobs:
main:
name: Validate PR title
runs-on: ubuntu-24.04
steps:
- uses: amannn/action-semantic-pull-request@v6
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
requireScope: false
# The standard ones plus
# - "internal" for code quality / ergonomics improvements
# - "devops" for developer ergonomics
# - "web" for playground / website (but not docs)
# - "refine" for tiny changes
types: |
feat
fix
docs
style
refactor
perf
test
build
ci
chore
revert
internal
devops
web
refine
backport:
# Backport to `web` branch on `pr-backport-web`
name: Backport to `web` branch
runs-on: ubuntu-24.04
# Confirm that it's merged and has a label to ensure nothing is backported without oversight
if: |
github.event.pull_request.merged
&& (
github.event.action == 'closed'
|| (
github.event.action == 'labeled'
&& contains(github.event.label.name, 'pr-backport-web')
)
)
steps:
- uses: tibdex/backport@v2
with:
# This is a personal access token from the @prql-bot
github_token: ${{ secrets.PRQL_BOT_GITHUB_TOKEN }}
# Docs are at https://github.com/tibdex/backport/blob/main/action.yml
# We only use `web` atm
label_pattern: "^pr-backport-(?<base>([^ ]+))$"
title_template: "chore: Backport #<%= number%> to `web`"