This is an automated email from the ASF dual-hosted git repository. rusackas pushed a commit to branch feat/utsc2026-labeler in repository https://gitbox.apache.org/repos/asf/superset.git
commit 84ea5bf08871fcd0e1d32fcc8ecef5c740c48ec6 Author: Evan Rusackas <[email protected]> AuthorDate: Thu Oct 22 22:52:08 2026 -0700 feat(ci): label PRs/issues from UTSC 2026 students Adds a workflow that applies the `utsc2026` label to any pull request or issue opened by a student on the roster in .github/utsc2026-students.yml. The existing actions/labeler action only matches on changed file paths, so this uses actions/github-script to compare the author against the roster instead. Co-Authored-By: Evan Rusackas <[email protected]> Co-Authored-By: Claude Sonnet 5 <[email protected]> --- .github/utsc2026-students.yml | 63 ++++++++++++++++++++++++++++++++++ .github/workflows/utsc2026-labeler.yml | 52 ++++++++++++++++++++++++++++ 2 files changed, 115 insertions(+) diff --git a/.github/utsc2026-students.yml b/.github/utsc2026-students.yml new file mode 100644 index 00000000000..a760dba40a8 --- /dev/null +++ b/.github/utsc2026-students.yml @@ -0,0 +1,63 @@ +# GitHub handles of UTSC 2026 course students. Any PR or issue opened by one +# of these users is automatically labeled `utsc2026` (see +# .github/workflows/utsc2026-labeler.yml). One handle per line, as a YAML +# list item (`- handle`); `#` starts a comment. +- JusByte +- 7AbdUrRehman7 +- jonathan-imanu +- ara1143 +- MealadE +- ali-rajan +- NabilAldihni +- amnakhairi0 +- alizaasifb +- CodingRookieA +- moizm05 +- jchong9 +- EkVid +- KristiDodaj +- Kushal-D-Patel +- Haseeb702 +- Jain-m3392 +- alankritverma01 +- Adrit-3001 +- IshanAmin1 +- rhodwell +- amandajzhu +- mbilal29 +- HariBala246 +- mallisho +- MegumiKat +- orion222 +- ashyng +- MatthewSnelgrove +- auricz +- milen-t050 +- JosephSun2003 +- JerryHe05 +- dujanah +- MichaelWK04 +- BobbyAdiSalim +- ansh-patel2005 +- KobeChui +- DarthJarJarJar +- HBenipal +- yoloanda +- CherylZ4 +- RohithS05 +- ZayLinAung +- devCodesApps +- IsaiahH2004 +- dauiysuns +- AashirM2004 +- Madan015 +- teddio496 +- lilyxm +- anish422 +- neloduka-sobe +- danishmohammed +- danielstevanus88 +- adeebnawshad +- zuhair-mzk +- LucasP4321 +- eliu0412 diff --git a/.github/workflows/utsc2026-labeler.yml b/.github/workflows/utsc2026-labeler.yml new file mode 100644 index 00000000000..d623a5b44fe --- /dev/null +++ b/.github/workflows/utsc2026-labeler.yml @@ -0,0 +1,52 @@ +name: "UTSC 2026 Student Labeler" + +on: + pull_request_target: + types: [opened] + issues: + types: [opened] + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.event.issue.number }} + cancel-in-progress: true + +permissions: + contents: read + +jobs: + label: + permissions: + contents: read + issues: write + pull-requests: write + runs-on: ubuntu-slim + steps: + - name: Label if author is a UTSC 2026 student + uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0 + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + script: | + const { data: file } = await github.rest.repos.getContent({ + owner: context.repo.owner, + repo: context.repo.repo, + path: '.github/utsc2026-students.yml', + }); + const students = Buffer.from(file.content, 'base64') + .toString('utf8') + .split('\n') + .map(line => line.replace(/#.*/, '').trim()) + .filter(line => line.startsWith('- ')) + .map(line => line.slice(2).trim().toLowerCase()); + + const target = context.payload.pull_request ?? context.payload.issue; + const author = target.user.login.toLowerCase(); + if (!students.includes(author)) { + return; + } + + await github.rest.issues.addLabels({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: target.number, + labels: ['utsc2026'], + });
