Add issues to project #21997
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Add issues to project | |
| on: | |
| schedule: | |
| - cron: "0 * * * *" | |
| workflow_dispatch: | |
| permissions: {} | |
| concurrency: | |
| group: shared | |
| env: | |
| COMMON_FILTER: is:open archived:false sort:created-asc | |
| CONTENT_REPO_FILTER: (repo:mdn/mdn OR repo:mdn/django-diy-blog OR repo:mdn/django-locallibrary-tutorial OR repo:mdn/express-locallibrary-tutorial OR repo:mdn/todo-react OR repo:mdn/todo-vue OR repo:mdn/css-examples OR repo:mdn/dom-examples OR repo:mdn/houdini-examples OR repo:mdn/html-examples OR repo:mdn/imsc-examples OR repo:mdn/js-examples OR repo:mdn/learning-area OR repo:mdn/perf-examples OR repo:mdn/pwa-examples OR repo:mdn/web-components-examples OR repo:mdn/webassembly-examples OR repo:mdn/webaudio-examples OR repo:mdn/webvr-tests OR repo:mdn/beginner-html-site OR repo:mdn/beginner-html-site-scripted OR repo:mdn/beginner-html-site-styled OR repo:mdn/shared-assets OR repo:mdn/data) | |
| ENGINEERING_REPO_FILTER: (repo:mdn/bob OR repo:mdn/bcd-utils OR repo:mdn/dex OR repo:mdn/differy OR repo:mdn/fred OR repo:mdn/mcp OR repo:mdn/mdn-http-observatory OR repo:mdn/mdn.dev OR repo:mdn/rari OR repo:mdn/rumba OR repo:mdn/yari OR repo:mdn/workflows) | |
| EXCLUDE_LABELS: -label:"Content:WebExt" | |
| EXCLUDE_REPOS: -repo:mdn/ai-feedback -repo:mdn/private-ai-feedback -repo:mdn/browser-compat-data -repo:mdn/curriculum -repo:mdn/translated-content -repo:mdn/translated-content-de -repo:mdn/translated-content-it -repo:mdn/webextensions-examples | |
| jobs: | |
| add-issues-to-project: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| env: | |
| SENTRY_DSN: ${{ secrets.SENTRY_DSN }} | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0 | |
| with: | |
| node-version-file: ".nvmrc" | |
| package-manager-cache: false | |
| - run: npm ci | |
| - name: Add "needs triage" label to unlabeled issues | |
| id: add-labels | |
| continue-on-error: true | |
| timeout-minutes: 5 | |
| run: npm run add-labels | |
| env: | |
| GH_TOKEN: ${{ secrets.GH_TOKEN }} | |
| ISSUE_LABEL: "needs triage" | |
| ISSUE_QUERY: org:mdn is:issue no:label ${{ env.COMMON_FILTER }} ${{ env.EXCLUDE_REPOS }} | |
| - name: Issue triage | |
| id: issue-triage | |
| continue-on-error: true | |
| timeout-minutes: 5 | |
| run: | | |
| npm run add-to-project | |
| npm run manage-project-items | |
| env: | |
| GH_TOKEN: ${{ secrets.GH_TOKEN }} | |
| ISSUE_PROJECT_OWNER: mdn | |
| ISSUE_PROJECT_NUMBER: 33 | |
| ISSUE_PROJECT_QUERY: org:mdn is:issue label:"needs triage" ${{ env.COMMON_FILTER }} ${{ env.EXCLUDE_LABELS }} ${{ env.EXCLUDE_REPOS }} | |
| - name: AI Help feedback | |
| id: ai-help | |
| continue-on-error: true | |
| timeout-minutes: 5 | |
| run: | | |
| npm run add-to-project | |
| npm run manage-project-items | |
| env: | |
| GH_TOKEN: ${{ secrets.GH_TOKEN }} | |
| ISSUE_PROJECT_OWNER: mdn | |
| ISSUE_PROJECT_NUMBER: 42 | |
| ISSUE_PROJECT_QUERY: (repo:mdn/ai-feedback OR repo:mdn/private-ai-feedback) is:issue | |
| - name: BCD issues | |
| id: bcd-issues | |
| continue-on-error: true | |
| timeout-minutes: 5 | |
| run: | | |
| npm run manage-project-items | |
| env: | |
| GH_TOKEN: ${{ secrets.GH_TOKEN }} | |
| ISSUE_PROJECT_OWNER: mdn | |
| ISSUE_PROJECT_NUMBER: 47 | |
| - name: BCD meeting agenda | |
| id: bcd-meeting | |
| continue-on-error: true | |
| timeout-minutes: 5 | |
| run: | | |
| npm run manage-project-items | |
| env: | |
| GH_TOKEN: ${{ secrets.GH_TOKEN }} | |
| ISSUE_PROJECT_OWNER: mdn | |
| ISSUE_PROJECT_NUMBER: 52 | |
| - name: Content issues | |
| id: content | |
| continue-on-error: true | |
| timeout-minutes: 5 | |
| run: | | |
| npm run add-to-project | |
| npm run manage-project-items | |
| env: | |
| GH_TOKEN: ${{ secrets.GH_TOKEN }} | |
| ISSUE_PROJECT_OWNER: mdn | |
| ISSUE_PROJECT_NUMBER: 37 | |
| ISSUE_PROJECT_QUERY: | | |
| org:mdn is:issue label:"needs content decision" ${{ env.COMMON_FILTER }} | |
| is:issue ${{ env.COMMON_FILTER }} ${{ env.CONTENT_REPO_FILTER }} | |
| - name: Engineering issues | |
| id: engineering | |
| continue-on-error: true | |
| timeout-minutes: 5 | |
| run: | | |
| npm run add-to-project | |
| npm run manage-project-items | |
| env: | |
| GH_TOKEN: ${{ secrets.GH_TOKEN }} | |
| ISSUE_PROJECT_OWNER: mdn | |
| ISSUE_PROJECT_NUMBER: 36 | |
| ISSUE_PROJECT_QUERY: | | |
| org:mdn is:issue label:"involves: Engineering" ${{ env.COMMON_FILTER }} ${{ env.EXCLUDE_REPOS }} | |
| is:issue ${{ env.COMMON_FILTER }} ${{ env.EXCLUDE_LABELS }} ${{ env.ENGINEERING_REPO_FILTER }} | |
| - name: Contributor issues | |
| id: contributor | |
| continue-on-error: true | |
| timeout-minutes: 5 | |
| run: | | |
| npm run add-to-project | |
| npm run manage-project-items | |
| env: | |
| GH_TOKEN: ${{ secrets.GH_TOKEN }} | |
| ISSUE_PROJECT_OWNER: mdn | |
| ISSUE_PROJECT_NUMBER: 25 | |
| ISSUE_PROJECT_QUERY: org:mdn is:issue (label:"help wanted" OR label:"good first issue" OR label:"accepting pr" OR label:"accepting prs" OR label:"PR welcome") ${{ env.COMMON_FILTER }} ${{ env.EXCLUDE_REPOS }} | |
| - name: Ping | |
| env: | |
| ping_url: ${{ secrets.PING_URL_ISSUES }} | |
| if: env.ping_url != '' && !contains(steps.*.outcome, 'failure') && !contains(steps.*.outcome, 'cancelled') | |
| run: curl ${{ env.ping_url }} | |
| - name: Print rate limit | |
| run: gh api /rate_limit | |
| env: | |
| GH_TOKEN: ${{ secrets.GH_TOKEN }} |