nf-core AWS full size tests #50
Workflow file for this run
This file contains 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: nf-core AWS full size tests | |
# This workflow is triggered on PRs opened against the main/master branch. | |
# It can be additionally triggered manually with GitHub actions workflow dispatch button. | |
# It runs the -profile 'test_full' on AWS batch | |
on: | |
pull_request: | |
branches: | |
- main | |
- master | |
workflow_dispatch: | |
pull_request_review: | |
types: [submitted] | |
jobs: | |
run-platform: | |
name: Run AWS full tests | |
# run only if the PR is approved by at least 2 reviewers and against the master branch or manually triggered | |
if: github.repository == 'nf-core/seqinspector' && github.event.review.state == 'approved' && github.event.pull_request.base.ref == 'master' || github.event_name == 'workflow_dispatch' | |
runs-on: ubuntu-latest | |
steps: | |
- name: Get PR reviews | |
uses: octokit/[email protected] | |
if: github.event_name != 'workflow_dispatch' | |
id: check_approvals | |
continue-on-error: true | |
with: | |
route: GET /repos/${{ github.repository }}/pulls/${{ github.event.pull_request.number }}/reviews?per_page=100 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Check for approvals | |
if: ${{ failure() && github.event_name != 'workflow_dispatch' }} | |
run: | | |
echo "No review approvals found. At least 2 approvals are required to run this action automatically." | |
exit 1 | |
- name: Check for enough approvals (>=2) | |
id: test_variables | |
if: github.event_name != 'workflow_dispatch' | |
run: | | |
JSON_RESPONSE='${{ steps.check_approvals.outputs.data }}' | |
CURRENT_APPROVALS_COUNT=$(echo $JSON_RESPONSE | jq -c '[.[] | select(.state | contains("APPROVED")) ] | length') | |
test $CURRENT_APPROVALS_COUNT -ge 2 || exit 1 # At least 2 approvals are required | |
- name: Launch workflow via Seqera Platform | |
uses: seqeralabs/action-tower-launch@v2 | |
# TODO nf-core: You can customise AWS full pipeline tests as required | |
# Add full size test data (but still relatively small datasets for few samples) | |
# on the `test_full.config` test runs with only one set of parameters | |
with: | |
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }} | |
access_token: ${{ secrets.TOWER_ACCESS_TOKEN }} | |
compute_env: ${{ secrets.TOWER_COMPUTE_ENV }} | |
revision: ${{ github.sha }} | |
workdir: s3://${{ secrets.AWS_S3_BUCKET }}/work/seqinspector/work-${{ github.sha }} | |
parameters: | | |
{ | |
"hook_url": "${{ secrets.MEGATESTS_ALERTS_SLACK_HOOK_URL }}", | |
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/seqinspector/results-${{ github.sha }}" | |
} | |
profiles: test_full | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: Seqera Platform debug log file | |
path: | | |
seqera_platform_action_*.log | |
seqera_platform_action_*.json |