123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148 |
- name: Commands
- on:
- issue_comment:
- types:
- - created
- - edited
- pull_request_target:
- types:
- - labeled
- - synchronize
- permissions: {}
- jobs:
- rebase:
- name: Rebase
- if: github.event.issue.pull_request != '' && contains(github.event.comment.body, '@jellyfin-bot rebase') && github.event.comment.author_association == 'MEMBER'
- runs-on: ubuntu-latest
- steps:
- - name: Notify as seen
- uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4.0.0
- with:
- token: ${{ secrets.JF_BOT_TOKEN }}
- comment-id: ${{ github.event.comment.id }}
- reactions: '+1'
- - name: Checkout the latest code
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
- with:
- token: ${{ secrets.JF_BOT_TOKEN }}
- fetch-depth: 0
- - name: Automatic Rebase
- uses: cirrus-actions/rebase@b87d48154a87a85666003575337e27b8cd65f691 # 1.8
- env:
- GITHUB_TOKEN: ${{ secrets.JF_BOT_TOKEN }}
- check-backport:
- permissions:
- contents: read
- name: Check Backport
- if: ${{ ( github.event.issue.pull_request && contains(github.event.comment.body, '@jellyfin-bot check backport') ) || github.event.label.name == 'stable backport' || contains(github.event.pull_request.labels.*.name, 'stable backport' ) }}
- runs-on: ubuntu-latest
- steps:
- - name: Notify as seen
- uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4.0.0
- if: ${{ github.event.comment != null }}
- with:
- token: ${{ secrets.JF_BOT_TOKEN }}
- comment-id: ${{ github.event.comment.id }}
- reactions: eyes
- - name: Checkout the latest code
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
- with:
- token: ${{ secrets.JF_BOT_TOKEN }}
- fetch-depth: 0
- - name: Notify as running
- id: comment_running
- uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4.0.0
- if: ${{ github.event.comment != null }}
- with:
- token: ${{ secrets.JF_BOT_TOKEN }}
- issue-number: ${{ github.event.issue.number }}
- body: |
- Running backport tests...
- - name: Perform test backport
- id: run_tests
- run: |
- set +o errexit
- git config --global user.name "Jellyfin Bot"
- git config --global user.email "team@jellyfin.org"
- CURRENT_BRANCH="origin/${GITHUB_HEAD_REF}"
- git checkout master
- git merge --no-ff ${CURRENT_BRANCH}
- MERGE_COMMIT_HASH=$( git log -q -1 | head -1 | awk '{ print $2 }' )
- git fetch --all
- CURRENT_STABLE=$( git branch -r | grep 'origin/release' | sort -rV | head -1 | awk -F '/' '{ print $NF }' )
- stable_branch="Current stable release branch: ${CURRENT_STABLE}"
- echo ${stable_branch}
- echo ::set-output name=branch::${stable_branch}
- git checkout -t origin/${CURRENT_STABLE} -b ${CURRENT_STABLE}
- git cherry-pick -sx -m1 ${MERGE_COMMIT_HASH} &>output.txt
- retcode=$?
- cat output.txt | grep -v 'hint:'
- output="$( grep -v 'hint:' output.txt )"
- output="${output//'%'/'%25'}"
- output="${output//$'\n'/'%0A'}"
- output="${output//$'\r'/'%0D'}"
- echo ::set-output name=output::$output
- exit ${retcode}
- - name: Notify with result success
- uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4.0.0
- if: ${{ github.event.comment != null && success() }}
- with:
- token: ${{ secrets.JF_BOT_TOKEN }}
- comment-id: ${{ steps.comment_running.outputs.comment-id }}
- body: |
- ${{ steps.run_tests.outputs.branch }}
- Output from `git cherry-pick`:
- ---
- ${{ steps.run_tests.outputs.output }}
- reactions: hooray
- - name: Notify with result failure
- uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4.0.0
- if: ${{ github.event.comment != null && failure() }}
- with:
- token: ${{ secrets.JF_BOT_TOKEN }}
- comment-id: ${{ steps.comment_running.outputs.comment-id }}
- body: |
- ${{ steps.run_tests.outputs.branch }}
- Output from `git cherry-pick`:
- ---
- ${{ steps.run_tests.outputs.output }}
- reactions: confused
- rename:
- name: Rename
- if: contains(github.event.comment.body, '@jellyfin-bot rename') && github.event.comment.author_association == 'MEMBER'
- runs-on: ubuntu-latest
- steps:
- - name: pull in script
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
- with:
- repository: jellyfin/jellyfin-triage-script
- - name: install python
- uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5.1.0
- with:
- python-version: '3.12'
- cache: 'pip'
- - name: install python packages
- run: pip install -r rename/requirements.txt
- - name: run rename script
- run: python3 rename.py
- working-directory: ./rename
- env:
- GH_TOKEN: ${{ secrets.JF_BOT_TOKEN }}
- GH_REPO: ${{ github.repository }}
- ISSUE: ${{ github.event.issue.number }}
- COMMENT_ID: ${{ github.event.comment.id }}
|