@@ -24,10 +24,18 @@ inputs:
2424 description : |
2525 Check for compliance issues in the project.
2626 Exits with a non-zero status if compliance issues are detected.
27+ required : false
28+ default : " false"
2729 compliance-fail-level :
2830 description : " Failure level for compliance check. Options: ERROR, WARNING, MISSING."
31+ required : false
2932 default : " ERROR"
33+ compliance-fail-on-vulnerabilities :
34+ description : |
35+ Exit with a non-zero status if known vulnerabilities are detected in discovered
36+ packages and dependencies.
3037 required : false
38+ default : " false"
3139 python-version :
3240 description : " Python version."
3341 default : " 3.12"
@@ -127,16 +135,23 @@ runs:
127135 --project ${{ inputs.project-name }}
128136 --format ${{ inputs.output-formats }}
129137
130- - name : Check compliance
131- if : inputs.check-compliance == 'true'
132- shell : bash
133- run : scanpipe check-compliance
134- --project ${{ inputs.project-name }}
135- --fail-level ${{ inputs.compliance-fail-level }}
136-
137138 - name : Upload outputs
138139 uses : actions/upload-artifact@v4
139140 id : artifact-upload-step
140141 with :
141142 name : ${{ inputs.outputs-archive-name }}
142143 path : ${{ env.PROJECT_WORK_DIRECTORY }}/output/*
144+
145+ - name : Check compliance
146+ if : inputs.check-compliance == 'true'
147+ shell : bash
148+ run : |
149+ cmd="scanpipe check-compliance \
150+ --project ${{ inputs.project-name }} \
151+ --fail-level ${{ inputs.compliance-fail-level }}"
152+
153+ if [[ "${{ inputs.compliance-fail-on-vulnerabilities }}" == "true" ]]; then
154+ cmd="$cmd --fail-on-vulnerabilities"
155+ fi
156+
157+ eval "$cmd"
0 commit comments