Skip to content

Commit f37f02f

Browse files
committed
Validate reports against schema every night
1 parent b1212ef commit f37f02f

2 files changed

Lines changed: 49 additions & 0 deletions

File tree

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
name: Works with latest GitLab version
2+
3+
on:
4+
schedule:
5+
- cron: "0 3 * * *"
6+
7+
# Allows you to run this workflow manually from the Actions tab
8+
workflow_dispatch:
9+
10+
jobs:
11+
validate:
12+
runs-on: ubuntu-latest
13+
14+
steps:
15+
- uses: actions/checkout@v3
16+
17+
- name: Install jsonschema validator
18+
run: pip3 install jsonschema
19+
20+
- name: Get schemas
21+
run: |
22+
curl https://gitlab.com/gitlab-org/security-products/security-report-schemas/-/raw/master/dist/sast-report-format.json >> sast_schema.json
23+
curl https://gitlab.com/gitlab-org/security-products/security-report-schemas/-/raw/master/dist/secret-detection-report-format.json >> secrets_schema.json
24+
curl https://gitlab.com/gitlab-org/security-products/security-report-schemas/-/raw/master/dist/container-scanning-report-format.json >> container_scanning_schema.json
25+
26+
- name: Test all SAST reports
27+
run: |
28+
SAST_FILES=$(find "tests/resources/test_sast" -type f -name "*.json")
29+
echo $SAST_FILES
30+
for sast_file in ${SAST_FILES[@]}; do
31+
jsonschema -i $sast_file sast_schema.json
32+
done
33+
34+
- name: Test all Secrets reports
35+
run: |
36+
SECRETS_FILES=$(find "tests/resources/test_secrets" -type f -name "*.json")
37+
echo $SECRETS_FILES
38+
for secrets_file in ${SECRETS_FILES[@]}; do
39+
jsonschema -i $secrets_file secrets_schema.json
40+
done
41+
42+
- name: Test all Container Scanning reports
43+
run: |
44+
CONTAINER_FILES=$(find "tests/resources/test_container_scanning" -type f -name "*.json")
45+
echo $CONTAINER_FILES
46+
for container_file in ${CONTAINER_FILES[@]}; do
47+
jsonschema -i $container_file container_scanning_schema.json
48+
done

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# SecScanner2JUnit
22
[![PyPI version](https://badge.fury.io/py/secscanner2junit.svg)](https://badge.fury.io/py/secscanner2junit)
33
[![Downloads](https://pepy.tech/badge/secscanner2junit)](https://pepy.tech/project/secscanner2junit)
4+
[![Supports latest GitLab version](https://github.com/angrymeir/SecScanner2JUnit/actions/workflows/report-validate.yml/badge.svg)](https://github.com/angrymeir/SecScanner2JUnit/actions/workflows/report-validate.yml)
45

56
[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/angrymeir/SecScanner2JUnit)
67

0 commit comments

Comments
 (0)