18:10:38 Triggered by Gerrit: https://git.opendaylight.org/gerrit/c/transportpce/+/116703 18:10:38 Running as SYSTEM 18:10:38 [EnvInject] - Loading node environment variables. 18:10:38 Building remotely on prd-ubuntu2204-docker-4c-16g-3412 (ubuntu2204-docker-4c-16g) in workspace /w/workspace/transportpce-tox-verify-transportpce-master 18:10:39 [ssh-agent] Looking for ssh-agent implementation... 18:10:39 [ssh-agent] Exec ssh-agent (binary ssh-agent on a remote machine) 18:10:39 $ ssh-agent 18:10:39 SSH_AUTH_SOCK=/tmp/ssh-XXXXXXgeZ304/agent.1578 18:10:39 SSH_AGENT_PID=1580 18:10:39 [ssh-agent] Started. 18:10:39 Running ssh-add (command line suppressed) 18:10:39 Identity added: /w/workspace/transportpce-tox-verify-transportpce-master@tmp/private_key_13382856893477656667.key (/w/workspace/transportpce-tox-verify-transportpce-master@tmp/private_key_13382856893477656667.key) 18:10:39 [ssh-agent] Using credentials jenkins (jenkins-ssh) 18:10:39 The recommended git tool is: NONE 18:10:43 using credential jenkins-ssh 18:10:43 Wiping out workspace first. 18:10:43 Cloning the remote Git repository 18:10:43 Cloning repository git://devvexx.opendaylight.org/mirror/transportpce 18:10:44 > git init /w/workspace/transportpce-tox-verify-transportpce-master # timeout=10 18:10:44 Fetching upstream changes from git://devvexx.opendaylight.org/mirror/transportpce 18:10:44 > git --version # timeout=10 18:10:44 > git --version # 'git version 2.34.1' 18:10:44 using GIT_SSH to set credentials jenkins-ssh 18:10:44 Verifying host key using known hosts file 18:10:44 You're using 'Known hosts file' strategy to verify ssh host keys, but your known_hosts file does not exist, please go to 'Manage Jenkins' -> 'Security' -> 'Git Host Key Verification Configuration' and configure host key verification. 18:10:44 > git fetch --tags --force --progress -- git://devvexx.opendaylight.org/mirror/transportpce +refs/heads/*:refs/remotes/origin/* # timeout=10 18:10:47 > git config remote.origin.url git://devvexx.opendaylight.org/mirror/transportpce # timeout=10 18:10:47 > git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10 18:10:48 > git config remote.origin.url git://devvexx.opendaylight.org/mirror/transportpce # timeout=10 18:10:48 Fetching upstream changes from git://devvexx.opendaylight.org/mirror/transportpce 18:10:48 using GIT_SSH to set credentials jenkins-ssh 18:10:48 Verifying host key using known hosts file 18:10:48 You're using 'Known hosts file' strategy to verify ssh host keys, but your known_hosts file does not exist, please go to 'Manage Jenkins' -> 'Security' -> 'Git Host Key Verification Configuration' and configure host key verification. 18:10:48 > git fetch --tags --force --progress -- git://devvexx.opendaylight.org/mirror/transportpce refs/changes/03/116703/11 # timeout=10 18:10:48 > git rev-parse e227d6967cecd34d298775e566c4388042be38db^{commit} # timeout=10 18:10:48 JENKINS-19022: warning: possible memory leak due to Git plugin usage; see: https://plugins.jenkins.io/git/#remove-git-plugin-buildsbybranch-builddata-script 18:10:48 Checking out Revision e227d6967cecd34d298775e566c4388042be38db (refs/changes/03/116703/11) 18:10:48 > git config core.sparsecheckout # timeout=10 18:10:48 > git checkout -f e227d6967cecd34d298775e566c4388042be38db # timeout=10 18:10:48 Commit message: "CleanUp Abstracted Tapi Pce Link and Node Classes" 18:10:48 > git rev-parse FETCH_HEAD^{commit} # timeout=10 18:10:49 > git rev-list --no-walk 5c6f5ee4a21d9a1c3f6255812bc44f553fcae196 # timeout=10 18:10:49 > git remote # timeout=10 18:10:49 > git submodule init # timeout=10 18:10:49 > git submodule sync # timeout=10 18:10:49 > git config --get remote.origin.url # timeout=10 18:10:49 > git submodule init # timeout=10 18:10:49 > git config -f .gitmodules --get-regexp ^submodule\.(.+)\.url # timeout=10 18:10:49 ERROR: No submodules found. 18:10:52 provisioning config files... 18:10:52 copy managed file [npmrc] to file:/home/jenkins/.npmrc 18:10:52 copy managed file [pipconf] to file:/home/jenkins/.config/pip/pip.conf 18:10:52 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins14412574562079648728.sh 18:10:52 ---> python-tools-install.sh 18:10:52 Setup pyenv: 18:10:52 * system (set by /opt/pyenv/version) 18:10:52 * 3.8.20 (set by /opt/pyenv/version) 18:10:52 * 3.9.20 (set by /opt/pyenv/version) 18:10:52 3.10.15 18:10:52 3.11.10 18:10:57 lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-VWP3 18:10:57 lf-activate-venv(): INFO: Save venv in file: /tmp/.os_lf_venv 18:10:57 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 18:10:57 lf-activate-venv(): INFO: Attempting to install with network-safe options... 18:11:01 lf-activate-venv(): INFO: Base packages installed successfully 18:11:01 lf-activate-venv(): INFO: Installing additional packages: lftools 18:11:28 lf-activate-venv(): INFO: Adding /tmp/venv-VWP3/bin to PATH 18:11:28 Generating Requirements File 18:11:48 ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts. 18:11:48 httplib2 0.31.0 requires pyparsing<4,>=3.0.4, but you have pyparsing 2.4.7 which is incompatible. 18:11:49 Python 3.11.10 18:11:49 pip 25.3 from /tmp/venv-VWP3/lib/python3.11/site-packages/pip (python 3.11) 18:11:49 appdirs==1.4.4 18:11:49 argcomplete==3.6.3 18:11:49 aspy.yaml==1.3.0 18:11:49 attrs==25.4.0 18:11:49 autopage==0.5.2 18:11:49 beautifulsoup4==4.14.2 18:11:49 boto3==1.40.61 18:11:49 botocore==1.40.61 18:11:49 bs4==0.0.2 18:11:49 cachetools==6.2.1 18:11:49 certifi==2025.10.5 18:11:49 cffi==2.0.0 18:11:49 cfgv==3.4.0 18:11:49 chardet==5.2.0 18:11:49 charset-normalizer==3.4.4 18:11:49 click==8.3.0 18:11:49 cliff==4.11.0 18:11:49 cmd2==2.7.0 18:11:49 cryptography==3.3.2 18:11:49 debtcollector==3.0.0 18:11:49 decorator==5.2.1 18:11:49 defusedxml==0.7.1 18:11:49 Deprecated==1.3.0 18:11:49 distlib==0.4.0 18:11:49 dnspython==2.8.0 18:11:49 docker==7.1.0 18:11:49 dogpile.cache==1.5.0 18:11:49 durationpy==0.10 18:11:49 email-validator==2.3.0 18:11:49 filelock==3.20.0 18:11:49 future==1.0.0 18:11:49 gitdb==4.0.12 18:11:49 GitPython==3.1.45 18:11:49 google-auth==2.42.0 18:11:49 httplib2==0.31.0 18:11:49 identify==2.6.15 18:11:49 idna==3.11 18:11:49 importlib-resources==1.5.0 18:11:49 iso8601==2.1.0 18:11:49 Jinja2==3.1.6 18:11:49 jmespath==1.0.1 18:11:49 jsonpatch==1.33 18:11:49 jsonpointer==3.0.0 18:11:49 jsonschema==4.25.1 18:11:49 jsonschema-specifications==2025.9.1 18:11:49 keystoneauth1==5.12.0 18:11:49 kubernetes==34.1.0 18:11:49 lftools==0.37.15 18:11:49 lxml==6.0.2 18:11:49 markdown-it-py==4.0.0 18:11:49 MarkupSafe==3.0.3 18:11:49 mdurl==0.1.2 18:11:49 msgpack==1.1.2 18:11:49 multi_key_dict==2.0.3 18:11:49 munch==4.0.0 18:11:49 netaddr==1.3.0 18:11:49 niet==1.4.2 18:11:49 nodeenv==1.9.1 18:11:49 oauth2client==4.1.3 18:11:49 oauthlib==3.3.1 18:11:49 openstacksdk==4.7.1 18:11:49 os-service-types==1.8.0 18:11:49 osc-lib==4.2.0 18:11:49 oslo.config==10.0.0 18:11:49 oslo.context==6.1.0 18:11:49 oslo.i18n==6.6.0 18:11:49 oslo.log==7.2.1 18:11:49 oslo.serialization==5.8.0 18:11:49 oslo.utils==9.1.0 18:11:49 packaging==25.0 18:11:49 pbr==7.0.1 18:11:49 platformdirs==4.5.0 18:11:49 prettytable==3.16.0 18:11:49 psutil==7.1.2 18:11:49 pyasn1==0.6.1 18:11:49 pyasn1_modules==0.4.2 18:11:49 pycparser==2.23 18:11:49 pygerrit2==2.0.15 18:11:49 PyGithub==2.8.1 18:11:49 Pygments==2.19.2 18:11:49 PyJWT==2.10.1 18:11:49 PyNaCl==1.6.0 18:11:49 pyparsing==2.4.7 18:11:49 pyperclip==1.11.0 18:11:49 pyrsistent==0.20.0 18:11:49 python-cinderclient==9.8.0 18:11:49 python-dateutil==2.9.0.post0 18:11:49 python-heatclient==4.3.0 18:11:49 python-jenkins==1.8.3 18:11:49 python-keystoneclient==5.7.0 18:11:49 python-magnumclient==4.9.0 18:11:49 python-openstackclient==8.2.0 18:11:49 python-swiftclient==4.8.0 18:11:49 PyYAML==6.0.3 18:11:49 referencing==0.37.0 18:11:49 requests==2.32.5 18:11:49 requests-oauthlib==2.0.0 18:11:49 requestsexceptions==1.4.0 18:11:49 rfc3986==2.0.0 18:11:49 rich==14.2.0 18:11:49 rich-argparse==1.7.1 18:11:49 rpds-py==0.28.0 18:11:49 rsa==4.9.1 18:11:49 ruamel.yaml==0.18.16 18:11:49 ruamel.yaml.clib==0.2.14 18:11:49 s3transfer==0.14.0 18:11:49 simplejson==3.20.2 18:11:49 six==1.17.0 18:11:49 smmap==5.0.2 18:11:49 soupsieve==2.8 18:11:49 stevedore==5.5.0 18:11:49 tabulate==0.9.0 18:11:49 toml==0.10.2 18:11:49 tomlkit==0.13.3 18:11:49 tqdm==4.67.1 18:11:49 typing_extensions==4.15.0 18:11:49 tzdata==2025.2 18:11:49 urllib3==1.26.20 18:11:49 virtualenv==20.35.4 18:11:49 wcwidth==0.2.14 18:11:49 websocket-client==1.9.0 18:11:49 wrapt==2.0.0 18:11:49 xdg==6.0.0 18:11:49 xmltodict==1.0.2 18:11:49 yq==3.4.3 18:11:49 [EnvInject] - Injecting environment variables from a build step. 18:11:49 [EnvInject] - Injecting as environment variables the properties content 18:11:49 PYTHON=python3 18:11:49 18:11:49 [EnvInject] - Variables injected successfully. 18:11:49 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins4853745603470026933.sh 18:11:49 ---> tox-install.sh 18:11:49 + source /home/jenkins/lf-env.sh 18:11:49 + lf-activate-venv --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 18:11:49 ++ mktemp -d /tmp/venv-XXXX 18:11:49 + lf_venv=/tmp/venv-viBd 18:11:49 + local venv_file=/tmp/.os_lf_venv 18:11:49 + local python=python3 18:11:49 + local options 18:11:49 + local set_path=true 18:11:49 + local install_args= 18:11:49 ++ getopt -o np:v: -l no-path,system-site-packages,python:,venv-file: -n lf-activate-venv -- --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 18:11:49 + options=' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 18:11:49 + eval set -- ' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 18:11:49 ++ set -- --venv-file /tmp/.toxenv -- tox virtualenv urllib3~=1.26.15 18:11:49 + true 18:11:49 + case $1 in 18:11:49 + venv_file=/tmp/.toxenv 18:11:49 + shift 2 18:11:49 + true 18:11:49 + case $1 in 18:11:49 + shift 18:11:49 + break 18:11:49 + case $python in 18:11:49 + local pkg_list= 18:11:49 + [[ -d /opt/pyenv ]] 18:11:49 + echo 'Setup pyenv:' 18:11:49 Setup pyenv: 18:11:49 + export PYENV_ROOT=/opt/pyenv 18:11:49 + PYENV_ROOT=/opt/pyenv 18:11:49 + export PATH=/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 18:11:49 + PATH=/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 18:11:49 + pyenv versions 18:11:49 system 18:11:49 3.8.20 18:11:49 3.9.20 18:11:49 3.10.15 18:11:49 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 18:11:49 + command -v pyenv 18:11:49 ++ pyenv init - --no-rehash 18:11:49 + eval 'PATH="$(bash --norc -ec '\''IFS=:; paths=($PATH); 18:11:49 for i in ${!paths[@]}; do 18:11:49 if [[ ${paths[i]} == "'\'''\''/opt/pyenv/shims'\'''\''" ]]; then unset '\''\'\'''\''paths[i]'\''\'\'''\''; 18:11:49 fi; done; 18:11:49 echo "${paths[*]}"'\'')" 18:11:49 export PATH="/opt/pyenv/shims:${PATH}" 18:11:49 export PYENV_SHELL=bash 18:11:49 source '\''/opt/pyenv/libexec/../completions/pyenv.bash'\'' 18:11:49 pyenv() { 18:11:49 local command 18:11:49 command="${1:-}" 18:11:49 if [ "$#" -gt 0 ]; then 18:11:49 shift 18:11:49 fi 18:11:49 18:11:49 case "$command" in 18:11:49 rehash|shell) 18:11:49 eval "$(pyenv "sh-$command" "$@")" 18:11:49 ;; 18:11:49 *) 18:11:49 command pyenv "$command" "$@" 18:11:49 ;; 18:11:49 esac 18:11:49 }' 18:11:49 +++ bash --norc -ec 'IFS=:; paths=($PATH); 18:11:49 for i in ${!paths[@]}; do 18:11:49 if [[ ${paths[i]} == "/opt/pyenv/shims" ]]; then unset '\''paths[i]'\''; 18:11:49 fi; done; 18:11:49 echo "${paths[*]}"' 18:11:49 ++ PATH=/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 18:11:49 ++ export PATH=/opt/pyenv/shims:/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 18:11:49 ++ PATH=/opt/pyenv/shims:/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 18:11:49 ++ export PYENV_SHELL=bash 18:11:49 ++ PYENV_SHELL=bash 18:11:49 ++ source /opt/pyenv/libexec/../completions/pyenv.bash 18:11:49 +++ complete -F _pyenv pyenv 18:11:49 ++ lf-pyver python3 18:11:49 ++ local py_version_xy=python3 18:11:49 ++ local py_version_xyz= 18:11:49 ++ pyenv versions 18:11:49 ++ local command 18:11:49 ++ command=versions 18:11:49 ++ '[' 1 -gt 0 ']' 18:11:49 ++ shift 18:11:49 ++ case "$command" in 18:11:49 ++ command pyenv versions 18:11:49 ++ sed 's/^[ *]* //' 18:11:49 ++ awk '{ print $1 }' 18:11:49 ++ grep -E '^[0-9.]*[0-9]$' 18:11:50 ++ [[ ! -s /tmp/.pyenv_versions ]] 18:11:50 +++ grep '^3' /tmp/.pyenv_versions 18:11:50 +++ sort -V 18:11:50 +++ tail -n 1 18:11:50 ++ py_version_xyz=3.11.10 18:11:50 ++ [[ -z 3.11.10 ]] 18:11:50 ++ echo 3.11.10 18:11:50 ++ return 0 18:11:50 + pyenv local 3.11.10 18:11:50 + local command 18:11:50 + command=local 18:11:50 + '[' 2 -gt 0 ']' 18:11:50 + shift 18:11:50 + case "$command" in 18:11:50 + command pyenv local 3.11.10 18:11:50 + for arg in "$@" 18:11:50 + case $arg in 18:11:50 + pkg_list+='tox ' 18:11:50 + for arg in "$@" 18:11:50 + case $arg in 18:11:50 + pkg_list+='virtualenv ' 18:11:50 + for arg in "$@" 18:11:50 + case $arg in 18:11:50 + pkg_list+='urllib3~=1.26.15 ' 18:11:50 + [[ -f /tmp/.toxenv ]] 18:11:50 + [[ ! -f /tmp/.toxenv ]] 18:11:50 + [[ -n '' ]] 18:11:50 + python3 -m venv /tmp/venv-viBd 18:11:54 + echo 'lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-viBd' 18:11:54 lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-viBd 18:11:54 + echo /tmp/venv-viBd 18:11:54 + echo 'lf-activate-venv(): INFO: Save venv in file: /tmp/.toxenv' 18:11:54 lf-activate-venv(): INFO: Save venv in file: /tmp/.toxenv 18:11:54 + echo 'lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv)' 18:11:54 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 18:11:54 + local 'pip_opts=--upgrade --quiet' 18:11:54 + pip_opts='--upgrade --quiet --trusted-host pypi.org' 18:11:54 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org' 18:11:54 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org' 18:11:54 + [[ -n '' ]] 18:11:54 + [[ -n '' ]] 18:11:54 + echo 'lf-activate-venv(): INFO: Attempting to install with network-safe options...' 18:11:54 lf-activate-venv(): INFO: Attempting to install with network-safe options... 18:11:54 + /tmp/venv-viBd/bin/python3 -m pip install --upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org pip 'setuptools<66' virtualenv 18:11:58 + echo 'lf-activate-venv(): INFO: Base packages installed successfully' 18:11:58 lf-activate-venv(): INFO: Base packages installed successfully 18:11:58 + [[ -z tox virtualenv urllib3~=1.26.15 ]] 18:11:58 + echo 'lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 ' 18:11:58 lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 18:11:58 + /tmp/venv-viBd/bin/python3 -m pip install --upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org --upgrade-strategy eager tox virtualenv urllib3~=1.26.15 18:12:00 + type python3 18:12:00 + true 18:12:00 + echo 'lf-activate-venv(): INFO: Adding /tmp/venv-viBd/bin to PATH' 18:12:00 lf-activate-venv(): INFO: Adding /tmp/venv-viBd/bin to PATH 18:12:00 + PATH=/tmp/venv-viBd/bin:/opt/pyenv/shims:/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 18:12:00 + return 0 18:12:00 + python3 --version 18:12:00 Python 3.11.10 18:12:00 + python3 -m pip --version 18:12:00 pip 25.3 from /tmp/venv-viBd/lib/python3.11/site-packages/pip (python 3.11) 18:12:00 + python3 -m pip freeze 18:12:00 cachetools==6.2.1 18:12:00 chardet==5.2.0 18:12:00 colorama==0.4.6 18:12:00 distlib==0.4.0 18:12:00 filelock==3.20.0 18:12:00 packaging==25.0 18:12:00 platformdirs==4.5.0 18:12:00 pluggy==1.6.0 18:12:00 pyproject-api==1.10.0 18:12:00 tox==4.32.0 18:12:00 urllib3==1.26.20 18:12:00 virtualenv==20.35.4 18:12:00 [transportpce-tox-verify-transportpce-master] $ /bin/sh -xe /tmp/jenkins5210946925073398910.sh 18:12:00 [EnvInject] - Injecting environment variables from a build step. 18:12:00 [EnvInject] - Injecting as environment variables the properties content 18:12:00 PARALLEL=True 18:12:00 18:12:00 [EnvInject] - Variables injected successfully. 18:12:00 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins17209819971247003748.sh 18:12:00 ---> tox-run.sh 18:12:00 + PATH=/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 18:12:00 + ARCHIVE_TOX_DIR=/w/workspace/transportpce-tox-verify-transportpce-master/archives/tox 18:12:00 + ARCHIVE_DOC_DIR=/w/workspace/transportpce-tox-verify-transportpce-master/archives/docs 18:12:00 + mkdir -p /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox 18:12:00 + cd /w/workspace/transportpce-tox-verify-transportpce-master/. 18:12:00 + source /home/jenkins/lf-env.sh 18:12:00 + lf-activate-venv --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 18:12:00 ++ mktemp -d /tmp/venv-XXXX 18:12:00 + lf_venv=/tmp/venv-QIPC 18:12:00 + local venv_file=/tmp/.os_lf_venv 18:12:00 + local python=python3 18:12:00 + local options 18:12:00 + local set_path=true 18:12:00 + local install_args= 18:12:00 ++ getopt -o np:v: -l no-path,system-site-packages,python:,venv-file: -n lf-activate-venv -- --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 18:12:00 + options=' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 18:12:00 + eval set -- ' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 18:12:00 ++ set -- --venv-file /tmp/.toxenv -- tox virtualenv urllib3~=1.26.15 18:12:00 + true 18:12:00 + case $1 in 18:12:00 + venv_file=/tmp/.toxenv 18:12:00 + shift 2 18:12:00 + true 18:12:00 + case $1 in 18:12:00 + shift 18:12:00 + break 18:12:00 + case $python in 18:12:00 + local pkg_list= 18:12:00 + [[ -d /opt/pyenv ]] 18:12:00 + echo 'Setup pyenv:' 18:12:00 Setup pyenv: 18:12:00 + export PYENV_ROOT=/opt/pyenv 18:12:00 + PYENV_ROOT=/opt/pyenv 18:12:00 + export PATH=/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 18:12:00 + PATH=/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 18:12:00 + pyenv versions 18:12:01 system 18:12:01 3.8.20 18:12:01 3.9.20 18:12:01 3.10.15 18:12:01 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 18:12:01 + command -v pyenv 18:12:01 ++ pyenv init - --no-rehash 18:12:01 + eval 'PATH="$(bash --norc -ec '\''IFS=:; paths=($PATH); 18:12:01 for i in ${!paths[@]}; do 18:12:01 if [[ ${paths[i]} == "'\'''\''/opt/pyenv/shims'\'''\''" ]]; then unset '\''\'\'''\''paths[i]'\''\'\'''\''; 18:12:01 fi; done; 18:12:01 echo "${paths[*]}"'\'')" 18:12:01 export PATH="/opt/pyenv/shims:${PATH}" 18:12:01 export PYENV_SHELL=bash 18:12:01 source '\''/opt/pyenv/libexec/../completions/pyenv.bash'\'' 18:12:01 pyenv() { 18:12:01 local command 18:12:01 command="${1:-}" 18:12:01 if [ "$#" -gt 0 ]; then 18:12:01 shift 18:12:01 fi 18:12:01 18:12:01 case "$command" in 18:12:01 rehash|shell) 18:12:01 eval "$(pyenv "sh-$command" "$@")" 18:12:01 ;; 18:12:01 *) 18:12:01 command pyenv "$command" "$@" 18:12:01 ;; 18:12:01 esac 18:12:01 }' 18:12:01 +++ bash --norc -ec 'IFS=:; paths=($PATH); 18:12:01 for i in ${!paths[@]}; do 18:12:01 if [[ ${paths[i]} == "/opt/pyenv/shims" ]]; then unset '\''paths[i]'\''; 18:12:01 fi; done; 18:12:01 echo "${paths[*]}"' 18:12:01 ++ PATH=/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 18:12:01 ++ export PATH=/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 18:12:01 ++ PATH=/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 18:12:01 ++ export PYENV_SHELL=bash 18:12:01 ++ PYENV_SHELL=bash 18:12:01 ++ source /opt/pyenv/libexec/../completions/pyenv.bash 18:12:01 +++ complete -F _pyenv pyenv 18:12:01 ++ lf-pyver python3 18:12:01 ++ local py_version_xy=python3 18:12:01 ++ local py_version_xyz= 18:12:01 ++ pyenv versions 18:12:01 ++ local command 18:12:01 ++ command=versions 18:12:01 ++ '[' 1 -gt 0 ']' 18:12:01 ++ shift 18:12:01 ++ case "$command" in 18:12:01 ++ command pyenv versions 18:12:01 ++ sed 's/^[ *]* //' 18:12:01 ++ awk '{ print $1 }' 18:12:01 ++ grep -E '^[0-9.]*[0-9]$' 18:12:01 ++ [[ ! -s /tmp/.pyenv_versions ]] 18:12:01 +++ grep '^3' /tmp/.pyenv_versions 18:12:01 +++ sort -V 18:12:01 +++ tail -n 1 18:12:01 ++ py_version_xyz=3.11.10 18:12:01 ++ [[ -z 3.11.10 ]] 18:12:01 ++ echo 3.11.10 18:12:01 ++ return 0 18:12:01 + pyenv local 3.11.10 18:12:01 + local command 18:12:01 + command=local 18:12:01 + '[' 2 -gt 0 ']' 18:12:01 + shift 18:12:01 + case "$command" in 18:12:01 + command pyenv local 3.11.10 18:12:01 + for arg in "$@" 18:12:01 + case $arg in 18:12:01 + pkg_list+='tox ' 18:12:01 + for arg in "$@" 18:12:01 + case $arg in 18:12:01 + pkg_list+='virtualenv ' 18:12:01 + for arg in "$@" 18:12:01 + case $arg in 18:12:01 + pkg_list+='urllib3~=1.26.15 ' 18:12:01 + [[ -f /tmp/.toxenv ]] 18:12:01 ++ cat /tmp/.toxenv 18:12:01 + lf_venv=/tmp/venv-viBd 18:12:01 + echo 'lf-activate-venv(): INFO: Reuse venv:/tmp/venv-viBd from' file:/tmp/.toxenv 18:12:01 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-viBd from file:/tmp/.toxenv 18:12:01 + echo 'lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv)' 18:12:01 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 18:12:01 + local 'pip_opts=--upgrade --quiet' 18:12:01 + pip_opts='--upgrade --quiet --trusted-host pypi.org' 18:12:01 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org' 18:12:01 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org' 18:12:01 + [[ -n '' ]] 18:12:01 + [[ -n '' ]] 18:12:01 + echo 'lf-activate-venv(): INFO: Attempting to install with network-safe options...' 18:12:01 lf-activate-venv(): INFO: Attempting to install with network-safe options... 18:12:01 + /tmp/venv-viBd/bin/python3 -m pip install --upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org pip 'setuptools<66' virtualenv 18:12:02 + echo 'lf-activate-venv(): INFO: Base packages installed successfully' 18:12:02 lf-activate-venv(): INFO: Base packages installed successfully 18:12:02 + [[ -z tox virtualenv urllib3~=1.26.15 ]] 18:12:02 + echo 'lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 ' 18:12:02 lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 18:12:02 + /tmp/venv-viBd/bin/python3 -m pip install --upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org --upgrade-strategy eager tox virtualenv urllib3~=1.26.15 18:12:03 + type python3 18:12:03 + true 18:12:03 + echo 'lf-activate-venv(): INFO: Adding /tmp/venv-viBd/bin to PATH' 18:12:03 lf-activate-venv(): INFO: Adding /tmp/venv-viBd/bin to PATH 18:12:03 + PATH=/tmp/venv-viBd/bin:/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 18:12:03 + return 0 18:12:03 + [[ -d /opt/pyenv ]] 18:12:03 + echo '---> Setting up pyenv' 18:12:03 ---> Setting up pyenv 18:12:03 + export PYENV_ROOT=/opt/pyenv 18:12:03 + PYENV_ROOT=/opt/pyenv 18:12:03 + export PATH=/opt/pyenv/bin:/tmp/venv-viBd/bin:/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 18:12:03 + PATH=/opt/pyenv/bin:/tmp/venv-viBd/bin:/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 18:12:03 ++ pwd 18:12:03 + PYTHONPATH=/w/workspace/transportpce-tox-verify-transportpce-master 18:12:03 + export PYTHONPATH 18:12:03 + export TOX_TESTENV_PASSENV=PYTHONPATH 18:12:03 + TOX_TESTENV_PASSENV=PYTHONPATH 18:12:03 + tox --version 18:12:03 4.32.0 from /tmp/venv-viBd/lib/python3.11/site-packages/tox/__init__.py 18:12:03 + PARALLEL=True 18:12:03 + TOX_OPTIONS_LIST= 18:12:03 + [[ -n '' ]] 18:12:03 + case ${PARALLEL,,} in 18:12:03 + TOX_OPTIONS_LIST=' --parallel auto --parallel-live' 18:12:03 + tox --parallel auto --parallel-live 18:12:03 + tee -a /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tox.log 18:12:05 docs-linkcheck: install_deps> python -I -m pip install -r docs/requirements.txt 18:12:05 docs: install_deps> python -I -m pip install -r docs/requirements.txt 18:12:05 buildcontroller: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 18:12:05 checkbashisms: freeze> python -m pip freeze --all 18:12:05 checkbashisms: pip==25.3,setuptools==80.9.0 18:12:05 checkbashisms: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./fixCIcentOS8reposMirrors.sh 18:12:05 checkbashisms: commands[1] /w/workspace/transportpce-tox-verify-transportpce-master/tests> sh -c 'command checkbashisms>/dev/null || sudo yum install -y devscripts-checkbashisms || sudo yum install -y devscripts-minimal || sudo yum install -y devscripts || sudo yum install -y https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/31/Everything/x86_64/os/Packages/d/devscripts-checkbashisms-2.19.6-2.fc31.x86_64.rpm || (echo "checkbashisms command not found - please install it (e.g. sudo apt-get install devscripts | yum install devscripts-minimal )" >&2 && exit 1)' 18:12:05 checkbashisms: commands[2] /w/workspace/transportpce-tox-verify-transportpce-master/tests> find . -not -path '*/\.*' -name '*.sh' -exec checkbashisms -f '{}' + 18:12:07 checkbashisms: OK ✔ in 3.28 seconds 18:12:07 pre-commit: install_deps> python -I -m pip install pre-commit 18:12:09 pre-commit: freeze> python -m pip freeze --all 18:12:10 pre-commit: cfgv==3.4.0,distlib==0.4.0,filelock==3.20.0,identify==2.6.15,nodeenv==1.9.1,pip==25.3,platformdirs==4.5.0,pre_commit==4.3.0,PyYAML==6.0.3,setuptools==80.9.0,virtualenv==20.35.4 18:12:10 pre-commit: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./fixCIcentOS8reposMirrors.sh 18:12:10 pre-commit: commands[1] /w/workspace/transportpce-tox-verify-transportpce-master/tests> sh -c 'which cpan || sudo yum install -y perl-CPAN || (echo "cpan command not found - please install it (e.g. sudo apt-get install perl-modules | yum install perl-CPAN )" >&2 && exit 1)' 18:12:10 /usr/bin/cpan 18:12:10 pre-commit: commands[2] /w/workspace/transportpce-tox-verify-transportpce-master/tests> pre-commit run --all-files --show-diff-on-failure 18:12:10 [WARNING] hook id `remove-tabs` uses deprecated stage names (commit) which will be removed in a future version. run: `pre-commit migrate-config` to automatically fix this. 18:12:10 [WARNING] hook id `perltidy` uses deprecated stage names (commit) which will be removed in a future version. run: `pre-commit migrate-config` to automatically fix this. 18:12:10 [INFO] Initializing environment for https://github.com/pre-commit/pre-commit-hooks. 18:12:10 [WARNING] repo `https://github.com/pre-commit/pre-commit-hooks` uses deprecated stage names (commit, push) which will be removed in a future version. Hint: often `pre-commit autoupdate --repo https://github.com/pre-commit/pre-commit-hooks` will fix this. if it does not -- consider reporting an issue to that repo. 18:12:10 [INFO] Initializing environment for https://github.com/jorisroovers/gitlint. 18:12:11 [INFO] Initializing environment for https://github.com/jorisroovers/gitlint:./gitlint-core[trusted-deps]. 18:12:11 [INFO] Initializing environment for https://github.com/Lucas-C/pre-commit-hooks. 18:12:11 [INFO] Initializing environment for https://github.com/pre-commit/mirrors-autopep8. 18:12:12 [INFO] Initializing environment for https://github.com/perltidy/perltidy. 18:12:12 buildcontroller: freeze> python -m pip freeze --all 18:12:12 buildcontroller: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.3,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 18:12:12 buildcontroller: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_controller.sh 18:12:12 + update-java-alternatives -l 18:12:12 java-1.11.0-openjdk-amd64 1111 /usr/lib/jvm/java-1.11.0-openjdk-amd64 18:12:12 java-1.17.0-openjdk-amd64 1711 /usr/lib/jvm/java-1.17.0-openjdk-amd64 18:12:12 java-1.21.0-openjdk-amd64 2111 /usr/lib/jvm/java-1.21.0-openjdk-amd64 18:12:12 + sudo update-java-alternatives -s java-1.21.0-openjdk-amd64 18:12:12 update-alternatives: error: no alternatives for jaotc 18:12:12 update-alternatives: error: no alternatives for rmic 18:12:12 [INFO] Installing environment for https://github.com/pre-commit/pre-commit-hooks. 18:12:12 [INFO] Once installed this environment will be reused. 18:12:12 [INFO] This may take a few minutes... 18:12:12 + java -version 18:12:12 + sed -n ;s/.* version "\(.*\)\.\(.*\)\..*".*$/\1/p; 18:12:12 + JAVA_VER=21 18:12:12 + echo 21 18:12:12 21 18:12:12 + sed -n ;s/javac \(.*\)\.\(.*\)\..*.*$/\1/p; 18:12:12 + javac -version 18:12:13 + JAVAC_VER=21 18:12:13 + echo 21 18:12:13 21 18:12:13 ok, java is 21 or newer 18:12:13 + [ 21 -ge 21 ] 18:12:13 + [ 21 -ge 21 ] 18:12:13 + echo ok, java is 21 or newer 18:12:13 + wget -nv https://dlcdn.apache.org/maven/maven-3/3.9.11/binaries/apache-maven-3.9.11-bin.tar.gz -P /tmp 18:12:13 2025-10-29 18:12:13 URL:https://dlcdn.apache.org/maven/maven-3/3.9.11/binaries/apache-maven-3.9.11-bin.tar.gz [9160848/9160848] -> "/tmp/apache-maven-3.9.11-bin.tar.gz" [1] 18:12:13 + sudo mkdir -p /opt 18:12:14 + sudo tar xf /tmp/apache-maven-3.9.11-bin.tar.gz -C /opt 18:12:14 + sudo ln -s /opt/apache-maven-3.9.11 /opt/maven 18:12:14 + sudo ln -s /opt/maven/bin/mvn /usr/bin/mvn 18:12:14 + mvn --version 18:12:15 Apache Maven 3.9.11 (3e54c93a704957b63ee3494413a2b544fd3d825b) 18:12:15 Maven home: /opt/maven 18:12:15 Java version: 21.0.8, vendor: Ubuntu, runtime: /usr/lib/jvm/java-21-openjdk-amd64 18:12:15 Default locale: en, platform encoding: UTF-8 18:12:15 OS name: "linux", version: "5.15.0-153-generic", arch: "amd64", family: "unix" 18:12:15 NOTE: Picked up JDK_JAVA_OPTIONS: 18:12:15 --add-opens=java.base/java.io=ALL-UNNAMED 18:12:15 --add-opens=java.base/java.lang=ALL-UNNAMED 18:12:15 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 18:12:15 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 18:12:15 --add-opens=java.base/java.net=ALL-UNNAMED 18:12:15 --add-opens=java.base/java.nio=ALL-UNNAMED 18:12:15 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 18:12:15 --add-opens=java.base/java.nio.file=ALL-UNNAMED 18:12:15 --add-opens=java.base/java.util=ALL-UNNAMED 18:12:15 --add-opens=java.base/java.util.jar=ALL-UNNAMED 18:12:15 --add-opens=java.base/java.util.stream=ALL-UNNAMED 18:12:15 --add-opens=java.base/java.util.zip=ALL-UNNAMED 18:12:15 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 18:12:15 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 18:12:15 -Xlog:disable 18:12:17 [INFO] Installing environment for https://github.com/Lucas-C/pre-commit-hooks. 18:12:17 [INFO] Once installed this environment will be reused. 18:12:17 [INFO] This may take a few minutes... 18:12:24 [INFO] Installing environment for https://github.com/pre-commit/mirrors-autopep8. 18:12:24 [INFO] Once installed this environment will be reused. 18:12:24 [INFO] This may take a few minutes... 18:12:30 [INFO] Installing environment for https://github.com/perltidy/perltidy. 18:12:30 [INFO] Once installed this environment will be reused. 18:12:30 [INFO] This may take a few minutes... 18:12:32 docs: freeze> python -m pip freeze --all 18:12:32 docs: alabaster==1.0.0,attrs==25.4.0,babel==2.17.0,blockdiag==3.0.0,certifi==2025.10.5,charset-normalizer==3.4.4,contourpy==1.3.3,cycler==0.12.1,docutils==0.21.2,fonttools==4.60.1,funcparserlib==2.0.0a0,future==1.0.0,idna==3.11,imagesize==1.4.1,Jinja2==3.1.6,jsonschema==3.2.0,kiwisolver==1.4.9,lfdocs-conf==0.9.0,MarkupSafe==3.0.3,matplotlib==3.10.7,numpy==2.3.4,nwdiag==3.0.0,packaging==25.0,pillow==12.0.0,pip==25.3,Pygments==2.19.2,pyparsing==3.2.5,pyrsistent==0.20.0,python-dateutil==2.9.0.post0,PyYAML==6.0.3,requests==2.32.5,requests-file==1.5.1,roman-numerals-py==3.1.0,seqdiag==3.0.0,setuptools==80.9.0,six==1.17.0,snowballstemmer==3.0.1,Sphinx==8.2.3,sphinx-bootstrap-theme==0.8.1,sphinx-data-viewer==0.1.5,sphinx-rtd-theme==3.0.2,sphinx-tabs==3.4.7,sphinxcontrib-applehelp==2.0.0,sphinxcontrib-blockdiag==3.0.0,sphinxcontrib-devhelp==2.0.0,sphinxcontrib-htmlhelp==2.1.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,urllib3==2.5.0,webcolors==24.11.1 18:12:32 docs: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> sphinx-build -q -W --keep-going -b html -n -d /w/workspace/transportpce-tox-verify-transportpce-master/.tox/docs/tmp/doctrees ../docs/ /w/workspace/transportpce-tox-verify-transportpce-master/docs/_build/html 18:12:32 docs-linkcheck: freeze> python -m pip freeze --all 18:12:32 docs-linkcheck: alabaster==1.0.0,attrs==25.4.0,babel==2.17.0,blockdiag==3.0.0,certifi==2025.10.5,charset-normalizer==3.4.4,contourpy==1.3.3,cycler==0.12.1,docutils==0.21.2,fonttools==4.60.1,funcparserlib==2.0.0a0,future==1.0.0,idna==3.11,imagesize==1.4.1,Jinja2==3.1.6,jsonschema==3.2.0,kiwisolver==1.4.9,lfdocs-conf==0.9.0,MarkupSafe==3.0.3,matplotlib==3.10.7,numpy==2.3.4,nwdiag==3.0.0,packaging==25.0,pillow==12.0.0,pip==25.3,Pygments==2.19.2,pyparsing==3.2.5,pyrsistent==0.20.0,python-dateutil==2.9.0.post0,PyYAML==6.0.3,requests==2.32.5,requests-file==1.5.1,roman-numerals-py==3.1.0,seqdiag==3.0.0,setuptools==80.9.0,six==1.17.0,snowballstemmer==3.0.1,Sphinx==8.2.3,sphinx-bootstrap-theme==0.8.1,sphinx-data-viewer==0.1.5,sphinx-rtd-theme==3.0.2,sphinx-tabs==3.4.7,sphinxcontrib-applehelp==2.0.0,sphinxcontrib-blockdiag==3.0.0,sphinxcontrib-devhelp==2.0.0,sphinxcontrib-htmlhelp==2.1.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,urllib3==2.5.0,webcolors==24.11.1 18:12:32 docs-linkcheck: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> sphinx-build -q -b linkcheck -d /w/workspace/transportpce-tox-verify-transportpce-master/.tox/docs-linkcheck/tmp/doctrees ../docs/ /w/workspace/transportpce-tox-verify-transportpce-master/docs/_build/linkcheck 18:12:36 docs: OK ✔ in 31.87 seconds 18:12:36 pylint: install_deps> python -I -m pip install 'pylint>=2.6.0' 18:12:40 docs-linkcheck: OK ✔ in 34.45 seconds 18:12:40 pylint: freeze> python -m pip freeze --all 18:12:40 pylint: astroid==4.0.1,dill==0.4.0,isort==7.0.0,mccabe==0.7.0,pip==25.3,platformdirs==4.5.0,pylint==4.0.2,setuptools==80.9.0,tomlkit==0.13.3 18:12:40 pylint: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> find transportpce_tests/ -name '*.py' -exec pylint --fail-under=10 --max-line-length=120 --disable=missing-docstring,import-error --disable=fixme --disable=duplicate-code '--module-rgx=([a-z0-9_]+$)|([0-9.]{1,30}$)' '--method-rgx=(([a-z_][a-zA-Z0-9_]{2,})|(_[a-z0-9_]*)|(__[a-zA-Z][a-zA-Z0-9_]+__))$' '--variable-rgx=[a-zA-Z_][a-zA-Z0-9_]{1,30}$' '{}' + 18:12:42 trim trailing whitespace.................................................Passed 18:12:42 Tabs remover.............................................................Passed 18:12:42 autopep8.................................................................Passed 18:12:49 perltidy.................................................................Passed 18:12:49 pre-commit: commands[3] /w/workspace/transportpce-tox-verify-transportpce-master/tests> pre-commit run gitlint-ci --hook-stage manual 18:12:50 [WARNING] hook id `remove-tabs` uses deprecated stage names (commit) which will be removed in a future version. run: `pre-commit migrate-config` to automatically fix this. 18:12:50 [WARNING] hook id `perltidy` uses deprecated stage names (commit) which will be removed in a future version. run: `pre-commit migrate-config` to automatically fix this. 18:12:50 [INFO] Installing environment for https://github.com/jorisroovers/gitlint. 18:12:50 [INFO] Once installed this environment will be reused. 18:12:50 [INFO] This may take a few minutes... 18:13:00 gitlint..................................................................Passed 18:13:05 18:13:05 ------------------------------------ 18:13:05 Your code has been rated at 10.00/10 18:13:05 18:14:31 pre-commit: OK ✔ in 53.19 seconds 18:14:31 pylint: OK ✔ in 31.63 seconds 18:14:31 buildcontroller: OK ✔ in 2 minutes 26.24 seconds 18:14:31 build_karaf_tests121: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 18:14:31 build_karaf_tests190: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 18:14:31 build_karaf_tests221: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 18:14:31 build_karaf_tests71: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 18:14:38 build_karaf_tests221: freeze> python -m pip freeze --all 18:14:38 build_karaf_tests71: freeze> python -m pip freeze --all 18:14:38 build_karaf_tests190: freeze> python -m pip freeze --all 18:14:38 build_karaf_tests121: freeze> python -m pip freeze --all 18:14:39 build_karaf_tests221: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.3,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 18:14:39 build_karaf_tests221: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 18:14:39 build karaf in karaf221 with ./karaf221.env 18:14:39 build_karaf_tests71: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.3,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 18:14:39 build_karaf_tests71: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 18:14:39 build_karaf_tests190: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.3,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 18:14:39 build_karaf_tests190: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 18:14:39 build karaf in karafoc with ./karafoc.env 18:14:39 build karaf in karaf71 with ./karaf71.env 18:14:39 build_karaf_tests121: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.3,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 18:14:39 build_karaf_tests121: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 18:14:39 NOTE: Picked up JDK_JAVA_OPTIONS: 18:14:39 --add-opens=java.base/java.io=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.lang=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.net=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.nio=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.nio.file=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util.jar=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util.stream=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util.zip=ALL-UNNAMED 18:14:39 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 18:14:39 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 18:14:39 -Xlog:disable 18:14:39 NOTE: Picked up JDK_JAVA_OPTIONS: 18:14:39 --add-opens=java.base/java.io=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.lang=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.net=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.nio=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.nio.file=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util.jar=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util.stream=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util.zip=ALL-UNNAMED 18:14:39 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 18:14:39 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 18:14:39 -Xlog:disable 18:14:39 build karaf in karaf121 with ./karaf121.env 18:14:39 NOTE: Picked up JDK_JAVA_OPTIONS: 18:14:39 --add-opens=java.base/java.io=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.lang=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.net=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.nio=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.nio.file=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util.jar=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util.stream=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util.zip=ALL-UNNAMED 18:14:39 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 18:14:39 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 18:14:39 -Xlog:disable 18:14:39 NOTE: Picked up JDK_JAVA_OPTIONS: 18:14:39 --add-opens=java.base/java.io=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.lang=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.net=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.nio=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.nio.file=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util.jar=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util.stream=ALL-UNNAMED 18:14:39 --add-opens=java.base/java.util.zip=ALL-UNNAMED 18:14:39 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 18:14:39 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 18:14:39 -Xlog:disable 18:15:44 build_karaf_tests121: OK ✔ in 1 minute 13.83 seconds 18:15:44 buildlighty: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 18:15:49 build_karaf_tests71: OK ✔ in 1 minute 19.1 seconds 18:15:49 build_karaf_tests221: OK ✔ in 1 minute 19.1 seconds 18:15:49 sims: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 18:15:51 build_karaf_tests190: OK ✔ in 1 minute 19.8 seconds 18:15:51 testsPCE: install_deps> python -I -m pip install gnpy4tpce==2.4.7 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 18:15:58 buildlighty: freeze> python -m pip freeze --all 18:15:58 buildlighty: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.3,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 18:15:58 buildlighty: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/lighty> ./build.sh 18:15:58 sims: freeze> python -m pip freeze --all 18:15:58 NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED 18:15:58 sims: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.3,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 18:15:58 sims: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./install_lightynode.sh 18:15:58 Using lighynode version 20.1.0.5 18:15:58 Installing lightynode device to ./lightynode/lightynode-openroadm-device directory 18:16:42 sims: OK ✔ in 13.13 seconds 18:16:42 buildlighty: OK ✔ in 37.28 seconds 18:16:42 testsPCE: freeze> python -m pip freeze --all 18:16:42 testsPCE: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,click==8.3.0,contourpy==1.3.3,cryptography==3.3.2,cycler==0.12.1,dict2xml==1.7.7,Flask==2.1.3,Flask-Injector==0.14.0,fonttools==4.60.1,gnpy4tpce==2.4.7,idna==3.11,iniconfig==2.3.0,injector==0.22.0,invoke==2.2.1,itsdangerous==2.2.0,Jinja2==3.1.6,kiwisolver==1.4.9,lxml==6.0.2,MarkupSafe==3.0.3,matplotlib==3.10.7,netconf-client==3.5.0,networkx==2.8.8,numpy==1.26.4,packaging==25.0,pandas==1.5.3,paramiko==4.0.0,pbr==5.11.1,pillow==12.0.0,pip==25.3,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pyparsing==3.2.5,pytest==8.4.2,python-dateutil==2.9.0.post0,pytz==2025.2,requests==2.32.5,scipy==1.16.3,setuptools==50.3.2,six==1.17.0,urllib3==2.5.0,Werkzeug==2.0.3,xlrd==1.2.0 18:16:42 testsPCE: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh pce 18:16:42 pytest -q transportpce_tests/pce/test01_pce.py 18:17:31 .................... [100%] 18:18:34 20 passed in 111.42s (0:01:51) 18:18:34 pytest -q transportpce_tests/pce/test02_pce_400G.py 18:18:51 ............ [100%] 18:19:21 12 passed in 46.92s 18:19:21 pytest -q transportpce_tests/pce/test03_gnpy.py 18:19:40 ........ [100%] 18:20:04 8 passed in 41.82s 18:20:04 pytest -q transportpce_tests/pce/test04_pce_bug_fix.py 18:20:36 ... [100%] 18:20:41 3 passed in 37.24s 18:20:42 testsPCE: OK ✔ in 4 minutes 51.55 seconds 18:20:42 tests190: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 18:20:42 tests_tapi: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 18:20:42 tests121: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 18:20:49 tests_tapi: freeze> python -m pip freeze --all 18:20:49 tests190: freeze> python -m pip freeze --all 18:20:49 tests_tapi: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.3,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 18:20:49 tests_tapi: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh tapi 18:20:49 using environment variables from ./karaf221.env 18:20:49 pytest -q transportpce_tests/tapi/test01_abstracted_topology.py 18:20:49 tests190: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.3,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 18:20:49 tests190: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh oc 18:20:49 using environment variables from ./karafoc.env 18:20:49 pytest -q transportpce_tests/oc/test01_portmapping.py 18:20:49 tests121: freeze> python -m pip freeze --all 18:20:50 tests121: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.3,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 18:20:50 tests121: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 1.2.1 18:20:50 using environment variables from ./karaf121.env 18:20:50 pytest -q transportpce_tests/1.2.1/test01_portmapping.py 18:21:56 ........... [100%] 18:22:13 10 passed in 83.28s (0:01:23) 18:22:13 pytest -q transportpce_tests/oc/test02_topology.py 18:22:19 ................................ [100%] 18:22:59 21 passed in 129.05s (0:02:09) 18:22:59 pytest -q transportpce_tests/1.2.1/test02_topo_portmapping.py 18:23:00 ............................ [100%] 18:23:21 14 passed in 67.98s (0:01:07) 18:23:21 pytest -q transportpce_tests/oc/test03_renderer.py 18:23:22 ................................... [100%] 18:24:20 19 passed in 58.64s 18:24:20 tests190: OK ✔ in 3 minutes 38.97 seconds 18:24:20 tests71: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 18:24:26 .tests71: freeze> python -m pip freeze --all 18:24:27 tests71: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.3,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 18:24:27 tests71: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 7.1 18:24:27 using environment variables from ./karaf71.env 18:24:27 pytest -q transportpce_tests/7.1/test01_portmapping.py 18:24:47 ..................... [100%] 18:25:15 12 passed in 46.88s 18:25:15 pytest -q transportpce_tests/7.1/test02_otn_renderer.py 18:25:42 ...................................... [100%] 18:27:00 6 passed in 240.49s (0:04:00) 18:27:00 pytest -q transportpce_tests/1.2.1/test03_topology.py 18:27:00 .............................. [100%] 18:27:52 62 passed in 157.42s (0:02:37) 18:27:52 pytest -q transportpce_tests/7.1/test03_renderer_or_modes.py 18:27:53 ................................................................. [100%] 18:29:21 44 passed in 140.80s (0:02:20) 18:29:21 pytest -q transportpce_tests/1.2.1/test04_renderer_service_path_nominal.py 18:29:22 ................................ [100%] 18:30:12 48 passed in 139.75s (0:02:19) 18:30:13 pytest -q transportpce_tests/7.1/test04_renderer_regen_mode.py 18:30:13 ................... [100%] 18:30:47 24 passed in 84.98s (0:01:24) 18:30:47 pytest -q transportpce_tests/1.2.1/test05_olm.py 18:30:47 .................... [100%] 18:31:28 22 passed in 75.09s (0:01:15) 18:31:32 ................. [100%] 18:32:11 51 passed in 681.47s (0:11:21) 18:32:11 pytest -q transportpce_tests/tapi/test02_full_topology.py 18:32:17 ...................................... [100%] 18:33:55 40 passed in 188.31s (0:03:08) 18:33:55 pytest -q transportpce_tests/1.2.1/test06_end2end.py 18:33:57 ............................................................. [100%] 18:37:43 36 passed in 331.55s (0:05:31) 18:37:43 pytest -q transportpce_tests/tapi/test03_tapi_device_change_notifications.py 18:37:43 ................................................................................. [100%] 18:42:55 54 passed in 539.00s (0:08:59) 18:45:00 ..... [100%] 18:45:53 71 passed in 490.15s (0:08:10) 18:45:53 pytest -q transportpce_tests/tapi/test04_topo_extension.py 18:46:44 ................... [100%] 18:51:15 19 passed in 321.67s (0:05:21) 18:51:15 tests71: OK ✔ in 7 minutes 7.92 seconds 18:51:15 tests121: OK ✔ in 22 minutes 13.67 seconds 18:51:15 tests_tapi: OK ✔ in 30 minutes 34.17 seconds 18:51:15 tests221: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 18:51:22 tests221: freeze> python -m pip freeze --all 18:51:23 tests221: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.3,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 18:51:23 tests221: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 2.2.1 18:51:23 using environment variables from ./karaf221.env 18:51:23 pytest -q transportpce_tests/2.2.1/test01_portmapping.py 18:51:59 ................................... [100%] 18:52:39 35 passed in 76.08s (0:01:16) 18:52:39 pytest -q transportpce_tests/2.2.1/test02_topo_portmapping.py 18:53:43 FF.... [100%] 18:53:58 =================================== FAILURES =================================== 18:53:58 _____________ TestTransportPCETopoPortmapping.test_01_connect_rdm ______________ 18:53:58 18:53:58 self = 18:53:58 conn = 18:53:58 method = 'PUT' 18:53:58 url = '/rests/data/network-topology:network-topology/topology=topology-netconf/node=ROADM-A1' 18:53:58 body = '{"node": [{"node-id": "ROADM-A1", "netconf-node-topology:netconf-node": {"netconf-node-topology:host": "127.0.0.1", "...ff-millis": 1800000, "netconf-node-topology:backoff-multiplier": 1.5, "netconf-node-topology:keepalive-delay": 120}}]}' 18:53:58 headers = {'User-Agent': 'python-requests/2.32.5', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/json', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Content-Length': '710', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 18:53:58 retries = Retry(total=0, connect=None, read=False, redirect=None, status=None) 18:53:58 timeout = Timeout(connect=30, read=30, total=None), chunked = False 18:53:58 response_conn = 18:53:58 preload_content = False, decode_content = False, enforce_content_length = True 18:53:58 18:53:58 def _make_request( 18:53:58 self, 18:53:58 conn: BaseHTTPConnection, 18:53:58 method: str, 18:53:58 url: str, 18:53:58 body: _TYPE_BODY | None = None, 18:53:58 headers: typing.Mapping[str, str] | None = None, 18:53:58 retries: Retry | None = None, 18:53:58 timeout: _TYPE_TIMEOUT = _DEFAULT_TIMEOUT, 18:53:58 chunked: bool = False, 18:53:58 response_conn: BaseHTTPConnection | None = None, 18:53:58 preload_content: bool = True, 18:53:58 decode_content: bool = True, 18:53:58 enforce_content_length: bool = True, 18:53:58 ) -> BaseHTTPResponse: 18:53:58 """ 18:53:58 Perform a request on a given urllib connection object taken from our 18:53:58 pool. 18:53:58 18:53:58 :param conn: 18:53:58 a connection from one of our connection pools 18:53:58 18:53:58 :param method: 18:53:58 HTTP request method (such as GET, POST, PUT, etc.) 18:53:58 18:53:58 :param url: 18:53:58 The URL to perform the request on. 18:53:58 18:53:58 :param body: 18:53:58 Data to send in the request body, either :class:`str`, :class:`bytes`, 18:53:58 an iterable of :class:`str`/:class:`bytes`, or a file-like object. 18:53:58 18:53:58 :param headers: 18:53:58 Dictionary of custom headers to send, such as User-Agent, 18:53:58 If-None-Match, etc. If None, pool headers are used. If provided, 18:53:58 these headers completely replace any pool-specific headers. 18:53:58 18:53:58 :param retries: 18:53:58 Configure the number of retries to allow before raising a 18:53:58 :class:`~urllib3.exceptions.MaxRetryError` exception. 18:53:58 18:53:58 Pass ``None`` to retry until you receive a response. Pass a 18:53:58 :class:`~urllib3.util.retry.Retry` object for fine-grained control 18:53:58 over different types of retries. 18:53:58 Pass an integer number to retry connection errors that many times, 18:53:58 but no other types of errors. Pass zero to never retry. 18:53:58 18:53:58 If ``False``, then retries are disabled and any exception is raised 18:53:58 immediately. Also, instead of raising a MaxRetryError on redirects, 18:53:58 the redirect response will be returned. 18:53:58 18:53:58 :type retries: :class:`~urllib3.util.retry.Retry`, False, or an int. 18:53:58 18:53:58 :param timeout: 18:53:58 If specified, overrides the default timeout for this one 18:53:58 request. It may be a float (in seconds) or an instance of 18:53:58 :class:`urllib3.util.Timeout`. 18:53:58 18:53:58 :param chunked: 18:53:58 If True, urllib3 will send the body using chunked transfer 18:53:58 encoding. Otherwise, urllib3 will send the body using the standard 18:53:58 content-length form. Defaults to False. 18:53:58 18:53:58 :param response_conn: 18:53:58 Set this to ``None`` if you will handle releasing the connection or 18:53:58 set the connection to have the response release it. 18:53:58 18:53:58 :param preload_content: 18:53:58 If True, the response's body will be preloaded during construction. 18:53:58 18:53:58 :param decode_content: 18:53:58 If True, will attempt to decode the body based on the 18:53:58 'content-encoding' header. 18:53:58 18:53:58 :param enforce_content_length: 18:53:58 Enforce content length checking. Body returned by server must match 18:53:58 value of Content-Length header, if present. Otherwise, raise error. 18:53:58 """ 18:53:58 self.num_requests += 1 18:53:58 18:53:58 timeout_obj = self._get_timeout(timeout) 18:53:58 timeout_obj.start_connect() 18:53:58 conn.timeout = Timeout.resolve_default_timeout(timeout_obj.connect_timeout) 18:53:58 18:53:58 try: 18:53:58 # Trigger any extra validation we need to do. 18:53:58 try: 18:53:58 self._validate_conn(conn) 18:53:58 except (SocketTimeout, BaseSSLError) as e: 18:53:58 self._raise_timeout(err=e, url=url, timeout_value=conn.timeout) 18:53:58 raise 18:53:58 18:53:58 # _validate_conn() starts the connection to an HTTPS proxy 18:53:58 # so we need to wrap errors with 'ProxyError' here too. 18:53:58 except ( 18:53:58 OSError, 18:53:58 NewConnectionError, 18:53:58 TimeoutError, 18:53:58 BaseSSLError, 18:53:58 CertificateError, 18:53:58 SSLError, 18:53:58 ) as e: 18:53:58 new_e: Exception = e 18:53:58 if isinstance(e, (BaseSSLError, CertificateError)): 18:53:58 new_e = SSLError(e) 18:53:58 # If the connection didn't successfully connect to it's proxy 18:53:58 # then there 18:53:58 if isinstance( 18:53:58 new_e, (OSError, NewConnectionError, TimeoutError, SSLError) 18:53:58 ) and (conn and conn.proxy and not conn.has_connected_to_proxy): 18:53:58 new_e = _wrap_proxy_error(new_e, conn.proxy.scheme) 18:53:58 raise new_e 18:53:58 18:53:58 # conn.request() calls http.client.*.request, not the method in 18:53:58 # urllib3.request. It also calls makefile (recv) on the socket. 18:53:58 try: 18:53:58 conn.request( 18:53:58 method, 18:53:58 url, 18:53:58 body=body, 18:53:58 headers=headers, 18:53:58 chunked=chunked, 18:53:58 preload_content=preload_content, 18:53:58 decode_content=decode_content, 18:53:58 enforce_content_length=enforce_content_length, 18:53:58 ) 18:53:58 18:53:58 # We are swallowing BrokenPipeError (errno.EPIPE) since the server is 18:53:58 # legitimately able to close the connection after sending a valid response. 18:53:58 # With this behaviour, the received response is still readable. 18:53:58 except BrokenPipeError: 18:53:58 pass 18:53:58 except OSError as e: 18:53:58 # MacOS/Linux 18:53:58 # EPROTOTYPE and ECONNRESET are needed on macOS 18:53:58 # https://erickt.github.io/blog/2014/11/19/adventures-in-debugging-a-potential-osx-kernel-bug/ 18:53:58 # Condition changed later to emit ECONNRESET instead of only EPROTOTYPE. 18:53:58 if e.errno != errno.EPROTOTYPE and e.errno != errno.ECONNRESET: 18:53:58 raise 18:53:58 18:53:58 # Reset the timeout for the recv() on the socket 18:53:58 read_timeout = timeout_obj.read_timeout 18:53:58 18:53:58 if not conn.is_closed: 18:53:58 # In Python 3 socket.py will catch EAGAIN and return None when you 18:53:58 # try and read into the file pointer created by http.client, which 18:53:58 # instead raises a BadStatusLine exception. Instead of catching 18:53:58 # the exception and assuming all BadStatusLine exceptions are read 18:53:58 # timeouts, check for a zero timeout before making the request. 18:53:58 if read_timeout == 0: 18:53:58 raise ReadTimeoutError( 18:53:58 self, url, f"Read timed out. (read timeout={read_timeout})" 18:53:58 ) 18:53:58 conn.timeout = read_timeout 18:53:58 18:53:58 # Receive the response from the server 18:53:58 try: 18:53:58 > response = conn.getresponse() 18:53:58 ^^^^^^^^^^^^^^^^^^ 18:53:58 18:53:58 ../.tox/tests221/lib/python3.11/site-packages/urllib3/connectionpool.py:534: 18:53:58 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 18:53:58 ../.tox/tests221/lib/python3.11/site-packages/urllib3/connection.py:565: in getresponse 18:53:58 httplib_response = super().getresponse() 18:53:58 ^^^^^^^^^^^^^^^^^^^^^ 18:53:58 /opt/pyenv/versions/3.11.10/lib/python3.11/http/client.py:1395: in getresponse 18:53:58 response.begin() 18:53:58 /opt/pyenv/versions/3.11.10/lib/python3.11/http/client.py:325: in begin 18:53:58 version, status, reason = self._read_status() 18:53:58 ^^^^^^^^^^^^^^^^^^^ 18:53:58 /opt/pyenv/versions/3.11.10/lib/python3.11/http/client.py:286: in _read_status 18:53:58 line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1") 18:53:58 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 18:53:58 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 18:53:58 18:53:58 self = 18:53:58 b = 18:53:58 18:53:58 def readinto(self, b): 18:53:58 """Read up to len(b) bytes into the writable buffer *b* and return 18:53:58 the number of bytes read. If the socket is non-blocking and no bytes 18:53:58 are available, None is returned. 18:53:58 18:53:58 If *b* is non-empty, a 0 return value indicates that the connection 18:53:58 was shutdown at the other end. 18:53:58 """ 18:53:58 self._checkClosed() 18:53:58 self._checkReadable() 18:53:58 if self._timeout_occurred: 18:53:58 raise OSError("cannot read from timed out object") 18:53:58 while True: 18:53:58 try: 18:53:58 > return self._sock.recv_into(b) 18:53:58 ^^^^^^^^^^^^^^^^^^^^^^^ 18:53:58 E TimeoutError: timed out 18:53:58 18:53:58 /opt/pyenv/versions/3.11.10/lib/python3.11/socket.py:718: TimeoutError 18:53:58 18:53:58 The above exception was the direct cause of the following exception: 18:53:58 18:53:58 self = 18:53:58 request = , stream = False 18:53:58 timeout = Timeout(connect=30, read=30, total=None), verify = True, cert = None 18:53:58 proxies = OrderedDict() 18:53:58 18:53:58 def send( 18:53:58 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 18:53:58 ): 18:53:58 """Sends PreparedRequest object. Returns Response object. 18:53:58 18:53:58 :param request: The :class:`PreparedRequest ` being sent. 18:53:58 :param stream: (optional) Whether to stream the request content. 18:53:58 :param timeout: (optional) How long to wait for the server to send 18:53:58 data before giving up, as a float, or a :ref:`(connect timeout, 18:53:58 read timeout) ` tuple. 18:53:58 :type timeout: float or tuple or urllib3 Timeout object 18:53:58 :param verify: (optional) Either a boolean, in which case it controls whether 18:53:58 we verify the server's TLS certificate, or a string, in which case it 18:53:58 must be a path to a CA bundle to use 18:53:58 :param cert: (optional) Any user-provided SSL certificate to be trusted. 18:53:58 :param proxies: (optional) The proxies dictionary to apply to the request. 18:53:58 :rtype: requests.Response 18:53:58 """ 18:53:58 18:53:58 try: 18:53:58 conn = self.get_connection_with_tls_context( 18:53:58 request, verify, proxies=proxies, cert=cert 18:53:58 ) 18:53:58 except LocationValueError as e: 18:53:58 raise InvalidURL(e, request=request) 18:53:58 18:53:58 self.cert_verify(conn, request.url, verify, cert) 18:53:58 url = self.request_url(request, proxies) 18:53:58 self.add_headers( 18:53:58 request, 18:53:58 stream=stream, 18:53:58 timeout=timeout, 18:53:58 verify=verify, 18:53:58 cert=cert, 18:53:58 proxies=proxies, 18:53:58 ) 18:53:58 18:53:58 chunked = not (request.body is None or "Content-Length" in request.headers) 18:53:58 18:53:58 if isinstance(timeout, tuple): 18:53:58 try: 18:53:58 connect, read = timeout 18:53:58 timeout = TimeoutSauce(connect=connect, read=read) 18:53:58 except ValueError: 18:53:58 raise ValueError( 18:53:58 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 18:53:58 f"or a single float to set both timeouts to the same value." 18:53:58 ) 18:53:58 elif isinstance(timeout, TimeoutSauce): 18:53:58 pass 18:53:58 else: 18:53:58 timeout = TimeoutSauce(connect=timeout, read=timeout) 18:53:58 18:53:58 try: 18:53:58 > resp = conn.urlopen( 18:53:58 method=request.method, 18:53:58 url=url, 18:53:58 body=request.body, 18:53:58 headers=request.headers, 18:53:58 redirect=False, 18:53:58 assert_same_host=False, 18:53:58 preload_content=False, 18:53:58 decode_content=False, 18:53:58 retries=self.max_retries, 18:53:58 timeout=timeout, 18:53:58 chunked=chunked, 18:53:58 ) 18:53:58 18:53:58 ../.tox/tests221/lib/python3.11/site-packages/requests/adapters.py:644: 18:53:58 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 18:53:58 ../.tox/tests221/lib/python3.11/site-packages/urllib3/connectionpool.py:841: in urlopen 18:53:58 retries = retries.increment( 18:53:58 ../.tox/tests221/lib/python3.11/site-packages/urllib3/util/retry.py:474: in increment 18:53:58 raise reraise(type(error), error, _stacktrace) 18:53:58 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 18:53:58 ../.tox/tests221/lib/python3.11/site-packages/urllib3/util/util.py:39: in reraise 18:53:58 raise value 18:53:58 ../.tox/tests221/lib/python3.11/site-packages/urllib3/connectionpool.py:787: in urlopen 18:53:58 response = self._make_request( 18:53:58 ../.tox/tests221/lib/python3.11/site-packages/urllib3/connectionpool.py:536: in _make_request 18:53:58 self._raise_timeout(err=e, url=url, timeout_value=read_timeout) 18:53:58 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 18:53:58 18:53:58 self = 18:53:58 err = TimeoutError('timed out') 18:53:58 url = '/rests/data/network-topology:network-topology/topology=topology-netconf/node=ROADM-A1' 18:53:58 timeout_value = 30 18:53:58 18:53:58 def _raise_timeout( 18:53:58 self, 18:53:58 err: BaseSSLError | OSError | SocketTimeout, 18:53:58 url: str, 18:53:58 timeout_value: _TYPE_TIMEOUT | None, 18:53:58 ) -> None: 18:53:58 """Is the error actually a timeout? Will raise a ReadTimeout or pass""" 18:53:58 18:53:58 if isinstance(err, SocketTimeout): 18:53:58 > raise ReadTimeoutError( 18:53:58 self, url, f"Read timed out. (read timeout={timeout_value})" 18:53:58 ) from err 18:53:58 E urllib3.exceptions.ReadTimeoutError: HTTPConnectionPool(host='localhost', port=8183): Read timed out. (read timeout=30) 18:53:58 18:53:58 ../.tox/tests221/lib/python3.11/site-packages/urllib3/connectionpool.py:367: ReadTimeoutError 18:53:58 18:53:58 During handling of the above exception, another exception occurred: 18:53:58 18:53:58 self = 18:53:58 18:53:58 def test_01_connect_rdm(self): 18:53:58 > response = test_utils.mount_device("ROADM-A1", ('roadma', self.NODE_VERSION)) 18:53:58 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 18:53:58 18:53:58 transportpce_tests/2.2.1/test02_topo_portmapping.py:49: 18:53:58 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 18:53:58 transportpce_tests/common/test_utils.py:376: in mount_device 18:53:58 response = put_request(url[RESTCONF_VERSION].format('{}', node), body) 18:53:58 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 18:53:58 transportpce_tests/common/test_utils.py:125: in put_request 18:53:58 return requests.request( 18:53:58 ../.tox/tests221/lib/python3.11/site-packages/requests/api.py:59: in request 18:53:58 return session.request(method=method, url=url, **kwargs) 18:53:58 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 18:53:58 ../.tox/tests221/lib/python3.11/site-packages/requests/sessions.py:589: in request 18:53:58 resp = self.send(prep, **send_kwargs) 18:53:58 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 18:53:58 ../.tox/tests221/lib/python3.11/site-packages/requests/sessions.py:703: in send 18:53:58 r = adapter.send(request, **kwargs) 18:53:58 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 18:53:58 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 18:53:58 18:53:58 self = 18:53:58 request = , stream = False 18:53:58 timeout = Timeout(connect=30, read=30, total=None), verify = True, cert = None 18:53:58 proxies = OrderedDict() 18:53:58 18:53:58 def send( 18:53:58 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 18:53:58 ): 18:53:58 """Sends PreparedRequest object. Returns Response object. 18:53:58 18:53:58 :param request: The :class:`PreparedRequest ` being sent. 18:53:58 :param stream: (optional) Whether to stream the request content. 18:53:58 :param timeout: (optional) How long to wait for the server to send 18:53:58 data before giving up, as a float, or a :ref:`(connect timeout, 18:53:58 read timeout) ` tuple. 18:53:58 :type timeout: float or tuple or urllib3 Timeout object 18:53:58 :param verify: (optional) Either a boolean, in which case it controls whether 18:53:58 we verify the server's TLS certificate, or a string, in which case it 18:53:58 must be a path to a CA bundle to use 18:53:58 :param cert: (optional) Any user-provided SSL certificate to be trusted. 18:53:58 :param proxies: (optional) The proxies dictionary to apply to the request. 18:53:58 :rtype: requests.Response 18:53:58 """ 18:53:58 18:53:58 try: 18:53:58 conn = self.get_connection_with_tls_context( 18:53:58 request, verify, proxies=proxies, cert=cert 18:53:58 ) 18:53:58 except LocationValueError as e: 18:53:58 raise InvalidURL(e, request=request) 18:53:58 18:53:58 self.cert_verify(conn, request.url, verify, cert) 18:53:58 url = self.request_url(request, proxies) 18:53:58 self.add_headers( 18:53:58 request, 18:53:58 stream=stream, 18:53:58 timeout=timeout, 18:53:58 verify=verify, 18:53:58 cert=cert, 18:53:58 proxies=proxies, 18:53:58 ) 18:53:58 18:53:58 chunked = not (request.body is None or "Content-Length" in request.headers) 18:53:58 18:53:58 if isinstance(timeout, tuple): 18:53:58 try: 18:53:58 connect, read = timeout 18:53:58 timeout = TimeoutSauce(connect=connect, read=read) 18:53:58 except ValueError: 18:53:58 raise ValueError( 18:53:58 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 18:53:58 f"or a single float to set both timeouts to the same value." 18:53:58 ) 18:53:58 elif isinstance(timeout, TimeoutSauce): 18:53:58 pass 18:53:58 else: 18:53:58 timeout = TimeoutSauce(connect=timeout, read=timeout) 18:53:58 18:53:58 try: 18:53:58 resp = conn.urlopen( 18:53:58 method=request.method, 18:53:58 url=url, 18:53:58 body=request.body, 18:53:58 headers=request.headers, 18:53:58 redirect=False, 18:53:58 assert_same_host=False, 18:53:58 preload_content=False, 18:53:58 decode_content=False, 18:53:58 retries=self.max_retries, 18:53:58 timeout=timeout, 18:53:58 chunked=chunked, 18:53:58 ) 18:53:58 18:53:58 except (ProtocolError, OSError) as err: 18:53:58 raise ConnectionError(err, request=request) 18:53:58 18:53:58 except MaxRetryError as e: 18:53:58 if isinstance(e.reason, ConnectTimeoutError): 18:53:58 # TODO: Remove this in 3.0.0: see #2811 18:53:58 if not isinstance(e.reason, NewConnectionError): 18:53:58 raise ConnectTimeout(e, request=request) 18:53:58 18:53:58 if isinstance(e.reason, ResponseError): 18:53:58 raise RetryError(e, request=request) 18:53:58 18:53:58 if isinstance(e.reason, _ProxyError): 18:53:58 raise ProxyError(e, request=request) 18:53:58 18:53:58 if isinstance(e.reason, _SSLError): 18:53:58 # This branch is for urllib3 v1.22 and later. 18:53:58 raise SSLError(e, request=request) 18:53:58 18:53:58 raise ConnectionError(e, request=request) 18:53:58 18:53:58 except ClosedPoolError as e: 18:53:58 raise ConnectionError(e, request=request) 18:53:58 18:53:58 except _ProxyError as e: 18:53:58 raise ProxyError(e) 18:53:58 18:53:58 except (_SSLError, _HTTPError) as e: 18:53:58 if isinstance(e, _SSLError): 18:53:58 # This branch is for urllib3 versions earlier than v1.22 18:53:58 raise SSLError(e, request=request) 18:53:58 elif isinstance(e, ReadTimeoutError): 18:53:58 > raise ReadTimeout(e, request=request) 18:53:58 E requests.exceptions.ReadTimeout: HTTPConnectionPool(host='localhost', port=8183): Read timed out. (read timeout=30) 18:53:58 18:53:58 ../.tox/tests221/lib/python3.11/site-packages/requests/adapters.py:690: ReadTimeout 18:53:58 ---------------------------- Captured stdout setup ----------------------------- 18:53:58 starting OpenDaylight... 18:53:58 starting KARAF (karaf221) TransportPCE build... 18:53:58 Searching for patterns in karaf.log... Pattern found! OpenDaylight started ! 18:53:58 starting simulator xpdra in OpenROADM device version 2.2.1... 18:53:58 Searching for patterns in xpdra-221.log... Pattern found! simulator for xpdra started 18:53:58 starting simulator roadma in OpenROADM device version 2.2.1... 18:53:58 Searching for patterns in roadma-221.log... Pattern found! simulator for roadma started 18:53:58 _ TestTransportPCETopoPortmapping.test_02_compareOpenroadmTopologyPortMapping_rdm _ 18:53:58 18:53:58 self = 18:53:58 18:53:58 def test_02_compareOpenroadmTopologyPortMapping_rdm(self): 18:53:58 resTopo = test_utils.get_ietf_network_request('openroadm-topology', 'config') 18:53:58 self.assertEqual(resTopo['status_code'], requests.codes.ok) 18:53:58 nbMapCumul = 0 18:53:58 nbMappings = 0 18:53:58 > for node in resTopo['network'][0]['node']: 18:53:58 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 18:53:58 E KeyError: 'node' 18:53:58 18:53:58 transportpce_tests/2.2.1/test02_topo_portmapping.py:58: KeyError 18:53:58 =========================== short test summary info ============================ 18:53:58 FAILED transportpce_tests/2.2.1/test02_topo_portmapping.py::TestTransportPCETopoPortmapping::test_01_connect_rdm 18:53:58 FAILED transportpce_tests/2.2.1/test02_topo_portmapping.py::TestTransportPCETopoPortmapping::test_02_compareOpenroadmTopologyPortMapping_rdm 18:53:58 2 failed, 4 passed in 78.21s (0:01:18) 18:53:58 tests221: exit 1 (154.90 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 2.2.1 pid=25915 18:53:58 tests221: FAIL ✖ in 2 minutes 42.43 seconds 18:53:58 tests_hybrid: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 18:54:05 tests_hybrid: freeze> python -m pip freeze --all 18:54:05 tests_hybrid: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.3,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 18:54:05 tests_hybrid: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh hybrid 18:54:05 using environment variables from ./karaf221.env 18:54:05 pytest -q transportpce_tests/hybrid/test01_device_change_notifications.py 18:54:45 ................................................... [100%] 18:59:33 51 passed in 327.09s (0:05:27) 18:59:33 pytest -q transportpce_tests/hybrid/test02_B100G_end2end.py 19:00:16 ........................................................................ [ 66%] 19:04:37 ..................................... [100%] 19:06:43 109 passed in 429.76s (0:07:09) 19:06:43 pytest -q transportpce_tests/hybrid/test03_autonomous_reroute.py 19:07:33 ..................................................... [100%] 19:14:05 53 passed in 442.21s (0:07:22) 19:14:05 buildcontroller: OK (146.24=setup[8.68]+cmd[137.56] seconds) 19:14:05 sims: OK (13.12=setup[9.59]+cmd[3.53] seconds) 19:14:05 build_karaf_tests121: OK (73.83=setup[9.05]+cmd[64.78] seconds) 19:14:05 testsPCE: OK (291.55=setup[52.88]+cmd[238.67] seconds) 19:14:05 tests121: OK (1333.67=setup[8.53]+cmd[1325.14] seconds) 19:14:05 build_karaf_tests221: OK (79.10=setup[8.95]+cmd[70.15] seconds) 19:14:05 tests_tapi: OK (1834.17=setup[7.96]+cmd[1826.22] seconds) 19:14:05 tests221: FAIL code 1 (162.43=setup[7.52]+cmd[154.90] seconds) 19:14:05 build_karaf_tests71: OK (79.10=setup[8.96]+cmd[70.14] seconds) 19:14:05 tests71: OK (427.92=setup[7.41]+cmd[420.51] seconds) 19:14:05 build_karaf_tests190: OK (79.80=setup[8.96]+cmd[70.84] seconds) 19:14:05 tests190: OK (218.97=setup[8.02]+cmd[210.95] seconds) 19:14:05 tests_hybrid: OK (1207.68=setup[7.64]+cmd[1200.03] seconds) 19:14:05 buildlighty: OK (37.28=setup[14.56]+cmd[22.72] seconds) 19:14:05 docs: OK (31.87=setup[28.61]+cmd[3.26] seconds) 19:14:05 docs-linkcheck: OK (34.45=setup[29.01]+cmd[5.45] seconds) 19:14:05 checkbashisms: OK (3.28=setup[1.97]+cmd[0.01,0.05,1.25] seconds) 19:14:05 pre-commit: OK (53.19=setup[2.87]+cmd[0.01,0.02,39.88,10.40] seconds) 19:14:05 pylint: OK (31.63=setup[4.80]+cmd[26.83] seconds) 19:14:05 evaluation failed :( (3721.92 seconds) 19:14:05 + tox_status=255 19:14:05 + echo '---> Completed tox runs' 19:14:05 ---> Completed tox runs 19:14:05 + for i in .tox/*/log 19:14:05 ++ echo .tox/build_karaf_tests121/log 19:14:05 ++ awk -F/ '{print $2}' 19:14:05 + tox_env=build_karaf_tests121 19:14:05 + cp -r .tox/build_karaf_tests121/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests121 19:14:05 + for i in .tox/*/log 19:14:05 ++ echo .tox/build_karaf_tests190/log 19:14:05 ++ awk -F/ '{print $2}' 19:14:05 + tox_env=build_karaf_tests190 19:14:05 + cp -r .tox/build_karaf_tests190/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests190 19:14:05 + for i in .tox/*/log 19:14:05 ++ echo .tox/build_karaf_tests221/log 19:14:05 ++ awk -F/ '{print $2}' 19:14:05 + tox_env=build_karaf_tests221 19:14:05 + cp -r .tox/build_karaf_tests221/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests221 19:14:05 + for i in .tox/*/log 19:14:05 ++ echo .tox/build_karaf_tests71/log 19:14:05 ++ awk -F/ '{print $2}' 19:14:05 + tox_env=build_karaf_tests71 19:14:05 + cp -r .tox/build_karaf_tests71/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests71 19:14:05 + for i in .tox/*/log 19:14:05 ++ echo .tox/buildcontroller/log 19:14:05 ++ awk -F/ '{print $2}' 19:14:05 + tox_env=buildcontroller 19:14:05 + cp -r .tox/buildcontroller/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/buildcontroller 19:14:05 + for i in .tox/*/log 19:14:05 ++ echo .tox/buildlighty/log 19:14:05 ++ awk -F/ '{print $2}' 19:14:05 + tox_env=buildlighty 19:14:05 + cp -r .tox/buildlighty/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/buildlighty 19:14:06 + for i in .tox/*/log 19:14:06 ++ echo .tox/checkbashisms/log 19:14:06 ++ awk -F/ '{print $2}' 19:14:06 + tox_env=checkbashisms 19:14:06 + cp -r .tox/checkbashisms/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/checkbashisms 19:14:06 + for i in .tox/*/log 19:14:06 ++ echo .tox/docs-linkcheck/log 19:14:06 ++ awk -F/ '{print $2}' 19:14:06 + tox_env=docs-linkcheck 19:14:06 + cp -r .tox/docs-linkcheck/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/docs-linkcheck 19:14:06 + for i in .tox/*/log 19:14:06 ++ echo .tox/docs/log 19:14:06 ++ awk -F/ '{print $2}' 19:14:06 + tox_env=docs 19:14:06 + cp -r .tox/docs/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/docs 19:14:06 + for i in .tox/*/log 19:14:06 ++ echo .tox/pre-commit/log 19:14:06 ++ awk -F/ '{print $2}' 19:14:06 + tox_env=pre-commit 19:14:06 + cp -r .tox/pre-commit/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/pre-commit 19:14:06 + for i in .tox/*/log 19:14:06 ++ echo .tox/pylint/log 19:14:06 ++ awk -F/ '{print $2}' 19:14:06 + tox_env=pylint 19:14:06 + cp -r .tox/pylint/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/pylint 19:14:06 + for i in .tox/*/log 19:14:06 ++ echo .tox/sims/log 19:14:06 ++ awk -F/ '{print $2}' 19:14:06 + tox_env=sims 19:14:06 + cp -r .tox/sims/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/sims 19:14:06 + for i in .tox/*/log 19:14:06 ++ echo .tox/tests121/log 19:14:06 ++ awk -F/ '{print $2}' 19:14:06 + tox_env=tests121 19:14:06 + cp -r .tox/tests121/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests121 19:14:06 + for i in .tox/*/log 19:14:06 ++ echo .tox/tests190/log 19:14:06 ++ awk -F/ '{print $2}' 19:14:06 + tox_env=tests190 19:14:06 + cp -r .tox/tests190/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests190 19:14:06 + for i in .tox/*/log 19:14:06 ++ echo .tox/tests221/log 19:14:06 ++ awk -F/ '{print $2}' 19:14:06 + tox_env=tests221 19:14:06 + cp -r .tox/tests221/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests221 19:14:06 + for i in .tox/*/log 19:14:06 ++ echo .tox/tests71/log 19:14:06 ++ awk -F/ '{print $2}' 19:14:06 + tox_env=tests71 19:14:06 + cp -r .tox/tests71/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests71 19:14:06 + for i in .tox/*/log 19:14:06 ++ awk -F/ '{print $2}' 19:14:06 ++ echo .tox/testsPCE/log 19:14:06 + tox_env=testsPCE 19:14:06 + cp -r .tox/testsPCE/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/testsPCE 19:14:06 + for i in .tox/*/log 19:14:06 ++ echo .tox/tests_hybrid/log 19:14:06 ++ awk -F/ '{print $2}' 19:14:06 + tox_env=tests_hybrid 19:14:06 + cp -r .tox/tests_hybrid/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests_hybrid 19:14:06 + for i in .tox/*/log 19:14:06 ++ echo .tox/tests_tapi/log 19:14:06 ++ awk -F/ '{print $2}' 19:14:06 + tox_env=tests_tapi 19:14:06 + cp -r .tox/tests_tapi/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests_tapi 19:14:06 + DOC_DIR=docs/_build/html 19:14:06 + [[ -d docs/_build/html ]] 19:14:06 + echo '---> Archiving generated docs' 19:14:06 ---> Archiving generated docs 19:14:06 + mv docs/_build/html /w/workspace/transportpce-tox-verify-transportpce-master/archives/docs 19:14:06 + echo '---> tox-run.sh ends' 19:14:06 ---> tox-run.sh ends 19:14:06 + test 255 -eq 0 19:14:06 + exit 255 19:14:06 ++ '[' 1 = 1 ']' 19:14:06 ++ '[' -x /usr/bin/clear_console ']' 19:14:06 ++ /usr/bin/clear_console -q 19:14:06 Build step 'Execute shell' marked build as failure 19:14:06 $ ssh-agent -k 19:14:07 unset SSH_AUTH_SOCK; 19:14:07 unset SSH_AGENT_PID; 19:14:07 echo Agent pid 1580 killed; 19:14:07 [ssh-agent] Stopped. 19:14:08 [PostBuildScript] - [INFO] Executing post build scripts. 19:14:08 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins9616232787380950888.sh 19:14:08 ---> sysstat.sh 19:14:09 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins6433644397684163544.sh 19:14:09 ---> package-listing.sh 19:14:09 ++ facter osfamily 19:14:09 ++ tr '[:upper:]' '[:lower:]' 19:14:10 + OS_FAMILY=debian 19:14:10 + workspace=/w/workspace/transportpce-tox-verify-transportpce-master 19:14:10 + START_PACKAGES=/tmp/packages_start.txt 19:14:10 + END_PACKAGES=/tmp/packages_end.txt 19:14:10 + DIFF_PACKAGES=/tmp/packages_diff.txt 19:14:10 + PACKAGES=/tmp/packages_start.txt 19:14:10 + '[' /w/workspace/transportpce-tox-verify-transportpce-master ']' 19:14:10 + PACKAGES=/tmp/packages_end.txt 19:14:10 + case "${OS_FAMILY}" in 19:14:10 + dpkg -l 19:14:10 + grep '^ii' 19:14:10 + '[' -f /tmp/packages_start.txt ']' 19:14:10 + '[' -f /tmp/packages_end.txt ']' 19:14:10 + diff /tmp/packages_start.txt /tmp/packages_end.txt 19:14:10 + '[' /w/workspace/transportpce-tox-verify-transportpce-master ']' 19:14:10 + mkdir -p /w/workspace/transportpce-tox-verify-transportpce-master/archives/ 19:14:10 + cp -f /tmp/packages_diff.txt /tmp/packages_end.txt /tmp/packages_start.txt /w/workspace/transportpce-tox-verify-transportpce-master/archives/ 19:14:10 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins10171758869643231832.sh 19:14:10 ---> capture-instance-metadata.sh 19:14:10 Setup pyenv: 19:14:10 system 19:14:10 3.8.20 19:14:10 3.9.20 19:14:10 3.10.15 19:14:10 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 19:14:10 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-VWP3 from file:/tmp/.os_lf_venv 19:14:10 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 19:14:10 lf-activate-venv(): INFO: Attempting to install with network-safe options... 19:14:14 lf-activate-venv(): INFO: Base packages installed successfully 19:14:14 lf-activate-venv(): INFO: Installing additional packages: lftools 19:14:29 lf-activate-venv(): INFO: Adding /tmp/venv-VWP3/bin to PATH 19:14:29 INFO: Running in OpenStack, capturing instance metadata 19:14:29 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins2369276775644497062.sh 19:14:29 provisioning config files... 19:14:30 Could not find credentials [logs] for transportpce-tox-verify-transportpce-master #3845 19:14:30 copy managed file [jenkins-log-archives-settings] to file:/w/workspace/transportpce-tox-verify-transportpce-master@tmp/config14529000327597465261tmp 19:14:30 Regular expression run condition: Expression=[^.*logs-s3.*], Label=[odl-logs-s3-cloudfront-index] 19:14:30 Run condition [Regular expression match] enabling perform for step [Provide Configuration files] 19:14:30 provisioning config files... 19:14:30 copy managed file [jenkins-s3-log-ship] to file:/home/jenkins/.aws/credentials 19:14:30 [EnvInject] - Injecting environment variables from a build step. 19:14:30 [EnvInject] - Injecting as environment variables the properties content 19:14:30 SERVER_ID=logs 19:14:30 19:14:30 [EnvInject] - Variables injected successfully. 19:14:30 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins13592780805642794340.sh 19:14:30 ---> create-netrc.sh 19:14:30 WARN: Log server credential not found. 19:14:30 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins18022606756141266205.sh 19:14:30 ---> python-tools-install.sh 19:14:30 Setup pyenv: 19:14:30 system 19:14:30 3.8.20 19:14:30 3.9.20 19:14:30 3.10.15 19:14:30 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 19:14:30 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-VWP3 from file:/tmp/.os_lf_venv 19:14:30 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 19:14:30 lf-activate-venv(): INFO: Attempting to install with network-safe options... 19:14:33 lf-activate-venv(): INFO: Base packages installed successfully 19:14:33 lf-activate-venv(): INFO: Installing additional packages: lftools 19:14:44 lf-activate-venv(): INFO: Adding /tmp/venv-VWP3/bin to PATH 19:14:44 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins6959545344373175818.sh 19:14:44 ---> sudo-logs.sh 19:14:44 Archiving 'sudo' log.. 19:14:44 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins10103185326280675929.sh 19:14:44 ---> job-cost.sh 19:14:44 Setup pyenv: 19:14:44 system 19:14:44 3.8.20 19:14:44 3.9.20 19:14:44 3.10.15 19:14:44 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 19:14:44 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-VWP3 from file:/tmp/.os_lf_venv 19:14:44 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 19:14:44 lf-activate-venv(): INFO: Attempting to install with network-safe options... 19:14:47 lf-activate-venv(): INFO: Base packages installed successfully 19:14:47 lf-activate-venv(): INFO: Installing additional packages: zipp==1.1.0 python-openstackclient urllib3~=1.26.15 19:14:54 lf-activate-venv(): INFO: Adding /tmp/venv-VWP3/bin to PATH 19:14:54 INFO: No Stack... 19:14:54 INFO: Retrieving Pricing Info for: v3-standard-4 19:14:55 INFO: Archiving Costs 19:14:55 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins10714366226562053769.sh 19:14:55 ---> logs-deploy.sh 19:14:55 Setup pyenv: 19:14:55 system 19:14:55 3.8.20 19:14:55 3.9.20 19:14:55 3.10.15 19:14:55 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 19:14:55 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-VWP3 from file:/tmp/.os_lf_venv 19:14:55 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 19:14:55 lf-activate-venv(): INFO: Attempting to install with network-safe options... 19:14:57 lf-activate-venv(): INFO: Base packages installed successfully 19:14:57 lf-activate-venv(): INFO: Installing additional packages: lftools urllib3~=1.26.15 19:15:08 lf-activate-venv(): INFO: Adding /tmp/venv-VWP3/bin to PATH 19:15:08 WARNING: Nexus logging server not set 19:15:08 INFO: S3 path logs/releng/vex-yul-odl-jenkins-1/transportpce-tox-verify-transportpce-master/3845/ 19:15:08 INFO: archiving logs to S3 19:15:10 ---> uname -a: 19:15:10 Linux prd-ubuntu2204-docker-4c-16g-3412 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux 19:15:10 19:15:10 19:15:10 ---> lscpu: 19:15:10 Architecture: x86_64 19:15:10 CPU op-mode(s): 32-bit, 64-bit 19:15:10 Address sizes: 40 bits physical, 48 bits virtual 19:15:10 Byte Order: Little Endian 19:15:10 CPU(s): 4 19:15:10 On-line CPU(s) list: 0-3 19:15:10 Vendor ID: AuthenticAMD 19:15:10 Model name: AMD EPYC-Rome Processor 19:15:10 CPU family: 23 19:15:10 Model: 49 19:15:10 Thread(s) per core: 1 19:15:10 Core(s) per socket: 1 19:15:10 Socket(s): 4 19:15:10 Stepping: 0 19:15:10 BogoMIPS: 5600.00 19:15:10 Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext perfctr_core ssbd ibrs ibpb stibp vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 clzero xsaveerptr wbnoinvd arat npt nrip_save umip rdpid arch_capabilities 19:15:10 Virtualization: AMD-V 19:15:10 Hypervisor vendor: KVM 19:15:10 Virtualization type: full 19:15:10 L1d cache: 128 KiB (4 instances) 19:15:10 L1i cache: 128 KiB (4 instances) 19:15:10 L2 cache: 2 MiB (4 instances) 19:15:10 L3 cache: 64 MiB (4 instances) 19:15:10 NUMA node(s): 1 19:15:10 NUMA node0 CPU(s): 0-3 19:15:10 Vulnerability Gather data sampling: Not affected 19:15:10 Vulnerability Indirect target selection: Not affected 19:15:10 Vulnerability Itlb multihit: Not affected 19:15:10 Vulnerability L1tf: Not affected 19:15:10 Vulnerability Mds: Not affected 19:15:10 Vulnerability Meltdown: Not affected 19:15:10 Vulnerability Mmio stale data: Not affected 19:15:10 Vulnerability Reg file data sampling: Not affected 19:15:10 Vulnerability Retbleed: Mitigation; untrained return thunk; SMT disabled 19:15:10 Vulnerability Spec rstack overflow: Mitigation; SMT disabled 19:15:10 Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl and seccomp 19:15:10 Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization 19:15:10 Vulnerability Spectre v2: Mitigation; Retpolines; IBPB disabled; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI Not affected 19:15:10 Vulnerability Srbds: Not affected 19:15:10 Vulnerability Tsx async abort: Not affected 19:15:10 19:15:10 19:15:10 ---> nproc: 19:15:10 4 19:15:10 19:15:10 19:15:10 ---> df -h: 19:15:10 Filesystem Size Used Avail Use% Mounted on 19:15:10 tmpfs 1.6G 1.1M 1.6G 1% /run 19:15:10 /dev/vda1 78G 17G 61G 22% / 19:15:10 tmpfs 7.9G 0 7.9G 0% /dev/shm 19:15:10 tmpfs 5.0M 0 5.0M 0% /run/lock 19:15:10 /dev/vda15 105M 6.1M 99M 6% /boot/efi 19:15:10 tmpfs 1.6G 4.0K 1.6G 1% /run/user/1001 19:15:10 19:15:10 19:15:10 ---> free -m: 19:15:10 total used free shared buff/cache available 19:15:10 Mem: 15989 704 11601 3 3683 14942 19:15:10 Swap: 1023 1 1022 19:15:10 19:15:10 19:15:10 ---> ip addr: 19:15:10 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 19:15:10 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 19:15:10 inet 127.0.0.1/8 scope host lo 19:15:10 valid_lft forever preferred_lft forever 19:15:10 inet6 ::1/128 scope host 19:15:10 valid_lft forever preferred_lft forever 19:15:10 2: ens3: mtu 1458 qdisc mq state UP group default qlen 1000 19:15:10 link/ether fa:16:3e:7f:52:50 brd ff:ff:ff:ff:ff:ff 19:15:10 altname enp0s3 19:15:10 inet 10.30.171.147/23 metric 100 brd 10.30.171.255 scope global dynamic ens3 19:15:10 valid_lft 82482sec preferred_lft 82482sec 19:15:10 inet6 fe80::f816:3eff:fe7f:5250/64 scope link 19:15:10 valid_lft forever preferred_lft forever 19:15:10 3: docker0: mtu 1458 qdisc noqueue state DOWN group default 19:15:10 link/ether ea:bc:71:31:e2:94 brd ff:ff:ff:ff:ff:ff 19:15:10 inet 10.250.0.254/24 brd 10.250.0.255 scope global docker0 19:15:10 valid_lft forever preferred_lft forever 19:15:10 19:15:10 19:15:10 ---> sar -b -r -n DEV: 19:15:10 Linux 5.15.0-153-generic (prd-ubuntu2204-docker-4c-16g-3412) 10/29/25 _x86_64_ (4 CPU) 19:15:10 19:15:10 18:09:55 LINUX RESTART (4 CPU) 19:15:10 19:15:10 18:10:00 tps rtps wtps dtps bread/s bwrtn/s bdscd/s 19:15:10 18:20:08 112.73 12.13 96.11 4.50 1953.62 44696.15 21440.33 19:15:10 18:30:08 64.42 22.30 39.51 2.61 330.05 5173.21 5721.09 19:15:10 18:40:08 19.73 4.47 14.43 0.83 84.56 418.59 1114.26 19:15:10 18:50:08 5.67 0.05 5.38 0.24 1.92 159.24 243.95 19:15:10 19:00:08 12.92 0.10 12.12 0.70 6.91 882.99 361.53 19:15:10 19:10:03 6.22 0.04 5.92 0.27 1.75 142.85 48.76 19:15:10 Average: 37.14 6.53 29.08 1.53 400.15 8663.25 4861.64 19:15:10 19:15:10 18:10:00 kbmemfree kbavail kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty 19:15:10 18:20:08 4744380 15292868 633628 3.87 235456 10104696 1314800 7.55 2076680 8777980 2676 19:15:10 18:30:08 1430916 4394280 11539160 70.48 256744 2734240 12532364 71.94 2104008 12283548 532 19:15:10 18:40:08 4120504 7131776 8803992 53.77 259156 2780040 9511464 54.60 2160108 9563268 300 19:15:10 18:50:08 7429012 10453436 5485972 33.51 259840 2792516 6508632 37.36 2163284 6256956 200 19:15:10 19:00:08 9143804 12353444 3586548 21.91 267500 2969616 4890860 28.07 2210612 4514280 440 19:15:10 19:10:03 7430156 10653552 5285232 32.28 268408 2982456 5925316 34.01 2223264 6202000 368 19:15:10 Average: 5716462 10046559 5889089 35.97 257851 4060594 6780573 38.92 2156326 7933005 753 19:15:10 19:15:10 18:10:00 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil 19:15:10 18:20:08 lo 2.77 2.77 2.22 2.22 0.00 0.00 0.00 0.00 19:15:10 18:20:08 ens3 173.95 130.89 2099.81 17.41 0.00 0.00 0.00 0.00 19:15:10 18:20:08 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 19:15:10 18:30:08 lo 29.25 29.25 19.13 19.13 0.00 0.00 0.00 0.00 19:15:10 18:30:08 ens3 2.08 1.91 0.62 0.53 0.00 0.00 0.00 0.00 19:15:10 18:30:08 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 19:15:10 18:40:08 lo 36.61 36.61 15.33 15.33 0.00 0.00 0.00 0.00 19:15:10 18:40:08 ens3 1.72 1.02 0.41 0.29 0.00 0.00 0.00 0.00 19:15:10 18:40:08 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 19:15:10 18:50:08 lo 10.95 10.95 5.36 5.36 0.00 0.00 0.00 0.00 19:15:10 18:50:08 ens3 0.56 0.42 0.10 0.07 0.00 0.00 0.00 0.00 19:15:10 18:50:08 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 19:15:10 19:00:08 lo 9.07 9.07 5.34 5.34 0.00 0.00 0.00 0.00 19:15:10 19:00:08 ens3 1.02 0.88 0.31 0.29 0.00 0.00 0.00 0.00 19:15:10 19:00:08 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 19:15:10 19:10:03 lo 29.79 29.79 12.43 12.43 0.00 0.00 0.00 0.00 19:15:10 19:10:03 ens3 1.09 0.91 0.24 1.25 0.00 0.00 0.00 0.00 19:15:10 19:10:03 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 19:15:10 Average: lo 19.69 19.69 9.95 9.95 0.00 0.00 0.00 0.00 19:15:10 Average: ens3 30.40 22.92 354.26 3.34 0.00 0.00 0.00 0.00 19:15:10 Average: docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 19:15:10 19:15:10 19:15:10 ---> sar -P ALL: 19:15:10 Linux 5.15.0-153-generic (prd-ubuntu2204-docker-4c-16g-3412) 10/29/25 _x86_64_ (4 CPU) 19:15:10 19:15:10 18:09:55 LINUX RESTART (4 CPU) 19:15:10 19:15:10 18:10:00 CPU %user %nice %system %iowait %steal %idle 19:15:10 18:20:08 all 38.37 0.00 2.50 2.44 0.11 56.57 19:15:10 18:20:08 0 33.67 0.00 2.61 2.49 0.10 61.12 19:15:10 18:20:08 1 39.52 0.00 2.51 1.98 0.13 55.86 19:15:10 18:20:08 2 39.09 0.00 2.35 3.07 0.11 55.38 19:15:10 18:20:08 3 41.21 0.00 2.54 2.23 0.11 53.91 19:15:10 18:30:08 all 53.17 0.00 2.18 0.25 0.15 44.26 19:15:10 18:30:08 0 53.37 0.00 2.04 0.32 0.14 44.13 19:15:10 18:30:08 1 52.69 0.00 2.27 0.35 0.14 44.55 19:15:10 18:30:08 2 54.45 0.00 2.14 0.17 0.14 43.09 19:15:10 18:30:08 3 52.16 0.00 2.25 0.18 0.16 45.25 19:15:10 18:40:08 all 32.33 0.00 1.28 0.29 0.12 65.98 19:15:10 18:40:08 0 31.81 0.00 1.35 0.47 0.11 66.25 19:15:10 18:40:08 1 32.54 0.00 1.31 0.48 0.12 65.54 19:15:10 18:40:08 2 33.20 0.00 1.13 0.13 0.12 65.42 19:15:10 18:40:08 3 31.76 0.00 1.34 0.08 0.12 66.71 19:15:10 18:50:08 all 8.14 0.00 0.52 0.03 0.07 91.25 19:15:10 18:50:08 0 7.87 0.00 0.54 0.02 0.06 91.52 19:15:10 18:50:08 1 7.68 0.00 0.54 0.03 0.07 91.69 19:15:10 18:50:08 2 8.76 0.00 0.54 0.03 0.07 90.60 19:15:10 18:50:08 3 8.25 0.00 0.45 0.05 0.06 91.20 19:15:10 19:00:08 all 19.62 0.00 0.77 2.27 0.08 77.26 19:15:10 19:00:08 0 20.34 0.00 0.71 6.86 0.08 72.01 19:15:10 19:00:08 1 18.93 0.00 0.72 1.00 0.08 79.27 19:15:10 19:00:08 2 19.66 0.00 0.84 0.04 0.09 79.37 19:15:10 19:00:08 3 19.56 0.00 0.80 1.19 0.07 78.38 19:15:10 19:10:03 all 12.23 0.00 0.58 0.15 0.08 86.96 19:15:10 19:10:03 0 12.20 0.00 0.62 0.38 0.07 86.74 19:15:10 19:10:03 1 12.23 0.00 0.56 0.05 0.07 87.09 19:15:10 19:10:03 2 12.61 0.00 0.59 0.09 0.08 86.62 19:15:10 19:10:03 3 11.89 0.00 0.55 0.10 0.08 87.38 19:15:10 Average: all 27.33 0.00 1.31 0.91 0.10 70.35 19:15:10 Average: 0 26.55 0.00 1.31 1.76 0.09 70.28 19:15:10 Average: 1 27.29 0.00 1.32 0.65 0.10 70.63 19:15:10 Average: 2 27.99 0.00 1.27 0.60 0.10 70.04 19:15:10 Average: 3 27.50 0.00 1.32 0.64 0.10 70.44 19:15:10 19:15:10 19:15:10