Skip to content

Commit 57b5f4f

Browse files
edmundmillerclaude
andcommitted
ci: enhance cloud tests with PR review triggers and improved validation
- Add pull_request_review trigger for approved PRs - Add revision variable step for better tracking - Add parameter validation step for debugging - Add labels for workflow organization - Update artifact collection to include JSON logs - Improve workdir/outdir naming with revision tracking 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
1 parent 80c59f7 commit 57b5f4f

File tree

1 file changed

+37
-20
lines changed

1 file changed

+37
-20
lines changed

.github/workflows/cloud_tests_full.yml

Lines changed: 37 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -13,33 +13,50 @@ on:
1313
- aws
1414
- azure
1515
- gcp
16+
pull_request_review:
17+
types: [submitted]
1618
jobs:
1719
run-full-tests-on-aws:
18-
if: ${{ github.event.inputs.platform == 'all' || github.event.inputs.platform == 'aws' || !github.event.inputs }}
20+
if: ${{ github.event.inputs.platform == 'all' || github.event.inputs.platform == 'aws' || !github.event.inputs || (github.repository == 'nf-core/rnaseq' && github.event.review.state == 'approved' && (github.event.pull_request.base.ref == 'master' || github.event.pull_request.base.ref == 'main')) }}
1921
runs-on: ubuntu-latest
2022
strategy:
2123
matrix:
2224
aligner: ["star_salmon", "star_rsem"]
25+
arch: ["arm64", "x86_64"]
2326
steps:
24-
- uses: seqeralabs/action-tower-launch@v2
27+
- name: Set revision variable
28+
id: revision
29+
run: |
30+
echo "revision=${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'release') && github.sha || 'dev' }}" >> "$GITHUB_OUTPUT"
31+
32+
- name: Validate parameters
33+
run: |
34+
echo "Workspace ID: ${{ vars.TOWER_WORKSPACE_ID }}"
35+
echo "Compute Env: ${{ matrix.arch == 'arm64' && vars.TOWER_COMPUTE_ENV_ARM || vars.TOWER_COMPUTE_ENV_CPU }}"
36+
echo "Access token present: ${{ secrets.TOWER_ACCESS_TOKEN != '' }}"
37+
- name: Launch workflow via Seqera Platform
38+
uses: seqeralabs/action-tower-launch@refactor-javascript
2539
with:
26-
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }}
40+
workspace_id: ${{ vars.TOWER_WORKSPACE_ID }}
2741
access_token: ${{ secrets.TOWER_ACCESS_TOKEN }}
28-
compute_env: ${{ secrets.TOWER_CE_AWS_CPU }}
29-
workdir: "${{ secrets.TOWER_BUCKET_AWS }}/work/rnaseq/work-${{ github.sha }}"
30-
run_name: "aws_rnaseq_full_${{ matrix.aligner }}"
31-
revision: ${{ github.sha }}
32-
profiles: test_full_aws
42+
compute_env: ${{ matrix.arch == 'arm64' && vars.TOWER_COMPUTE_ENV_ARM || vars.TOWER_COMPUTE_ENV_CPU }}
43+
workdir: "${{ secrets.TOWER_BUCKET_AWS }}/work/rnaseq/work-${{ steps.revision.outputs.revision }}-${{ matrix.aligner }}-${{ matrix.arch }}"
44+
run_name: "aws_rnaseq_full_${{ matrix.aligner }}_${{ matrix.arch }}"
45+
revision: ${{ steps.revision.outputs.revision }}
46+
labels: ${{ matrix.arch == 'arm64' && 'full_test,arm,wave' || 'full_test' }}
47+
profiles: test_full_aws${{ matrix.arch == 'arm64' && ',docker_arm' || '' }}
3348
parameters: |
3449
{
3550
"hook_url": "${{ secrets.MEGATESTS_ALERTS_SLACK_HOOK_URL }}",
3651
"aligner": "${{ matrix.aligner }}",
37-
"outdir": "${{ secrets.TOWER_BUCKET_AWS }}/rnaseq/results-${{ github.sha }}/aligner_${{ matrix.aligner }}/"
52+
"outdir": "${{ secrets.TOWER_BUCKET_AWS }}/rnaseq/results-${{ steps.revision.outputs.revision }}-${{ matrix.aligner }}-${{ matrix.arch }}/"
3853
}
39-
- uses: actions/upload-artifact@v3
54+
- uses: actions/upload-artifact@v4
4055
with:
41-
name: Tower debug log file
42-
path: tower_action_*.log
56+
name: Seqera Platform debug log file (${{ matrix.aligner }}-${{ matrix.arch }})
57+
path: |
58+
seqera_platform_action_*.log
59+
seqera_platform_action_*.json
4360
4461
run-full-tests-on-azure:
4562
if: ${{ github.event.inputs.platform == 'all' || github.event.inputs.platform == 'azure' || !github.event.inputs }}
@@ -48,11 +65,11 @@ jobs:
4865
matrix:
4966
aligner: ["star_salmon", "star_rsem"]
5067
steps:
51-
- uses: seqeralabs/action-tower-launch@v2
68+
- uses: seqeralabs/action-tower-launch@refactor-javascript
5269
with:
53-
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }}
70+
workspace_id: ${{ vars.TOWER_WORKSPACE_ID }}
5471
access_token: ${{ secrets.TOWER_ACCESS_TOKEN }}
55-
compute_env: ${{ secrets.TOWER_CE_AZURE_CPU }}
72+
compute_env: ${{ vars.TOWER_COMPUTE_ENV_CPU }}
5673
workdir: "${{ secrets.TOWER_BUCKET_AZURE }}/work/rnaseq/work-${{ github.sha }}"
5774
run_name: "azure_rnaseq_full_${{ matrix.aligner }}"
5875
revision: ${{ github.sha }}
@@ -64,7 +81,7 @@ jobs:
6481
"outdir": "${{ secrets.TOWER_BUCKET_AZURE }}/rnaseq/results-${{ github.sha }}/aligner_${{ matrix.aligner }}/",
6582
"igenomes_base": "${{ secrets.TOWER_IGENOMES_BASE_AZURE }}"
6683
}
67-
- uses: actions/upload-artifact@v3
84+
- uses: actions/upload-artifact@v4
6885
with:
6986
name: Tower debug log file
7087
path: tower_action_*.log
@@ -76,11 +93,11 @@ jobs:
7693
matrix:
7794
aligner: ["star_salmon", "star_rsem"]
7895
steps:
79-
- uses: seqeralabs/action-tower-launch@v2
96+
- uses: seqeralabs/action-tower-launch@refactor-javascript
8097
with:
81-
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }}
98+
workspace_id: ${{ vars.TOWER_WORKSPACE_ID }}
8299
access_token: ${{ secrets.TOWER_ACCESS_TOKEN }}
83-
compute_env: ${{ secrets.TOWER_CE_GCP_CPU }}
100+
compute_env: ${{ vars.TOWER_COMPUTE_ENV_CPU }}
84101
workdir: "${{ secrets.TOWER_BUCKET_GCP }}/work/rnaseq/work-${{ github.sha }}"
85102
run_name: "gcp_rnaseq_full_${{ matrix.aligner }}"
86103
revision: ${{ github.sha }}
@@ -91,7 +108,7 @@ jobs:
91108
"aligner": "${{ matrix.aligner }}",
92109
"outdir": "${{ secrets.TOWER_BUCKET_GCP }}/rnaseq/results-${{ github.sha }}/aligner_${{ matrix.aligner }}/"
93110
}
94-
- uses: actions/upload-artifact@v3
111+
- uses: actions/upload-artifact@v4
95112
with:
96113
name: Tower debug log file
97114
path: tower_action_*.log

0 commit comments

Comments
 (0)