mirror of
https://github.com/vector-im/element-android.git
synced 2024-11-23 14:48:21 +08:00
fe6669380a
Add issue automation for PS feature teams
333 lines
12 KiB
YAML
333 lines
12 KiB
YAML
name: Move labelled issues to correct boards and columns
|
|
|
|
on:
|
|
issues:
|
|
types: [labeled]
|
|
|
|
jobs:
|
|
apply_Z-Labs_label:
|
|
name: Add Z-Labs label for features behind labs flags
|
|
runs-on: ubuntu-latest
|
|
if: >
|
|
contains(github.event.issue.labels.*.name, 'A-Maths') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Message-Pinning') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Polls') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Location-Sharing') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Message-Bubbles') ||
|
|
contains(github.event.issue.labels.*.name, 'Z-IA') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Themes-Custom') ||
|
|
contains(github.event.issue.labels.*.name, 'A-E2EE-Dehydration') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Tags')
|
|
steps:
|
|
- uses: actions/github-script@v5
|
|
with:
|
|
script: |
|
|
github.rest.issues.addLabels({
|
|
issue_number: context.issue.number,
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
labels: ['Z-Labs']
|
|
})
|
|
|
|
move_needs_info_issues:
|
|
name: X-Needs-Info issues to Need info column on triage board
|
|
runs-on: ubuntu-latest
|
|
# Skip in forks
|
|
if: github.repository == 'vector-im/element-android'
|
|
steps:
|
|
- uses: konradpabjan/move-labeled-or-milestoned-issue@219d384e03fa4b6460cd24f9f37d19eb033a4338
|
|
with:
|
|
action-token: "${{ secrets.ELEMENT_BOT_TOKEN }}"
|
|
project-url: "https://github.com/vector-im/element-android/projects/4"
|
|
column-name: "Need info"
|
|
label-name: "X-Needs-Info"
|
|
|
|
add_design_issues_to_project:
|
|
name: X-Needs-Design to Design project board
|
|
runs-on: ubuntu-latest
|
|
# Skip in forks
|
|
if: >
|
|
github.repository == 'vector-im/element-android' &&
|
|
contains(github.event.issue.labels.*.name, 'X-Needs-Design') &&
|
|
(contains(github.event.issue.labels.*.name, 'S-Critical') &&
|
|
(contains(github.event.issue.labels.*.name, 'O-Frequent') ||
|
|
contains(github.event.issue.labels.*.name, 'O-Occasional')) ||
|
|
(contains(github.event.issue.labels.*.name, 'S-Major') &&
|
|
contains(github.event.issue.labels.*.name, 'O-Frequent')) ||
|
|
contains(github.event.issue.labels.*.name, 'A11y'))
|
|
steps:
|
|
- uses: octokit/graphql-action@v2.x
|
|
id: add_to_project
|
|
with:
|
|
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
|
query: |
|
|
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
|
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
|
projectNextItem {
|
|
id
|
|
}
|
|
}
|
|
}
|
|
projectid: ${{ env.PROJECT_ID }}
|
|
contentid: ${{ github.event.issue.node_id }}
|
|
env:
|
|
PROJECT_ID: "PN_kwDOAM0swc0sUA"
|
|
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
|
|
|
add_product_issues:
|
|
name: X-Needs-Product to Design project board
|
|
runs-on: ubuntu-latest
|
|
if: >
|
|
contains(github.event.issue.labels.*.name, 'X-Needs-Product')
|
|
steps:
|
|
- uses: octokit/graphql-action@v2.x
|
|
id: add_to_project
|
|
with:
|
|
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
|
query: |
|
|
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
|
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
|
projectNextItem {
|
|
id
|
|
}
|
|
}
|
|
}
|
|
projectid: ${{ env.PROJECT_ID }}
|
|
contentid: ${{ github.event.issue.node_id }}
|
|
env:
|
|
PROJECT_ID: "PN_kwDOAM0swc4AAg6N"
|
|
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
|
|
|
delight_issues_to_board:
|
|
name: Spaces issues to Delight project board
|
|
runs-on: ubuntu-latest
|
|
# Skip in forks
|
|
if: >
|
|
github.repository == 'vector-im/element-android' &&
|
|
(contains(github.event.issue.labels.*.name, 'Team: Delight') ||
|
|
contains(github.event.issue.labels.*.name, 'Z-AppLayout'))
|
|
steps:
|
|
- uses: octokit/graphql-action@v2.x
|
|
with:
|
|
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
|
query: |
|
|
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
|
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
|
projectNextItem {
|
|
id
|
|
}
|
|
}
|
|
}
|
|
projectid: ${{ env.PROJECT_ID }}
|
|
contentid: ${{ github.event.issue.node_id }}
|
|
env:
|
|
PROJECT_ID: "PN_kwDOAM0swc1HvQ"
|
|
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
|
|
|
move_voice-message_issues:
|
|
name: A-Voice Messages to voice message board
|
|
runs-on: ubuntu-latest
|
|
# Skip in forks
|
|
if: >
|
|
github.repository == 'vector-im/element-android' &&
|
|
contains(github.event.issue.labels.*.name, 'A-Voice Messages')
|
|
steps:
|
|
- uses: octokit/graphql-action@v2.x
|
|
with:
|
|
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
|
query: |
|
|
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
|
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
|
projectNextItem {
|
|
id
|
|
}
|
|
}
|
|
}
|
|
projectid: ${{ env.PROJECT_ID }}
|
|
contentid: ${{ github.event.issue.node_id }}
|
|
env:
|
|
PROJECT_ID: "PN_kwDOAM0swc2KCw"
|
|
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
|
move_message_bubbles_issues:
|
|
name: A-Message-Bubbles to Message bubbles board
|
|
runs-on: ubuntu-latest
|
|
# Skip in forks
|
|
if: >
|
|
github.repository == 'vector-im/element-android' &&
|
|
contains(github.event.issue.labels.*.name, 'A-Message-Bubbles')
|
|
steps:
|
|
- uses: octokit/graphql-action@v2.x
|
|
with:
|
|
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
|
query: |
|
|
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
|
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
|
projectNextItem {
|
|
id
|
|
}
|
|
}
|
|
}
|
|
projectid: ${{ env.PROJECT_ID }}
|
|
contentid: ${{ github.event.issue.node_id }}
|
|
env:
|
|
PROJECT_ID: "PN_kwDOAM0swc3m-g"
|
|
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
|
|
|
move_ftue_issues:
|
|
name: Z-FTUE to Mobile FTUE board
|
|
runs-on: ubuntu-latest
|
|
# Skip in forks
|
|
if: >
|
|
github.repository == 'vector-im/element-android' &&
|
|
contains(github.event.issue.labels.*.name, 'Z-FTUE')
|
|
steps:
|
|
- uses: octokit/graphql-action@v2.x
|
|
with:
|
|
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
|
query: |
|
|
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
|
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
|
projectNextItem {
|
|
id
|
|
}
|
|
}
|
|
}
|
|
projectid: ${{ env.PROJECT_ID }}
|
|
contentid: ${{ github.event.issue.node_id }}
|
|
env:
|
|
PROJECT_ID: "PN_kwDOAM0swc4AAqVx"
|
|
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
|
|
|
move_WTF_issues:
|
|
name: Z-WTF to WTF board
|
|
runs-on: ubuntu-latest
|
|
# Skip in forks
|
|
if: >
|
|
github.repository == 'vector-im/element-android' &&
|
|
contains(github.event.issue.labels.*.name, 'Z-WTF')
|
|
steps:
|
|
- uses: octokit/graphql-action@v2.x
|
|
with:
|
|
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
|
query: |
|
|
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
|
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
|
projectNextItem {
|
|
id
|
|
}
|
|
}
|
|
}
|
|
projectid: ${{ env.PROJECT_ID }}
|
|
contentid: ${{ github.event.issue.node_id }}
|
|
env:
|
|
PROJECT_ID: "PN_kwDOAM0swc4AArk0"
|
|
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
|
|
|
move_element_x_issues:
|
|
name: ElementX issues to ElementX project board
|
|
runs-on: ubuntu-latest
|
|
# Skip in forks
|
|
if: >
|
|
github.repository == 'vector-im/element-android' &&
|
|
(contains(github.event.issue.labels.*.name, 'Z-BBQ-Alpha') ||
|
|
contains(github.event.issue.labels.*.name, 'Z-BBQ-Beta') ||
|
|
contains(github.event.issue.labels.*.name, 'Z-BBQ-Release') ||
|
|
contains(github.event.issue.labels.*.name, 'Z-Banquet-Alpha') ||
|
|
contains(github.event.issue.labels.*.name, 'Z-Banquet-Beta') ||
|
|
contains(github.event.issue.labels.*.name, 'Z-Banquet-Release'))
|
|
steps:
|
|
- uses: octokit/graphql-action@v2.x
|
|
with:
|
|
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
|
query: |
|
|
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
|
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
|
projectNextItem {
|
|
id
|
|
}
|
|
}
|
|
}
|
|
projectid: ${{ env.PROJECT_ID }}
|
|
contentid: ${{ github.event.issue.node_id }}
|
|
env:
|
|
PROJECT_ID: "PN_kwDOAM0swc4ABTXY"
|
|
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
|
|
|
ps_features1:
|
|
name: Add labelled issues to PS features team 1
|
|
runs-on: ubuntu-latest
|
|
if: >
|
|
contains(github.event.issue.labels.*.name, 'A-Polls') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Location-Sharing') ||
|
|
(contains(github.event.issue.labels.*.name, 'A-Voice-Messages') &&
|
|
!contains(github.event.issue.labels.*.name, 'A-Broadcast')) ||
|
|
(contains(github.event.issue.labels.*.name, 'A-Session-Mgmt') &&
|
|
contains(github.event.issue.labels.*.name, 'A-User-Settings'))
|
|
steps:
|
|
- uses: octokit/graphql-action@v2.x
|
|
id: add_to_project
|
|
with:
|
|
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
|
query: |
|
|
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
|
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
|
item {
|
|
id
|
|
}
|
|
}
|
|
}
|
|
projectid: ${{ env.PROJECT_ID }}
|
|
contentid: ${{ github.event.issue.node_id }}
|
|
env:
|
|
PROJECT_ID: "PVT_kwDOAM0swc4AHJKF"
|
|
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
|
|
|
ps_features2:
|
|
name: Add labelled issues to PS features team 2
|
|
runs-on: ubuntu-latest
|
|
if: >
|
|
contains(github.event.issue.labels.*.name, 'A-DM-Start') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Broadcast')
|
|
steps:
|
|
- uses: octokit/graphql-action@v2.x
|
|
id: add_to_project
|
|
with:
|
|
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
|
query: |
|
|
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
|
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
|
item {
|
|
id
|
|
}
|
|
}
|
|
}
|
|
projectid: ${{ env.PROJECT_ID }}
|
|
contentid: ${{ github.event.issue.node_id }}
|
|
env:
|
|
PROJECT_ID: "PVT_kwDOAM0swc4AHJKd"
|
|
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
|
|
|
ps_features3:
|
|
name: Add labelled issues to PS features team 3
|
|
runs-on: ubuntu-latest
|
|
if: >
|
|
contains(github.event.issue.labels.*.name, 'A-Composer-WYSIWYG')
|
|
steps:
|
|
- uses: octokit/graphql-action@v2.x
|
|
id: add_to_project
|
|
with:
|
|
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
|
query: |
|
|
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
|
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
|
item {
|
|
id
|
|
}
|
|
}
|
|
}
|
|
projectid: ${{ env.PROJECT_ID }}
|
|
contentid: ${{ github.event.issue.node_id }}
|
|
env:
|
|
PROJECT_ID: "PVT_kwDOAM0swc4AHJKW"
|
|
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|