mirror of
https://github.com/element-hq/element-android
synced 2024-12-22 17:20:48 +03:00
8ff7acaec5
Add a GH workflow to push ElementX issues to the global board
280 lines
10 KiB
YAML
280 lines
10 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_priority_design_issues_to_project:
|
|
name: P1 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') &&
|
|
contains(github.event.issue.labels.*.name, 'O-Frequent'))
|
|
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, 'A-Spaces') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Space-Settings') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Subspaces') ||
|
|
contains(github.event.issue.labels.*.name, 'Z-IA'))
|
|
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_threads_issues:
|
|
name: A-Threads to Thread board
|
|
runs-on: ubuntu-latest
|
|
# Skip in forks
|
|
if: >
|
|
github.repository == 'vector-im/element-android' &&
|
|
contains(github.event.issue.labels.*.name, 'A-Threads')
|
|
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_kwDOAM0swc0rRA"
|
|
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-ElementX-Alpha') ||
|
|
contains(github.event.issue.labels.*.name, 'Z-ElementX-Beta') ||
|
|
contains(github.event.issue.labels.*.name, 'Z-ElementX'))
|
|
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 }}
|