code: install_deps> python -I -m pip install boto3 coverage kubernetes mock pandas pytest pytest-cov
code: freeze> python -m pip freeze --all
code: boto3==1.43.9,botocore==1.43.9,certifi==2026.4.22,charset-normalizer==3.4.7,coverage==7.14.0,durationpy==0.10,exceptiongroup==1.3.1,idna==3.15,iniconfig==2.3.0,jmespath==1.1.0,kubernetes==35.0.0,mock==5.2.0,numpy==2.2.6,oauthlib==3.3.1,packaging==26.2,pandas==2.3.3,pip==26.1.1,pluggy==1.6.0,Pygments==2.20.0,pytest==9.0.3,pytest-cov==7.1.0,python-dateutil==2.9.0.post0,pytz==2026.2,PyYAML==6.0.3,requests==2.34.2,requests-oauthlib==2.0.0,s3transfer==0.17.0,setuptools==82.0.1,six==1.17.0,tomli==2.4.1,typing_extensions==4.15.0,tzdata==2026.2,urllib3==2.7.0,websocket-client==1.9.0
code: commands[0]> pip3 install /w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master
Looking in indexes: https://nexus3.o-ran-sc.org/repository/PyPi/simple
Processing ./.
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Requirement already satisfied: boto3 in ./.tox/code/lib/python3.10/site-packages (from modelmetricsdk==0.4.0) (1.43.9)
Requirement already satisfied: kubernetes in ./.tox/code/lib/python3.10/site-packages (from modelmetricsdk==0.4.0) (35.0.0)
Requirement already satisfied: pyyaml in ./.tox/code/lib/python3.10/site-packages (from modelmetricsdk==0.4.0) (6.0.3)
Requirement already satisfied: botocore<1.44.0,>=1.43.9 in ./.tox/code/lib/python3.10/site-packages (from boto3->modelmetricsdk==0.4.0) (1.43.9)
Requirement already satisfied: jmespath<2.0.0,>=0.7.1 in ./.tox/code/lib/python3.10/site-packages (from boto3->modelmetricsdk==0.4.0) (1.1.0)
Requirement already satisfied: s3transfer<0.18.0,>=0.17.0 in ./.tox/code/lib/python3.10/site-packages (from boto3->modelmetricsdk==0.4.0) (0.17.0)
Requirement already satisfied: python-dateutil<3.0.0,>=2.1 in ./.tox/code/lib/python3.10/site-packages (from botocore<1.44.0,>=1.43.9->boto3->modelmetricsdk==0.4.0) (2.9.0.post0)
Requirement already satisfied: urllib3!=2.2.0,<3,>=1.25.4 in ./.tox/code/lib/python3.10/site-packages (from botocore<1.44.0,>=1.43.9->boto3->modelmetricsdk==0.4.0) (2.7.0)
Requirement already satisfied: six>=1.5 in ./.tox/code/lib/python3.10/site-packages (from python-dateutil<3.0.0,>=2.1->botocore<1.44.0,>=1.43.9->boto3->modelmetricsdk==0.4.0) (1.17.0)
Requirement already satisfied: certifi>=14.05.14 in ./.tox/code/lib/python3.10/site-packages (from kubernetes->modelmetricsdk==0.4.0) (2026.4.22)
Requirement already satisfied: websocket-client!=0.40.0,!=0.41.*,!=0.42.*,>=0.32.0 in ./.tox/code/lib/python3.10/site-packages (from kubernetes->modelmetricsdk==0.4.0) (1.9.0)
Requirement already satisfied: requests in ./.tox/code/lib/python3.10/site-packages (from kubernetes->modelmetricsdk==0.4.0) (2.34.2)
Requirement already satisfied: requests-oauthlib in ./.tox/code/lib/python3.10/site-packages (from kubernetes->modelmetricsdk==0.4.0) (2.0.0)
Requirement already satisfied: durationpy>=0.7 in ./.tox/code/lib/python3.10/site-packages (from kubernetes->modelmetricsdk==0.4.0) (0.10)
Requirement already satisfied: charset_normalizer<4,>=2 in ./.tox/code/lib/python3.10/site-packages (from requests->kubernetes->modelmetricsdk==0.4.0) (3.4.7)
Requirement already satisfied: idna<4,>=2.5 in ./.tox/code/lib/python3.10/site-packages (from requests->kubernetes->modelmetricsdk==0.4.0) (3.15)
Requirement already satisfied: oauthlib>=3.0.0 in ./.tox/code/lib/python3.10/site-packages (from requests-oauthlib->kubernetes->modelmetricsdk==0.4.0) (3.3.1)
Building wheels for collected packages: modelmetricsdk
  Building wheel for modelmetricsdk (pyproject.toml): started
  Building wheel for modelmetricsdk (pyproject.toml): finished with status 'done'
  Created wheel for modelmetricsdk: filename=modelmetricsdk-0.4.0-py3-none-any.whl size=15634 sha256=e2ad47708aea44ca9d75eef9dca697e15c00353bd1a0db99f79c8301e0c4fa44
  Stored in directory: /home/jenkins/.cache/pip/wheels/85/75/0b/63953d427445a57d586cb6006f57b4ec8c6a5e18dd367ee907
