08:52:55 Triggered by Gerrit: https://git.opendaylight.org/gerrit/c/transportpce/+/109370 08:52:55 Running as SYSTEM 08:52:55 [EnvInject] - Loading node environment variables. 08:52:55 Building remotely on prd-ubuntu2204-docker-4c-16g-38985 (ubuntu2204-docker-4c-16g) in workspace /w/workspace/transportpce-tox-verify-transportpce-master 08:52:55 [ssh-agent] Looking for ssh-agent implementation... 08:52:55 [ssh-agent] Exec ssh-agent (binary ssh-agent on a remote machine) 08:52:55 $ ssh-agent 08:52:55 SSH_AUTH_SOCK=/tmp/ssh-XXXXXXOvxjW7/agent.1561 08:52:55 SSH_AGENT_PID=1563 08:52:55 [ssh-agent] Started. 08:52:55 Running ssh-add (command line suppressed) 08:52:55 Identity added: /w/workspace/transportpce-tox-verify-transportpce-master@tmp/private_key_3110443759735838490.key (/w/workspace/transportpce-tox-verify-transportpce-master@tmp/private_key_3110443759735838490.key) 08:52:55 [ssh-agent] Using credentials jenkins (jenkins-ssh) 08:52:55 The recommended git tool is: NONE 08:52:57 using credential jenkins-ssh 08:52:57 Wiping out workspace first. 08:52:57 Cloning the remote Git repository 08:52:57 Cloning repository git://devvexx.opendaylight.org/mirror/transportpce 08:52:57 > git init /w/workspace/transportpce-tox-verify-transportpce-master # timeout=10 08:52:57 Fetching upstream changes from git://devvexx.opendaylight.org/mirror/transportpce 08:52:57 > git --version # timeout=10 08:52:57 > git --version # 'git version 2.34.1' 08:52:57 using GIT_SSH to set credentials jenkins-ssh 08:52:57 Verifying host key using known hosts file, will automatically accept unseen keys 08:52:57 > git fetch --tags --force --progress -- git://devvexx.opendaylight.org/mirror/transportpce +refs/heads/*:refs/remotes/origin/* # timeout=10 08:53:01 > git config remote.origin.url git://devvexx.opendaylight.org/mirror/transportpce # timeout=10 08:53:01 > git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10 08:53:02 > git config remote.origin.url git://devvexx.opendaylight.org/mirror/transportpce # timeout=10 08:53:02 Fetching upstream changes from git://devvexx.opendaylight.org/mirror/transportpce 08:53:02 using GIT_SSH to set credentials jenkins-ssh 08:53:02 Verifying host key using known hosts file, will automatically accept unseen keys 08:53:02 > git fetch --tags --force --progress -- git://devvexx.opendaylight.org/mirror/transportpce refs/changes/70/109370/11 # timeout=10 08:53:02 > git rev-parse 0740d85d7d68ffd1eac06f06023f2d5b9d8c4bc6^{commit} # timeout=10 08:53:02 JENKINS-19022: warning: possible memory leak due to Git plugin usage; see: https://plugins.jenkins.io/git/#remove-git-plugin-buildsbybranch-builddata-script 08:53:02 Checking out Revision 0740d85d7d68ffd1eac06f06023f2d5b9d8c4bc6 (refs/changes/70/109370/11) 08:53:02 > git config core.sparsecheckout # timeout=10 08:53:02 > git checkout -f 0740d85d7d68ffd1eac06f06023f2d5b9d8c4bc6 # timeout=10 08:53:05 Commit message: "Save/Read connection map to/from data tree store" 08:53:05 > git rev-parse FETCH_HEAD^{commit} # timeout=10 08:53:05 > git rev-list --no-walk 3028e616cb92548b75b53686e5da0bf02bf5ddde # timeout=10 08:53:05 > git remote # timeout=10 08:53:05 > git submodule init # timeout=10 08:53:05 > git submodule sync # timeout=10 08:53:05 > git config --get remote.origin.url # timeout=10 08:53:05 > git submodule init # timeout=10 08:53:05 > git config -f .gitmodules --get-regexp ^submodule\.(.+)\.url # timeout=10 08:53:05 ERROR: No submodules found. 08:53:06 provisioning config files... 08:53:06 copy managed file [npmrc] to file:/home/jenkins/.npmrc 08:53:06 copy managed file [pipconf] to file:/home/jenkins/.config/pip/pip.conf 08:53:06 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins15890476560030550164.sh 08:53:06 ---> python-tools-install.sh 08:53:06 Setup pyenv: 08:53:06 * system (set by /opt/pyenv/version) 08:53:06 * 3.8.20 (set by /opt/pyenv/version) 08:53:06 * 3.9.20 (set by /opt/pyenv/version) 08:53:06 3.10.15 08:53:06 3.11.10 08:53:10 lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-kYaf 08:53:10 lf-activate-venv(): INFO: Save venv in file: /tmp/.os_lf_venv 08:53:10 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 08:53:10 lf-activate-venv(): INFO: Attempting to install with network-safe options... 08:53:15 lf-activate-venv(): INFO: Base packages installed successfully 08:53:15 lf-activate-venv(): INFO: Installing additional packages: lftools 08:53:40 lf-activate-venv(): INFO: Adding /tmp/venv-kYaf/bin to PATH 08:53:40 Generating Requirements File 08:54:05 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. 08:54:05 httplib2 0.30.2 requires pyparsing<4,>=3.0.4, but you have pyparsing 2.4.7 which is incompatible. 08:54:06 Python 3.11.10 08:54:06 pip 26.2.1 from /tmp/venv-kYaf/lib/python3.11/site-packages/pip (python 3.11) 08:54:06 aiohappyeyeballs==2.7.1 08:54:06 aiohttp==3.14.3 08:54:06 aiosignal==1.4.0 08:54:06 appdirs==1.4.4 08:54:06 argcomplete==3.7.2 08:54:06 aspy.yaml==1.3.0 08:54:06 attrs==26.1.0 08:54:06 autopage==0.6.0 08:54:06 beautifulsoup4==4.15.0 08:54:06 boto3==1.43.75 08:54:06 botocore==1.43.75 08:54:06 bs4==0.0.2 08:54:06 certifi==2026.7.22 08:54:06 cffi==2.1.1 08:54:06 cfgv==3.5.0 08:54:06 chardet==7.6.0 08:54:06 charset-normalizer==3.5.1 08:54:06 click==8.4.2 08:54:06 cliff==4.15.0 08:54:06 cmd2==4.2.0 08:54:06 cryptography==3.3.2 08:54:06 debtcollector==3.1.0 08:54:06 decorator==5.3.1 08:54:06 defusedxml==0.7.1 08:54:06 Deprecated==1.3.1 08:54:06 distlib==0.4.3 08:54:06 dnspython==2.8.0 08:54:06 docker==7.2.0 08:54:06 dogpile.cache==1.5.0 08:54:06 durationpy==0.10 08:54:06 email-validator==2.3.0 08:54:06 filelock==3.32.3 08:54:06 frozenlist==1.8.0 08:54:06 future==1.0.0 08:54:06 gitdb==4.0.12 08:54:06 GitPython==3.1.59 08:54:06 httplib2==0.30.2 08:54:06 identify==2.6.19 08:54:06 idna==3.19 08:54:06 importlib-resources==1.5.0 08:54:06 iso8601==2.1.0 08:54:06 Jinja2==3.1.6 08:54:06 jmespath==1.1.0 08:54:06 jsonpatch==1.33 08:54:06 jsonpointer==3.1.1 08:54:06 jsonschema==4.26.0 08:54:06 jsonschema-specifications==2025.9.1 08:54:06 keystoneauth1==5.15.0 08:54:06 kubernetes==36.0.3 08:54:06 lftools==0.37.23 08:54:06 lxml==6.1.2 08:54:06 markdown-it-py==4.2.0 08:54:06 MarkupSafe==3.0.3 08:54:06 mdurl==0.1.2 08:54:06 msgpack==1.2.1 08:54:06 multi_key_dict==2.0.3 08:54:06 multidict==6.7.1 08:54:06 munch==4.0.0 08:54:06 netaddr==1.3.0 08:54:06 niet==1.4.2 08:54:06 nodeenv==1.10.0 08:54:06 oauth2client==4.1.3 08:54:06 oauthlib==3.3.1 08:54:06 openstacksdk==4.18.0 08:54:06 os-service-types==1.9.0 08:54:06 osc-lib==4.7.0 08:54:06 oslo.config==10.7.0 08:54:06 oslo.context==6.5.0 08:54:06 oslo.i18n==6.9.0 08:54:06 oslo.log==8.3.0 08:54:06 oslo.serialization==5.11.0 08:54:06 oslo.utils==10.1.1 08:54:06 packaging==26.3 08:54:06 pbr==7.0.3 08:54:06 platformdirs==4.11.3 08:54:06 prettytable==3.18.0 08:54:06 prompt_toolkit==3.0.53 08:54:06 propcache==0.5.2 08:54:06 psutil==7.2.2 08:54:06 pyasn1==0.6.4 08:54:06 pyasn1_modules==0.4.2 08:54:06 pycparser==3.0 08:54:06 pygerrit2==2.0.15 08:54:06 PyGithub==2.9.1 08:54:06 Pygments==2.21.0 08:54:06 PyJWT==2.13.0 08:54:06 PyNaCl==1.6.2 08:54:06 pyparsing==2.4.7 08:54:06 pyperclip==1.11.0 08:54:06 pyrsistent==0.20.0 08:54:06 python-dateutil==2.9.0.post0 08:54:06 python-discovery==1.5.2 08:54:06 python-heatclient==5.2.0 08:54:06 python-jenkins==1.8.3 08:54:06 python-keystoneclient==5.8.0 08:54:06 python-magnumclient==4.11.0 08:54:06 python-manilaclient==6.2.0 08:54:06 python-openstackclient==10.2.1 08:54:06 python-swiftclient==4.10.0 08:54:06 PyYAML==6.0.3 08:54:06 referencing==0.37.0 08:54:06 requests==2.34.2 08:54:06 requests-oauthlib==2.0.0 08:54:06 rfc3986==2.0.0 08:54:06 rich==15.0.0 08:54:06 rich-argparse==1.8.0 08:54:06 rpds-py==2026.6.3 08:54:06 rsa==4.9.1 08:54:06 ruamel.yaml==0.19.1 08:54:06 ruamel.yaml.clib==0.2.15 08:54:06 s3transfer==0.19.2 08:54:06 simplejson==4.1.1 08:54:06 six==1.17.0 08:54:06 smmap==5.0.3 08:54:06 soupsieve==2.9.2 08:54:06 stevedore==5.9.0 08:54:06 tabulate==0.10.0 08:54:06 toml==0.10.2 08:54:06 tomlkit==0.15.1 08:54:06 tqdm==4.70.0 08:54:06 typing_extensions==4.16.0 08:54:06 urllib3==1.26.20 08:54:06 virtualenv==21.7.4 08:54:06 wcwidth==0.8.2 08:54:06 websocket-client==1.9.0 08:54:06 wrapt==2.3.0 08:54:06 xdg==6.0.0 08:54:06 xmltodict==1.0.4 08:54:06 yarl==1.24.5 08:54:06 yq==4.1.2 08:54:06 [transportpce-tox-verify-transportpce-master] $ /bin/sh /tmp/jenkins6167583197177479256.sh 08:54:06 ---> uv-install.sh 08:54:06 Installing uv/uvx (latest) using shell installer 08:54:06 2026-08-20 08:54:06 URL:https://releases.astral.sh/installers/uv/latest/uv-installer.sh [71225/71225] -> "/tmp/uv-install-qglA6g.sh" [1] 08:54:06 downloading uv 0.12.5 x86_64-unknown-linux-gnu 08:54:07 installing to /home/jenkins/.local/bin 08:54:07 uv 08:54:07 uvx 08:54:07 everything's installed! 08:54:07 08:54:07 To add $HOME/.local/bin to your PATH, either restart your shell or run: 08:54:07 08:54:07 source $HOME/.local/bin/env (sh, bash, zsh) 08:54:07 source $HOME/.local/bin/env.fish (fish) 08:54:07 Adding install location to PATH 08:54:07 ---> Validating uv/uvx install 08:54:07 uvx 0.12.5 (x86_64-unknown-linux-gnu) 08:54:07 [EnvInject] - Injecting environment variables from a build step. 08:54:07 [EnvInject] - Injecting as environment variables the properties content 08:54:07 PYTHON=python3 08:54:07 08:54:07 [EnvInject] - Variables injected successfully. 08:54:07 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins12858559157623922208.sh 08:54:07 ---> tox-install.sh 08:54:07 + source /home/jenkins/lf-env.sh 08:54:07 + lf-activate-venv --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 08:54:07 ++ mktemp -d /tmp/venv-XXXX 08:54:07 + lf_venv=/tmp/venv-Y2qE 08:54:07 + local venv_file=/tmp/.os_lf_venv 08:54:07 + local python=python3 08:54:07 + local options 08:54:07 + local set_path=true 08:54:07 + local install_args= 08:54:07 ++ 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 08:54:07 + options=' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 08:54:07 + eval set -- ' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 08:54:07 ++ set -- --venv-file /tmp/.toxenv -- tox virtualenv urllib3~=1.26.15 08:54:07 + true 08:54:07 + case $1 in 08:54:07 + venv_file=/tmp/.toxenv 08:54:07 + shift 2 08:54:07 + true 08:54:07 + case $1 in 08:54:07 + shift 08:54:07 + break 08:54:07 + case $python in 08:54:07 + local pkg_list= 08:54:07 + [[ -d /opt/pyenv ]] 08:54:07 + echo 'Setup pyenv:' 08:54:07 Setup pyenv: 08:54:07 + export PYENV_ROOT=/opt/pyenv 08:54:07 + PYENV_ROOT=/opt/pyenv 08:54:07 + 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 08:54:07 + 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 08:54:07 + pyenv versions 08:54:08 system 08:54:08 3.8.20 08:54:08 3.9.20 08:54:08 3.10.15 08:54:08 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 08:54:08 + command -v pyenv 08:54:08 ++ pyenv init - --no-rehash 08:54:08 + eval 'PATH="$(bash --norc -ec '\''IFS=:; paths=($PATH); 08:54:08 for i in ${!paths[@]}; do 08:54:08 if [[ ${paths[i]} == "'\'''\''/opt/pyenv/shims'\'''\''" ]]; then unset '\''\'\'''\''paths[i]'\''\'\'''\''; 08:54:08 fi; done; 08:54:08 echo "${paths[*]}"'\'')" 08:54:08 export PATH="/opt/pyenv/shims:${PATH}" 08:54:08 export PYENV_SHELL=bash 08:54:08 source '\''/opt/pyenv/libexec/../completions/pyenv.bash'\'' 08:54:08 pyenv() { 08:54:08 local command 08:54:08 command="${1:-}" 08:54:08 if [ "$#" -gt 0 ]; then 08:54:08 shift 08:54:08 fi 08:54:08 08:54:08 case "$command" in 08:54:08 rehash|shell) 08:54:08 eval "$(pyenv "sh-$command" "$@")" 08:54:08 ;; 08:54:08 *) 08:54:08 command pyenv "$command" "$@" 08:54:08 ;; 08:54:08 esac 08:54:08 }' 08:54:08 +++ bash --norc -ec 'IFS=:; paths=($PATH); 08:54:08 for i in ${!paths[@]}; do 08:54:08 if [[ ${paths[i]} == "/opt/pyenv/shims" ]]; then unset '\''paths[i]'\''; 08:54:08 fi; done; 08:54:08 echo "${paths[*]}"' 08:54:08 ++ 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 08:54:08 ++ 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 08:54:08 ++ 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 08:54:08 ++ export PYENV_SHELL=bash 08:54:08 ++ PYENV_SHELL=bash 08:54:08 ++ source /opt/pyenv/libexec/../completions/pyenv.bash 08:54:08 +++ complete -F _pyenv pyenv 08:54:08 ++ lf-pyver python3 08:54:08 ++ local py_version_xy=python3 08:54:08 ++ local py_version_xyz= 08:54:08 ++ awk '{ print $1 }' 08:54:08 ++ grep -E '^[0-9.]*[0-9]$' 08:54:08 ++ sed 's/^[ *]* //' 08:54:08 ++ pyenv versions 08:54:08 ++ local command 08:54:08 ++ command=versions 08:54:08 ++ '[' 1 -gt 0 ']' 08:54:08 ++ shift 08:54:08 ++ case "$command" in 08:54:08 ++ command pyenv versions 08:54:08 ++ [[ ! -s /tmp/.pyenv_versions ]] 08:54:08 +++ grep '^3' /tmp/.pyenv_versions 08:54:08 +++ tail -n 1 08:54:08 +++ sort -V 08:54:08 ++ py_version_xyz=3.11.10 08:54:08 ++ [[ -z 3.11.10 ]] 08:54:08 ++ echo 3.11.10 08:54:08 ++ return 0 08:54:08 + pyenv local 3.11.10 08:54:08 + local command 08:54:08 + command=local 08:54:08 + '[' 2 -gt 0 ']' 08:54:08 + shift 08:54:08 + case "$command" in 08:54:08 + command pyenv local 3.11.10 08:54:08 + for arg in "$@" 08:54:08 + case $arg in 08:54:08 + pkg_list+='tox ' 08:54:08 + for arg in "$@" 08:54:08 + case $arg in 08:54:08 + pkg_list+='virtualenv ' 08:54:08 + for arg in "$@" 08:54:08 + case $arg in 08:54:08 + pkg_list+='urllib3~=1.26.15 ' 08:54:08 + [[ -f /tmp/.toxenv ]] 08:54:08 + [[ ! -f /tmp/.toxenv ]] 08:54:08 + [[ -n '' ]] 08:54:08 + python3 -m venv /tmp/venv-Y2qE 08:54:12 + echo 'lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-Y2qE' 08:54:12 lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-Y2qE 08:54:12 + echo /tmp/venv-Y2qE 08:54:12 + echo 'lf-activate-venv(): INFO: Save venv in file: /tmp/.toxenv' 08:54:12 lf-activate-venv(): INFO: Save venv in file: /tmp/.toxenv 08:54:12 + echo 'lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv)' 08:54:12 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 08:54:12 + local 'pip_opts=--upgrade --quiet' 08:54:12 + pip_opts='--upgrade --quiet --trusted-host pypi.org' 08:54:12 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org' 08:54:12 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org' 08:54:12 + [[ -n '' ]] 08:54:12 + [[ -n '' ]] 08:54:12 + echo 'lf-activate-venv(): INFO: Attempting to install with network-safe options...' 08:54:12 lf-activate-venv(): INFO: Attempting to install with network-safe options... 08:54:12 + /tmp/venv-Y2qE/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 08:54:16 + echo 'lf-activate-venv(): INFO: Base packages installed successfully' 08:54:16 lf-activate-venv(): INFO: Base packages installed successfully 08:54:16 + [[ -z tox virtualenv urllib3~=1.26.15 ]] 08:54:16 + echo 'lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 ' 08:54:16 lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 08:54:16 + /tmp/venv-Y2qE/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 08:54:18 + type python3 08:54:18 + true 08:54:18 + echo 'lf-activate-venv(): INFO: Adding /tmp/venv-Y2qE/bin to PATH' 08:54:18 lf-activate-venv(): INFO: Adding /tmp/venv-Y2qE/bin to PATH 08:54:18 + PATH=/tmp/venv-Y2qE/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 08:54:18 + return 0 08:54:18 + python3 --version 08:54:18 Python 3.11.10 08:54:18 + python3 -m pip --version 08:54:18 pip 26.2.1 from /tmp/venv-Y2qE/lib/python3.11/site-packages/pip (python 3.11) 08:54:18 + python3 -m pip freeze 08:54:18 cachetools==7.1.7 08:54:18 colorama==0.4.6 08:54:18 distlib==0.4.3 08:54:18 filelock==3.32.3 08:54:18 packaging==26.3 08:54:18 platformdirs==4.11.3 08:54:18 pluggy==1.6.0 08:54:18 pyproject-api==1.11.0 08:54:18 python-discovery==1.5.2 08:54:18 tomli_w==1.2.0 08:54:18 tox==4.60.0 08:54:18 typing_extensions==4.16.0 08:54:18 urllib3==1.26.20 08:54:18 virtualenv==21.7.4 08:54:18 [transportpce-tox-verify-transportpce-master] $ /bin/sh -xe /tmp/jenkins4627153128755507637.sh 08:54:18 [EnvInject] - Injecting environment variables from a build step. 08:54:18 [EnvInject] - Injecting as environment variables the properties content 08:54:18 PARALLEL=True 08:54:18 08:54:18 [EnvInject] - Variables injected successfully. 08:54:18 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins3824113373074205141.sh 08:54:18 ---> tox-run.sh 08:54:18 + PATH=/home/jenkins/.local/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 08:54:18 + ARCHIVE_TOX_DIR=/w/workspace/transportpce-tox-verify-transportpce-master/archives/tox 08:54:18 + ARCHIVE_DOC_DIR=/w/workspace/transportpce-tox-verify-transportpce-master/archives/docs 08:54:18 + mkdir -p /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox 08:54:18 + cd /w/workspace/transportpce-tox-verify-transportpce-master/. 08:54:18 + source /home/jenkins/lf-env.sh 08:54:18 + lf-activate-venv --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 08:54:18 ++ mktemp -d /tmp/venv-XXXX 08:54:18 + lf_venv=/tmp/venv-qWuQ 08:54:18 + local venv_file=/tmp/.os_lf_venv 08:54:18 + local python=python3 08:54:18 + local options 08:54:18 + local set_path=true 08:54:18 + local install_args= 08:54:18 ++ 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 08:54:18 + options=' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 08:54:18 + eval set -- ' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 08:54:18 ++ set -- --venv-file /tmp/.toxenv -- tox virtualenv urllib3~=1.26.15 08:54:18 + true 08:54:18 + case $1 in 08:54:18 + venv_file=/tmp/.toxenv 08:54:18 + shift 2 08:54:18 + true 08:54:18 + case $1 in 08:54:18 + shift 08:54:18 + break 08:54:18 + case $python in 08:54:18 + local pkg_list= 08:54:18 + [[ -d /opt/pyenv ]] 08:54:18 + echo 'Setup pyenv:' 08:54:18 Setup pyenv: 08:54:18 + export PYENV_ROOT=/opt/pyenv 08:54:18 + PYENV_ROOT=/opt/pyenv 08:54:18 + export PATH=/opt/pyenv/bin:/home/jenkins/.local/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 08:54:18 + PATH=/opt/pyenv/bin:/home/jenkins/.local/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 08:54:18 + pyenv versions 08:54:18 system 08:54:18 3.8.20 08:54:18 3.9.20 08:54:18 3.10.15 08:54:18 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 08:54:18 + command -v pyenv 08:54:18 ++ pyenv init - --no-rehash 08:54:18 + eval 'PATH="$(bash --norc -ec '\''IFS=:; paths=($PATH); 08:54:18 for i in ${!paths[@]}; do 08:54:18 if [[ ${paths[i]} == "'\'''\''/opt/pyenv/shims'\'''\''" ]]; then unset '\''\'\'''\''paths[i]'\''\'\'''\''; 08:54:18 fi; done; 08:54:18 echo "${paths[*]}"'\'')" 08:54:18 export PATH="/opt/pyenv/shims:${PATH}" 08:54:18 export PYENV_SHELL=bash 08:54:18 source '\''/opt/pyenv/libexec/../completions/pyenv.bash'\'' 08:54:18 pyenv() { 08:54:18 local command 08:54:18 command="${1:-}" 08:54:18 if [ "$#" -gt 0 ]; then 08:54:18 shift 08:54:18 fi 08:54:18 08:54:18 case "$command" in 08:54:18 rehash|shell) 08:54:18 eval "$(pyenv "sh-$command" "$@")" 08:54:18 ;; 08:54:18 *) 08:54:18 command pyenv "$command" "$@" 08:54:18 ;; 08:54:18 esac 08:54:18 }' 08:54:18 +++ bash --norc -ec 'IFS=:; paths=($PATH); 08:54:18 for i in ${!paths[@]}; do 08:54:18 if [[ ${paths[i]} == "/opt/pyenv/shims" ]]; then unset '\''paths[i]'\''; 08:54:18 fi; done; 08:54:18 echo "${paths[*]}"' 08:54:18 ++ PATH=/opt/pyenv/bin:/home/jenkins/.local/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 08:54:18 ++ export PATH=/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/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 08:54:18 ++ PATH=/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/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 08:54:18 ++ export PYENV_SHELL=bash 08:54:18 ++ PYENV_SHELL=bash 08:54:18 ++ source /opt/pyenv/libexec/../completions/pyenv.bash 08:54:18 +++ complete -F _pyenv pyenv 08:54:18 ++ lf-pyver python3 08:54:18 ++ local py_version_xy=python3 08:54:18 ++ local py_version_xyz= 08:54:18 ++ pyenv versions 08:54:18 ++ local command 08:54:18 ++ command=versions 08:54:18 ++ '[' 1 -gt 0 ']' 08:54:18 ++ shift 08:54:18 ++ case "$command" in 08:54:18 ++ command pyenv versions 08:54:18 ++ awk '{ print $1 }' 08:54:18 ++ grep -E '^[0-9.]*[0-9]$' 08:54:18 ++ sed 's/^[ *]* //' 08:54:18 ++ [[ ! -s /tmp/.pyenv_versions ]] 08:54:18 +++ grep '^3' /tmp/.pyenv_versions 08:54:18 +++ tail -n 1 08:54:18 +++ sort -V 08:54:18 ++ py_version_xyz=3.11.10 08:54:18 ++ [[ -z 3.11.10 ]] 08:54:18 ++ echo 3.11.10 08:54:18 ++ return 0 08:54:18 + pyenv local 3.11.10 08:54:18 + local command 08:54:18 + command=local 08:54:18 + '[' 2 -gt 0 ']' 08:54:18 + shift 08:54:18 + case "$command" in 08:54:18 + command pyenv local 3.11.10 08:54:18 + for arg in "$@" 08:54:18 + case $arg in 08:54:18 + pkg_list+='tox ' 08:54:18 + for arg in "$@" 08:54:18 + case $arg in 08:54:18 + pkg_list+='virtualenv ' 08:54:18 + for arg in "$@" 08:54:18 + case $arg in 08:54:18 + pkg_list+='urllib3~=1.26.15 ' 08:54:18 + [[ -f /tmp/.toxenv ]] 08:54:18 ++ cat /tmp/.toxenv 08:54:18 + lf_venv=/tmp/venv-Y2qE 08:54:18 + echo 'lf-activate-venv(): INFO: Reuse venv:/tmp/venv-Y2qE from' file:/tmp/.toxenv 08:54:18 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-Y2qE from file:/tmp/.toxenv 08:54:18 + echo 'lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv)' 08:54:18 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 08:54:18 + local 'pip_opts=--upgrade --quiet' 08:54:18 + pip_opts='--upgrade --quiet --trusted-host pypi.org' 08:54:18 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org' 08:54:18 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org' 08:54:18 + [[ -n '' ]] 08:54:18 + [[ -n '' ]] 08:54:18 + echo 'lf-activate-venv(): INFO: Attempting to install with network-safe options...' 08:54:18 lf-activate-venv(): INFO: Attempting to install with network-safe options... 08:54:18 + /tmp/venv-Y2qE/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 08:54:19 + echo 'lf-activate-venv(): INFO: Base packages installed successfully' 08:54:19 lf-activate-venv(): INFO: Base packages installed successfully 08:54:19 + [[ -z tox virtualenv urllib3~=1.26.15 ]] 08:54:19 + echo 'lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 ' 08:54:19 lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 08:54:19 + /tmp/venv-Y2qE/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 08:54:21 + type python3 08:54:21 + true 08:54:21 + echo 'lf-activate-venv(): INFO: Adding /tmp/venv-Y2qE/bin to PATH' 08:54:21 lf-activate-venv(): INFO: Adding /tmp/venv-Y2qE/bin to PATH 08:54:21 + PATH=/tmp/venv-Y2qE/bin:/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/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 08:54:21 + return 0 08:54:21 + [[ -d /opt/pyenv ]] 08:54:21 + echo '---> Setting up pyenv' 08:54:21 ---> Setting up pyenv 08:54:21 + export PYENV_ROOT=/opt/pyenv 08:54:21 + PYENV_ROOT=/opt/pyenv 08:54:21 + export PATH=/opt/pyenv/bin:/tmp/venv-Y2qE/bin:/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/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 08:54:21 + PATH=/opt/pyenv/bin:/tmp/venv-Y2qE/bin:/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/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 08:54:21 ++ pwd 08:54:21 + PYTHONPATH=/w/workspace/transportpce-tox-verify-transportpce-master 08:54:21 + export PYTHONPATH 08:54:21 + export TOX_TESTENV_PASSENV=PYTHONPATH 08:54:21 + TOX_TESTENV_PASSENV=PYTHONPATH 08:54:21 + tox --version 08:54:21 4.60.0 from /tmp/venv-Y2qE/lib/python3.11/site-packages/tox/__init__.py 08:54:21 + PARALLEL=True 08:54:21 + TOX_OPTIONS_LIST= 08:54:21 + [[ -n '' ]] 08:54:21 + case ${PARALLEL,,} in 08:54:21 + TOX_OPTIONS_LIST=' --parallel auto --parallel-live' 08:54:21 + tox --parallel auto --parallel-live 08:54:21 + tee -a /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tox.log 08:54:22 checkbashisms: freeze> python -m pip freeze --all 08:54:22 docs-linkcheck: install_deps> python -I -m pip install -r docs/requirements.txt 08:54:23 docs: install_deps> python -I -m pip install -r docs/requirements.txt 08:54:23 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 08:54:23 checkbashisms: pip==26.2.1,setuptools==84.0.0 08:54:23 checkbashisms: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./fixCIcentOS8reposMirrors.sh 08:54:23 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)' 08:54:23 checkbashisms: commands[2] /w/workspace/transportpce-tox-verify-transportpce-master/tests> find . -not -path '*/\.*' -name '*.sh' -exec checkbashisms -f '{}' + 08:54:25 checkbashisms: OK ✔ in 3.16 seconds 08:54:25 pre-commit: install_deps> python -I -m pip install pre-commit 08:54:27 pre-commit: freeze> python -m pip freeze --all 08:54:27 pre-commit: cfgv==3.5.0,distlib==0.4.3,filelock==3.32.3,identify==2.6.19,nodeenv==1.10.0,pip==26.2.1,platformdirs==4.11.3,pre_commit==4.6.2,python-discovery==1.5.2,PyYAML==6.0.3,setuptools==84.0.0,virtualenv==21.7.4 08:54:27 pre-commit: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./fixCIcentOS8reposMirrors.sh 08:54:27 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)' 08:54:27 /usr/bin/cpan 08:54:27 pre-commit: commands[2] /w/workspace/transportpce-tox-verify-transportpce-master/tests> pre-commit run --all-files --show-diff-on-failure 08:54:28 [INFO] Initializing environment for https://github.com/pre-commit/pre-commit-hooks. 08:54:28 [INFO] Initializing environment for https://github.com/jorisroovers/gitlint. 08:54:28 [INFO] Initializing environment for https://github.com/jorisroovers/gitlint:./gitlint-core[trusted-deps]. 08:54:29 buildcontroller: freeze> python -m pip freeze --all 08:54:30 [INFO] Initializing environment for https://github.com/Lucas-C/pre-commit-hooks. 08:54:30 buildcontroller: bcrypt==5.0.0,certifi==2026.7.22,cffi==2.1.1,charset-normalizer==3.5.1,cryptography==50.0.0,dict2xml==1.7.8,idna==3.19,iniconfig==2.3.0,invoke==3.0.3,lxml==6.1.2,netconf-client==3.6.0,packaging==26.3,paramiko==5.0.0,pip==26.2.1,pluggy==1.6.0,psutil==7.2.2,pycparser==3.0,Pygments==2.21.0,PyNaCl==1.6.2,pytest==9.1.1,requests==2.34.2,setuptools==84.0.0,urllib3==2.7.0 08:54:30 buildcontroller: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_controller.sh 08:54:30 + update-java-alternatives -l 08:54:30 java-1.11.0-openjdk-amd64 1111 /usr/lib/jvm/java-1.11.0-openjdk-amd64 08:54:30 java-1.17.0-openjdk-amd64 1711 /usr/lib/jvm/java-1.17.0-openjdk-amd64 08:54:30 java-1.21.0-openjdk-amd64 2111 /usr/lib/jvm/java-1.21.0-openjdk-amd64 08:54:30 + sudo update-java-alternatives -s java-1.21.0-openjdk-amd64 08:54:30 update-alternatives: error: no alternatives for jaotc 08:54:30 update-alternatives: error: no alternatives for rmic 08:54:30 [INFO] Initializing environment for https://github.com/hhatto/autopep8. 08:54:30 + sed -n ;s/.* version "\(.*\)\.\(.*\)\..*".*$/\1/p; 08:54:30 + java -version 08:54:30 + JAVA_VER=21 08:54:30 + echo 21 08:54:30 21 08:54:30 + sed -n ;s/javac \(.*\)\.\(.*\)\..*.*$/\1/p; 08:54:30 + javac -version 08:54:31 + JAVAC_VER=21 08:54:31 + echo 21 08:54:31 + [ 21 -ge 21 ] 08:54:31 + [ 21 -ge 21 ] 08:54:31 + echo ok, java is 21 or newer 08:54:31 + wget -nv https://dlcdn.apache.org/maven/maven-3/3.9.16/binaries/apache-maven-3.9.16-bin.tar.gz -P /tmp 08:54:31 21 08:54:31 ok, java is 21 or newer 08:54:31 2026-08-20 08:54:31 URL:https://dlcdn.apache.org/maven/maven-3/3.9.16/binaries/apache-maven-3.9.16-bin.tar.gz [9278065/9278065] -> "/tmp/apache-maven-3.9.16-bin.tar.gz" [1] 08:54:31 + sudo mkdir -p /opt 08:54:31 + sudo tar xf /tmp/apache-maven-3.9.16-bin.tar.gz -C /opt 08:54:31 + sudo ln -s /opt/apache-maven-3.9.16 /opt/maven 08:54:31 + sudo ln -s /opt/maven/bin/mvn /usr/bin/mvn 08:54:31 + mvn --version 08:54:31 [INFO] Initializing environment for https://github.com/perltidy/perltidy. 08:54:31 Apache Maven 3.9.16 (2bdd9fddda4b155ebf8000e807eb73fd829a51d5) 08:54:31 Maven home: /opt/maven 08:54:31 Java version: 21.0.11, vendor: Ubuntu, runtime: /usr/lib/jvm/java-21-openjdk-amd64 08:54:31 Default locale: en, platform encoding: UTF-8 08:54:31 OS name: "linux", version: "5.15.0-186-generic", arch: "amd64", family: "unix" 08:54:31 NOTE: Picked up JDK_JAVA_OPTIONS: 08:54:31 --add-opens=java.base/java.io=ALL-UNNAMED 08:54:31 --add-opens=java.base/java.lang=ALL-UNNAMED 08:54:31 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 08:54:31 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 08:54:31 --add-opens=java.base/java.net=ALL-UNNAMED 08:54:31 --add-opens=java.base/java.nio=ALL-UNNAMED 08:54:31 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 08:54:31 --add-opens=java.base/java.nio.file=ALL-UNNAMED 08:54:31 --add-opens=java.base/java.util=ALL-UNNAMED 08:54:31 --add-opens=java.base/java.util.jar=ALL-UNNAMED 08:54:31 --add-opens=java.base/java.util.stream=ALL-UNNAMED 08:54:31 --add-opens=java.base/java.util.zip=ALL-UNNAMED 08:54:31 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 08:54:31 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 08:54:31 -Xlog:disable 08:54:32 [INFO] Initializing environment for https://github.com/koalaman/shellcheck-precommit. 08:54:33 [INFO] Initializing environment for https://github.com/pre-commit/mirrors-prettier. 08:54:33 [INFO] Initializing environment for https://github.com/pre-commit/mirrors-prettier:prettier@4.0.0-alpha.8. 08:54:34 [INFO] Initializing environment for https://github.com/adrienverge/yamllint. 08:54:36 [INFO] Installing environment for https://github.com/pre-commit/pre-commit-hooks. 08:54:36 [INFO] Once installed this environment will be reused. 08:54:36 [INFO] This may take a few minutes... 08:54:37 docs: freeze> python -m pip freeze --all 08:54:37 docs-linkcheck: freeze> python -m pip freeze --all 08:54:37 docs: alabaster==1.0.0,attrs==26.1.0,babel==2.18.0,certifi==2026.7.22,charset-normalizer==3.5.1,deepmerge==3.0,docutils==0.22.4,idna==3.19,imagesize==2.0.0,Jinja2==3.1.6,jsonschema==4.26.0,jsonschema-specifications==2025.9.1,jsonschema_rs==0.37.4,lfdocs_conf==0.11.0,MarkupSafe==3.0.3,minijinja==2.22.0,mistune==3.3.4,packaging==26.3,picobox==4.0.0,pip==26.2.1,Pygments==2.21.0,PyYAML==6.0.3,referencing==0.37.0,requests==2.34.2,requests-file==2.1.0,roman-numerals==4.1.0,rpds-py==2026.6.3,setuptools==84.0.0,snowballstemmer==3.1.1,Sphinx==9.0.4,sphinx-data-viewer==0.1.5,sphinx-needs==8.3.1,sphinx-tabs==3.5.0,sphinx_mdinclude==0.6.2,sphinx_rtd_theme==3.1.0,sphinxcontrib-applehelp==2.0.0,sphinxcontrib-devhelp==2.0.0,sphinxcontrib-htmlhelp==2.1.0,sphinxcontrib-httpdomain==2.0.0,sphinxcontrib-jquery==4.1,sphinxcontrib-jsmath==1.0.1,sphinxcontrib-mermaid==2.1.0,sphinxcontrib-openapi==0.9.0,sphinxcontrib-plantuml==0.31,sphinxcontrib-qthelp==2.0.0,sphinxcontrib-serializinghtml==2.0.0,typing_extensions==4.16.0,urllib3==2.7.0 08:54:37 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 08:54:38 docs-linkcheck: alabaster==1.0.0,attrs==26.1.0,babel==2.18.0,certifi==2026.7.22,charset-normalizer==3.5.1,deepmerge==3.0,docutils==0.22.4,idna==3.19,imagesize==2.0.0,Jinja2==3.1.6,jsonschema==4.26.0,jsonschema-specifications==2025.9.1,jsonschema_rs==0.37.4,lfdocs_conf==0.11.0,MarkupSafe==3.0.3,minijinja==2.22.0,mistune==3.3.4,packaging==26.3,picobox==4.0.0,pip==26.2.1,Pygments==2.21.0,PyYAML==6.0.3,referencing==0.37.0,requests==2.34.2,requests-file==2.1.0,roman-numerals==4.1.0,rpds-py==2026.6.3,setuptools==84.0.0,snowballstemmer==3.1.1,Sphinx==9.0.4,sphinx-data-viewer==0.1.5,sphinx-needs==8.3.1,sphinx-tabs==3.5.0,sphinx_mdinclude==0.6.2,sphinx_rtd_theme==3.1.0,sphinxcontrib-applehelp==2.0.0,sphinxcontrib-devhelp==2.0.0,sphinxcontrib-htmlhelp==2.1.0,sphinxcontrib-httpdomain==2.0.0,sphinxcontrib-jquery==4.1,sphinxcontrib-jsmath==1.0.1,sphinxcontrib-mermaid==2.1.0,sphinxcontrib-openapi==0.9.0,sphinxcontrib-plantuml==0.31,sphinxcontrib-qthelp==2.0.0,sphinxcontrib-serializinghtml==2.0.0,typing_extensions==4.16.0,urllib3==2.7.0 08:54:38 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 08:54:42 docs: OK ✔ in 20.25 seconds 08:54:42 pylint: install_deps> python -I -m pip install 'pylint>=2.6.0' 08:54:42 [INFO] Installing environment for https://github.com/Lucas-C/pre-commit-hooks. 08:54:42 [INFO] Once installed this environment will be reused. 08:54:42 [INFO] This may take a few minutes... 08:54:45 docs-linkcheck: OK ✔ in 21.22 seconds 08:54:45 pylint: freeze> python -m pip freeze --all 08:54:45 pylint: astroid==4.0.4,dill==0.4.1,isort==8.0.1,mccabe==0.7.0,pip==26.2.1,platformdirs==4.11.3,pylint==4.0.7,setuptools==84.0.0,tomlkit==0.15.1 08:54:45 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}$' '{}' + 08:54:48 [INFO] Installing environment for https://github.com/hhatto/autopep8. 08:54:48 [INFO] Once installed this environment will be reused. 08:54:48 [INFO] This may take a few minutes... 08:54:53 [INFO] Installing environment for https://github.com/perltidy/perltidy. 08:54:53 [INFO] Once installed this environment will be reused. 08:54:53 [INFO] This may take a few minutes... 08:55:04 [INFO] Installing environment for https://github.com/pre-commit/mirrors-prettier. 08:55:04 [INFO] Once installed this environment will be reused. 08:55:04 [INFO] This may take a few minutes... 08:55:08 08:55:08 ------------------------------------ 08:55:08 Your code has been rated at 10.00/10 08:55:08 08:55:10 [INFO] Installing environment for https://github.com/adrienverge/yamllint. 08:55:10 [INFO] Once installed this environment will be reused. 08:55:10 [INFO] This may take a few minutes... 08:55:15 trim trailing whitespace.................................................Passed 08:55:15 fix end of files.........................................................Passed 08:55:15 check for added large files..............................................Passed 08:55:15 check for merge conflicts................................................Passed 08:55:15 check for case conflicts.................................................Passed 08:55:16 check json...............................................................Passed 08:55:16 mixed line ending........................................................Passed 08:55:16 Tabs remover.............................................................Passed 08:55:16 autopep8.................................................................Passed 08:55:20 perltidy.................................................................Passed 08:55:20 ShellCheck v0.11.0.......................................................Passed 08:55:25 prettier.................................................................Passed 08:55:27 yamllint.................................................................Passed 08:55:27 pylint: OK ✔ in 29.09 seconds 08:55:27 pre-commit: commands[3] /w/workspace/transportpce-tox-verify-transportpce-master/tests> pre-commit run gitlint-ci --hook-stage manual 08:55:28 [INFO] Installing environment for https://github.com/jorisroovers/gitlint. 08:55:28 [INFO] Once installed this environment will be reused. 08:55:28 [INFO] This may take a few minutes... 08:55:36 gitlint..................................................................Passed 08:56:17 pre-commit: OK ✔ in 1 minute 12.1 seconds 08:56:17 buildcontroller: OK ✔ in 1 minute 54.94 seconds 08:56:17 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 08:56:17 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 08:56:17 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 08:56:17 build_karaf_tests200: 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 08:56:24 build_karaf_tests71: freeze> python -m pip freeze --all 08:56:24 build_karaf_tests200: freeze> python -m pip freeze --all 08:56:24 build_karaf_tests221: freeze> python -m pip freeze --all 08:56:24 buildlighty: freeze> python -m pip freeze --all 08:56:24 build_karaf_tests71: bcrypt==5.0.0,certifi==2026.7.22,cffi==2.1.1,charset-normalizer==3.5.1,cryptography==50.0.0,dict2xml==1.7.8,idna==3.19,iniconfig==2.3.0,invoke==3.0.3,lxml==6.1.2,netconf-client==3.6.0,packaging==26.3,paramiko==5.0.0,pip==26.2.1,pluggy==1.6.0,psutil==7.2.2,pycparser==3.0,Pygments==2.21.0,PyNaCl==1.6.2,pytest==9.1.1,requests==2.34.2,setuptools==84.0.0,urllib3==2.7.0 08:56:24 build_karaf_tests71: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 08:56:24 build karaf in karaf71 with ./karaf71.env 08:56:24 build_karaf_tests200: bcrypt==5.0.0,certifi==2026.7.22,cffi==2.1.1,charset-normalizer==3.5.1,cryptography==50.0.0,dict2xml==1.7.8,idna==3.19,iniconfig==2.3.0,invoke==3.0.3,lxml==6.1.2,netconf-client==3.6.0,packaging==26.3,paramiko==5.0.0,pip==26.2.1,pluggy==1.6.0,psutil==7.2.2,pycparser==3.0,Pygments==2.21.0,PyNaCl==1.6.2,pytest==9.1.1,requests==2.34.2,setuptools==84.0.0,urllib3==2.7.0 08:56:24 build_karaf_tests200: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 08:56:24 build_karaf_tests221: bcrypt==5.0.0,certifi==2026.7.22,cffi==2.1.1,charset-normalizer==3.5.1,cryptography==50.0.0,dict2xml==1.7.8,idna==3.19,iniconfig==2.3.0,invoke==3.0.3,lxml==6.1.2,netconf-client==3.6.0,packaging==26.3,paramiko==5.0.0,pip==26.2.1,pluggy==1.6.0,psutil==7.2.2,pycparser==3.0,Pygments==2.21.0,PyNaCl==1.6.2,pytest==9.1.1,requests==2.34.2,setuptools==84.0.0,urllib3==2.7.0 08:56:24 build_karaf_tests221: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 08:56:24 build karaf in karaf221 with ./karaf221.env 08:56:24 build karaf in karafoc200 with ./karafoc200.env 08:56:24 NOTE: Picked up JDK_JAVA_OPTIONS: 08:56:24 --add-opens=java.base/java.io=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.lang=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.net=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.nio=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.nio.file=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.util=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.util.jar=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.util.stream=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.util.zip=ALL-UNNAMED 08:56:24 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 08:56:24 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 08:56:24 -Xlog:disable 08:56:24 buildlighty: bcrypt==5.0.0,certifi==2026.7.22,cffi==2.1.1,charset-normalizer==3.5.1,cryptography==50.0.0,dict2xml==1.7.8,idna==3.19,iniconfig==2.3.0,invoke==3.0.3,lxml==6.1.2,netconf-client==3.6.0,packaging==26.3,paramiko==5.0.0,pip==26.2.1,pluggy==1.6.0,psutil==7.2.2,pycparser==3.0,Pygments==2.21.0,PyNaCl==1.6.2,pytest==9.1.1,requests==2.34.2,setuptools==84.0.0,urllib3==2.7.0 08:56:24 buildlighty: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/lighty> ./build.sh 08:56:24 NOTE: Picked up JDK_JAVA_OPTIONS: 08:56:24 --add-opens=java.base/java.io=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.lang=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.net=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.nio=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.nio.file=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.util=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.util.jar=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.util.stream=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.util.zip=ALL-UNNAMED 08:56:24 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 08:56:24 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 08:56:24 -Xlog:disable 08:56:24 NOTE: Picked up JDK_JAVA_OPTIONS: 08:56:24 --add-opens=java.base/java.io=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.lang=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.net=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.nio=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.nio.file=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.util=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.util.jar=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.util.stream=ALL-UNNAMED 08:56:24 --add-opens=java.base/java.util.zip=ALL-UNNAMED 08:56:24 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 08:56:24 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 08:56:24 -Xlog:disable 08:56:24 NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED 08:57:09 buildlighty: OK ✔ in 52.4 seconds 08:57:09 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 08:57:27 build_karaf_tests221: OK ✔ in 1 minute 9.87 seconds 08:57:27 build_karaf_tests71: OK ✔ in 1 minute 10.19 seconds 08:57:27 build_karaf_tests200: OK ✔ in 1 minute 11.16 seconds 08:57:27 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 08:57:29 sims: freeze> python -m pip freeze --all 08:57:29 sims: bcrypt==5.0.0,certifi==2026.7.22,cffi==2.1.1,charset-normalizer==3.5.1,cryptography==50.0.0,dict2xml==1.7.8,idna==3.19,iniconfig==2.3.0,invoke==3.0.3,lxml==6.1.2,netconf-client==3.6.0,packaging==26.3,paramiko==5.0.0,pip==26.2.1,pluggy==1.6.0,psutil==7.2.2,pycparser==3.0,Pygments==2.21.0,PyNaCl==1.6.2,pytest==9.1.1,requests==2.34.2,setuptools==84.0.0,urllib3==2.7.0 08:57:29 sims: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./install_lightynode.sh 08:57:29 Using lighynode version 22.1.0.7 08:57:29 Installing lightynode device to ./lightynode/lightynode-openroadm-device directory 08:58:14 sims: OK ✔ in 22.66 seconds 08:58:14 testsPCE: freeze> python -m pip freeze --all 08:58:14 testsPCE: bcrypt==5.0.0,certifi==2026.7.22,cffi==2.1.1,charset-normalizer==3.5.1,click==8.4.2,contourpy==1.3.3,cryptography==3.3.2,cycler==0.12.1,dict2xml==1.7.8,Flask==2.1.3,Flask-Injector==0.14.0,fonttools==4.63.0,gnpy4tpce==2.4.7,idna==3.19,iniconfig==2.3.0,injector==0.24.0,invoke==3.0.3,itsdangerous==2.2.0,Jinja2==3.1.6,kiwisolver==1.5.0,lxml==6.1.2,MarkupSafe==3.0.3,matplotlib==3.11.1,netconf-client==3.6.0,networkx==2.8.8,numpy==1.26.4,packaging==26.3,pandas==1.5.3,paramiko==5.0.0,pbr==5.11.1,pillow==12.3.0,pip==26.2.1,pluggy==1.6.0,psutil==7.2.2,pycparser==3.0,Pygments==2.21.0,PyNaCl==1.6.2,pyparsing==3.3.2,pytest==9.1.1,python-dateutil==2.9.0.post0,pytz==2026.3.post1,requests==2.34.2,scipy==1.17.1,setuptools==50.3.2,six==1.17.0,urllib3==2.7.0,Werkzeug==2.0.3,xlrd==1.2.0 08:58:14 testsPCE: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh pce 08:58:14 pytest -q transportpce_tests/pce/test01_pce.py 08:59:04 .................... [100%] 09:00:08 20 passed in 113.32s (0:01:53) 09:00:08 pytest -q transportpce_tests/pce/test02_pce_400G.py 09:00:26 ............ [100%] 09:00:56 12 passed in 47.81s 09:00:56 pytest -q transportpce_tests/pce/test03_gnpy.py 09:01:14 ........ [100%] 09:01:35 8 passed in 38.78s 09:01:35 pytest -q transportpce_tests/pce/test04_pce_bug_fix.py 09:02:08 ... [100%] 09:02:15 3 passed in 37.91s 09:02:15 testsPCE: OK ✔ in 4 minutes 46.06 seconds 09:02:15 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 09:02:20 tests_tapi: freeze> python -m pip freeze --all 09:02:20 tests_tapi: bcrypt==5.0.0,certifi==2026.7.22,cffi==2.1.1,charset-normalizer==3.5.1,cryptography==50.0.0,dict2xml==1.7.8,idna==3.19,iniconfig==2.3.0,invoke==3.0.3,lxml==6.1.2,netconf-client==3.6.0,packaging==26.3,paramiko==5.0.0,pip==26.2.1,pluggy==1.6.0,psutil==7.2.2,pycparser==3.0,Pygments==2.21.0,PyNaCl==1.6.2,pytest==9.1.1,requests==2.34.2,setuptools==84.0.0,urllib3==2.7.0 09:02:20 tests_tapi: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh tapi 09:02:20 using environment variables from ./karaf221.env 09:02:20 pytest -q transportpce_tests/tapi/test01_abstracted_topology.py 09:03:38 ................................................... [100%] 09:09:48 51 passed in 447.78s (0:07:27) 09:09:48 pytest -q transportpce_tests/tapi/test02_full_topology.py 09:10:43 .................................... [100%] 09:15:20 36 passed in 331.83s (0:05:31) 09:15:21 pytest -q transportpce_tests/tapi/test03_tapi_device_change_notifications.py 09:16:11 ....................................................................... [100%] 09:20:51 71 passed in 330.47s (0:05:30) 09:20:51 pytest -q transportpce_tests/tapi/test04_topo_extension.py 09:21:47 ................... [100%] 09:23:22 19 passed in 150.04s (0:02:30) 09:23:22 pytest -q transportpce_tests/tapi/test05_pce_tapi.py 09:25:29 ...................... [100%] 09:34:05 22 passed in 643.39s (0:10:43) 09:34:06 tests_tapi: OK ✔ in 31 minutes 51.94 seconds 09:34:06 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 09:34:06 tests200: 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 09:34:14 tests200: freeze> python -m pip freeze --all 09:34:14 tests221: freeze> python -m pip freeze --all 09:34:14 tests200: bcrypt==5.0.0,certifi==2026.7.22,cffi==2.1.1,charset-normalizer==3.5.1,cryptography==50.0.0,dict2xml==1.7.8,idna==3.19,iniconfig==2.3.0,invoke==3.0.3,lxml==6.1.2,netconf-client==3.6.0,packaging==26.3,paramiko==5.0.0,pip==26.2.1,pluggy==1.6.0,psutil==7.2.2,pycparser==3.0,Pygments==2.21.0,PyNaCl==1.6.2,pytest==9.1.1,requests==2.34.2,setuptools==84.0.0,urllib3==2.7.0 09:34:14 tests200: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh oc200 09:34:14 using environment variables from ./karafoc200.env 09:34:14 pytest -q transportpce_tests/oc200/test01_portmapping.py 09:34:14 tests221: bcrypt==5.0.0,certifi==2026.7.22,cffi==2.1.1,charset-normalizer==3.5.1,cryptography==50.0.0,dict2xml==1.7.8,idna==3.19,iniconfig==2.3.0,invoke==3.0.3,lxml==6.1.2,netconf-client==3.6.0,packaging==26.3,paramiko==5.0.0,pip==26.2.1,pluggy==1.6.0,psutil==7.2.2,pycparser==3.0,Pygments==2.21.0,PyNaCl==1.6.2,pytest==9.1.1,requests==2.34.2,setuptools==84.0.0,urllib3==2.7.0 09:34:14 tests221: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 2.2.1 09:34:14 using environment variables from ./karaf221.env 09:34:14 pytest -q transportpce_tests/2.2.1/test01_portmapping.py 09:35:01 ................ [100%] 09:35:19 10 passed in 64.65s (0:01:04) 09:35:19 pytest -q transportpce_tests/oc200/test02_topology.py 09:35:19 ............................... [100%] 09:35:54 35 passed in 100.13s (0:01:40) 09:35:54 pytest -q transportpce_tests/2.2.1/test02_topo_portmapping.py 09:35:59 ............ [100%] 09:36:23 14 passed in 63.87s (0:01:03) 09:36:23 pytest -q transportpce_tests/oc200/test03_renderer.py 09:36:37 ...... [100%] 09:37:33 6 passed in 98.12s (0:01:38) 09:37:33 pytest -q transportpce_tests/2.2.1/test03_topology.py 09:38:05 EEEEEEEEEEEEEEEE [100%] 09:38:08 ==================================== ERRORS ==================================== 09:38:08 ____ ERROR at setup of TestTransportPCERenderer.test_01_meta_data_insertion ____ 09:38:08 09:38:08 cls = 09:38:08 09:38:08 @classmethod 09:38:08 def setUpClass(cls): 09:38:08 cls.PATH_CREATE_CLIENT = None 09:38:08 > cls.processes = test_utils.start_tpce() 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 09:38:08 transportpce_tests/oc200/test03_renderer.py:36: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 def start_tpce(): 09:38:08 if 'NO_ODL_STARTUP' in os.environ: 09:38:08 print('No OpenDaylight instance to start!') 09:38:08 return [] 09:38:08 print('starting OpenDaylight...') 09:38:08 if 'USE_LIGHTY' in os.environ and os.environ['USE_LIGHTY'] == 'True': 09:38:08 process = start_lighty() 09:38:08 else: 09:38:08 process = start_karaf() 09:38:08 if wait_until_log_contains(TPCE_LOG, [LIGHTY_OK_START_MSG, KARAF_OK_START_MSG], time_to_wait=100): 09:38:08 print('OpenDaylight started !') 09:38:08 else: 09:38:08 print('OpenDaylight failed to start !') 09:38:08 shutdown_process(process) 09:38:08 for pid in process_list: 09:38:08 shutdown_process(pid) 09:38:08 > sys.exit(1) 09:38:08 E SystemExit: 1 09:38:08 09:38:08 transportpce_tests/common/test_utils.py:234: SystemExit 09:38:08 ---------------------------- Captured stdout setup ----------------------------- 09:38:08 starting OpenDaylight... 09:38:08 starting KARAF (karafoc200) TransportPCE build... 09:38:08 Searching for patterns in karaf.log... Pattern not found after 100 seconds! OpenDaylight failed to start ! 09:38:08 __ ERROR at setup of TestTransportPCERenderer.test_02_catalog_input_insertion __ 09:38:08 09:38:08 cls = 09:38:08 func = . at 0x7f65e618aac0> 09:38:08 when = 'setup' 09:38:08 reraise = (, ) 09:38:08 09:38:08 @classmethod 09:38:08 def from_call( 09:38:08 cls, 09:38:08 func: Callable[[], TResult], 09:38:08 when: Literal["collect", "setup", "call", "teardown"], 09:38:08 reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None, 09:38:08 ) -> CallInfo[TResult]: 09:38:08 """Call func, wrapping the result in a CallInfo. 09:38:08 09:38:08 :param func: 09:38:08 The function to call. Called without arguments. 09:38:08 :type func: Callable[[], _pytest.runner.TResult] 09:38:08 :param when: 09:38:08 The phase in which the function is called. 09:38:08 :param reraise: 09:38:08 Exception or exceptions that shall propagate if raised by the 09:38:08 function, instead of being wrapped in the CallInfo. 09:38:08 """ 09:38:08 excinfo = None 09:38:08 instant = timing.Instant() 09:38:08 try: 09:38:08 > result: TResult | None = func() 09:38:08 ^^^^^^ 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:361: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:250: in 09:38:08 lambda: runtest_hook(item=item, **kwds), 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__ 09:38:08 return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec 09:38:08 return self._inner_hookexec(hook_name, methods, kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/logging.py:858: in pytest_runtest_setup 09:38:08 yield 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/capture.py:895: in pytest_runtest_setup 09:38:08 return (yield) 09:38:08 ^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:170: in pytest_runtest_setup 09:38:08 item.session._setupstate.setup(item) 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:536: in setup 09:38:08 col.setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/unittest.py:248: in setup 09:38:08 super().setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/python.py:1710: in setup 09:38:08 self._request._fillfixtures() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:806: in _fillfixtures 09:38:08 item.funcargs[argname] = self.getfixturevalue(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:630: in getfixturevalue 09:38:08 fixturedef = self._get_active_fixturedef(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:726: in _get_active_fixturedef 09:38:08 fixturedef.execute(request=subrequest) 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 self = 09:38:08 request = > 09:38:08 09:38:08 def execute(self, request: SubRequest) -> FixtureValue: 09:38:08 """Return the value of this fixture, executing it if not cached.""" 09:38:08 # Ensure that the dependent fixtures requested by this fixture are loaded. 09:38:08 # This needs to be done before checking if we have a cached value, since 09:38:08 # if a dependent fixture has their cache invalidated, e.g. due to 09:38:08 # parametrization, they finalize themselves and fixtures depending on it 09:38:08 # (which will likely include this fixture) setting `self.cached_result = None`. 09:38:08 # See #4871 09:38:08 requested_fixtures_that_should_finalize_us = [] 09:38:08 for argname in self.argnames: 09:38:08 fixturedef = request._get_active_fixturedef(argname) 09:38:08 # Saves requested fixtures in a list so we later can add our finalizer 09:38:08 # to them, ensuring that if a requested fixture gets torn down we get torn 09:38:08 # down first. This is generally handled by SetupState, but still currently 09:38:08 # needed when this fixture is not parametrized but depends on a parametrized 09:38:08 # fixture. 09:38:08 requested_fixtures_that_should_finalize_us.append(fixturedef) 09:38:08 09:38:08 # Check for (and return) cached value/exception. 09:38:08 if self.cached_result is not None: 09:38:08 request_cache_key = self.cache_key(request) 09:38:08 cache_key = self.cached_result[1] 09:38:08 try: 09:38:08 # Attempt to make a normal == check: this might fail for objects 09:38:08 # which do not implement the standard comparison (like numpy arrays -- #6497). 09:38:08 cache_hit = bool(request_cache_key == cache_key) 09:38:08 except (ValueError, RuntimeError): 09:38:08 # If the comparison raises, use 'is' as fallback. 09:38:08 cache_hit = request_cache_key is cache_key 09:38:08 09:38:08 if cache_hit: 09:38:08 if self.cached_result[2] is not None: 09:38:08 exc, exc_tb = self.cached_result[2] 09:38:08 raise exc.with_traceback(exc_tb) 09:38:08 else: 09:38:08 return self.cached_result[0] 09:38:08 # We have a previous but differently parametrized fixture instance 09:38:08 # so we need to tear it down before creating a new one. 09:38:08 self.finish(request) 09:38:08 assert self.cached_result is None 09:38:08 09:38:08 # Add finalizer to requested fixtures we saved previously. 09:38:08 # We make sure to do this after checking for cached value to avoid 09:38:08 # adding our finalizer multiple times. (#12135) 09:38:08 finalizer = functools.partial(self.finish, request=request) 09:38:08 for parent_fixture in requested_fixtures_that_should_finalize_us: 09:38:08 parent_fixture.addfinalizer(finalizer) 09:38:08 09:38:08 # Register the pytest_fixture_post_finalizer as the first finalizer, 09:38:08 # which is executed last. 09:38:08 > assert not self._finalizers 09:38:08 ^^^^^^^^^^^^^^^^^^^^ 09:38:08 E AssertionError 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:1221: AssertionError 09:38:08 __ ERROR at setup of TestTransportPCERenderer.test_03_mpdr_device_connection ___ 09:38:08 09:38:08 cls = 09:38:08 func = . at 0x7f65e6231ee0> 09:38:08 when = 'setup' 09:38:08 reraise = (, ) 09:38:08 09:38:08 @classmethod 09:38:08 def from_call( 09:38:08 cls, 09:38:08 func: Callable[[], TResult], 09:38:08 when: Literal["collect", "setup", "call", "teardown"], 09:38:08 reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None, 09:38:08 ) -> CallInfo[TResult]: 09:38:08 """Call func, wrapping the result in a CallInfo. 09:38:08 09:38:08 :param func: 09:38:08 The function to call. Called without arguments. 09:38:08 :type func: Callable[[], _pytest.runner.TResult] 09:38:08 :param when: 09:38:08 The phase in which the function is called. 09:38:08 :param reraise: 09:38:08 Exception or exceptions that shall propagate if raised by the 09:38:08 function, instead of being wrapped in the CallInfo. 09:38:08 """ 09:38:08 excinfo = None 09:38:08 instant = timing.Instant() 09:38:08 try: 09:38:08 > result: TResult | None = func() 09:38:08 ^^^^^^ 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:361: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:250: in 09:38:08 lambda: runtest_hook(item=item, **kwds), 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__ 09:38:08 return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec 09:38:08 return self._inner_hookexec(hook_name, methods, kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/logging.py:858: in pytest_runtest_setup 09:38:08 yield 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/capture.py:895: in pytest_runtest_setup 09:38:08 return (yield) 09:38:08 ^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:170: in pytest_runtest_setup 09:38:08 item.session._setupstate.setup(item) 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:536: in setup 09:38:08 col.setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/unittest.py:248: in setup 09:38:08 super().setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/python.py:1710: in setup 09:38:08 self._request._fillfixtures() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:806: in _fillfixtures 09:38:08 item.funcargs[argname] = self.getfixturevalue(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:630: in getfixturevalue 09:38:08 fixturedef = self._get_active_fixturedef(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:726: in _get_active_fixturedef 09:38:08 fixturedef.execute(request=subrequest) 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 self = 09:38:08 request = > 09:38:08 09:38:08 def execute(self, request: SubRequest) -> FixtureValue: 09:38:08 """Return the value of this fixture, executing it if not cached.""" 09:38:08 # Ensure that the dependent fixtures requested by this fixture are loaded. 09:38:08 # This needs to be done before checking if we have a cached value, since 09:38:08 # if a dependent fixture has their cache invalidated, e.g. due to 09:38:08 # parametrization, they finalize themselves and fixtures depending on it 09:38:08 # (which will likely include this fixture) setting `self.cached_result = None`. 09:38:08 # See #4871 09:38:08 requested_fixtures_that_should_finalize_us = [] 09:38:08 for argname in self.argnames: 09:38:08 fixturedef = request._get_active_fixturedef(argname) 09:38:08 # Saves requested fixtures in a list so we later can add our finalizer 09:38:08 # to them, ensuring that if a requested fixture gets torn down we get torn 09:38:08 # down first. This is generally handled by SetupState, but still currently 09:38:08 # needed when this fixture is not parametrized but depends on a parametrized 09:38:08 # fixture. 09:38:08 requested_fixtures_that_should_finalize_us.append(fixturedef) 09:38:08 09:38:08 # Check for (and return) cached value/exception. 09:38:08 if self.cached_result is not None: 09:38:08 request_cache_key = self.cache_key(request) 09:38:08 cache_key = self.cached_result[1] 09:38:08 try: 09:38:08 # Attempt to make a normal == check: this might fail for objects 09:38:08 # which do not implement the standard comparison (like numpy arrays -- #6497). 09:38:08 cache_hit = bool(request_cache_key == cache_key) 09:38:08 except (ValueError, RuntimeError): 09:38:08 # If the comparison raises, use 'is' as fallback. 09:38:08 cache_hit = request_cache_key is cache_key 09:38:08 09:38:08 if cache_hit: 09:38:08 if self.cached_result[2] is not None: 09:38:08 exc, exc_tb = self.cached_result[2] 09:38:08 raise exc.with_traceback(exc_tb) 09:38:08 else: 09:38:08 return self.cached_result[0] 09:38:08 # We have a previous but differently parametrized fixture instance 09:38:08 # so we need to tear it down before creating a new one. 09:38:08 self.finish(request) 09:38:08 assert self.cached_result is None 09:38:08 09:38:08 # Add finalizer to requested fixtures we saved previously. 09:38:08 # We make sure to do this after checking for cached value to avoid 09:38:08 # adding our finalizer multiple times. (#12135) 09:38:08 finalizer = functools.partial(self.finish, request=request) 09:38:08 for parent_fixture in requested_fixtures_that_should_finalize_us: 09:38:08 parent_fixture.addfinalizer(finalizer) 09:38:08 09:38:08 # Register the pytest_fixture_post_finalizer as the first finalizer, 09:38:08 # which is executed last. 09:38:08 > assert not self._finalizers 09:38:08 ^^^^^^^^^^^^^^^^^^^^ 09:38:08 E AssertionError 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:1221: AssertionError 09:38:08 ___ ERROR at setup of TestTransportPCERenderer.test_04_mpdr_device_connected ___ 09:38:08 09:38:08 cls = 09:38:08 func = . at 0x7f65e889bec0> 09:38:08 when = 'setup' 09:38:08 reraise = (, ) 09:38:08 09:38:08 @classmethod 09:38:08 def from_call( 09:38:08 cls, 09:38:08 func: Callable[[], TResult], 09:38:08 when: Literal["collect", "setup", "call", "teardown"], 09:38:08 reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None, 09:38:08 ) -> CallInfo[TResult]: 09:38:08 """Call func, wrapping the result in a CallInfo. 09:38:08 09:38:08 :param func: 09:38:08 The function to call. Called without arguments. 09:38:08 :type func: Callable[[], _pytest.runner.TResult] 09:38:08 :param when: 09:38:08 The phase in which the function is called. 09:38:08 :param reraise: 09:38:08 Exception or exceptions that shall propagate if raised by the 09:38:08 function, instead of being wrapped in the CallInfo. 09:38:08 """ 09:38:08 excinfo = None 09:38:08 instant = timing.Instant() 09:38:08 try: 09:38:08 > result: TResult | None = func() 09:38:08 ^^^^^^ 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:361: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:250: in 09:38:08 lambda: runtest_hook(item=item, **kwds), 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__ 09:38:08 return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec 09:38:08 return self._inner_hookexec(hook_name, methods, kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/logging.py:858: in pytest_runtest_setup 09:38:08 yield 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/capture.py:895: in pytest_runtest_setup 09:38:08 return (yield) 09:38:08 ^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:170: in pytest_runtest_setup 09:38:08 item.session._setupstate.setup(item) 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:536: in setup 09:38:08 col.setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/unittest.py:248: in setup 09:38:08 super().setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/python.py:1710: in setup 09:38:08 self._request._fillfixtures() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:806: in _fillfixtures 09:38:08 item.funcargs[argname] = self.getfixturevalue(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:630: in getfixturevalue 09:38:08 fixturedef = self._get_active_fixturedef(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:726: in _get_active_fixturedef 09:38:08 fixturedef.execute(request=subrequest) 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 self = 09:38:08 request = > 09:38:08 09:38:08 def execute(self, request: SubRequest) -> FixtureValue: 09:38:08 """Return the value of this fixture, executing it if not cached.""" 09:38:08 # Ensure that the dependent fixtures requested by this fixture are loaded. 09:38:08 # This needs to be done before checking if we have a cached value, since 09:38:08 # if a dependent fixture has their cache invalidated, e.g. due to 09:38:08 # parametrization, they finalize themselves and fixtures depending on it 09:38:08 # (which will likely include this fixture) setting `self.cached_result = None`. 09:38:08 # See #4871 09:38:08 requested_fixtures_that_should_finalize_us = [] 09:38:08 for argname in self.argnames: 09:38:08 fixturedef = request._get_active_fixturedef(argname) 09:38:08 # Saves requested fixtures in a list so we later can add our finalizer 09:38:08 # to them, ensuring that if a requested fixture gets torn down we get torn 09:38:08 # down first. This is generally handled by SetupState, but still currently 09:38:08 # needed when this fixture is not parametrized but depends on a parametrized 09:38:08 # fixture. 09:38:08 requested_fixtures_that_should_finalize_us.append(fixturedef) 09:38:08 09:38:08 # Check for (and return) cached value/exception. 09:38:08 if self.cached_result is not None: 09:38:08 request_cache_key = self.cache_key(request) 09:38:08 cache_key = self.cached_result[1] 09:38:08 try: 09:38:08 # Attempt to make a normal == check: this might fail for objects 09:38:08 # which do not implement the standard comparison (like numpy arrays -- #6497). 09:38:08 cache_hit = bool(request_cache_key == cache_key) 09:38:08 except (ValueError, RuntimeError): 09:38:08 # If the comparison raises, use 'is' as fallback. 09:38:08 cache_hit = request_cache_key is cache_key 09:38:08 09:38:08 if cache_hit: 09:38:08 if self.cached_result[2] is not None: 09:38:08 exc, exc_tb = self.cached_result[2] 09:38:08 raise exc.with_traceback(exc_tb) 09:38:08 else: 09:38:08 return self.cached_result[0] 09:38:08 # We have a previous but differently parametrized fixture instance 09:38:08 # so we need to tear it down before creating a new one. 09:38:08 self.finish(request) 09:38:08 assert self.cached_result is None 09:38:08 09:38:08 # Add finalizer to requested fixtures we saved previously. 09:38:08 # We make sure to do this after checking for cached value to avoid 09:38:08 # adding our finalizer multiple times. (#12135) 09:38:08 finalizer = functools.partial(self.finish, request=request) 09:38:08 for parent_fixture in requested_fixtures_that_should_finalize_us: 09:38:08 parent_fixture.addfinalizer(finalizer) 09:38:08 09:38:08 # Register the pytest_fixture_post_finalizer as the first finalizer, 09:38:08 # which is executed last. 09:38:08 > assert not self._finalizers 09:38:08 ^^^^^^^^^^^^^^^^^^^^ 09:38:08 E AssertionError 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:1221: AssertionError 09:38:08 _ ERROR at setup of TestTransportPCERenderer.test_05_mpdr_portmapping_NETWORK5 _ 09:38:08 09:38:08 cls = 09:38:08 func = . at 0x7f65e618bec0> 09:38:08 when = 'setup' 09:38:08 reraise = (, ) 09:38:08 09:38:08 @classmethod 09:38:08 def from_call( 09:38:08 cls, 09:38:08 func: Callable[[], TResult], 09:38:08 when: Literal["collect", "setup", "call", "teardown"], 09:38:08 reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None, 09:38:08 ) -> CallInfo[TResult]: 09:38:08 """Call func, wrapping the result in a CallInfo. 09:38:08 09:38:08 :param func: 09:38:08 The function to call. Called without arguments. 09:38:08 :type func: Callable[[], _pytest.runner.TResult] 09:38:08 :param when: 09:38:08 The phase in which the function is called. 09:38:08 :param reraise: 09:38:08 Exception or exceptions that shall propagate if raised by the 09:38:08 function, instead of being wrapped in the CallInfo. 09:38:08 """ 09:38:08 excinfo = None 09:38:08 instant = timing.Instant() 09:38:08 try: 09:38:08 > result: TResult | None = func() 09:38:08 ^^^^^^ 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:361: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:250: in 09:38:08 lambda: runtest_hook(item=item, **kwds), 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__ 09:38:08 return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec 09:38:08 return self._inner_hookexec(hook_name, methods, kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/logging.py:858: in pytest_runtest_setup 09:38:08 yield 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/capture.py:895: in pytest_runtest_setup 09:38:08 return (yield) 09:38:08 ^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:170: in pytest_runtest_setup 09:38:08 item.session._setupstate.setup(item) 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:536: in setup 09:38:08 col.setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/unittest.py:248: in setup 09:38:08 super().setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/python.py:1710: in setup 09:38:08 self._request._fillfixtures() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:806: in _fillfixtures 09:38:08 item.funcargs[argname] = self.getfixturevalue(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:630: in getfixturevalue 09:38:08 fixturedef = self._get_active_fixturedef(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:726: in _get_active_fixturedef 09:38:08 fixturedef.execute(request=subrequest) 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 self = 09:38:08 request = > 09:38:08 09:38:08 def execute(self, request: SubRequest) -> FixtureValue: 09:38:08 """Return the value of this fixture, executing it if not cached.""" 09:38:08 # Ensure that the dependent fixtures requested by this fixture are loaded. 09:38:08 # This needs to be done before checking if we have a cached value, since 09:38:08 # if a dependent fixture has their cache invalidated, e.g. due to 09:38:08 # parametrization, they finalize themselves and fixtures depending on it 09:38:08 # (which will likely include this fixture) setting `self.cached_result = None`. 09:38:08 # See #4871 09:38:08 requested_fixtures_that_should_finalize_us = [] 09:38:08 for argname in self.argnames: 09:38:08 fixturedef = request._get_active_fixturedef(argname) 09:38:08 # Saves requested fixtures in a list so we later can add our finalizer 09:38:08 # to them, ensuring that if a requested fixture gets torn down we get torn 09:38:08 # down first. This is generally handled by SetupState, but still currently 09:38:08 # needed when this fixture is not parametrized but depends on a parametrized 09:38:08 # fixture. 09:38:08 requested_fixtures_that_should_finalize_us.append(fixturedef) 09:38:08 09:38:08 # Check for (and return) cached value/exception. 09:38:08 if self.cached_result is not None: 09:38:08 request_cache_key = self.cache_key(request) 09:38:08 cache_key = self.cached_result[1] 09:38:08 try: 09:38:08 # Attempt to make a normal == check: this might fail for objects 09:38:08 # which do not implement the standard comparison (like numpy arrays -- #6497). 09:38:08 cache_hit = bool(request_cache_key == cache_key) 09:38:08 except (ValueError, RuntimeError): 09:38:08 # If the comparison raises, use 'is' as fallback. 09:38:08 cache_hit = request_cache_key is cache_key 09:38:08 09:38:08 if cache_hit: 09:38:08 if self.cached_result[2] is not None: 09:38:08 exc, exc_tb = self.cached_result[2] 09:38:08 raise exc.with_traceback(exc_tb) 09:38:08 else: 09:38:08 return self.cached_result[0] 09:38:08 # We have a previous but differently parametrized fixture instance 09:38:08 # so we need to tear it down before creating a new one. 09:38:08 self.finish(request) 09:38:08 assert self.cached_result is None 09:38:08 09:38:08 # Add finalizer to requested fixtures we saved previously. 09:38:08 # We make sure to do this after checking for cached value to avoid 09:38:08 # adding our finalizer multiple times. (#12135) 09:38:08 finalizer = functools.partial(self.finish, request=request) 09:38:08 for parent_fixture in requested_fixtures_that_should_finalize_us: 09:38:08 parent_fixture.addfinalizer(finalizer) 09:38:08 09:38:08 # Register the pytest_fixture_post_finalizer as the first finalizer, 09:38:08 # which is executed last. 09:38:08 > assert not self._finalizers 09:38:08 ^^^^^^^^^^^^^^^^^^^^ 09:38:08 E AssertionError 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:1221: AssertionError 09:38:08 _ ERROR at setup of TestTransportPCERenderer.test_06_service_path_create_network _ 09:38:08 09:38:08 cls = 09:38:08 func = . at 0x7f65e688a340> 09:38:08 when = 'setup' 09:38:08 reraise = (, ) 09:38:08 09:38:08 @classmethod 09:38:08 def from_call( 09:38:08 cls, 09:38:08 func: Callable[[], TResult], 09:38:08 when: Literal["collect", "setup", "call", "teardown"], 09:38:08 reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None, 09:38:08 ) -> CallInfo[TResult]: 09:38:08 """Call func, wrapping the result in a CallInfo. 09:38:08 09:38:08 :param func: 09:38:08 The function to call. Called without arguments. 09:38:08 :type func: Callable[[], _pytest.runner.TResult] 09:38:08 :param when: 09:38:08 The phase in which the function is called. 09:38:08 :param reraise: 09:38:08 Exception or exceptions that shall propagate if raised by the 09:38:08 function, instead of being wrapped in the CallInfo. 09:38:08 """ 09:38:08 excinfo = None 09:38:08 instant = timing.Instant() 09:38:08 try: 09:38:08 > result: TResult | None = func() 09:38:08 ^^^^^^ 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:361: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:250: in 09:38:08 lambda: runtest_hook(item=item, **kwds), 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__ 09:38:08 return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec 09:38:08 return self._inner_hookexec(hook_name, methods, kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/logging.py:858: in pytest_runtest_setup 09:38:08 yield 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/capture.py:895: in pytest_runtest_setup 09:38:08 return (yield) 09:38:08 ^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:170: in pytest_runtest_setup 09:38:08 item.session._setupstate.setup(item) 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:536: in setup 09:38:08 col.setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/unittest.py:248: in setup 09:38:08 super().setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/python.py:1710: in setup 09:38:08 self._request._fillfixtures() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:806: in _fillfixtures 09:38:08 item.funcargs[argname] = self.getfixturevalue(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:630: in getfixturevalue 09:38:08 fixturedef = self._get_active_fixturedef(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:726: in _get_active_fixturedef 09:38:08 fixturedef.execute(request=subrequest) 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 self = 09:38:08 request = > 09:38:08 09:38:08 def execute(self, request: SubRequest) -> FixtureValue: 09:38:08 """Return the value of this fixture, executing it if not cached.""" 09:38:08 # Ensure that the dependent fixtures requested by this fixture are loaded. 09:38:08 # This needs to be done before checking if we have a cached value, since 09:38:08 # if a dependent fixture has their cache invalidated, e.g. due to 09:38:08 # parametrization, they finalize themselves and fixtures depending on it 09:38:08 # (which will likely include this fixture) setting `self.cached_result = None`. 09:38:08 # See #4871 09:38:08 requested_fixtures_that_should_finalize_us = [] 09:38:08 for argname in self.argnames: 09:38:08 fixturedef = request._get_active_fixturedef(argname) 09:38:08 # Saves requested fixtures in a list so we later can add our finalizer 09:38:08 # to them, ensuring that if a requested fixture gets torn down we get torn 09:38:08 # down first. This is generally handled by SetupState, but still currently 09:38:08 # needed when this fixture is not parametrized but depends on a parametrized 09:38:08 # fixture. 09:38:08 requested_fixtures_that_should_finalize_us.append(fixturedef) 09:38:08 09:38:08 # Check for (and return) cached value/exception. 09:38:08 if self.cached_result is not None: 09:38:08 request_cache_key = self.cache_key(request) 09:38:08 cache_key = self.cached_result[1] 09:38:08 try: 09:38:08 # Attempt to make a normal == check: this might fail for objects 09:38:08 # which do not implement the standard comparison (like numpy arrays -- #6497). 09:38:08 cache_hit = bool(request_cache_key == cache_key) 09:38:08 except (ValueError, RuntimeError): 09:38:08 # If the comparison raises, use 'is' as fallback. 09:38:08 cache_hit = request_cache_key is cache_key 09:38:08 09:38:08 if cache_hit: 09:38:08 if self.cached_result[2] is not None: 09:38:08 exc, exc_tb = self.cached_result[2] 09:38:08 raise exc.with_traceback(exc_tb) 09:38:08 else: 09:38:08 return self.cached_result[0] 09:38:08 # We have a previous but differently parametrized fixture instance 09:38:08 # so we need to tear it down before creating a new one. 09:38:08 self.finish(request) 09:38:08 assert self.cached_result is None 09:38:08 09:38:08 # Add finalizer to requested fixtures we saved previously. 09:38:08 # We make sure to do this after checking for cached value to avoid 09:38:08 # adding our finalizer multiple times. (#12135) 09:38:08 finalizer = functools.partial(self.finish, request=request) 09:38:08 for parent_fixture in requested_fixtures_that_should_finalize_us: 09:38:08 parent_fixture.addfinalizer(finalizer) 09:38:08 09:38:08 # Register the pytest_fixture_post_finalizer as the first finalizer, 09:38:08 # which is executed last. 09:38:08 > assert not self._finalizers 09:38:08 ^^^^^^^^^^^^^^^^^^^^ 09:38:08 E AssertionError 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:1221: AssertionError 09:38:08 _ ERROR at setup of TestTransportPCERenderer.test_07_service_path_create_network_check_optical_channel _ 09:38:08 09:38:08 cls = 09:38:08 func = . at 0x7f65e618bec0> 09:38:08 when = 'setup' 09:38:08 reraise = (, ) 09:38:08 09:38:08 @classmethod 09:38:08 def from_call( 09:38:08 cls, 09:38:08 func: Callable[[], TResult], 09:38:08 when: Literal["collect", "setup", "call", "teardown"], 09:38:08 reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None, 09:38:08 ) -> CallInfo[TResult]: 09:38:08 """Call func, wrapping the result in a CallInfo. 09:38:08 09:38:08 :param func: 09:38:08 The function to call. Called without arguments. 09:38:08 :type func: Callable[[], _pytest.runner.TResult] 09:38:08 :param when: 09:38:08 The phase in which the function is called. 09:38:08 :param reraise: 09:38:08 Exception or exceptions that shall propagate if raised by the 09:38:08 function, instead of being wrapped in the CallInfo. 09:38:08 """ 09:38:08 excinfo = None 09:38:08 instant = timing.Instant() 09:38:08 try: 09:38:08 > result: TResult | None = func() 09:38:08 ^^^^^^ 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:361: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:250: in 09:38:08 lambda: runtest_hook(item=item, **kwds), 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__ 09:38:08 return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec 09:38:08 return self._inner_hookexec(hook_name, methods, kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/logging.py:858: in pytest_runtest_setup 09:38:08 yield 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/capture.py:895: in pytest_runtest_setup 09:38:08 return (yield) 09:38:08 ^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:170: in pytest_runtest_setup 09:38:08 item.session._setupstate.setup(item) 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:536: in setup 09:38:08 col.setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/unittest.py:248: in setup 09:38:08 super().setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/python.py:1710: in setup 09:38:08 self._request._fillfixtures() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:806: in _fillfixtures 09:38:08 item.funcargs[argname] = self.getfixturevalue(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:630: in getfixturevalue 09:38:08 fixturedef = self._get_active_fixturedef(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:726: in _get_active_fixturedef 09:38:08 fixturedef.execute(request=subrequest) 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 self = 09:38:08 request = > 09:38:08 09:38:08 def execute(self, request: SubRequest) -> FixtureValue: 09:38:08 """Return the value of this fixture, executing it if not cached.""" 09:38:08 # Ensure that the dependent fixtures requested by this fixture are loaded. 09:38:08 # This needs to be done before checking if we have a cached value, since 09:38:08 # if a dependent fixture has their cache invalidated, e.g. due to 09:38:08 # parametrization, they finalize themselves and fixtures depending on it 09:38:08 # (which will likely include this fixture) setting `self.cached_result = None`. 09:38:08 # See #4871 09:38:08 requested_fixtures_that_should_finalize_us = [] 09:38:08 for argname in self.argnames: 09:38:08 fixturedef = request._get_active_fixturedef(argname) 09:38:08 # Saves requested fixtures in a list so we later can add our finalizer 09:38:08 # to them, ensuring that if a requested fixture gets torn down we get torn 09:38:08 # down first. This is generally handled by SetupState, but still currently 09:38:08 # needed when this fixture is not parametrized but depends on a parametrized 09:38:08 # fixture. 09:38:08 requested_fixtures_that_should_finalize_us.append(fixturedef) 09:38:08 09:38:08 # Check for (and return) cached value/exception. 09:38:08 if self.cached_result is not None: 09:38:08 request_cache_key = self.cache_key(request) 09:38:08 cache_key = self.cached_result[1] 09:38:08 try: 09:38:08 # Attempt to make a normal == check: this might fail for objects 09:38:08 # which do not implement the standard comparison (like numpy arrays -- #6497). 09:38:08 cache_hit = bool(request_cache_key == cache_key) 09:38:08 except (ValueError, RuntimeError): 09:38:08 # If the comparison raises, use 'is' as fallback. 09:38:08 cache_hit = request_cache_key is cache_key 09:38:08 09:38:08 if cache_hit: 09:38:08 if self.cached_result[2] is not None: 09:38:08 exc, exc_tb = self.cached_result[2] 09:38:08 raise exc.with_traceback(exc_tb) 09:38:08 else: 09:38:08 return self.cached_result[0] 09:38:08 # We have a previous but differently parametrized fixture instance 09:38:08 # so we need to tear it down before creating a new one. 09:38:08 self.finish(request) 09:38:08 assert self.cached_result is None 09:38:08 09:38:08 # Add finalizer to requested fixtures we saved previously. 09:38:08 # We make sure to do this after checking for cached value to avoid 09:38:08 # adding our finalizer multiple times. (#12135) 09:38:08 finalizer = functools.partial(self.finish, request=request) 09:38:08 for parent_fixture in requested_fixtures_that_should_finalize_us: 09:38:08 parent_fixture.addfinalizer(finalizer) 09:38:08 09:38:08 # Register the pytest_fixture_post_finalizer as the first finalizer, 09:38:08 # which is executed last. 09:38:08 > assert not self._finalizers 09:38:08 ^^^^^^^^^^^^^^^^^^^^ 09:38:08 E AssertionError 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:1221: AssertionError 09:38:08 _ ERROR at setup of TestTransportPCERenderer.test_08_service_path_create_network_check_line_port _ 09:38:08 09:38:08 cls = 09:38:08 func = . at 0x7f65e62328e0> 09:38:08 when = 'setup' 09:38:08 reraise = (, ) 09:38:08 09:38:08 @classmethod 09:38:08 def from_call( 09:38:08 cls, 09:38:08 func: Callable[[], TResult], 09:38:08 when: Literal["collect", "setup", "call", "teardown"], 09:38:08 reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None, 09:38:08 ) -> CallInfo[TResult]: 09:38:08 """Call func, wrapping the result in a CallInfo. 09:38:08 09:38:08 :param func: 09:38:08 The function to call. Called without arguments. 09:38:08 :type func: Callable[[], _pytest.runner.TResult] 09:38:08 :param when: 09:38:08 The phase in which the function is called. 09:38:08 :param reraise: 09:38:08 Exception or exceptions that shall propagate if raised by the 09:38:08 function, instead of being wrapped in the CallInfo. 09:38:08 """ 09:38:08 excinfo = None 09:38:08 instant = timing.Instant() 09:38:08 try: 09:38:08 > result: TResult | None = func() 09:38:08 ^^^^^^ 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:361: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:250: in 09:38:08 lambda: runtest_hook(item=item, **kwds), 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__ 09:38:08 return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec 09:38:08 return self._inner_hookexec(hook_name, methods, kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/logging.py:858: in pytest_runtest_setup 09:38:08 yield 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/capture.py:895: in pytest_runtest_setup 09:38:08 return (yield) 09:38:08 ^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:170: in pytest_runtest_setup 09:38:08 item.session._setupstate.setup(item) 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:536: in setup 09:38:08 col.setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/unittest.py:248: in setup 09:38:08 super().setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/python.py:1710: in setup 09:38:08 self._request._fillfixtures() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:806: in _fillfixtures 09:38:08 item.funcargs[argname] = self.getfixturevalue(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:630: in getfixturevalue 09:38:08 fixturedef = self._get_active_fixturedef(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:726: in _get_active_fixturedef 09:38:08 fixturedef.execute(request=subrequest) 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 self = 09:38:08 request = > 09:38:08 09:38:08 def execute(self, request: SubRequest) -> FixtureValue: 09:38:08 """Return the value of this fixture, executing it if not cached.""" 09:38:08 # Ensure that the dependent fixtures requested by this fixture are loaded. 09:38:08 # This needs to be done before checking if we have a cached value, since 09:38:08 # if a dependent fixture has their cache invalidated, e.g. due to 09:38:08 # parametrization, they finalize themselves and fixtures depending on it 09:38:08 # (which will likely include this fixture) setting `self.cached_result = None`. 09:38:08 # See #4871 09:38:08 requested_fixtures_that_should_finalize_us = [] 09:38:08 for argname in self.argnames: 09:38:08 fixturedef = request._get_active_fixturedef(argname) 09:38:08 # Saves requested fixtures in a list so we later can add our finalizer 09:38:08 # to them, ensuring that if a requested fixture gets torn down we get torn 09:38:08 # down first. This is generally handled by SetupState, but still currently 09:38:08 # needed when this fixture is not parametrized but depends on a parametrized 09:38:08 # fixture. 09:38:08 requested_fixtures_that_should_finalize_us.append(fixturedef) 09:38:08 09:38:08 # Check for (and return) cached value/exception. 09:38:08 if self.cached_result is not None: 09:38:08 request_cache_key = self.cache_key(request) 09:38:08 cache_key = self.cached_result[1] 09:38:08 try: 09:38:08 # Attempt to make a normal == check: this might fail for objects 09:38:08 # which do not implement the standard comparison (like numpy arrays -- #6497). 09:38:08 cache_hit = bool(request_cache_key == cache_key) 09:38:08 except (ValueError, RuntimeError): 09:38:08 # If the comparison raises, use 'is' as fallback. 09:38:08 cache_hit = request_cache_key is cache_key 09:38:08 09:38:08 if cache_hit: 09:38:08 if self.cached_result[2] is not None: 09:38:08 exc, exc_tb = self.cached_result[2] 09:38:08 raise exc.with_traceback(exc_tb) 09:38:08 else: 09:38:08 return self.cached_result[0] 09:38:08 # We have a previous but differently parametrized fixture instance 09:38:08 # so we need to tear it down before creating a new one. 09:38:08 self.finish(request) 09:38:08 assert self.cached_result is None 09:38:08 09:38:08 # Add finalizer to requested fixtures we saved previously. 09:38:08 # We make sure to do this after checking for cached value to avoid 09:38:08 # adding our finalizer multiple times. (#12135) 09:38:08 finalizer = functools.partial(self.finish, request=request) 09:38:08 for parent_fixture in requested_fixtures_that_should_finalize_us: 09:38:08 parent_fixture.addfinalizer(finalizer) 09:38:08 09:38:08 # Register the pytest_fixture_post_finalizer as the first finalizer, 09:38:08 # which is executed last. 09:38:08 > assert not self._finalizers 09:38:08 ^^^^^^^^^^^^^^^^^^^^ 09:38:08 E AssertionError 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:1221: AssertionError 09:38:08 _ ERROR at setup of TestTransportPCERenderer.test_09_service_path_delete_network _ 09:38:08 09:38:08 cls = 09:38:08 func = . at 0x7f65e6230900> 09:38:08 when = 'setup' 09:38:08 reraise = (, ) 09:38:08 09:38:08 @classmethod 09:38:08 def from_call( 09:38:08 cls, 09:38:08 func: Callable[[], TResult], 09:38:08 when: Literal["collect", "setup", "call", "teardown"], 09:38:08 reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None, 09:38:08 ) -> CallInfo[TResult]: 09:38:08 """Call func, wrapping the result in a CallInfo. 09:38:08 09:38:08 :param func: 09:38:08 The function to call. Called without arguments. 09:38:08 :type func: Callable[[], _pytest.runner.TResult] 09:38:08 :param when: 09:38:08 The phase in which the function is called. 09:38:08 :param reraise: 09:38:08 Exception or exceptions that shall propagate if raised by the 09:38:08 function, instead of being wrapped in the CallInfo. 09:38:08 """ 09:38:08 excinfo = None 09:38:08 instant = timing.Instant() 09:38:08 try: 09:38:08 > result: TResult | None = func() 09:38:08 ^^^^^^ 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:361: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:250: in 09:38:08 lambda: runtest_hook(item=item, **kwds), 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__ 09:38:08 return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec 09:38:08 return self._inner_hookexec(hook_name, methods, kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/logging.py:858: in pytest_runtest_setup 09:38:08 yield 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/capture.py:895: in pytest_runtest_setup 09:38:08 return (yield) 09:38:08 ^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:170: in pytest_runtest_setup 09:38:08 item.session._setupstate.setup(item) 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:536: in setup 09:38:08 col.setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/unittest.py:248: in setup 09:38:08 super().setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/python.py:1710: in setup 09:38:08 self._request._fillfixtures() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:806: in _fillfixtures 09:38:08 item.funcargs[argname] = self.getfixturevalue(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:630: in getfixturevalue 09:38:08 fixturedef = self._get_active_fixturedef(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:726: in _get_active_fixturedef 09:38:08 fixturedef.execute(request=subrequest) 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 self = 09:38:08 request = > 09:38:08 09:38:08 def execute(self, request: SubRequest) -> FixtureValue: 09:38:08 """Return the value of this fixture, executing it if not cached.""" 09:38:08 # Ensure that the dependent fixtures requested by this fixture are loaded. 09:38:08 # This needs to be done before checking if we have a cached value, since 09:38:08 # if a dependent fixture has their cache invalidated, e.g. due to 09:38:08 # parametrization, they finalize themselves and fixtures depending on it 09:38:08 # (which will likely include this fixture) setting `self.cached_result = None`. 09:38:08 # See #4871 09:38:08 requested_fixtures_that_should_finalize_us = [] 09:38:08 for argname in self.argnames: 09:38:08 fixturedef = request._get_active_fixturedef(argname) 09:38:08 # Saves requested fixtures in a list so we later can add our finalizer 09:38:08 # to them, ensuring that if a requested fixture gets torn down we get torn 09:38:08 # down first. This is generally handled by SetupState, but still currently 09:38:08 # needed when this fixture is not parametrized but depends on a parametrized 09:38:08 # fixture. 09:38:08 requested_fixtures_that_should_finalize_us.append(fixturedef) 09:38:08 09:38:08 # Check for (and return) cached value/exception. 09:38:08 if self.cached_result is not None: 09:38:08 request_cache_key = self.cache_key(request) 09:38:08 cache_key = self.cached_result[1] 09:38:08 try: 09:38:08 # Attempt to make a normal == check: this might fail for objects 09:38:08 # which do not implement the standard comparison (like numpy arrays -- #6497). 09:38:08 cache_hit = bool(request_cache_key == cache_key) 09:38:08 except (ValueError, RuntimeError): 09:38:08 # If the comparison raises, use 'is' as fallback. 09:38:08 cache_hit = request_cache_key is cache_key 09:38:08 09:38:08 if cache_hit: 09:38:08 if self.cached_result[2] is not None: 09:38:08 exc, exc_tb = self.cached_result[2] 09:38:08 raise exc.with_traceback(exc_tb) 09:38:08 else: 09:38:08 return self.cached_result[0] 09:38:08 # We have a previous but differently parametrized fixture instance 09:38:08 # so we need to tear it down before creating a new one. 09:38:08 self.finish(request) 09:38:08 assert self.cached_result is None 09:38:08 09:38:08 # Add finalizer to requested fixtures we saved previously. 09:38:08 # We make sure to do this after checking for cached value to avoid 09:38:08 # adding our finalizer multiple times. (#12135) 09:38:08 finalizer = functools.partial(self.finish, request=request) 09:38:08 for parent_fixture in requested_fixtures_that_should_finalize_us: 09:38:08 parent_fixture.addfinalizer(finalizer) 09:38:08 09:38:08 # Register the pytest_fixture_post_finalizer as the first finalizer, 09:38:08 # which is executed last. 09:38:08 > assert not self._finalizers 09:38:08 ^^^^^^^^^^^^^^^^^^^^ 09:38:08 E AssertionError 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:1221: AssertionError 09:38:08 _ ERROR at setup of TestTransportPCERenderer.test_10_service_path_delete_network_check_optical_port _ 09:38:08 09:38:08 cls = 09:38:08 func = . at 0x7f65e618bec0> 09:38:08 when = 'setup' 09:38:08 reraise = (, ) 09:38:08 09:38:08 @classmethod 09:38:08 def from_call( 09:38:08 cls, 09:38:08 func: Callable[[], TResult], 09:38:08 when: Literal["collect", "setup", "call", "teardown"], 09:38:08 reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None, 09:38:08 ) -> CallInfo[TResult]: 09:38:08 """Call func, wrapping the result in a CallInfo. 09:38:08 09:38:08 :param func: 09:38:08 The function to call. Called without arguments. 09:38:08 :type func: Callable[[], _pytest.runner.TResult] 09:38:08 :param when: 09:38:08 The phase in which the function is called. 09:38:08 :param reraise: 09:38:08 Exception or exceptions that shall propagate if raised by the 09:38:08 function, instead of being wrapped in the CallInfo. 09:38:08 """ 09:38:08 excinfo = None 09:38:08 instant = timing.Instant() 09:38:08 try: 09:38:08 > result: TResult | None = func() 09:38:08 ^^^^^^ 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:361: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:250: in 09:38:08 lambda: runtest_hook(item=item, **kwds), 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__ 09:38:08 return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec 09:38:08 return self._inner_hookexec(hook_name, methods, kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/logging.py:858: in pytest_runtest_setup 09:38:08 yield 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/capture.py:895: in pytest_runtest_setup 09:38:08 return (yield) 09:38:08 ^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:170: in pytest_runtest_setup 09:38:08 item.session._setupstate.setup(item) 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:536: in setup 09:38:08 col.setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/unittest.py:248: in setup 09:38:08 super().setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/python.py:1710: in setup 09:38:08 self._request._fillfixtures() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:806: in _fillfixtures 09:38:08 item.funcargs[argname] = self.getfixturevalue(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:630: in getfixturevalue 09:38:08 fixturedef = self._get_active_fixturedef(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:726: in _get_active_fixturedef 09:38:08 fixturedef.execute(request=subrequest) 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 self = 09:38:08 request = > 09:38:08 09:38:08 def execute(self, request: SubRequest) -> FixtureValue: 09:38:08 """Return the value of this fixture, executing it if not cached.""" 09:38:08 # Ensure that the dependent fixtures requested by this fixture are loaded. 09:38:08 # This needs to be done before checking if we have a cached value, since 09:38:08 # if a dependent fixture has their cache invalidated, e.g. due to 09:38:08 # parametrization, they finalize themselves and fixtures depending on it 09:38:08 # (which will likely include this fixture) setting `self.cached_result = None`. 09:38:08 # See #4871 09:38:08 requested_fixtures_that_should_finalize_us = [] 09:38:08 for argname in self.argnames: 09:38:08 fixturedef = request._get_active_fixturedef(argname) 09:38:08 # Saves requested fixtures in a list so we later can add our finalizer 09:38:08 # to them, ensuring that if a requested fixture gets torn down we get torn 09:38:08 # down first. This is generally handled by SetupState, but still currently 09:38:08 # needed when this fixture is not parametrized but depends on a parametrized 09:38:08 # fixture. 09:38:08 requested_fixtures_that_should_finalize_us.append(fixturedef) 09:38:08 09:38:08 # Check for (and return) cached value/exception. 09:38:08 if self.cached_result is not None: 09:38:08 request_cache_key = self.cache_key(request) 09:38:08 cache_key = self.cached_result[1] 09:38:08 try: 09:38:08 # Attempt to make a normal == check: this might fail for objects 09:38:08 # which do not implement the standard comparison (like numpy arrays -- #6497). 09:38:08 cache_hit = bool(request_cache_key == cache_key) 09:38:08 except (ValueError, RuntimeError): 09:38:08 # If the comparison raises, use 'is' as fallback. 09:38:08 cache_hit = request_cache_key is cache_key 09:38:08 09:38:08 if cache_hit: 09:38:08 if self.cached_result[2] is not None: 09:38:08 exc, exc_tb = self.cached_result[2] 09:38:08 raise exc.with_traceback(exc_tb) 09:38:08 else: 09:38:08 return self.cached_result[0] 09:38:08 # We have a previous but differently parametrized fixture instance 09:38:08 # so we need to tear it down before creating a new one. 09:38:08 self.finish(request) 09:38:08 assert self.cached_result is None 09:38:08 09:38:08 # Add finalizer to requested fixtures we saved previously. 09:38:08 # We make sure to do this after checking for cached value to avoid 09:38:08 # adding our finalizer multiple times. (#12135) 09:38:08 finalizer = functools.partial(self.finish, request=request) 09:38:08 for parent_fixture in requested_fixtures_that_should_finalize_us: 09:38:08 parent_fixture.addfinalizer(finalizer) 09:38:08 09:38:08 # Register the pytest_fixture_post_finalizer as the first finalizer, 09:38:08 # which is executed last. 09:38:08 > assert not self._finalizers 09:38:08 ^^^^^^^^^^^^^^^^^^^^ 09:38:08 E AssertionError 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:1221: AssertionError 09:38:08 __ ERROR at setup of TestTransportPCERenderer.test_11_get_portmapping_CLIENT1 __ 09:38:08 09:38:08 cls = 09:38:08 func = . at 0x7f65e6232480> 09:38:08 when = 'setup' 09:38:08 reraise = (, ) 09:38:08 09:38:08 @classmethod 09:38:08 def from_call( 09:38:08 cls, 09:38:08 func: Callable[[], TResult], 09:38:08 when: Literal["collect", "setup", "call", "teardown"], 09:38:08 reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None, 09:38:08 ) -> CallInfo[TResult]: 09:38:08 """Call func, wrapping the result in a CallInfo. 09:38:08 09:38:08 :param func: 09:38:08 The function to call. Called without arguments. 09:38:08 :type func: Callable[[], _pytest.runner.TResult] 09:38:08 :param when: 09:38:08 The phase in which the function is called. 09:38:08 :param reraise: 09:38:08 Exception or exceptions that shall propagate if raised by the 09:38:08 function, instead of being wrapped in the CallInfo. 09:38:08 """ 09:38:08 excinfo = None 09:38:08 instant = timing.Instant() 09:38:08 try: 09:38:08 > result: TResult | None = func() 09:38:08 ^^^^^^ 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:361: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:250: in 09:38:08 lambda: runtest_hook(item=item, **kwds), 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__ 09:38:08 return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec 09:38:08 return self._inner_hookexec(hook_name, methods, kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/logging.py:858: in pytest_runtest_setup 09:38:08 yield 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/capture.py:895: in pytest_runtest_setup 09:38:08 return (yield) 09:38:08 ^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:170: in pytest_runtest_setup 09:38:08 item.session._setupstate.setup(item) 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:536: in setup 09:38:08 col.setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/unittest.py:248: in setup 09:38:08 super().setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/python.py:1710: in setup 09:38:08 self._request._fillfixtures() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:806: in _fillfixtures 09:38:08 item.funcargs[argname] = self.getfixturevalue(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:630: in getfixturevalue 09:38:08 fixturedef = self._get_active_fixturedef(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:726: in _get_active_fixturedef 09:38:08 fixturedef.execute(request=subrequest) 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 self = 09:38:08 request = > 09:38:08 09:38:08 def execute(self, request: SubRequest) -> FixtureValue: 09:38:08 """Return the value of this fixture, executing it if not cached.""" 09:38:08 # Ensure that the dependent fixtures requested by this fixture are loaded. 09:38:08 # This needs to be done before checking if we have a cached value, since 09:38:08 # if a dependent fixture has their cache invalidated, e.g. due to 09:38:08 # parametrization, they finalize themselves and fixtures depending on it 09:38:08 # (which will likely include this fixture) setting `self.cached_result = None`. 09:38:08 # See #4871 09:38:08 requested_fixtures_that_should_finalize_us = [] 09:38:08 for argname in self.argnames: 09:38:08 fixturedef = request._get_active_fixturedef(argname) 09:38:08 # Saves requested fixtures in a list so we later can add our finalizer 09:38:08 # to them, ensuring that if a requested fixture gets torn down we get torn 09:38:08 # down first. This is generally handled by SetupState, but still currently 09:38:08 # needed when this fixture is not parametrized but depends on a parametrized 09:38:08 # fixture. 09:38:08 requested_fixtures_that_should_finalize_us.append(fixturedef) 09:38:08 09:38:08 # Check for (and return) cached value/exception. 09:38:08 if self.cached_result is not None: 09:38:08 request_cache_key = self.cache_key(request) 09:38:08 cache_key = self.cached_result[1] 09:38:08 try: 09:38:08 # Attempt to make a normal == check: this might fail for objects 09:38:08 # which do not implement the standard comparison (like numpy arrays -- #6497). 09:38:08 cache_hit = bool(request_cache_key == cache_key) 09:38:08 except (ValueError, RuntimeError): 09:38:08 # If the comparison raises, use 'is' as fallback. 09:38:08 cache_hit = request_cache_key is cache_key 09:38:08 09:38:08 if cache_hit: 09:38:08 if self.cached_result[2] is not None: 09:38:08 exc, exc_tb = self.cached_result[2] 09:38:08 raise exc.with_traceback(exc_tb) 09:38:08 else: 09:38:08 return self.cached_result[0] 09:38:08 # We have a previous but differently parametrized fixture instance 09:38:08 # so we need to tear it down before creating a new one. 09:38:08 self.finish(request) 09:38:08 assert self.cached_result is None 09:38:08 09:38:08 # Add finalizer to requested fixtures we saved previously. 09:38:08 # We make sure to do this after checking for cached value to avoid 09:38:08 # adding our finalizer multiple times. (#12135) 09:38:08 finalizer = functools.partial(self.finish, request=request) 09:38:08 for parent_fixture in requested_fixtures_that_should_finalize_us: 09:38:08 parent_fixture.addfinalizer(finalizer) 09:38:08 09:38:08 # Register the pytest_fixture_post_finalizer as the first finalizer, 09:38:08 # which is executed last. 09:38:08 > assert not self._finalizers 09:38:08 ^^^^^^^^^^^^^^^^^^^^ 09:38:08 E AssertionError 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:1221: AssertionError 09:38:08 _ ERROR at setup of TestTransportPCERenderer.test_12_service_path_create_client _ 09:38:08 09:38:08 cls = 09:38:08 func = . at 0x7f65e6231f80> 09:38:08 when = 'setup' 09:38:08 reraise = (, ) 09:38:08 09:38:08 @classmethod 09:38:08 def from_call( 09:38:08 cls, 09:38:08 func: Callable[[], TResult], 09:38:08 when: Literal["collect", "setup", "call", "teardown"], 09:38:08 reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None, 09:38:08 ) -> CallInfo[TResult]: 09:38:08 """Call func, wrapping the result in a CallInfo. 09:38:08 09:38:08 :param func: 09:38:08 The function to call. Called without arguments. 09:38:08 :type func: Callable[[], _pytest.runner.TResult] 09:38:08 :param when: 09:38:08 The phase in which the function is called. 09:38:08 :param reraise: 09:38:08 Exception or exceptions that shall propagate if raised by the 09:38:08 function, instead of being wrapped in the CallInfo. 09:38:08 """ 09:38:08 excinfo = None 09:38:08 instant = timing.Instant() 09:38:08 try: 09:38:08 > result: TResult | None = func() 09:38:08 ^^^^^^ 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:361: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:250: in 09:38:08 lambda: runtest_hook(item=item, **kwds), 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__ 09:38:08 return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec 09:38:08 return self._inner_hookexec(hook_name, methods, kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/logging.py:858: in pytest_runtest_setup 09:38:08 yield 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/capture.py:895: in pytest_runtest_setup 09:38:08 return (yield) 09:38:08 ^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:170: in pytest_runtest_setup 09:38:08 item.session._setupstate.setup(item) 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:536: in setup 09:38:08 col.setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/unittest.py:248: in setup 09:38:08 super().setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/python.py:1710: in setup 09:38:08 self._request._fillfixtures() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:806: in _fillfixtures 09:38:08 item.funcargs[argname] = self.getfixturevalue(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:630: in getfixturevalue 09:38:08 fixturedef = self._get_active_fixturedef(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:726: in _get_active_fixturedef 09:38:08 fixturedef.execute(request=subrequest) 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 self = 09:38:08 request = > 09:38:08 09:38:08 def execute(self, request: SubRequest) -> FixtureValue: 09:38:08 """Return the value of this fixture, executing it if not cached.""" 09:38:08 # Ensure that the dependent fixtures requested by this fixture are loaded. 09:38:08 # This needs to be done before checking if we have a cached value, since 09:38:08 # if a dependent fixture has their cache invalidated, e.g. due to 09:38:08 # parametrization, they finalize themselves and fixtures depending on it 09:38:08 # (which will likely include this fixture) setting `self.cached_result = None`. 09:38:08 # See #4871 09:38:08 requested_fixtures_that_should_finalize_us = [] 09:38:08 for argname in self.argnames: 09:38:08 fixturedef = request._get_active_fixturedef(argname) 09:38:08 # Saves requested fixtures in a list so we later can add our finalizer 09:38:08 # to them, ensuring that if a requested fixture gets torn down we get torn 09:38:08 # down first. This is generally handled by SetupState, but still currently 09:38:08 # needed when this fixture is not parametrized but depends on a parametrized 09:38:08 # fixture. 09:38:08 requested_fixtures_that_should_finalize_us.append(fixturedef) 09:38:08 09:38:08 # Check for (and return) cached value/exception. 09:38:08 if self.cached_result is not None: 09:38:08 request_cache_key = self.cache_key(request) 09:38:08 cache_key = self.cached_result[1] 09:38:08 try: 09:38:08 # Attempt to make a normal == check: this might fail for objects 09:38:08 # which do not implement the standard comparison (like numpy arrays -- #6497). 09:38:08 cache_hit = bool(request_cache_key == cache_key) 09:38:08 except (ValueError, RuntimeError): 09:38:08 # If the comparison raises, use 'is' as fallback. 09:38:08 cache_hit = request_cache_key is cache_key 09:38:08 09:38:08 if cache_hit: 09:38:08 if self.cached_result[2] is not None: 09:38:08 exc, exc_tb = self.cached_result[2] 09:38:08 raise exc.with_traceback(exc_tb) 09:38:08 else: 09:38:08 return self.cached_result[0] 09:38:08 # We have a previous but differently parametrized fixture instance 09:38:08 # so we need to tear it down before creating a new one. 09:38:08 self.finish(request) 09:38:08 assert self.cached_result is None 09:38:08 09:38:08 # Add finalizer to requested fixtures we saved previously. 09:38:08 # We make sure to do this after checking for cached value to avoid 09:38:08 # adding our finalizer multiple times. (#12135) 09:38:08 finalizer = functools.partial(self.finish, request=request) 09:38:08 for parent_fixture in requested_fixtures_that_should_finalize_us: 09:38:08 parent_fixture.addfinalizer(finalizer) 09:38:08 09:38:08 # Register the pytest_fixture_post_finalizer as the first finalizer, 09:38:08 # which is executed last. 09:38:08 > assert not self._finalizers 09:38:08 ^^^^^^^^^^^^^^^^^^^^ 09:38:08 E AssertionError 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:1221: AssertionError 09:38:08 _ ERROR at setup of TestTransportPCERenderer.test_13_service_path_create_client_check_optical_port _ 09:38:08 09:38:08 cls = 09:38:08 func = . at 0x7f65e688a340> 09:38:08 when = 'setup' 09:38:08 reraise = (, ) 09:38:08 09:38:08 @classmethod 09:38:08 def from_call( 09:38:08 cls, 09:38:08 func: Callable[[], TResult], 09:38:08 when: Literal["collect", "setup", "call", "teardown"], 09:38:08 reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None, 09:38:08 ) -> CallInfo[TResult]: 09:38:08 """Call func, wrapping the result in a CallInfo. 09:38:08 09:38:08 :param func: 09:38:08 The function to call. Called without arguments. 09:38:08 :type func: Callable[[], _pytest.runner.TResult] 09:38:08 :param when: 09:38:08 The phase in which the function is called. 09:38:08 :param reraise: 09:38:08 Exception or exceptions that shall propagate if raised by the 09:38:08 function, instead of being wrapped in the CallInfo. 09:38:08 """ 09:38:08 excinfo = None 09:38:08 instant = timing.Instant() 09:38:08 try: 09:38:08 > result: TResult | None = func() 09:38:08 ^^^^^^ 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:361: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:250: in 09:38:08 lambda: runtest_hook(item=item, **kwds), 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__ 09:38:08 return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec 09:38:08 return self._inner_hookexec(hook_name, methods, kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/logging.py:858: in pytest_runtest_setup 09:38:08 yield 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/capture.py:895: in pytest_runtest_setup 09:38:08 return (yield) 09:38:08 ^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:170: in pytest_runtest_setup 09:38:08 item.session._setupstate.setup(item) 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:536: in setup 09:38:08 col.setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/unittest.py:248: in setup 09:38:08 super().setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/python.py:1710: in setup 09:38:08 self._request._fillfixtures() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:806: in _fillfixtures 09:38:08 item.funcargs[argname] = self.getfixturevalue(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:630: in getfixturevalue 09:38:08 fixturedef = self._get_active_fixturedef(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:726: in _get_active_fixturedef 09:38:08 fixturedef.execute(request=subrequest) 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 self = 09:38:08 request = > 09:38:08 09:38:08 def execute(self, request: SubRequest) -> FixtureValue: 09:38:08 """Return the value of this fixture, executing it if not cached.""" 09:38:08 # Ensure that the dependent fixtures requested by this fixture are loaded. 09:38:08 # This needs to be done before checking if we have a cached value, since 09:38:08 # if a dependent fixture has their cache invalidated, e.g. due to 09:38:08 # parametrization, they finalize themselves and fixtures depending on it 09:38:08 # (which will likely include this fixture) setting `self.cached_result = None`. 09:38:08 # See #4871 09:38:08 requested_fixtures_that_should_finalize_us = [] 09:38:08 for argname in self.argnames: 09:38:08 fixturedef = request._get_active_fixturedef(argname) 09:38:08 # Saves requested fixtures in a list so we later can add our finalizer 09:38:08 # to them, ensuring that if a requested fixture gets torn down we get torn 09:38:08 # down first. This is generally handled by SetupState, but still currently 09:38:08 # needed when this fixture is not parametrized but depends on a parametrized 09:38:08 # fixture. 09:38:08 requested_fixtures_that_should_finalize_us.append(fixturedef) 09:38:08 09:38:08 # Check for (and return) cached value/exception. 09:38:08 if self.cached_result is not None: 09:38:08 request_cache_key = self.cache_key(request) 09:38:08 cache_key = self.cached_result[1] 09:38:08 try: 09:38:08 # Attempt to make a normal == check: this might fail for objects 09:38:08 # which do not implement the standard comparison (like numpy arrays -- #6497). 09:38:08 cache_hit = bool(request_cache_key == cache_key) 09:38:08 except (ValueError, RuntimeError): 09:38:08 # If the comparison raises, use 'is' as fallback. 09:38:08 cache_hit = request_cache_key is cache_key 09:38:08 09:38:08 if cache_hit: 09:38:08 if self.cached_result[2] is not None: 09:38:08 exc, exc_tb = self.cached_result[2] 09:38:08 raise exc.with_traceback(exc_tb) 09:38:08 else: 09:38:08 return self.cached_result[0] 09:38:08 # We have a previous but differently parametrized fixture instance 09:38:08 # so we need to tear it down before creating a new one. 09:38:08 self.finish(request) 09:38:08 assert self.cached_result is None 09:38:08 09:38:08 # Add finalizer to requested fixtures we saved previously. 09:38:08 # We make sure to do this after checking for cached value to avoid 09:38:08 # adding our finalizer multiple times. (#12135) 09:38:08 finalizer = functools.partial(self.finish, request=request) 09:38:08 for parent_fixture in requested_fixtures_that_should_finalize_us: 09:38:08 parent_fixture.addfinalizer(finalizer) 09:38:08 09:38:08 # Register the pytest_fixture_post_finalizer as the first finalizer, 09:38:08 # which is executed last. 09:38:08 > assert not self._finalizers 09:38:08 ^^^^^^^^^^^^^^^^^^^^ 09:38:08 E AssertionError 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:1221: AssertionError 09:38:08 _ ERROR at setup of TestTransportPCERenderer.test_14_service_path_delete_client _ 09:38:08 09:38:08 cls = 09:38:08 func = . at 0x7f65e62334c0> 09:38:08 when = 'setup' 09:38:08 reraise = (, ) 09:38:08 09:38:08 @classmethod 09:38:08 def from_call( 09:38:08 cls, 09:38:08 func: Callable[[], TResult], 09:38:08 when: Literal["collect", "setup", "call", "teardown"], 09:38:08 reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None, 09:38:08 ) -> CallInfo[TResult]: 09:38:08 """Call func, wrapping the result in a CallInfo. 09:38:08 09:38:08 :param func: 09:38:08 The function to call. Called without arguments. 09:38:08 :type func: Callable[[], _pytest.runner.TResult] 09:38:08 :param when: 09:38:08 The phase in which the function is called. 09:38:08 :param reraise: 09:38:08 Exception or exceptions that shall propagate if raised by the 09:38:08 function, instead of being wrapped in the CallInfo. 09:38:08 """ 09:38:08 excinfo = None 09:38:08 instant = timing.Instant() 09:38:08 try: 09:38:08 > result: TResult | None = func() 09:38:08 ^^^^^^ 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:361: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:250: in 09:38:08 lambda: runtest_hook(item=item, **kwds), 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__ 09:38:08 return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec 09:38:08 return self._inner_hookexec(hook_name, methods, kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/logging.py:858: in pytest_runtest_setup 09:38:08 yield 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/capture.py:895: in pytest_runtest_setup 09:38:08 return (yield) 09:38:08 ^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:170: in pytest_runtest_setup 09:38:08 item.session._setupstate.setup(item) 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:536: in setup 09:38:08 col.setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/unittest.py:248: in setup 09:38:08 super().setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/python.py:1710: in setup 09:38:08 self._request._fillfixtures() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:806: in _fillfixtures 09:38:08 item.funcargs[argname] = self.getfixturevalue(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:630: in getfixturevalue 09:38:08 fixturedef = self._get_active_fixturedef(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:726: in _get_active_fixturedef 09:38:08 fixturedef.execute(request=subrequest) 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 self = 09:38:08 request = > 09:38:08 09:38:08 def execute(self, request: SubRequest) -> FixtureValue: 09:38:08 """Return the value of this fixture, executing it if not cached.""" 09:38:08 # Ensure that the dependent fixtures requested by this fixture are loaded. 09:38:08 # This needs to be done before checking if we have a cached value, since 09:38:08 # if a dependent fixture has their cache invalidated, e.g. due to 09:38:08 # parametrization, they finalize themselves and fixtures depending on it 09:38:08 # (which will likely include this fixture) setting `self.cached_result = None`. 09:38:08 # See #4871 09:38:08 requested_fixtures_that_should_finalize_us = [] 09:38:08 for argname in self.argnames: 09:38:08 fixturedef = request._get_active_fixturedef(argname) 09:38:08 # Saves requested fixtures in a list so we later can add our finalizer 09:38:08 # to them, ensuring that if a requested fixture gets torn down we get torn 09:38:08 # down first. This is generally handled by SetupState, but still currently 09:38:08 # needed when this fixture is not parametrized but depends on a parametrized 09:38:08 # fixture. 09:38:08 requested_fixtures_that_should_finalize_us.append(fixturedef) 09:38:08 09:38:08 # Check for (and return) cached value/exception. 09:38:08 if self.cached_result is not None: 09:38:08 request_cache_key = self.cache_key(request) 09:38:08 cache_key = self.cached_result[1] 09:38:08 try: 09:38:08 # Attempt to make a normal == check: this might fail for objects 09:38:08 # which do not implement the standard comparison (like numpy arrays -- #6497). 09:38:08 cache_hit = bool(request_cache_key == cache_key) 09:38:08 except (ValueError, RuntimeError): 09:38:08 # If the comparison raises, use 'is' as fallback. 09:38:08 cache_hit = request_cache_key is cache_key 09:38:08 09:38:08 if cache_hit: 09:38:08 if self.cached_result[2] is not None: 09:38:08 exc, exc_tb = self.cached_result[2] 09:38:08 raise exc.with_traceback(exc_tb) 09:38:08 else: 09:38:08 return self.cached_result[0] 09:38:08 # We have a previous but differently parametrized fixture instance 09:38:08 # so we need to tear it down before creating a new one. 09:38:08 self.finish(request) 09:38:08 assert self.cached_result is None 09:38:08 09:38:08 # Add finalizer to requested fixtures we saved previously. 09:38:08 # We make sure to do this after checking for cached value to avoid 09:38:08 # adding our finalizer multiple times. (#12135) 09:38:08 finalizer = functools.partial(self.finish, request=request) 09:38:08 for parent_fixture in requested_fixtures_that_should_finalize_us: 09:38:08 parent_fixture.addfinalizer(finalizer) 09:38:08 09:38:08 # Register the pytest_fixture_post_finalizer as the first finalizer, 09:38:08 # which is executed last. 09:38:08 > assert not self._finalizers 09:38:08 ^^^^^^^^^^^^^^^^^^^^ 09:38:08 E AssertionError 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:1221: AssertionError 09:38:08 _ ERROR at setup of TestTransportPCERenderer.test_15_service_path_delete_client_check_optical_port _ 09:38:08 09:38:08 cls = 09:38:08 func = . at 0x7f65e688a340> 09:38:08 when = 'setup' 09:38:08 reraise = (, ) 09:38:08 09:38:08 @classmethod 09:38:08 def from_call( 09:38:08 cls, 09:38:08 func: Callable[[], TResult], 09:38:08 when: Literal["collect", "setup", "call", "teardown"], 09:38:08 reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None, 09:38:08 ) -> CallInfo[TResult]: 09:38:08 """Call func, wrapping the result in a CallInfo. 09:38:08 09:38:08 :param func: 09:38:08 The function to call. Called without arguments. 09:38:08 :type func: Callable[[], _pytest.runner.TResult] 09:38:08 :param when: 09:38:08 The phase in which the function is called. 09:38:08 :param reraise: 09:38:08 Exception or exceptions that shall propagate if raised by the 09:38:08 function, instead of being wrapped in the CallInfo. 09:38:08 """ 09:38:08 excinfo = None 09:38:08 instant = timing.Instant() 09:38:08 try: 09:38:08 > result: TResult | None = func() 09:38:08 ^^^^^^ 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:361: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:250: in 09:38:08 lambda: runtest_hook(item=item, **kwds), 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__ 09:38:08 return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec 09:38:08 return self._inner_hookexec(hook_name, methods, kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/logging.py:858: in pytest_runtest_setup 09:38:08 yield 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/capture.py:895: in pytest_runtest_setup 09:38:08 return (yield) 09:38:08 ^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:170: in pytest_runtest_setup 09:38:08 item.session._setupstate.setup(item) 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:536: in setup 09:38:08 col.setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/unittest.py:248: in setup 09:38:08 super().setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/python.py:1710: in setup 09:38:08 self._request._fillfixtures() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:806: in _fillfixtures 09:38:08 item.funcargs[argname] = self.getfixturevalue(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:630: in getfixturevalue 09:38:08 fixturedef = self._get_active_fixturedef(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:726: in _get_active_fixturedef 09:38:08 fixturedef.execute(request=subrequest) 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 self = 09:38:08 request = > 09:38:08 09:38:08 def execute(self, request: SubRequest) -> FixtureValue: 09:38:08 """Return the value of this fixture, executing it if not cached.""" 09:38:08 # Ensure that the dependent fixtures requested by this fixture are loaded. 09:38:08 # This needs to be done before checking if we have a cached value, since 09:38:08 # if a dependent fixture has their cache invalidated, e.g. due to 09:38:08 # parametrization, they finalize themselves and fixtures depending on it 09:38:08 # (which will likely include this fixture) setting `self.cached_result = None`. 09:38:08 # See #4871 09:38:08 requested_fixtures_that_should_finalize_us = [] 09:38:08 for argname in self.argnames: 09:38:08 fixturedef = request._get_active_fixturedef(argname) 09:38:08 # Saves requested fixtures in a list so we later can add our finalizer 09:38:08 # to them, ensuring that if a requested fixture gets torn down we get torn 09:38:08 # down first. This is generally handled by SetupState, but still currently 09:38:08 # needed when this fixture is not parametrized but depends on a parametrized 09:38:08 # fixture. 09:38:08 requested_fixtures_that_should_finalize_us.append(fixturedef) 09:38:08 09:38:08 # Check for (and return) cached value/exception. 09:38:08 if self.cached_result is not None: 09:38:08 request_cache_key = self.cache_key(request) 09:38:08 cache_key = self.cached_result[1] 09:38:08 try: 09:38:08 # Attempt to make a normal == check: this might fail for objects 09:38:08 # which do not implement the standard comparison (like numpy arrays -- #6497). 09:38:08 cache_hit = bool(request_cache_key == cache_key) 09:38:08 except (ValueError, RuntimeError): 09:38:08 # If the comparison raises, use 'is' as fallback. 09:38:08 cache_hit = request_cache_key is cache_key 09:38:08 09:38:08 if cache_hit: 09:38:08 if self.cached_result[2] is not None: 09:38:08 exc, exc_tb = self.cached_result[2] 09:38:08 raise exc.with_traceback(exc_tb) 09:38:08 else: 09:38:08 return self.cached_result[0] 09:38:08 # We have a previous but differently parametrized fixture instance 09:38:08 # so we need to tear it down before creating a new one. 09:38:08 self.finish(request) 09:38:08 assert self.cached_result is None 09:38:08 09:38:08 # Add finalizer to requested fixtures we saved previously. 09:38:08 # We make sure to do this after checking for cached value to avoid 09:38:08 # adding our finalizer multiple times. (#12135) 09:38:08 finalizer = functools.partial(self.finish, request=request) 09:38:08 for parent_fixture in requested_fixtures_that_should_finalize_us: 09:38:08 parent_fixture.addfinalizer(finalizer) 09:38:08 09:38:08 # Register the pytest_fixture_post_finalizer as the first finalizer, 09:38:08 # which is executed last. 09:38:08 > assert not self._finalizers 09:38:08 ^^^^^^^^^^^^^^^^^^^^ 09:38:08 E AssertionError 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:1221: AssertionError 09:38:08 ________ ERROR at setup of TestTransportPCERenderer.test_16_disconnect _________ 09:38:08 09:38:08 cls = 09:38:08 func = . at 0x7f65e6189ee0> 09:38:08 when = 'setup' 09:38:08 reraise = (, ) 09:38:08 09:38:08 @classmethod 09:38:08 def from_call( 09:38:08 cls, 09:38:08 func: Callable[[], TResult], 09:38:08 when: Literal["collect", "setup", "call", "teardown"], 09:38:08 reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None, 09:38:08 ) -> CallInfo[TResult]: 09:38:08 """Call func, wrapping the result in a CallInfo. 09:38:08 09:38:08 :param func: 09:38:08 The function to call. Called without arguments. 09:38:08 :type func: Callable[[], _pytest.runner.TResult] 09:38:08 :param when: 09:38:08 The phase in which the function is called. 09:38:08 :param reraise: 09:38:08 Exception or exceptions that shall propagate if raised by the 09:38:08 function, instead of being wrapped in the CallInfo. 09:38:08 """ 09:38:08 excinfo = None 09:38:08 instant = timing.Instant() 09:38:08 try: 09:38:08 > result: TResult | None = func() 09:38:08 ^^^^^^ 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:361: 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:250: in 09:38:08 lambda: runtest_hook(item=item, **kwds), 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__ 09:38:08 return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec 09:38:08 return self._inner_hookexec(hook_name, methods, kwargs, firstresult) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/logging.py:858: in pytest_runtest_setup 09:38:08 yield 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/capture.py:895: in pytest_runtest_setup 09:38:08 return (yield) 09:38:08 ^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:170: in pytest_runtest_setup 09:38:08 item.session._setupstate.setup(item) 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/runner.py:536: in setup 09:38:08 col.setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/unittest.py:248: in setup 09:38:08 super().setup() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/python.py:1710: in setup 09:38:08 self._request._fillfixtures() 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:806: in _fillfixtures 09:38:08 item.funcargs[argname] = self.getfixturevalue(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:630: in getfixturevalue 09:38:08 fixturedef = self._get_active_fixturedef(argname) 09:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:726: in _get_active_fixturedef 09:38:08 fixturedef.execute(request=subrequest) 09:38:08 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 09:38:08 09:38:08 self = 09:38:08 request = > 09:38:08 09:38:08 def execute(self, request: SubRequest) -> FixtureValue: 09:38:08 """Return the value of this fixture, executing it if not cached.""" 09:38:08 # Ensure that the dependent fixtures requested by this fixture are loaded. 09:38:08 # This needs to be done before checking if we have a cached value, since 09:38:08 # if a dependent fixture has their cache invalidated, e.g. due to 09:38:08 # parametrization, they finalize themselves and fixtures depending on it 09:38:08 # (which will likely include this fixture) setting `self.cached_result = None`. 09:38:08 # See #4871 09:38:08 requested_fixtures_that_should_finalize_us = [] 09:38:08 for argname in self.argnames: 09:38:08 fixturedef = request._get_active_fixturedef(argname) 09:38:08 # Saves requested fixtures in a list so we later can add our finalizer 09:38:08 # to them, ensuring that if a requested fixture gets torn down we get torn 09:38:08 # down first. This is generally handled by SetupState, but still currently 09:38:08 # needed when this fixture is not parametrized but depends on a parametrized 09:38:08 # fixture. 09:38:08 requested_fixtures_that_should_finalize_us.append(fixturedef) 09:38:08 09:38:08 # Check for (and return) cached value/exception. 09:38:08 if self.cached_result is not None: 09:38:08 request_cache_key = self.cache_key(request) 09:38:08 cache_key = self.cached_result[1] 09:38:08 try: 09:38:08 # Attempt to make a normal == check: this might fail for objects 09:38:08 # which do not implement the standard comparison (like numpy arrays -- #6497). 09:38:08 cache_hit = bool(request_cache_key == cache_key) 09:38:08 except (ValueError, RuntimeError): 09:38:08 # If the comparison raises, use 'is' as fallback. 09:38:08 cache_hit = request_cache_key is cache_key 09:38:08 09:38:08 if cache_hit: 09:38:08 if self.cached_result[2] is not None: 09:38:08 exc, exc_tb = self.cached_result[2] 09:38:08 raise exc.with_traceback(exc_tb) 09:38:08 else: 09:38:08 return self.cached_result[0] 09:38:08 # We have a previous but differently parametrized fixture instance 09:38:08 # so we need to tear it down before creating a new one. 09:38:08 self.finish(request) 09:38:08 assert self.cached_result is None 09:38:08 09:38:08 # Add finalizer to requested fixtures we saved previously. 09:38:08 # We make sure to do this after checking for cached value to avoid 09:38:08 # adding our finalizer multiple times. (#12135) 09:38:08 finalizer = functools.partial(self.finish, request=request) 09:38:08 for parent_fixture in requested_fixtures_that_should_finalize_us: 09:38:08 parent_fixture.addfinalizer(finalizer) 09:38:08 09:38:08 # Register the pytest_fixture_post_finalizer as the first finalizer, 09:38:08 # which is executed last. 09:38:08 > assert not self._finalizers 09:38:08 ^^^^^^^^^^^^^^^^^^^^ 09:38:08 E AssertionError 09:38:08 09:38:08 ../.tox/tests200/lib/python3.11/site-packages/_pytest/fixtures.py:1221: AssertionError 09:38:08 =========================== short test summary info ============================ 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_01_meta_data_insertion 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_02_catalog_input_insertion 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_03_mpdr_device_connection 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_04_mpdr_device_connected 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_05_mpdr_portmapping_NETWORK5 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_06_service_path_create_network 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_07_service_path_create_network_check_optical_channel 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_08_service_path_create_network_check_line_port 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_09_service_path_delete_network 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_10_service_path_delete_network_check_optical_port 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_11_get_portmapping_CLIENT1 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_12_service_path_create_client 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_13_service_path_create_client_check_optical_port 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_14_service_path_delete_client 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_15_service_path_delete_client_check_optical_port 09:38:08 ERROR transportpce_tests/oc200/test03_renderer.py::TestTransportPCERenderer::test_16_disconnect 09:38:08 16 errors in 105.06s (0:01:45) 09:38:08 tests200: exit 1 (234.43 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh oc200 pid=16310 09:38:08 tests200: FAIL ✖ in 4 minutes 3.02 seconds 09:38:08 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 09:38:17 tests71: freeze> python -m pip freeze --all 09:38:17 tests71: bcrypt==5.0.0,certifi==2026.7.22,cffi==2.1.1,charset-normalizer==3.5.1,cryptography==50.0.0,dict2xml==1.7.8,idna==3.19,iniconfig==2.3.0,invoke==3.0.3,lxml==6.1.2,netconf-client==3.6.0,packaging==26.3,paramiko==5.0.0,pip==26.2.1,pluggy==1.6.0,psutil==7.2.2,pycparser==3.0,Pygments==2.21.0,PyNaCl==1.6.2,pytest==9.1.1,requests==2.34.2,setuptools==84.0.0,urllib3==2.7.0 09:38:17 tests71: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 7.1 09:38:17 using environment variables from ./karaf71.env 09:38:17 pytest -q transportpce_tests/7.1/test01_portmapping.py 09:38:21 ................................ [100%] 09:39:07 12 passed in 49.39s 09:39:07 pytest -q transportpce_tests/7.1/test02_otn_renderer.py 09:39:08 ................................... [100%] 09:39:58 44 passed in 144.53s (0:02:24) 09:39:58 pytest -q transportpce_tests/2.2.1/test04_otn_topology.py 09:39:59 .......................................................... [100%] 09:41:46 62 passed in 159.27s (0:02:39) 09:41:46 pytest -q transportpce_tests/7.1/test03_renderer_or_modes.py 09:42:19 .................................................... [100%] 09:44:03 48 passed in 136.90s (0:02:16) 09:44:03 pytest -q transportpce_tests/7.1/test04_renderer_regen_mode.py 09:44:04 . [100%] 09:44:06 12 passed in 248.25s (0:04:08) 09:44:06 pytest -q transportpce_tests/2.2.1/test05_flex_grid.py 09:44:43 ............................ [100%] 09:45:31 22 passed in 86.84s (0:01:26) 09:45:33 .......... [100%] 09:46:18 16 passed in 131.19s (0:02:11) 09:46:18 pytest -q transportpce_tests/2.2.1/test06_renderer_service_path_nominal.py 09:46:50 ............................... [100%] 09:49:56 31 passed in 218.39s (0:03:38) 09:49:56 pytest -q transportpce_tests/2.2.1/test07_otn_renderer.py 09:50:33 .......................... [100%] 09:51:29 26 passed in 92.51s (0:01:32) 09:51:29 pytest -q transportpce_tests/2.2.1/test08_otn_sh_renderer.py 09:52:11 ...................... [100%] 09:53:15 22 passed in 105.47s (0:01:45) 09:53:15 pytest -q transportpce_tests/2.2.1/test09_olm.py 09:54:00 ........................................ [100%] 09:56:22 40 passed in 187.31s (0:03:07) 09:56:23 pytest -q transportpce_tests/2.2.1/test11_otn_end2end.py 09:57:07 ........................................................................ [ 74%] 10:02:45 ......................... [100%] 10:07:37 97 passed in 674.59s (0:11:14) 10:07:37 pytest -q transportpce_tests/2.2.1/test12_end2end.py 10:08:20 ...................................................... [100%] 10:15:08 54 passed in 450.48s (0:07:30) 10:15:08 pytest -q transportpce_tests/2.2.1/test14_otn_switch_end2end.py 10:16:07 ........................................................................ [ 71%] 10:21:17 ............................. [100%] 10:23:26 101 passed in 497.42s (0:08:17) 10:23:26 pytest -q transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py 10:24:25 ........................................................................ [ 67%] 10:30:12 ................................... [100%] 10:33:33 107 passed in 606.79s (0:10:06) 10:33:33 pytest -q transportpce_tests/2.2.1/test16_freq_end2end.py 10:34:19 ............................................. [100%] 10:36:57 45 passed in 204.08s (0:03:24) 10:36:58 tests71: OK ✔ in 7 minutes 22.26 seconds 10:36:58 tests221: OK ✔ in 1 hour 2 minutes 52.05 seconds 10:36: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 10:37:04 tests_hybrid: freeze> python -m pip freeze --all 10:37:04 tests_hybrid: bcrypt==5.0.0,certifi==2026.7.22,cffi==2.1.1,charset-normalizer==3.5.1,cryptography==50.0.0,dict2xml==1.7.8,idna==3.19,iniconfig==2.3.0,invoke==3.0.3,lxml==6.1.2,netconf-client==3.6.0,packaging==26.3,paramiko==5.0.0,pip==26.2.1,pluggy==1.6.0,psutil==7.2.2,pycparser==3.0,Pygments==2.21.0,PyNaCl==1.6.2,pytest==9.1.1,requests==2.34.2,setuptools==84.0.0,urllib3==2.7.0 10:37:04 tests_hybrid: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh hybrid 10:37:04 using environment variables from ./karaf221.env 10:37:04 pytest -q transportpce_tests/hybrid/test01_device_change_notifications.py 10:37:49 ................................................... [100%] 10:42:38 51 passed in 333.20s (0:05:33) 10:42:38 pytest -q transportpce_tests/hybrid/test02_B100G_end2end.py 10:43:24 ........................................................................ [ 66%] 10:47:45 ..................................... [100%] 10:49:52 109 passed in 433.67s (0:07:13) 10:49:52 pytest -q transportpce_tests/hybrid/test03_autonomous_reroute.py 10:50:43 ..................................................... [100%] 10:54:17 53 passed in 265.42s (0:04:25) 10:54:17 buildcontroller: OK (114.94=setup[8.51]+cmd[106.43] seconds) 10:54:17 sims: OK (22.66=setup[20.45]+cmd[2.21] seconds) 10:54:17 testsPCE: OK (286.06=setup[47.06]+cmd[238.99] seconds) 10:54:17 build_karaf_tests221: OK (69.87=setup[7.96]+cmd[61.91] seconds) 10:54:17 tests_tapi: OK (1911.94=setup[6.89]+cmd[1905.04] seconds) 10:54:17 tests221: OK (3772.05=setup[8.64]+cmd[3763.41] seconds) 10:54:17 build_karaf_tests71: OK (70.19=setup[7.91]+cmd[62.27] seconds) 10:54:17 tests71: OK (442.26=setup[8.62]+cmd[433.64] seconds) 10:54:17 build_karaf_tests200: OK (71.16=setup[7.96]+cmd[63.20] seconds) 10:54:17 tests200: FAIL code 1 (243.02=setup[8.59]+cmd[234.43] seconds) 10:54:17 tests_hybrid: OK (1040.12=setup[6.90]+cmd[1033.22] seconds) 10:54:17 buildlighty: OK (52.40=setup[7.99]+cmd[44.41] seconds) 10:54:17 docs: OK (20.24=setup[16.03]+cmd[4.21] seconds) 10:54:17 docs-linkcheck: OK (21.22=setup[16.37]+cmd[4.85] seconds) 10:54:17 checkbashisms: OK (3.16=setup[1.88]+cmd[0.00,0.05,1.22] seconds) 10:54:17 pre-commit: OK (72.10=setup[2.98]+cmd[0.00,0.00,59.98,9.14] seconds) 10:54:17 pylint: OK (29.09=setup[3.46]+cmd[25.63] seconds) 10:54:17 evaluation failed :( (7196.32 seconds) 10:54:18 + tox_status=1 10:54:18 + echo '---> Completed tox runs' 10:54:18 ---> Completed tox runs 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/build_karaf_tests200/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=build_karaf_tests200 10:54:18 + cp -r .tox/build_karaf_tests200/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests200 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/build_karaf_tests221/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=build_karaf_tests221 10:54:18 + cp -r .tox/build_karaf_tests221/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests221 10:54:18 + for i in .tox/*/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 ++ echo .tox/build_karaf_tests71/log 10:54:18 + tox_env=build_karaf_tests71 10:54:18 + cp -r .tox/build_karaf_tests71/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests71 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/buildcontroller/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=buildcontroller 10:54:18 + cp -r .tox/buildcontroller/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/buildcontroller 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/buildlighty/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=buildlighty 10:54:18 + cp -r .tox/buildlighty/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/buildlighty 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/checkbashisms/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=checkbashisms 10:54:18 + cp -r .tox/checkbashisms/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/checkbashisms 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/docs-linkcheck/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=docs-linkcheck 10:54:18 + cp -r .tox/docs-linkcheck/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/docs-linkcheck 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/docs/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=docs 10:54:18 + cp -r .tox/docs/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/docs 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/pre-commit/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=pre-commit 10:54:18 + cp -r .tox/pre-commit/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/pre-commit 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/pylint/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=pylint 10:54:18 + cp -r .tox/pylint/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/pylint 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/sims/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=sims 10:54:18 + cp -r .tox/sims/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/sims 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/tests200/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=tests200 10:54:18 + cp -r .tox/tests200/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests200 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/tests221/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=tests221 10:54:18 + cp -r .tox/tests221/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests221 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/tests71/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=tests71 10:54:18 + cp -r .tox/tests71/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests71 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/testsPCE/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=testsPCE 10:54:18 + cp -r .tox/testsPCE/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/testsPCE 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/tests_hybrid/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=tests_hybrid 10:54:18 + cp -r .tox/tests_hybrid/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests_hybrid 10:54:18 + for i in .tox/*/log 10:54:18 ++ echo .tox/tests_tapi/log 10:54:18 ++ awk -F/ '{print $2}' 10:54:18 + tox_env=tests_tapi 10:54:18 + cp -r .tox/tests_tapi/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests_tapi 10:54:18 + DOC_DIR=docs/_build/html 10:54:18 + [[ -d docs/_build/html ]] 10:54:18 + echo '---> Archiving generated docs' 10:54:18 ---> Archiving generated docs 10:54:18 + mv docs/_build/html /w/workspace/transportpce-tox-verify-transportpce-master/archives/docs 10:54:18 + echo '---> tox-run.sh ends' 10:54:18 ---> tox-run.sh ends 10:54:18 + test 1 -eq 0 10:54:18 + exit 1 10:54:18 ++ '[' 1 = 1 ']' 10:54:18 ++ '[' -x /usr/bin/clear_console ']' 10:54:18 ++ /usr/bin/clear_console -q 10:54:18 Build step 'Execute shell' marked build as failure 10:54:18 $ ssh-agent -k 10:54:18 unset SSH_AUTH_SOCK; 10:54:18 unset SSH_AGENT_PID; 10:54:18 echo Agent pid 1563 killed; 10:54:18 [ssh-agent] Stopped. 10:54:18 [PostBuildScript] - [INFO] Executing post build scripts. 10:54:18 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins12256948609010707988.sh 10:54:18 ---> sysstat.sh 10:54:19 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins13695529793001883506.sh 10:54:19 ---> package-listing.sh 10:54:19 ++ facter osfamily 10:54:19 ++ tr '[:upper:]' '[:lower:]' 10:54:19 + OS_FAMILY=debian 10:54:19 + workspace=/w/workspace/transportpce-tox-verify-transportpce-master 10:54:19 + START_PACKAGES=/tmp/packages_start.txt 10:54:19 + END_PACKAGES=/tmp/packages_end.txt 10:54:19 + DIFF_PACKAGES=/tmp/packages_diff.txt 10:54:19 + PACKAGES=/tmp/packages_start.txt 10:54:19 + '[' /w/workspace/transportpce-tox-verify-transportpce-master ']' 10:54:19 + PACKAGES=/tmp/packages_end.txt 10:54:19 + case "${OS_FAMILY}" in 10:54:19 + dpkg -l 10:54:19 + grep '^ii' 10:54:19 + '[' -f /tmp/packages_start.txt ']' 10:54:19 + '[' -f /tmp/packages_end.txt ']' 10:54:19 + diff /tmp/packages_start.txt /tmp/packages_end.txt 10:54:19 + '[' /w/workspace/transportpce-tox-verify-transportpce-master ']' 10:54:19 + mkdir -p /w/workspace/transportpce-tox-verify-transportpce-master/archives/ 10:54:19 + cp -f /tmp/packages_diff.txt /tmp/packages_end.txt /tmp/packages_start.txt /w/workspace/transportpce-tox-verify-transportpce-master/archives/ 10:54:19 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins8596148020085051282.sh 10:54:19 ---> capture-instance-metadata.sh 10:54:19 Setup pyenv: 10:54:19 system 10:54:19 3.8.20 10:54:19 3.9.20 10:54:19 3.10.15 10:54:19 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 10:54:19 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-kYaf from file:/tmp/.os_lf_venv 10:54:19 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 10:54:19 lf-activate-venv(): INFO: Attempting to install with network-safe options... 10:54:21 lf-activate-venv(): INFO: Base packages installed successfully 10:54:21 lf-activate-venv(): INFO: Installing additional packages: lftools 10:54:37 lf-activate-venv(): INFO: Adding /tmp/venv-kYaf/bin to PATH 10:54:37 INFO: Running in OpenStack, capturing instance metadata 10:54:37 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins3552339396178122709.sh 10:54:37 provisioning config files... 10:54:37 Could not find credentials [logs] for transportpce-tox-verify-transportpce-master #5960 10:54:37 copy managed file [jenkins-log-archives-settings] to file:/w/workspace/transportpce-tox-verify-transportpce-master@tmp/config2039603681815218998tmp 10:54:37 Regular expression run condition: Expression=[^.*logs-s3.*], Label=[odl-logs-s3-cloudfront-index] 10:54:37 Run condition [Regular expression match] enabling perform for step [Provide Configuration files] 10:54:37 provisioning config files... 10:54:38 copy managed file [jenkins-s3-log-ship] to file:/home/jenkins/.aws/credentials 10:54:38 [EnvInject] - Injecting environment variables from a build step. 10:54:38 [EnvInject] - Injecting as environment variables the properties content 10:54:38 SERVER_ID=logs 10:54:38 10:54:38 [EnvInject] - Variables injected successfully. 10:54:38 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins14558622260820938516.sh 10:54:38 ---> create-netrc.sh 10:54:38 WARN: Log server credential not found. 10:54:38 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins11558751782295859998.sh 10:54:38 ---> python-tools-install.sh 10:54:38 Setup pyenv: 10:54:38 system 10:54:38 3.8.20 10:54:38 3.9.20 10:54:38 3.10.15 10:54:38 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 10:54:38 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-kYaf from file:/tmp/.os_lf_venv 10:54:38 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 10:54:38 lf-activate-venv(): INFO: Attempting to install with network-safe options... 10:54:40 lf-activate-venv(): INFO: Base packages installed successfully 10:54:40 lf-activate-venv(): INFO: Installing additional packages: lftools 10:54:50 lf-activate-venv(): INFO: Adding /tmp/venv-kYaf/bin to PATH 10:54:50 [transportpce-tox-verify-transportpce-master] $ /bin/sh /tmp/jenkins409654784244991167.sh 10:54:50 ---> uv-install.sh 10:54:50 uv 0.12.5 is already installed 10:54:50 uvx 0.12.5 (x86_64-unknown-linux-gnu) 10:54:50 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins8246151050068590497.sh 10:54:50 ---> sudo-logs.sh 10:54:50 Archiving 'sudo' log.. 10:54:50 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins11584413778255135509.sh 10:54:50 ---> job-cost.sh 10:54:50 INFO: Activating Python virtual environment... 10:54:50 Setup pyenv: 10:54:50 system 10:54:50 3.8.20 10:54:50 3.9.20 10:54:50 3.10.15 10:54:50 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 10:54:50 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-kYaf from file:/tmp/.os_lf_venv 10:54:50 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 10:54:50 lf-activate-venv(): INFO: Attempting to install with network-safe options... 10:54:52 lf-activate-venv(): INFO: Base packages installed successfully 10:54:52 lf-activate-venv(): INFO: Installing additional packages: zipp==1.1.0 python-openstackclient urllib3~=1.26.15 10:54:59 lf-activate-venv(): INFO: Adding /tmp/venv-kYaf/bin to PATH 10:54:59 INFO: No stack-cost file found 10:54:59 INFO: Instance uptime: 7374s 10:54:59 INFO: Fetching instance metadata (attempt 1 of 3)... 10:54:59 DEBUG: URL: http://169.254.169.254/latest/meta-data/instance-type 10:55:00 INFO: Successfully fetched instance metadata 10:55:00 INFO: Instance type: v3-standard-4 10:55:00 INFO: Retrieving pricing info for: v3-standard-4 10:55:00 INFO: Fetching Vexxhost pricing API (attempt 1 of 3)... 10:55:00 DEBUG: URL: https://pricing.vexxhost.net/v1/pricing/v3-standard-4/cost?seconds=7374 10:55:00 INFO: Successfully fetched Vexxhost pricing API 10:55:00 INFO: Retrieved cost: 0.33 10:55:00 INFO: Retrieved resource: v3-standard-4 10:55:00 INFO: Creating archive directory: /w/workspace/transportpce-tox-verify-transportpce-master/archives/cost 10:55:00 INFO: Archiving costs to: /w/workspace/transportpce-tox-verify-transportpce-master/archives/cost.csv 10:55:00 INFO: Successfully archived job cost data 10:55:00 DEBUG: Cost data: transportpce-tox-verify-transportpce-master,5960,2026-08-20 10:55:00,v3-standard-4,7374,0.33,0.00,FAILURE 10:55:00 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins16828208092090994954.sh 10:55:00 ---> logs-deploy.sh 10:55:00 Setup pyenv: 10:55:00 system 10:55:00 3.8.20 10:55:00 3.9.20 10:55:00 3.10.15 10:55:00 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 10:55:00 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-kYaf from file:/tmp/.os_lf_venv 10:55:00 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 10:55:00 lf-activate-venv(): INFO: Attempting to install with network-safe options... 10:55:02 lf-activate-venv(): INFO: Base packages installed successfully 10:55:02 lf-activate-venv(): INFO: Installing additional packages: lftools urllib3~=1.26.15 10:55:12 lf-activate-venv(): INFO: Adding /tmp/venv-kYaf/bin to PATH 10:55:12 WARNING: Nexus logging server not set 10:55:12 INFO: S3 path logs/releng/vex-yul-odl-jenkins-1/transportpce-tox-verify-transportpce-master/5960/ 10:55:12 INFO: archiving logs to S3 10:55:14 ---> uname -a: 10:55:14 Linux prd-ubuntu2204-docker-4c-16g-38985 5.15.0-186-generic #196-Ubuntu SMP Sat Jun 20 16:09:34 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux 10:55:14 10:55:14 10:55:14 ---> lscpu: 10:55:14 Architecture: x86_64 10:55:14 CPU op-mode(s): 32-bit, 64-bit 10:55:14 Address sizes: 40 bits physical, 48 bits virtual 10:55:14 Byte Order: Little Endian 10:55:14 CPU(s): 4 10:55:14 On-line CPU(s) list: 0-3 10:55:14 Vendor ID: AuthenticAMD 10:55:14 Model name: AMD EPYC-Rome Processor 10:55:14 CPU family: 23 10:55:14 Model: 49 10:55:14 Thread(s) per core: 1 10:55:14 Core(s) per socket: 1 10:55:14 Socket(s): 4 10:55:14 Stepping: 0 10:55:14 BogoMIPS: 5599.99 10:55:14 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 10:55:14 Virtualization: AMD-V 10:55:14 Hypervisor vendor: KVM 10:55:14 Virtualization type: full 10:55:14 L1d cache: 128 KiB (4 instances) 10:55:14 L1i cache: 128 KiB (4 instances) 10:55:14 L2 cache: 2 MiB (4 instances) 10:55:14 L3 cache: 64 MiB (4 instances) 10:55:14 NUMA node(s): 1 10:55:14 NUMA node0 CPU(s): 0-3 10:55:14 Vulnerability Gather data sampling: Not affected 10:55:14 Vulnerability Indirect target selection: Not affected 10:55:14 Vulnerability Itlb multihit: Not affected 10:55:14 Vulnerability L1tf: Not affected 10:55:14 Vulnerability Mds: Not affected 10:55:14 Vulnerability Meltdown: Not affected 10:55:14 Vulnerability Mmio stale data: Not affected 10:55:14 Vulnerability Reg file data sampling: Not affected 10:55:14 Vulnerability Retbleed: Mitigation; untrained return thunk; SMT disabled 10:55:14 Vulnerability Spec rstack overflow: Mitigation; SMT disabled 10:55:14 Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl and seccomp 10:55:14 Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization 10:55:14 Vulnerability Spectre v2: Mitigation; Retpolines; IBPB conditional; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI Not affected 10:55:14 Vulnerability Srbds: Not affected 10:55:14 Vulnerability Tsa: Not affected 10:55:14 Vulnerability Tsx async abort: Not affected 10:55:14 Vulnerability Vmscape: Not affected 10:55:14 10:55:14 10:55:14 ---> nproc: 10:55:14 4 10:55:14 10:55:14 10:55:14 ---> df -h: 10:55:14 Filesystem Size Used Avail Use% Mounted on 10:55:14 tmpfs 1.6G 1.1M 1.6G 1% /run 10:55:14 /dev/vda1 78G 17G 61G 22% / 10:55:14 tmpfs 7.9G 0 7.9G 0% /dev/shm 10:55:14 tmpfs 5.0M 0 5.0M 0% /run/lock 10:55:14 /dev/vda15 105M 6.1M 99M 6% /boot/efi 10:55:14 tmpfs 1.6G 4.0K 1.6G 1% /run/user/1001 10:55:14 10:55:14 10:55:14 ---> free -m: 10:55:14 total used free shared buff/cache available 10:55:14 Mem: 15989 706 5719 3 9563 14941 10:55:14 Swap: 1023 0 1023 10:55:14 10:55:14 10:55:14 ---> ip addr: 10:55:14 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 10:55:14 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 10:55:14 inet 127.0.0.1/8 scope host lo 10:55:14 valid_lft forever preferred_lft forever 10:55:14 inet6 ::1/128 scope host 10:55:14 valid_lft forever preferred_lft forever 10:55:14 2: ens3: mtu 1458 qdisc mq state UP group default qlen 1000 10:55:14 link/ether fa:16:3e:f2:29:51 brd ff:ff:ff:ff:ff:ff 10:55:14 altname enp0s3 10:55:14 inet 10.30.170.119/23 metric 100 brd 10.30.171.255 scope global dynamic ens3 10:55:14 valid_lft 79020sec preferred_lft 79020sec 10:55:14 inet6 fe80::f816:3eff:fef2:2951/64 scope link 10:55:14 valid_lft forever preferred_lft forever 10:55:14 3: docker0: mtu 1458 qdisc noqueue state DOWN group default 10:55:14 link/ether 3a:74:bf:9e:7e:b0 brd ff:ff:ff:ff:ff:ff 10:55:14 inet 10.250.0.254/24 brd 10.250.0.255 scope global docker0 10:55:14 valid_lft forever preferred_lft forever 10:55:14 inet6 fe80::3874:bfff:fe9e:7eb0/64 scope link 10:55:14 valid_lft forever preferred_lft forever 10:55:14 10:55:14 10:55:14 ---> sar -b -r -n DEV: 10:55:14 Linux 5.15.0-186-generic (prd-ubuntu2204-docker-4c-16g-38985) 08/20/26 _x86_64_ (4 CPU) 10:55:14 10:55:14 08:52:16 LINUX RESTART (4 CPU) 10:55:14 10:55:14 09:00:05 tps rtps wtps dtps bread/s bwrtn/s bdscd/s 10:55:14 09:10:03 19.12 0.88 17.39 0.85 79.57 1423.18 1062.24 10:55:14 09:20:04 19.85 0.10 4.99 14.76 2.44 169.84 218143.49 10:55:14 09:30:05 7.93 0.00 7.53 0.40 0.01 260.71 657.70 10:55:14 09:40:14 34.64 0.72 32.36 1.55 8.63 2908.23 2337.40 10:55:14 09:50:21 13.84 0.00 13.24 0.59 0.12 376.10 337.26 10:55:14 10:00:28 8.99 0.00 8.66 0.33 0.00 325.70 379.35 10:55:14 10:10:29 5.23 0.00 5.07 0.16 0.00 139.70 67.67 10:55:14 10:20:29 5.13 0.00 4.95 0.19 0.00 155.98 82.40 10:55:14 10:30:33 5.02 0.00 4.85 0.17 0.00 156.29 48.77 10:55:14 10:40:30 8.85 0.00 8.40 0.44 0.03 565.23 121.27 10:55:14 10:50:21 6.20 0.00 5.96 0.24 0.19 190.01 72.04 10:55:14 Average: 12.29 0.16 10.34 1.79 8.24 609.06 20268.76 10:55:14 10:55:14 09:00:05 kbmemfree kbavail kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty 10:55:14 09:10:03 6453320 14367844 1563488 9.55 230904 7524108 2328236 13.36 1937912 7282624 2876 10:55:14 09:20:04 3139132 11068676 4860788 29.69 232888 7536944 5572652 31.99 1965812 10548524 300 10:55:14 09:30:05 1736540 9683748 6244816 38.14 234544 7552916 7013996 40.26 1971732 11956608 276 10:55:14 09:40:14 3897772 12527112 3399956 20.77 255980 8188704 4679920 26.86 2188648 9556084 11800 10:55:14 09:50:21 4928064 13604788 2324184 14.20 258404 8232308 3160716 18.14 2208932 8509236 13000 10:55:14 10:00:28 2629988 11351392 4576056 27.95 259856 8274348 5309020 30.47 2211728 10781500 428 10:55:14 10:10:29 2669640 11409692 4517700 27.59 260460 8291860 5296092 30.40 2212784 10747312 388 10:55:14 10:20:29 1011452 9774688 6151776 37.57 261196 8313648 6890980 39.55 2215012 12395660 540 10:55:14 10:30:33 1057520 9844688 6081832 37.15 261844 8336192 6853376 39.34 2218296 12337956 304 10:55:14 10:40:30 2418528 11339132 4587832 28.02 265920 8456240 5303780 30.44 2226080 10982800 288 10:55:14 10:50:21 3763772 12738048 3190016 19.48 266700 8507560 4466068 25.64 2245136 9616676 25868 10:55:14 Average: 3064157 11609983 4318040 26.37 253518 8110439 5170440 29.68 2145643 10428635 5097 10:55:14 10:55:14 09:00:05 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil 10:55:14 09:10:03 lo 8.90 8.90 6.05 6.05 0.00 0.00 0.00 0.00 10:55:14 09:10:03 ens3 0.68 0.59 0.18 0.15 0.00 0.00 0.00 0.00 10:55:14 09:10:03 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10:55:14 09:20:04 lo 15.28 15.28 8.27 8.27 0.00 0.00 0.00 0.00 10:55:14 09:20:04 ens3 1.57 1.02 0.42 1.18 0.00 0.00 0.00 0.00 10:55:14 09:20:04 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10:55:14 09:30:05 lo 9.76 9.76 6.08 6.08 0.00 0.00 0.00 0.00 10:55:14 09:30:05 ens3 0.59 0.36 0.12 0.08 0.00 0.00 0.00 0.00 10:55:14 09:30:05 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10:55:14 09:40:14 lo 12.45 12.45 10.68 10.68 0.00 0.00 0.00 0.00 10:55:14 09:40:14 ens3 1.57 1.31 0.45 0.53 0.00 0.00 0.00 0.00 10:55:14 09:40:14 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10:55:14 09:50:21 lo 16.19 16.19 6.78 6.78 0.00 0.00 0.00 0.00 10:55:14 09:50:21 ens3 0.88 0.71 0.17 0.14 0.00 0.00 0.00 0.00 10:55:14 09:50:21 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10:55:14 10:00:28 lo 18.58 18.58 10.26 10.26 0.00 0.00 0.00 0.00 10:55:14 10:00:28 ens3 0.93 0.76 0.20 0.16 0.00 0.00 0.00 0.00 10:55:14 10:00:28 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10:55:14 10:10:29 lo 16.94 16.94 6.61 6.61 0.00 0.00 0.00 0.00 10:55:14 10:10:29 ens3 0.54 0.43 0.11 0.08 0.00 0.00 0.00 0.00 10:55:14 10:10:29 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10:55:14 10:20:29 lo 26.50 26.50 11.17 11.17 0.00 0.00 0.00 0.00 10:55:14 10:20:29 ens3 0.68 0.54 0.15 0.12 0.00 0.00 0.00 0.00 10:55:14 10:20:29 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10:55:14 10:30:33 lo 17.02 17.02 9.75 9.75 0.00 0.00 0.00 0.00 10:55:14 10:30:33 ens3 0.67 0.50 0.13 0.10 0.00 0.00 0.00 0.00 10:55:14 10:30:33 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10:55:14 10:40:30 lo 17.13 17.13 9.25 9.25 0.00 0.00 0.00 0.00 10:55:14 10:40:30 ens3 0.82 0.70 0.22 0.18 0.00 0.00 0.00 0.00 10:55:14 10:40:30 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10:55:14 10:50:21 lo 17.19 17.19 7.02 7.02 0.00 0.00 0.00 0.00 10:55:14 10:50:21 ens3 0.68 0.53 0.14 0.11 0.00 0.00 0.00 0.00 10:55:14 10:50:21 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10:55:14 Average: lo 15.99 15.99 8.36 8.36 0.00 0.00 0.00 0.00 10:55:14 Average: ens3 0.87 0.68 0.21 0.26 0.00 0.00 0.00 0.00 10:55:14 Average: docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10:55:14 10:55:14 10:55:14 ---> sar -P ALL: 10:55:14 Linux 5.15.0-186-generic (prd-ubuntu2204-docker-4c-16g-38985) 08/20/26 _x86_64_ (4 CPU) 10:55:14 10:55:14 08:52:16 LINUX RESTART (4 CPU) 10:55:14 10:55:14 09:00:05 CPU %user %nice %system %iowait %steal %idle 10:55:14 09:10:03 all 20.23 0.00 0.78 0.52 0.09 78.38 10:55:14 09:10:03 0 20.50 0.00 0.79 0.11 0.09 78.50 10:55:14 09:10:03 1 19.46 0.00 0.79 0.35 0.09 79.30 10:55:14 09:10:03 2 20.48 0.00 0.77 1.22 0.10 77.44 10:55:14 09:10:03 3 20.46 0.00 0.79 0.40 0.08 78.27 10:55:14 09:20:04 all 14.57 0.00 0.60 0.07 0.08 84.67 10:55:14 09:20:04 0 14.70 0.00 0.60 0.02 0.08 84.61 10:55:14 09:20:04 1 14.56 0.00 0.55 0.02 0.08 84.79 10:55:14 09:20:04 2 14.31 0.00 0.63 0.06 0.09 84.91 10:55:14 09:20:04 3 14.73 0.00 0.62 0.19 0.09 84.38 10:55:14 09:30:05 all 17.78 0.00 0.74 0.25 0.08 81.15 10:55:14 09:30:05 0 17.85 0.00 0.72 0.46 0.08 80.90 10:55:14 09:30:05 1 18.29 0.00 0.78 0.18 0.08 80.68 10:55:14 09:30:05 2 17.87 0.00 0.74 0.20 0.09 81.10 10:55:14 09:30:05 3 17.11 0.00 0.74 0.15 0.08 81.93 10:55:14 09:40:14 all 35.69 0.00 1.35 6.14 0.17 56.66 10:55:14 09:40:14 0 35.15 0.00 1.41 8.01 0.11 55.32 10:55:14 09:40:14 1 36.30 0.00 1.31 0.08 0.33 61.99 10:55:14 09:40:14 2 35.99 0.00 1.37 7.96 0.11 54.57 10:55:14 09:40:14 3 35.31 0.00 1.30 8.50 0.13 54.77 10:55:14 09:50:21 all 21.04 0.00 0.77 0.57 0.08 77.54 10:55:14 09:50:21 0 21.20 0.00 0.76 0.12 0.08 77.84 10:55:14 09:50:21 1 20.35 0.00 0.86 0.10 0.08 78.60 10:55:14 09:50:21 2 21.54 0.00 0.75 0.27 0.08 77.36 10:55:14 09:50:21 3 21.07 0.00 0.72 1.77 0.08 76.35 10:55:14 10:00:28 all 19.36 0.00 0.72 0.45 0.09 79.38 10:55:14 10:00:28 0 19.67 0.00 0.77 0.43 0.09 79.04 10:55:14 10:00:28 1 19.73 0.00 0.75 0.20 0.08 79.23 10:55:14 10:00:28 2 18.94 0.00 0.65 1.07 0.09 79.25 10:55:14 10:00:28 3 19.11 0.00 0.69 0.10 0.08 80.02 10:55:14 10:10:29 all 7.97 0.00 0.36 0.02 0.07 91.57 10:55:14 10:10:29 0 7.59 0.00 0.36 0.05 0.07 91.92 10:55:14 10:10:29 1 8.02 0.00 0.35 0.02 0.07 91.54 10:55:14 10:10:29 2 8.16 0.00 0.35 0.01 0.07 91.41 10:55:14 10:10:29 3 8.12 0.00 0.38 0.01 0.07 91.41 10:55:14 10:20:29 all 11.31 0.00 0.57 0.07 0.08 87.98 10:55:14 10:20:29 0 10.96 0.00 0.64 0.03 0.07 88.29 10:55:14 10:20:29 1 11.57 0.00 0.54 0.14 0.08 87.67 10:55:14 10:20:29 2 11.38 0.00 0.50 0.05 0.08 87.99 10:55:14 10:20:29 3 11.33 0.00 0.58 0.06 0.08 87.96 10:55:14 10:30:33 all 10.75 0.00 0.63 0.03 0.08 88.51 10:55:14 10:30:33 0 10.77 0.00 0.60 0.01 0.07 88.55 10:55:14 10:30:33 1 10.92 0.00 0.77 0.09 0.08 88.13 10:55:14 10:30:33 2 10.59 0.00 0.61 0.01 0.08 88.71 10:55:14 10:30:33 3 10.72 0.00 0.54 0.02 0.08 88.64 10:55:14 10:40:30 all 14.99 0.00 0.63 0.05 0.08 84.25 10:55:14 10:40:30 0 14.53 0.00 0.64 0.04 0.08 84.70 10:55:14 10:40:30 1 15.09 0.00 0.68 0.05 0.08 84.10 10:55:14 10:40:30 2 15.21 0.00 0.56 0.09 0.09 84.06 10:55:14 10:40:30 3 15.12 0.00 0.65 0.02 0.08 84.13 10:55:14 10:50:21 all 12.18 0.00 0.52 0.21 0.08 87.01 10:55:14 10:50:21 0 12.23 0.00 0.58 0.03 0.07 87.08 10:55:14 10:50:21 1 12.36 0.00 0.51 0.57 0.08 86.48 10:55:14 10:50:21 2 11.70 0.00 0.44 0.12 0.07 87.67 10:55:14 10:50:21 3 12.42 0.00 0.57 0.14 0.09 86.79 10:55:14 10:55:14 Average: CPU %user %nice %system %iowait %steal %idle 10:55:14 Average: all 16.93 0.00 0.70 0.77 0.09 81.51 10:55:14 Average: 0 16.87 0.00 0.72 0.86 0.08 81.48 10:55:14 Average: 1 17.01 0.00 0.72 0.16 0.10 82.01 10:55:14 Average: 2 16.96 0.00 0.67 1.02 0.08 81.26 10:55:14 Average: 3 16.89 0.00 0.69 1.04 0.09 81.29 10:55:14 10:55:14 10:55:14