Console Output
[osmclient-stage_2-merge_v15.0] Running shell script
+ runuser jenkins -c devops-stages/stage-test.sh
Launching tox
✔ OK flake8 in 15.365 seconds
flake8 create: /tmp/.tox/flake8
flake8 installdeps: flake8
flake8 develop-inst: /home/jenkins/workspace/osmclient-stage_2-merge_v15.0
flake8 installed: flake8==7.0.0,mccabe==0.7.0,-e git+https://osm.etsi.org/gerrit/osm/osmclient.git@3d802e3345e495282e56d410b0e17f574cc2c3c3#egg=osmclient,pycodestyle==2.11.1,pyflakes==3.2.0
flake8 run-test-pre: PYTHONHASHSEED='2170919422'
flake8 run-test: commands[0] | flake8 osmclient/ setup.py
✔ OK black in 16.031 seconds
black create: /tmp/.tox/black
black installdeps: black==23.12.1
black installed: black==23.12.1,click==8.1.7,mypy-extensions==1.0.0,packaging==24.0,pathspec==0.12.1,platformdirs==4.2.1,tomli==2.0.1,typing_extensions==4.11.0
black run-test-pre: PYTHONHASHSEED='1897533803'
black run-test: commands[0] | black --check --diff osmclient/
All done! ✨ 🍰 ✨
66 files would be left unchanged.
✔ OK safety in 42.127 seconds
safety create: /tmp/.tox/safety
safety installdeps: -r/home/jenkins/workspace/osmclient-stage_2-merge_v15.0/requirements.txt, safety
safety develop-inst: /home/jenkins/workspace/osmclient-stage_2-merge_v15.0
safety installed: annotated-types==0.6.0,Authlib==1.3.0,certifi==2023.7.22,cffi==1.16.0,charset-normalizer==3.2.0,click==8.1.7,cryptography==42.0.6,dparse==0.6.4b0,idna==3.4,Jinja2==3.1.2,jsonpath-ng==1.6.0,markdown-it-py==3.0.0,MarkupSafe==2.1.3,marshmallow==3.21.2,mdurl==0.1.2,-e git+https://osm.etsi.org/gerrit/osm/osmclient.git@3d802e3345e495282e56d410b0e17f574cc2c3c3#egg=osmclient,packaging==23.1,ply==3.11,prettytable==3.9.0,pycparser==2.22,pydantic==2.7.1,pydantic_core==2.18.2,Pygments==2.18.0,python-magic==0.4.27,PyYAML==6.0.1,requests==2.31.0,rich==13.7.1,ruamel.yaml==0.18.6,ruamel.yaml.clib==0.2.8,safety==3.2.0,safety-schemas==0.0.2,shellingham==1.5.4,tomli==2.0.1,typer==0.12.3,typing_extensions==4.11.0,urllib3==2.0.5,verboselogs==1.7,wcwidth==0.2.6
safety run-test-pre: PYTHONHASHSEED='1388060019'
safety run-test: commands[0] | - safety check --full-report
+==============================================================================+
/$$$$$$ /$$
/$$__ $$ | $$
/$$$$$$$ /$$$$$$ | $$ \__//$$$$$$ /$$$$$$ /$$ /$$
/$$_____/ |____ $$| $$$$ /$$__ $$|_ $$_/ | $$ | $$
| $$$$$$ /$$$$$$$| $$_/ | $$$$$$$$ | $$ | $$ | $$
\____ $$ /$$__ $$| $$ | $$_____/ | $$ /$$| $$ | $$
/$$$$$$$/| $$$$$$$| $$ | $$$$$$$ | $$$$/| $$$$$$$
|_______/ \_______/|__/ \_______/ \___/ \____ $$
/$$ | $$
| $$$$$$/
by safetycli.com \______/
+==============================================================================+
[1mREPORT[0m
[31m[22m Safety is using PyUp's free open-source vulnerability database. This
data is 30 days old and limited. [0m
[31m For real-time enhanced vulnerability data, fix recommendations, severity
reporting, cybersecurity support, team and project policy management and more
sign up at https://pyup.io or email sales@pyup.io[0m
Safety [1mv3.2.0[0m is scanning for [1mVulnerabilities[0m[1m...[0m
[1m Scanning dependencies[0m in your [1menvironment:[0m
-> /tmp/.tox/safety/lib/python3.10/site-packages
-> /usr/lib/python3.10
-> /usr/lib/python3.10/lib-dynload
-> /home/jenkins/workspace/osmclient-stage_2-merge_v15.0
-> /usr/lib/python310.zip
-> /tmp/.tox/safety/bin
Using [1mopen-source vulnerability database[0m
[1m Found and scanned 41 packages[0m
Timestamp [1m2024-05-06 10:12:49[0m
[1m 4[0m[1m vulnerabilities reported[0m
[1m 0[0m[1m vulnerabilities ignored[0m
+==============================================================================+
[1mVULNERABILITIES REPORTED[0m
+==============================================================================+
[31m-> Vulnerability found in wheel version 0.37.1[0m
[1m Vulnerability ID: [0m51499
[1m Affected spec: [0m<0.38.1
[1m ADVISORY: [0mWheel 0.38.1 includes a fix for CVE-2022-40898: An issue
discovered in Python Packaging Authority (PyPA) Wheel 0.37.1 and earlier
allows remote attackers to cause a denial of service via attacker
controlled input to wheel cli.https://pyup.io/posts/pyup-discovers-redos-
vulnerabilities-in-top-python-packages
[1m CVE-2022-40898[0m
[1m For more information about this vulnerability, visit
[0mhttps://data.safetycli.com/v/51499/97c[0m
To ignore this vulnerability, use PyUp vulnerability id 51499 in safety’s
ignore command-line argument or add the ignore to your safety policy file.
[31m-> Vulnerability found in urllib3 version 2.0.5[0m
[1m Vulnerability ID: [0m61893
[1m Affected spec: [0m>=2.0.0a1,<2.0.7
[1m ADVISORY: [0mUrllib3 1.26.18 and 2.0.7 include a fix for
CVE-2023-45803: Request body not stripped after redirect from 303 status
changes request method to GET.https://github.com/urllib3/urllib3/security/
advisories/GHSA-g4mx-q9vg-27p4
[1m CVE-2023-45803[0m
[1m For more information about this vulnerability, visit
[0mhttps://data.safetycli.com/v/61893/97c[0m
To ignore this vulnerability, use PyUp vulnerability id 61893 in safety’s
ignore command-line argument or add the ignore to your safety policy file.
[31m-> Vulnerability found in pip version 22.0.2[0m
[1m Vulnerability ID: [0m62044
[1m Affected spec: [0m<23.3
[1m ADVISORY: [0mAffected versions of Pip are vulnerable to Command
Injection. When installing a package from a Mercurial VCS URL (ie "pip
install hg+...") with pip prior to v23.3, the specified Mercurial revision
could be used to inject arbitrary configuration options to the "hg clone"
call (ie "--config"). Controlling the Mercurial configuration can modify
how and which repository is installed. This vulnerability does not affect
users who aren't installing from Mercurial.
[1m CVE-2023-5752[0m
[1m For more information about this vulnerability, visit
[0mhttps://data.safetycli.com/v/62044/97c[0m
To ignore this vulnerability, use PyUp vulnerability id 62044 in safety’s
ignore command-line argument or add the ignore to your safety policy file.
[31m-> Vulnerability found in jinja2 version 3.1.2[0m
[1m Vulnerability ID: [0m64227
[1m Affected spec: [0m<3.1.3
[1m ADVISORY: [0mJinja2 before 3.1.3 is affected by a Cross-Site
Scripting vulnerability. Special placeholders in the template allow
writing code similar to Python syntax. It is possible to inject arbitrary
HTML attributes into the rendered HTML template. The Jinja 'xmlattr'
filter can be abused to inject arbitrary HTML attribute keys and values,
bypassing the auto escaping mechanism and potentially leading to XSS. It
may also be possible to bypass attribute validation checks if they are
blacklist-based.
[1m CVE-2024-22195[0m
[1m For more information about this vulnerability, visit
[0mhttps://data.safetycli.com/v/64227/97c[0m
To ignore this vulnerability, use PyUp vulnerability id 64227 in safety’s
ignore command-line argument or add the ignore to your safety policy file.
+==============================================================================+
[32m[1mREMEDIATIONS[0m
4 vulnerabilities were reported in 4 packages. For detailed remediation &
fix recommendations, upgrade to a commercial license.
+==============================================================================+
Scan was completed. 4 vulnerabilities were reported.
+==============================================================================+
[31m[22m Safety is using PyUp's free open-source vulnerability database. This
data is 30 days old and limited. [0m
[31m For real-time enhanced vulnerability data, fix recommendations, severity
reporting, cybersecurity support, team and project policy management and more
sign up at https://pyup.io or email sales@pyup.io[0m
+==============================================================================+[0m
✔ OK cover in 1 minute, 23.497 seconds
cover create: /tmp/.tox/cover
cover installdeps: -r/home/jenkins/workspace/osmclient-stage_2-merge_v15.0/requirements.txt, -r/home/jenkins/workspace/osmclient-stage_2-merge_v15.0/requirements-dev.txt, -r/home/jenkins/workspace/osmclient-stage_2-merge_v15.0/requirements-test.txt
cover develop-inst: /home/jenkins/workspace/osmclient-stage_2-merge_v15.0
cover installed: certifi==2023.7.22,charset-normalizer==3.2.0,click==8.1.7,coverage==7.3.1,enum34==1.1.10,idna==3.4,Jinja2==3.1.2,jsonpath-ng==1.6.0,lxml==5.2.1,MarkupSafe==2.1.3,mock==5.1.0,nose2==0.13.0,osm-im @ git+https://osm.etsi.org/gerrit/osm/IM.git@53dddb85f956ac3fbd372ecb2b278e5e5362b66b,-e git+https://osm.etsi.org/gerrit/osm/osmclient.git@3d802e3345e495282e56d410b0e17f574cc2c3c3#egg=osmclient,packaging==23.1,ply==3.11,prettytable==3.9.0,pyang==2.5.3,pyangbind==0.8.3.post1,python-magic==0.4.27,PyYAML==6.0.1,regex==2024.4.28,requests==2.31.0,six==1.16.0,urllib3==2.0.5,verboselogs==1.7,wcwidth==0.2.6
cover run-test-pre: PYTHONHASHSEED='1267695693'
cover run-test: commands[0] | sh -c 'rm -f nosetests.xml'
cover run-test: commands[1] | coverage erase
cover run-test: commands[2] | nose2 -C --coverage osmclient
....................................
----------------------------------------------------------------------
Ran 36 tests in 10.409s
OK
Name Stmts Miss Cover
-----------------------------------------------------------------
osmclient/__init__.py 0 0 100%
osmclient/cli_commands/__init__.py 0 0 100%
osmclient/cli_commands/alarms.py 87 53 39%
osmclient/cli_commands/k8scluster.py 127 76 40%
osmclient/cli_commands/metrics.py 31 18 42%
osmclient/cli_commands/netslice_instance.py 119 56 53%
osmclient/cli_commands/netslice_ops.py 51 25 51%
osmclient/cli_commands/netslice_template.py 113 51 55%
osmclient/cli_commands/nfpkg.py 209 93 56%
osmclient/cli_commands/ns.py 185 143 23%
osmclient/cli_commands/nslcm.py 194 138 29%
osmclient/cli_commands/nslcm_ops.py 77 52 32%
osmclient/cli_commands/nspkg.py 137 64 53%
osmclient/cli_commands/other.py 11 3 73%
osmclient/cli_commands/packages.py 89 39 56%
osmclient/cli_commands/pdus.py 117 74 37%
osmclient/cli_commands/rbac.py 221 131 41%
osmclient/cli_commands/repo.py 213 109 49%
osmclient/cli_commands/sdnc.py 104 53 49%
osmclient/cli_commands/subscriptions.py 59 29 51%
osmclient/cli_commands/utils.py 52 38 27%
osmclient/cli_commands/vca.py 154 16 90%
osmclient/cli_commands/vim.py 183 67 63%
osmclient/cli_commands/vnf.py 114 80 30%
osmclient/cli_commands/wim.py 101 56 45%
osmclient/client.py 27 21 22%
osmclient/common/__init__.py 0 0 100%
osmclient/common/exceptions.py 6 0 100%
osmclient/common/http.py 71 58 18%
osmclient/common/package_handling.py 28 20 29%
osmclient/common/package_tool.py 441 396 10%
osmclient/common/print_output.py 47 36 23%
osmclient/common/sol004_package.py 36 17 53%
osmclient/common/sol007_package.py 32 15 53%
osmclient/common/sol_package.py 158 120 24%
osmclient/common/test/test_utils.py 36 0 100%
osmclient/common/utils.py 80 54 32%
osmclient/common/wait.py 86 66 23%
osmclient/scripts/__init__.py 0 0 100%
osmclient/scripts/osm.py 184 163 11%
osmclient/scripts/tests/tests_vca.py 100 0 100%
osmclient/scripts/tests/tests_vim.py 62 0 100%
osmclient/sol005/__init__.py 0 0 100%
osmclient/sol005/client.py 101 71 30%
osmclient/sol005/http.py 160 137 14%
osmclient/sol005/k8scluster.py 118 101 14%
osmclient/sol005/ns.py 383 354 8%
osmclient/sol005/nsd.py 124 103 17%
osmclient/sol005/nsi.py 208 189 9%
osmclient/sol005/nst.py 127 107 16%
osmclient/sol005/osmrepo.py 309 260 16%
osmclient/sol005/package.py 63 50 21%
osmclient/sol005/pdud.py 93 78 16%
osmclient/sol005/project.py 74 61 18%
osmclient/sol005/repo.py 74 60 19%
osmclient/sol005/role.py 117 103 12%
osmclient/sol005/sdncontroller.py 97 80 18%
osmclient/sol005/subscription.py 71 58 18%
osmclient/sol005/tests/test_osmrepo.py 13 0 100%
osmclient/sol005/tests/test_vca.py 117 0 100%
osmclient/sol005/user.py 143 131 8%
osmclient/sol005/vca.py 73 0 100%
osmclient/sol005/vim.py 160 141 12%
osmclient/sol005/vnf.py 56 46 18%
osmclient/sol005/vnfd.py 207 181 13%
osmclient/sol005/wim.py 142 123 13%
-----------------------------------------------------------------
TOTAL 7172 4864 32%
cover run-test: commands[3] | coverage report '--omit=*tests*'
Name Stmts Miss Cover
-----------------------------------------------------------------
osmclient/__init__.py 0 0 100%
osmclient/cli_commands/__init__.py 0 0 100%
osmclient/cli_commands/alarms.py 87 53 39%
osmclient/cli_commands/k8scluster.py 127 76 40%
osmclient/cli_commands/metrics.py 31 18 42%
osmclient/cli_commands/netslice_instance.py 119 56 53%
osmclient/cli_commands/netslice_ops.py 51 25 51%
osmclient/cli_commands/netslice_template.py 113 51 55%
osmclient/cli_commands/nfpkg.py 209 93 56%
osmclient/cli_commands/ns.py 185 143 23%
osmclient/cli_commands/nslcm.py 194 138 29%
osmclient/cli_commands/nslcm_ops.py 77 52 32%
osmclient/cli_commands/nspkg.py 137 64 53%
osmclient/cli_commands/other.py 11 3 73%
osmclient/cli_commands/packages.py 89 39 56%
osmclient/cli_commands/pdus.py 117 74 37%
osmclient/cli_commands/rbac.py 221 131 41%
osmclient/cli_commands/repo.py 213 109 49%
osmclient/cli_commands/sdnc.py 104 53 49%
osmclient/cli_commands/subscriptions.py 59 29 51%
osmclient/cli_commands/utils.py 52 38 27%
osmclient/cli_commands/vca.py 154 16 90%
osmclient/cli_commands/vim.py 183 67 63%
osmclient/cli_commands/vnf.py 114 80 30%
osmclient/cli_commands/wim.py 101 56 45%
osmclient/client.py 27 21 22%
osmclient/common/__init__.py 0 0 100%
osmclient/common/exceptions.py 6 0 100%
osmclient/common/http.py 71 58 18%
osmclient/common/package_handling.py 28 20 29%
osmclient/common/package_tool.py 441 396 10%
osmclient/common/print_output.py 47 36 23%
osmclient/common/sol004_package.py 36 17 53%
osmclient/common/sol007_package.py 32 15 53%
osmclient/common/sol_package.py 158 120 24%
osmclient/common/test/test_utils.py 36 0 100%
osmclient/common/utils.py 80 54 32%
osmclient/common/wait.py 86 66 23%
osmclient/scripts/__init__.py 0 0 100%
osmclient/scripts/osm.py 184 163 11%
osmclient/sol005/__init__.py 0 0 100%
osmclient/sol005/client.py 101 71 30%
osmclient/sol005/http.py 160 137 14%
osmclient/sol005/k8scluster.py 118 101 14%
osmclient/sol005/ns.py 383 354 8%
osmclient/sol005/nsd.py 124 103 17%
osmclient/sol005/nsi.py 208 189 9%
osmclient/sol005/nst.py 127 107 16%
osmclient/sol005/osmrepo.py 309 260 16%
osmclient/sol005/package.py 63 50 21%
osmclient/sol005/pdud.py 93 78 16%
osmclient/sol005/project.py 74 61 18%
osmclient/sol005/repo.py 74 60 19%
osmclient/sol005/role.py 117 103 12%
osmclient/sol005/sdncontroller.py 97 80 18%
osmclient/sol005/subscription.py 71 58 18%
osmclient/sol005/tests/test_osmrepo.py 13 0 100%
osmclient/sol005/tests/test_vca.py 117 0 100%
osmclient/sol005/user.py 143 131 8%
osmclient/sol005/vca.py 73 0 100%
osmclient/sol005/vim.py 160 141 12%
osmclient/sol005/vnf.py 56 46 18%
osmclient/sol005/vnfd.py 207 181 13%
osmclient/sol005/wim.py 142 123 13%
-----------------------------------------------------------------
TOTAL 7010 4864 31%
cover run-test: commands[4] | coverage html -d ./cover '--omit=*tests*'
Wrote HTML report to ./cover/index.html
cover run-test: commands[5] | coverage xml -o coverage.xml '--omit=*tests*'
Wrote XML report to coverage.xml
✔ OK pylint in 1 minute, 28.59 seconds
pylint create: /tmp/.tox/pylint
pylint installdeps: -r/home/jenkins/workspace/osmclient-stage_2-merge_v15.0/requirements.txt, -r/home/jenkins/workspace/osmclient-stage_2-merge_v15.0/requirements-dev.txt, -r/home/jenkins/workspace/osmclient-stage_2-merge_v15.0/requirements-test.txt, pylint
pylint develop-inst: /home/jenkins/workspace/osmclient-stage_2-merge_v15.0
pylint installed: astroid==3.1.0,certifi==2023.7.22,charset-normalizer==3.2.0,click==8.1.7,coverage==7.3.1,dill==0.3.8,enum34==1.1.10,idna==3.4,isort==5.13.2,Jinja2==3.1.2,jsonpath-ng==1.6.0,lxml==5.2.1,MarkupSafe==2.1.3,mccabe==0.7.0,mock==5.1.0,nose2==0.13.0,osm-im @ git+https://osm.etsi.org/gerrit/osm/IM.git@53dddb85f956ac3fbd372ecb2b278e5e5362b66b,-e git+https://osm.etsi.org/gerrit/osm/osmclient.git@3d802e3345e495282e56d410b0e17f574cc2c3c3#egg=osmclient,packaging==23.1,platformdirs==4.2.1,ply==3.11,prettytable==3.9.0,pyang==2.5.3,pyangbind==0.8.3.post1,pylint==3.1.0,python-magic==0.4.27,PyYAML==6.0.1,regex==2024.4.28,requests==2.31.0,six==1.16.0,tomli==2.0.1,tomlkit==0.12.4,typing_extensions==4.11.0,urllib3==2.0.5,verboselogs==1.7,wcwidth==0.2.6
pylint run-test-pre: PYTHONHASHSEED='1621096596'
pylint run-test: commands[0] | pylint -E osmclient/
___________________________________ summary ____________________________________
black: commands succeeded
cover: commands succeeded
flake8: commands succeeded
pylint: commands succeeded
safety: commands succeeded
congratulations :)