Successfully built modelmetricsdk
Installing collected packages: modelmetricsdk
Successfully installed modelmetricsdk-0.4.0
code: commands[1]> pytest --cov-report term-missing --cov-report xml --cov-report html --cov-fail-under=30 --junitxml=/tmp/tests.xml --cov=/w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master/modelmetricsdk/
============================= test session starts ==============================
platform linux -- Python 3.10.6, pytest-9.0.3, pluggy-1.6.0
cachedir: .tox/code/.pytest_cache
rootdir: /w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master
configfile: pyproject.toml
plugins: cov-7.1.0
collected 0 items / 1 error

==================================== ERRORS ====================================
_______________ ERROR collecting test/test_model_metrics_sdk.py ________________
ImportError while importing test module '/w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master/test/test_model_metrics_sdk.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/opt/pyenv/versions/3.10.6/lib/python3.10/importlib/__init__.py:126: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
test/test_model_metrics_sdk.py:18: in <module>
    from modelmetricsdk.model_metrics_sdk import ModelMetricsSdk
modelmetricsdk/model_metrics_sdk.py:32: in <module>
    from modelmetricsdk.singleton_manager import SingletonManager
modelmetricsdk/singleton_manager.py:26: in <module>
    import pkg_resources
E   ModuleNotFoundError: No module named 'pkg_resources'
---------------------- generated xml file: /tmp/tests.xml ----------------------
=========================== short test summary info ============================
ERROR test/test_model_metrics_sdk.py
!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!
=============================== 1 error in 1.25s ===============================
code: exit 2 (2.12 seconds) /w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master> pytest --cov-report term-missing --cov-report xml --cov-report html --cov-fail-under=30 --junitxml=/tmp/tests.xml --cov=/w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master/modelmetricsdk/ pid=3034
code: FAIL ✖ in 42.88 seconds
docs: install_deps> python -I -m pip install -r /w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master/docs/requirements-docs.txt
docs: freeze> python -m pip freeze --all
docs: alabaster==1.0.0,attrs==26.1.0,babel==2.18.0,blockdiag==3.0.0,certifi==2026.4.22,charset-normalizer==3.4.7,contourpy==1.3.2,cycler==0.12.1,docutils==0.21.2,fonttools==4.63.0,funcparserlib==2.0.0a0,future==1.0.0,idna==3.15,imagesize==2.0.0,Jinja2==3.1.6,jsonschema==3.2.0,kiwisolver==1.5.0,lfdocs_conf==0.10.0,MarkupSafe==3.0.3,matplotlib==3.10.9,numpy==2.2.6,nwdiag==3.0.0,packaging==26.2,pillow==12.2.0,pip==26.1.1,Pygments==2.20.0,pyparsing==3.3.2,pyrsistent==0.20.0,python-dateutil==2.9.0.post0,PyYAML==6.0.3,requests==2.34.2,requests-file==1.5.1,seqdiag==3.0.0,setuptools==82.0.1,six==1.17.0,snowballstemmer==3.0.1,Sphinx==8.1.3,sphinx-bootstrap-theme==0.8.1,sphinx-data-viewer==0.1.5,sphinx-tabs==3.5.0,sphinx_rtd_theme==3.1.0,sphinxcontrib-applehelp==2.0.0,sphinxcontrib-blockdiag==3.0.0,sphinxcontrib-devhelp==2.0.0,sphinxcontrib-htmlhelp==2.1.0,sphinxcontrib-httpdomain==2.0.0,sphinxcontrib-jquery==4.1,sphinxcontrib-jsmath==1.0.1,sphinxcontrib-needs==0.7.9,sphinxcontrib-nwdiag==2.0.0,sphinxcontrib-plantuml==0.31,sphinxcontrib-qthelp==2.0.0,sphinxcontrib-seqdiag==3.0.0,sphinxcontrib-serializinghtml==2.0.0,sphinxcontrib-swaggerdoc==0.1.7,tomli==2.4.1,urllib3==2.7.0,webcolors==25.10.0
docs: commands[0]> sphinx-build -W -b html -n -d /w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master/.tox/docs/tmp/doctrees ./docs/ /w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master/docs/_build/html
Running Sphinx v8.1.3
loading translations [en]... done
making output directory... done
Converting `source_suffix = '.rst'` to `source_suffix = {'.rst': 'restructuredtext'}`.
loading intersphinx inventory 'aimlfw-dep' from https://docs.o-ran-sc.org/projects/o-ran-sc-aiml-fw-aimlfw-dep/en/latest/objects.inv ...
building [mo]: targets for 0 po files that are out of date
writing output... 
building [html]: targets for 4 source files that are out of date
updating environment: [new config] 4 added, 0 changed, 0 removed
reading sources... [ 25%] index
reading sources... [ 50%] installation-guide
reading sources... [ 75%] overview
reading sources... [100%] release-notes

looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
copying assets... 
copying static files... 
Writing evaluated template result to /w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master/docs/_build/html/_static/documentation_options.js
Writing evaluated template result to /w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master/docs/_build/html/_static/basic.css
Writing evaluated template result to /w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master/docs/_build/html/_static/language_data.js
Writing evaluated template result to /w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master/docs/_build/html/_static/js/versions.js
copying static files: done
copying extra files... 
copying extra files: done
copying assets: done
writing output... [ 25%] index
writing output... [ 50%] installation-guide
writing output... [ 75%] overview
writing output... [100%] release-notes

generating indices... genindex done
highlighting module code... 
writing additional pages... search done
dumping search index in English (code: en)... done
dumping object inventory... done
build succeeded.

The HTML pages are in docs/_build/html.
docs: commands[1]> echo 'Generated docs available in /w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master/docs/_build/html'
Generated docs available in /w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master/docs/_build/html
docs: OK ✔ in 41.16 seconds
docs-linkcheck: install_deps> python -I -m pip install -r /w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master/docs/requirements-docs.txt
docs-linkcheck: freeze> python -m pip freeze --all
docs-linkcheck: alabaster==1.0.0,attrs==26.1.0,babel==2.18.0,blockdiag==3.0.0,certifi==2026.4.22,charset-normalizer==3.4.7,contourpy==1.3.2,cycler==0.12.1,docutils==0.21.2,fonttools==4.63.0,funcparserlib==2.0.0a0,future==1.0.0,idna==3.15,imagesize==2.0.0,Jinja2==3.1.6,jsonschema==3.2.0,kiwisolver==1.5.0,lfdocs_conf==0.10.0,MarkupSafe==3.0.3,matplotlib==3.10.9,numpy==2.2.6,nwdiag==3.0.0,packaging==26.2,pillow==12.2.0,pip==26.1.1,Pygments==2.20.0,pyparsing==3.3.2,pyrsistent==0.20.0,python-dateutil==2.9.0.post0,PyYAML==6.0.3,requests==2.34.2,requests-file==1.5.1,seqdiag==3.0.0,setuptools==82.0.1,six==1.17.0,snowballstemmer==3.0.1,Sphinx==8.1.3,sphinx-bootstrap-theme==0.8.1,sphinx-data-viewer==0.1.5,sphinx-tabs==3.5.0,sphinx_rtd_theme==3.1.0,sphinxcontrib-applehelp==2.0.0,sphinxcontrib-blockdiag==3.0.0,sphinxcontrib-devhelp==2.0.0,sphinxcontrib-htmlhelp==2.1.0,sphinxcontrib-httpdomain==2.0.0,sphinxcontrib-jquery==4.1,sphinxcontrib-jsmath==1.0.1,sphinxcontrib-needs==0.7.9,sphinxcontrib-nwdiag==2.0.0,sphinxcontrib-plantuml==0.31,sphinxcontrib-qthelp==2.0.0,sphinxcontrib-seqdiag==3.0.0,sphinxcontrib-serializinghtml==2.0.0,sphinxcontrib-swaggerdoc==0.1.7,tomli==2.4.1,urllib3==2.7.0,webcolors==25.10.0
docs-linkcheck: commands[0]> sphinx-build -W -b linkcheck -d /w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master/.tox/docs-linkcheck/tmp/doctrees ./docs/ /w/workspace/aiml-fw-athp-sdk-model-storage-pypi-verify-master/docs/_build/linkcheck
Running Sphinx v8.1.3
loading translations [en]... done
making output directory... done
Converting `source_suffix = '.rst'` to `source_suffix = {'.rst': 'restructuredtext'}`.
loading intersphinx inventory 'aimlfw-dep' from https://docs.o-ran-sc.org/projects/o-ran-sc-aiml-fw-aimlfw-dep/en/latest/objects.inv ...
building [mo]: targets for 0 po files that are out of date
writing output... 
building [linkcheck]: targets for 4 source files that are out of date
updating environment: [new config] 4 added, 0 changed, 0 removed
reading sources... [ 25%] index
reading sources... [ 50%] installation-guide
reading sources... [ 75%] overview
reading sources... [100%] release-notes

looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
copying assets... 
copying assets: done
writing output... [ 25%] index
writing output... [ 50%] installation-guide
writing output... [ 75%] overview
writing output... [100%] release-notes


(installation-guide: line   39) ok        https://docs.o-ran-sc.org/projects/o-ran-sc-aiml-fw-aimlfw-dep/en/latest/index.html
build succeeded.

Look for any errors in the above output or in docs/_build/linkcheck/output.txt
  code: FAIL code 2 (42.88=setup[36.45]+cmd[4.31,2.12] seconds)
  docs: OK (41.15=setup[39.50]+cmd[1.65,0.01] seconds)
  docs-linkcheck: OK (31.69=setup[30.42]+cmd[1.27] seconds)
  evaluation failed :( (115.77 seconds)
