@@ -41,23 +41,15 @@ jobs:
41
41
scan-type : fs # Сканирование файловой системы
42
42
severity : CRITICAL,HIGH # Проверка только критических и высоких угроз
43
43
exit-code : ' 1' # Возвращает ошибку, если найдены уязвимости
44
+ format : json # Форматирует результаты в JSON
45
+ output : trivy-report.json # Сохраняет результаты в файл
44
46
45
47
- name : Check Trivy results and stop release if vulnerabilities found
46
48
if : steps.trivy-scan.outcome == 'failure'
47
49
run : |
48
50
echo "Critical or high vulnerabilities found! Stopping the release."
49
51
exit 1 # Останавливаем пайплайн, если найдены критические уязвимости
50
52
51
- - name : Generate Trivy report
52
- if : always() # Выполняется всегда, даже если предыдущие шаги завершились с ошибкой
53
- run : |
54
- trivy result --format json --output trivy-report.json .
55
- if [ -f "trivy-report.json" ]; then
56
- echo "Trivy report generated successfully."
57
- else
58
- echo "Trivy report not found!"
59
- fi
60
-
61
53
- name : Upload Trivy report as artifact
62
54
if : always() # Выполняется всегда
63
55
uses : actions/upload-artifact@v4
74
66
75
67
Critical or high vulnerabilities have been detected by Trivy:
76
68
77
- $(cat trivy-report.json | jq -r '.Results[] | .Vulnerabilities[] | "\(.PkgName): \(.VulnerabilityID) - \(.Severity)"' || echo "No detailed vulnerabilities found.")
69
+ $(cat trivy-report.json | jq -r '.Results[]? .Vulnerabilities[]? | "\(.PkgName): \(.VulnerabilityID) - \(.Severity)"' || echo "No detailed vulnerabilities found.")
78
70
79
71
Please address these issues before merging this PR.
80
72
token : ${{ secrets.GITHUB_TOKEN }}
0 commit comments