Skip to content

Commit 89fbd2b

Browse files
authored
Merge branch 'DefectDojo:master' into master
2 parents 2473a2a + 00b4257 commit 89fbd2b

File tree

172 files changed

+4512
-4991
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

172 files changed

+4512
-4991
lines changed

.github/workflows/cancel-outdated-workflow-runs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
runs-on: ubuntu-latest
1414
timeout-minutes: 3
1515
steps:
16-
- uses: styfle/[email protected].0
16+
- uses: styfle/[email protected].1
1717
with:
1818
workflow_id: 'integration-tests.yml,k8s-testing.yml,unit-tests.yml'
1919
access_token: ${{ github.token }}

.github/workflows/k8s-testing.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ jobs:
122122
- name: Setup Minikube
123123
uses: manusa/[email protected]
124124
with:
125-
minikube version: 'v1.14.2'
125+
minikube version: 'v1.22.0'
126126
kubernetes version: ${{ matrix.k8s }}
127127
driver: docker
128128
start args: '--addons=ingress'

Dockerfile.integration-tests

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,7 @@ RUN \
2828
rm -rf /var/lib/apt/lists && \
2929
true
3030

31-
RUN pip install --no-cache-dir selenium requests
32-
33-
# Installing Chromium Driver and Selenium for test automation
34-
RUN LATEST_VERSION=$(curl -s https://chromedriver.storage.googleapis.com/LATEST_RELEASE) && \
35-
wget -O /tmp/chromedriver.zip https://chromedriver.storage.googleapis.com/$LATEST_VERSION/chromedriver_linux64.zip && \
36-
unzip /tmp/chromedriver.zip chromedriver -d /usr/local/bin/ && \
37-
rm /tmp/chromedriver.zip && \
38-
chmod 777 /usr/local/bin/chromedriver;
31+
RUN pip install --no-cache-dir selenium requests chromedriver-autoinstaller
3932

4033
COPY docker/wait-for-it.sh \
4134
docker/entrypoint-integration-tests.sh \
@@ -44,6 +37,12 @@ COPY docker/wait-for-it.sh \
4437
COPY tests/ ./tests/
4538

4639
RUN chmod -R 0777 /app
40+
41+
# These 2 lines are needed for the chromium driver
42+
RUN chmod -R ugo+w /usr/local/lib/python3.8/site-packages
43+
RUN mkdir /.local
44+
RUN chmod -R ugo+w /.local
45+
4746
USER 1001
4847
ENV \
4948
DD_ADMIN_USER=admin \

Dockerfile.nginx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ COPY dojo/ ./dojo/
6565

6666
RUN env DD_SECRET_KEY='.' python3 manage.py collectstatic --noinput && true
6767

68-
FROM nginx:1.21.1-alpine@sha256:2c2dfbb9814318bc50578b5c60a1e3305f2ac217879a1c87a84418f5d9418ff6
68+
FROM nginx:1.21.1-alpine@sha256:bfe377bdeb9ff37a62b49e149ac12c67a18089699bb844ce917fe3dbb834abed
6969
ARG uid=1001
7070
ARG appuser=defectdojo
7171
COPY --from=collectstatic /app/static/ /usr/share/nginx/html/static/

WRAPPERS.md

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
1-
| Wrapper | APIV1 | APIV2 | Notes |
2-
| -----------------------------| -------| ---- | ------------------------|
3-
| Specific python wrapper | Yes | Yes | working (2021-01-21) |
4-
| Openapi python wrapper | No | Yes | proof of concept only |
5-
| Bash wrapper | No | Yes | might be outdated |
6-
| Java library | No | Yes | working (2021-04-13) |
7-
| Image using the Java library | No | Yes | out of date |
8-
| .Net/C# library | No | Yes | working (2021-06-08) |
1+
| Wrapper | Notes |
2+
| -----------------------------| ------------------------|
3+
| Specific python wrapper | working (2021-01-21) |
4+
| Openapi python wrapper | proof of concept only |
5+
| Java library | working (2021-08-30) |
6+
| Image using the Java library | working (2021-08-30) |
7+
| .Net/C# library | working (2021-06-08) |
8+
| dd-import | working (2021-08-24) |
99

10+
**All wrappers support API v2.**
1011

1112
### Specific python wrapper
1213
* Install the DefectDojo Python API via `pip install defectdojo_api`(outdated) or clone
@@ -18,14 +19,16 @@
1819
### Openapi python wrapper
1920
https://github.com/alles-klar/defectdojo-api-v2-client
2021

21-
### Bash wrapper
22-
https://github.com/wurstbrot/defectdojo-client
23-
2422
### Java library
2523
https://github.com/secureCodeBox/defectdojo-client-java
2624

2725
### Image using the Java library
28-
https://github.com/DefectDojo/defectdojo-java-client (out of date, update expected)
26+
https://github.com/SDA-SE/defectdojo-client
2927

3028
### .Net/C# library
3129
https://www.nuget.org/packages/DefectDojo.Api/
30+
31+
### dd-import
32+
https://github.com/MaibornWolff/dd-import
33+
34+
dd-import is not directly an API wrapper. It offers some convenience functions to make it easier to import findings and language data from CI/CD pipelines.

components/package.json

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
{
22
"name": "DefectDojo",
3-
"version": "2.1.0",
3+
"version": "2.2.0",
44
"dependencies": {
55
"JUMFlot": "jumjum123/JUMFlot#*",
66
"bootstrap": "^3.4.0",
7+
"bootstrap-select": "^1.13.18",
78
"bootstrap-social": "^4.0.0",
89
"bootstrap-wysiwyg": "^2.0.0",
910
"bootswatch": "3.4.1",
@@ -29,12 +30,12 @@
2930
"jquery.cookie": "1.4.1",
3031
"jquery.flot.tooltip": "^0.9.0",
3132
"jquery.hotkeys": "jeresig/jquery.hotkeys#master",
32-
"jszip": "^3.6.0",
33+
"jszip": "^3.7.1",
3334
"justgage": "^1.5.0",
3435
"metismenu": "~3.0.7",
3536
"moment": "^2.29.1",
3637
"morris.js": "morrisjs/morris.js",
37-
"pdfmake": "^0.2.0",
38+
"pdfmake": "^0.2.2",
3839
"startbootstrap-sb-admin-2": "1.0.7"
3940
},
4041
"engines": {

components/yarn.lock

Lines changed: 44 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
# yarn lockfile v1
33

44

5-
"@foliojs-fork/fontkit@^1.9.0":
6-
version "1.9.0"
7-
resolved "https://registry.yarnpkg.com/@foliojs-fork/fontkit/-/fontkit-1.9.0.tgz#cd774ceb39c685742058be6bac55199ff767a79c"
8-
integrity sha512-Akg3xZ/cbM9bHeifsrtPx+OmNomuR5zpEsnrvgA+r7O3KlnJc6lLaZovNFc9QojbzNOJWcquraMQZuS4HwW7WQ==
5+
"@foliojs-fork/fontkit@^1.9.1":
6+
version "1.9.1"
7+
resolved "https://registry.yarnpkg.com/@foliojs-fork/fontkit/-/fontkit-1.9.1.tgz#8124649168eb5273f580f66697a139fb5041296b"
8+
integrity sha512-U589voc2/ROnvx1CyH9aNzOQWJp127JGU1QAylXGQ7LoEAF6hMmahZLQ4eqAcgHUw+uyW4PjtCItq9qudPkK3A==
99
dependencies:
10-
"@foliojs-fork/restructure" "^2.0.1"
10+
"@foliojs-fork/restructure" "^2.0.2"
1111
brfs "^2.0.0"
1212
brotli "^1.2.0"
1313
browserify-optional "^1.0.1"
@@ -18,29 +18,29 @@
1818
unicode-properties "^1.2.2"
1919
unicode-trie "^2.0.0"
2020

21-
"@foliojs-fork/linebreak@^1.1.0":
22-
version "1.1.0"
23-
resolved "https://registry.yarnpkg.com/@foliojs-fork/linebreak/-/linebreak-1.1.0.tgz#261d553f8cb0f367460aaa06467f2f0577352198"
24-
integrity sha512-W5WW+kJPrTveTMTT0a9l2aupcrC0CfIT+zVgzGyYw/dUAXe5QF+gg7amocvZYIWs2xunK+0johbLGpgUjf0jnA==
21+
"@foliojs-fork/linebreak@^1.1.1":
22+
version "1.1.1"
23+
resolved "https://registry.yarnpkg.com/@foliojs-fork/linebreak/-/linebreak-1.1.1.tgz#93ecd695b7d2bb0334b9481058c3e610e019a4eb"
24+
integrity sha512-pgY/+53GqGQI+mvDiyprvPWgkTlVBS8cxqee03ejm6gKAQNsR1tCYCIvN9FHy7otZajzMqCgPOgC4cHdt4JPig==
2525
dependencies:
2626
base64-js "1.3.1"
2727
brfs "^2.0.2"
2828
unicode-trie "^2.0.0"
2929

30-
"@foliojs-fork/pdfkit@^0.12.1":
31-
version "0.12.1"
32-
resolved "https://registry.yarnpkg.com/@foliojs-fork/pdfkit/-/pdfkit-0.12.1.tgz#882773cd9a3b7d3d368991ddd2e0009094b30565"
33-
integrity sha512-6hnCPi+80wQsKIEmxuVD3WSRq3jYs4nb+ZQU482FW7pszGKX27GOHbtl4j/sZRgpBDNua/Dd/EWNhBoQI37g7w==
30+
"@foliojs-fork/pdfkit@^0.12.3":
31+
version "0.12.3"
32+
resolved "https://registry.yarnpkg.com/@foliojs-fork/pdfkit/-/pdfkit-0.12.3.tgz#c6bc2103ee83b7d22d9b8a50ae4cf104aad6c680"
33+
integrity sha512-WAMiL5Dp1EdHyuEeVphiqVeFEaccGShS5wLcuOXFF0wlBE5agkvTEk3sJ2OfAn87FaStpkuiaiSKNRexMlNHUA==
3434
dependencies:
35-
"@foliojs-fork/fontkit" "^1.9.0"
36-
"@foliojs-fork/linebreak" "^1.1.0"
37-
crypto-js "^3.3.0"
35+
"@foliojs-fork/fontkit" "^1.9.1"
36+
"@foliojs-fork/linebreak" "^1.1.1"
37+
crypto-js "^4.0.0"
3838
png-js "^1.0.0"
3939

40-
"@foliojs-fork/restructure@^2.0.1":
41-
version "2.0.1"
42-
resolved "https://registry.yarnpkg.com/@foliojs-fork/restructure/-/restructure-2.0.1.tgz#5e863db48ecd96a85dd6da449baff3336e0da792"
43-
integrity sha512-yf44Y0wbWJWnpgsEMlfJiV6LzmdSsuzJndnDB+VycFeDrXqheOMKzjEKLj4NRuwrwqLwGOxdUiSnXN8nCg/yTw==
40+
"@foliojs-fork/restructure@^2.0.2":
41+
version "2.0.2"
42+
resolved "https://registry.yarnpkg.com/@foliojs-fork/restructure/-/restructure-2.0.2.tgz#73759aba2aff1da87b7c4554e6839c70d43c92b4"
43+
integrity sha512-59SgoZ3EXbkfSX7b63tsou/SDGzwUEK6MuB5sKqgVK1/XE0fxmpsOb9DQI8LXW3KfGnAjImCGhhEb7uPPAUVNA==
4444

4545
4646
version "0.0.109"
@@ -131,6 +131,11 @@ [email protected], base64-js@^1.1.2, base64-js@^1.3.0:
131131
resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1"
132132
integrity sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==
133133

134+
bootstrap-select@^1.13.18:
135+
version "1.13.18"
136+
resolved "https://registry.yarnpkg.com/bootstrap-select/-/bootstrap-select-1.13.18.tgz#4557119d58dc1159189977161c803962220e4dda"
137+
integrity sha512-V1IzK4rxBq5FrJtkzSH6RmFLFBsjx50byFbfAf8jYyXROWs7ZpprGjdHeoyq2HSsHyjJhMMwjsQhRoYAfxCGow==
138+
134139
bootstrap-social@^4.0.0:
135140
version "4.11.0"
136141
resolved "https://registry.yarnpkg.com/bootstrap-social/-/bootstrap-social-4.11.0.tgz#7896d176fe366b06992196945a13fc9bfa6061b2"
@@ -264,11 +269,16 @@ core-util-is@~1.0.0:
264269
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
265270
integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
266271

267-
crypto-js@^3.1.9-1, crypto-js@^3.3.0:
272+
crypto-js@^3.1.9-1:
268273
version "3.3.0"
269274
resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.3.0.tgz#846dd1cce2f68aacfa156c8578f926a609b7976b"
270275
integrity sha512-DIT51nX0dCfKltpRiXV+/TVZq+Qq2NgF4644+K7Ttnla7zEzqc+kjJyiB96BHNyUTBxyjzRcZYpUdZa+QAqi6Q==
271276

277+
crypto-js@^4.0.0:
278+
version "4.1.1"
279+
resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-4.1.1.tgz#9e485bcf03521041bd85844786b83fb7619736cf"
280+
integrity sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==
281+
272282
d@1, d@^1.0.1:
273283
version "1.0.1"
274284
resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a"
@@ -752,10 +762,10 @@ jquery.hotkeys@jeresig/jquery.hotkeys#master:
752762
resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.6.0.tgz#c72a09f15c1bdce142f49dbf1170bdf8adac2470"
753763
integrity sha512-JVzAR/AjBvVt2BmYhxRCSYysDsPcssdmTFnzyLEts9qNwmjmu4JTAMYubEfwVOSwpQ1I1sKKFcxhZCI2buerfw==
754764

755-
jszip@^3.6.0:
756-
version "3.6.0"
757-
resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.6.0.tgz#839b72812e3f97819cc13ac4134ffced95dd6af9"
758-
integrity sha512-jgnQoG9LKnWO3mnVNBnfhkh0QknICd1FGSrXcgrl67zioyJ4wgx25o9ZqwNtrROSflGBCGYnJfjrIyRIby1OoQ==
765+
jszip@^3.7.1:
766+
version "3.7.1"
767+
resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.7.1.tgz#bd63401221c15625a1228c556ca8a68da6fda3d9"
768+
integrity sha512-ghL0tz1XG9ZEmRMcEN2vt7xabrDdqHHeykgARpmZ0BiIctWxM47Vt63ZO2dnp4QYt/xJVLLy5Zv1l/xRdh2byg==
759769
dependencies:
760770
lie "~3.3.0"
761771
pako "~1.0.2"
@@ -887,9 +897,9 @@ pako@~1.0.2:
887897
integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==
888898

889899
path-parse@^1.0.6:
890-
version "1.0.6"
891-
resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c"
892-
integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==
900+
version "1.0.7"
901+
resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
902+
integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
893903

894904
pdfkit@>=0.8.1:
895905
version "0.12.0"
@@ -901,13 +911,13 @@ pdfkit@>=0.8.1:
901911
linebreak "^1.0.2"
902912
png-js "^1.0.0"
903913

904-
pdfmake@^0.2.0:
905-
version "0.2.0"
906-
resolved "https://registry.yarnpkg.com/pdfmake/-/pdfmake-0.2.0.tgz#d17625786fe04b5affd489e9b772e3c43d04eb7b"
907-
integrity sha512-pK0fyRol3MrCTWMya/FYpQydZzBO5G38cynMlIxgm24QWu8N4+0i0ewYHWcg8Y8fzGVGIzgV4r62efT/vkYeeQ==
914+
pdfmake@^0.2.2:
915+
version "0.2.2"
916+
resolved "https://registry.yarnpkg.com/pdfmake/-/pdfmake-0.2.2.tgz#0700a33d7fe6d6c5793712bc9ab6a2ca09fa84b6"
917+
integrity sha512-e1N+iIIf0LXTvfmf/RaxeqtOKX2qFrNxBbcWmMcg2BUsgcye1bLkdxR7PImmRs8OnqT7qd9XonltZgdTFw8qUA==
908918
dependencies:
909-
"@foliojs-fork/linebreak" "^1.1.0"
910-
"@foliojs-fork/pdfkit" "^0.12.1"
919+
"@foliojs-fork/linebreak" "^1.1.1"
920+
"@foliojs-fork/pdfkit" "^0.12.3"
911921
iconv-lite "^0.6.3"
912922
svg-to-pdfkit "^0.1.8"
913923
xmldoc "^1.1.2"

docker-compose.override.unit_tests.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
version: '3.7'
33
services:
44
nginx:
5-
image: busybox:1.33.1-musl
5+
image: busybox:1.34.0-musl
66
entrypoint: ['echo', 'skipping', 'nginx']
77
volumes:
88
- defectdojo_media_unittest:/usr/share/nginx/html/media
@@ -16,13 +16,13 @@ services:
1616
DD_TEST_DATABASE_NAME: ${DD_TEST_DATABASE_NAME:-test_defectdojo}
1717
DD_DATABASE_NAME: ${DD_TEST_DATABASE_NAME:-test_defectdojo}
1818
celerybeat:
19-
image: busybox:1.33.1-musl
19+
image: busybox:1.34.0-musl
2020
entrypoint: ['echo', 'skipping', 'celery beat']
2121
celeryworker:
22-
image: busybox:1.33.1-musl
22+
image: busybox:1.34.0-musl
2323
entrypoint: ['echo', 'skipping', 'celery worker']
2424
initializer:
25-
image: busybox:1.33.1-musl
25+
image: busybox:1.34.0-musl
2626
entrypoint: ['echo', 'skipping', 'initializer']
2727

2828
mysql:

docker-compose.override.unit_tests_cicd.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
version: '3.7'
33
services:
44
nginx:
5-
image: busybox:1.33.1-musl
5+
image: busybox:1.34.0-musl
66
entrypoint: ['echo', 'skipping', 'nginx']
77
volumes:
88
- defectdojo_media_unittest:/usr/share/nginx/html/media
@@ -16,13 +16,13 @@ services:
1616
DD_TEST_DATABASE_NAME: ${DD_TEST_DATABASE_NAME:-test_defectdojo}
1717
DD_DATABASE_NAME: ${DD_TEST_DATABASE_NAME:-test_defectdojo}
1818
celerybeat:
19-
image: busybox:1.33.1-musl
19+
image: busybox:1.34.0-musl
2020
entrypoint: ['echo', 'skipping', 'celery beat']
2121
celeryworker:
22-
image: busybox:1.33.1-musl
22+
image: busybox:1.34.0-musl
2323
entrypoint: ['echo', 'skipping', 'celery worker']
2424
initializer:
25-
image: busybox:1.33.1-musl
25+
image: busybox:1.34.0-musl
2626
entrypoint: ['echo', 'skipping', 'initializer']
2727
mysql:
2828
ports:

docker-compose.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ services:
102102
source: ./docker/extra_settings
103103
target: /app/docker/extra_settings
104104
mysql:
105-
image: mysql:5.7.34@sha256:1a2f9cd257e75cc80e9118b303d1648366bc2049101449bf2c8d82b022ea86b7
105+
image: mysql:5.7.35@sha256:7cf2e7d7ff876f93c8601406a5aa17484e6623875e64e7acc71432ad8e0a3d7e
106106
environment:
107107
MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
108108
DD_DATABASE_URL: ${DD_DATABASE_URL:-mysql://defectdojo:defectdojo@mysql:3306/defectdojo}
@@ -113,7 +113,7 @@ services:
113113
volumes:
114114
- defectdojo_data:/var/lib/mysql
115115
rabbitmq:
116-
image: rabbitmq:3.8.19@sha256:8ab8da1c463bafd02d14a081f8f7634f2de27744fd45c5be31769fdc7e60d236
116+
image: rabbitmq:3.9.5@sha256:9288535827f1495f421b78cf41a4fa911b1c7d46ed0b1bf2b07f54be8bf41001
117117
volumes:
118118
- defectdojo_rabbitmq:/var/lib/rabbitmq
119119
volumes:

0 commit comments

Comments
 (0)