|
4 | 4 | name: CI |
5 | 5 |
|
6 | 6 | on: |
7 | | - workflow_dispatch: ~ |
| 7 | + workflow_dispatch: |
| 8 | + inputs: |
| 9 | + release: |
| 10 | + description: 'PMS Release Channel' |
| 11 | + required: false |
| 12 | + default: 'public' |
| 13 | + type: choice |
| 14 | + options: |
| 15 | + - public |
| 16 | + - beta |
8 | 17 | pull_request: ~ |
9 | 18 | push: |
10 | 19 | branches: |
@@ -71,17 +80,26 @@ jobs: |
71 | 80 | PLEXAPI_AUTH_SERVER_BASEURL: http://127.0.0.1:32400 |
72 | 81 | PLEXAPI_PLEXAPI_TIMEOUT: "60" |
73 | 82 | PLEX_CONTAINER: plexinc/pms-docker |
74 | | - PLEX_CONTAINER_TAG: latest |
| 83 | + PLEX_CONTAINER_TAG: ${{ matrix.release == 'beta' && 'plexpass' || 'latest'}} |
75 | 84 | strategy: |
76 | 85 | fail-fast: false |
77 | 86 | max-parallel: 3 |
78 | 87 | matrix: |
79 | 88 | plex: ['unclaimed', 'claimed'] |
| 89 | + release: |
| 90 | + - ${{ inputs.release || 'public' }} |
80 | 91 | is-master: |
81 | 92 | - ${{ github.ref == 'refs/heads/master' }} |
| 93 | + is-workflow-dispatch: |
| 94 | + - ${{ github.event_name == 'workflow_dispatch' }} |
82 | 95 | exclude: |
| 96 | + # For PRs, skip claimed tests unless manually triggered |
83 | 97 | - is-master: false |
84 | 98 | plex: claimed |
| 99 | + is-workflow-dispatch: false |
| 100 | + # Always skip unclaimed beta tests (even for manual triggers) |
| 101 | + - release: beta |
| 102 | + plex: unclaimed |
85 | 103 | steps: |
86 | 104 | - name: Check out code from Github |
87 | 105 | uses: actions/checkout@v6 |
@@ -223,11 +241,20 @@ jobs: |
223 | 241 | strategy: |
224 | 242 | matrix: |
225 | 243 | plex: ['unclaimed', 'claimed'] |
| 244 | + release: |
| 245 | + - ${{ inputs.release || 'public' }} |
226 | 246 | is-master: |
227 | 247 | - ${{ github.ref == 'refs/heads/master' }} |
| 248 | + is-workflow-dispatch: |
| 249 | + - ${{ github.event_name == 'workflow_dispatch' }} |
228 | 250 | exclude: |
| 251 | + # For PRs, skip claimed tests unless manually triggered |
229 | 252 | - is-master: false |
230 | 253 | plex: claimed |
| 254 | + is-workflow-dispatch: false |
| 255 | + # Always skip unclaimed beta tests (even for manual triggers) |
| 256 | + - release: beta |
| 257 | + plex: unclaimed |
231 | 258 | steps: |
232 | 259 | - name: Check out code from GitHub |
233 | 260 | uses: actions/checkout@v6 |
@@ -270,4 +297,4 @@ jobs: |
270 | 297 | env: |
271 | 298 | CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} |
272 | 299 | with: |
273 | | - flags: ${{ matrix.plex }} |
| 300 | + flags: ${{ join(fromJSON(format('["{0}", "{1}"]', matrix.plex, matrix.release)), ',') }} |
0 commit comments