File tree Expand file tree Collapse file tree 1 file changed +25
-0
lines changed Expand file tree Collapse file tree 1 file changed +25
-0
lines changed Original file line number Diff line number Diff line change @@ -37,17 +37,42 @@ jobs:
3737 run : docker run --rm -v "$PWD:/workspace" -w /workspace "$IMAGE" reuse lint
3838
3939 rf-run-able :
40+ # Checks if the RobotFramework tests can be executed (dryrun). If not, uploads the artifacts for debugging.
41+ # Sometimes it is import error or some sub dependency missing, this helps to identify such issues early.
4042 needs : prepare_env
4143 runs-on : ubuntu-22.04
4244 env :
4345 IMAGE : ${{ needs.prepare_env.outputs.image_lc }}
4446 steps :
4547 - uses : actions/checkout@v4
48+
49+ # 1) Run dryrun but don't stop the job on failure
4650 - name : RobotFramework run-ability check
51+ id : dryrun
52+ continue-on-error : true
4753 run : |
54+ set -euo pipefail
4855 docker run --rm -v "$PWD:/workspace" -w /workspace "$IMAGE" \
4956 make dryrun
5057
58+ # 2) Upload ONLY if the dryrun step failed
59+ - name : Upload RobotFramework artifacts (only if dryrun failed)
60+ if : ${{ steps.dryrun.outcome == 'failure' }}
61+ uses : actions/upload-artifact@v4
62+ with :
63+ name : robot-dryrun-artifacts-${{ github.run_id }}
64+ path : |
65+ ./output.xml
66+ ./log.html
67+ ./report.html
68+ if-no-files-found : warn
69+ retention-days : 14
70+
71+ # 3) Fail the job if dryrun failed (after uploading)
72+ - name : Mark job as failed if dryrun failed
73+ if : ${{ steps.dryrun.outcome == 'failure' }}
74+ run : exit 1
75+
5176 rf_style_check :
5277 needs : prepare_env
5378 runs-on : ubuntu-22.04
You can’t perform that action at this time.
0 commit comments