-
Notifications
You must be signed in to change notification settings - Fork 0
/
.gitlab-ci-scan.yml
90 lines (83 loc) · 1.85 KB
/
.gitlab-ci-scan.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
.scan:
stage: scan
needs:
- set-vars
image:
name: docker.io/aquasec/trivy:0.23.0
entrypoint: [""]
variables:
GIT_STRATEGY: none
script:
- trivy --version
- time trivy image --clear-cache
- time trivy --cache-dir .trivycache/ image --download-db-only --no-progress
# Create report artifact
- >
time trivy --cache-dir .trivycache/ image --exit-code 0 --ignore-unfixed
--no-progress --format template --template "@/contrib/gitlab.tpl"
--output "$CI_PROJECT_DIR/$SHORT_NAME-imgscan.json"
"${IMAGE_NAME}-unverified"
# Print full report
- >
time trivy --cache-dir .trivycache/ image --exit-code 0 --ignore-unfixed
--no-progress "${IMAGE_NAME}"-unverified
# Fail on critical vulnerabilities
- >
time trivy --cache-dir .trivycache/ image --exit-code 1 --ignore-unfixed
--severity CRITICAL --no-progress "${IMAGE_NAME}"-unverified
cache:
key: trivy-cache
paths:
- .trivycache/
policy: pull-push
artifacts:
when: always
reports:
container_scanning: $SHORT_NAME-imgscan.json
ckan-scan:
needs:
- ckan-build
extends:
- .triggers
- .scan
variables:
IMAGE_NAME: ${CKAN_IMAGE}
SHORT_NAME: "ckan"
allow_failure: true
proxy-scan:
needs:
- proxy-build
extends:
- .triggers
- .scan
variables:
IMAGE_NAME: ${PROXY_IMAGE}
SHORT_NAME: "proxy"
db-scan:
needs:
- db-build
extends:
- .triggers
- .scan
variables:
IMAGE_NAME: ${DB_IMAGE}
SHORT_NAME: "postgresql"
solr-scan:
needs:
- solr-build
extends:
- .triggers
- .scan
variables:
IMAGE_NAME: ${SOLR_IMAGE}
SHORT_NAME: "solr"
allow_failure: true
solr-init-scan:
needs:
- solr-init-build
extends:
- .triggers
- .scan
variables:
IMAGE_NAME: ${SOLR_INIT_IMAGE}
SHORT_NAME: "init_solr"