14:54:39 Triggered by Gerrit: https://git.opendaylight.org/gerrit/c/transportpce/+/117008 14:54:39 Running as SYSTEM 14:54:39 [EnvInject] - Loading node environment variables. 14:54:40 Building remotely on prd-ubuntu2204-docker-4c-16g-2903 (ubuntu2204-docker-4c-16g) in workspace /w/workspace/transportpce-tox-verify-transportpce-master 14:54:40 [ssh-agent] Looking for ssh-agent implementation... 14:54:40 [ssh-agent] Exec ssh-agent (binary ssh-agent on a remote machine) 14:54:40 $ ssh-agent 14:54:40 SSH_AUTH_SOCK=/tmp/ssh-XXXXXXBafckd/agent.1568 14:54:40 SSH_AGENT_PID=1570 14:54:40 [ssh-agent] Started. 14:54:40 Running ssh-add (command line suppressed) 14:54:40 Identity added: /w/workspace/transportpce-tox-verify-transportpce-master@tmp/private_key_16677225337316209444.key (/w/workspace/transportpce-tox-verify-transportpce-master@tmp/private_key_16677225337316209444.key) 14:54:40 [ssh-agent] Using credentials jenkins (jenkins-ssh) 14:54:40 The recommended git tool is: NONE 14:54:44 using credential jenkins-ssh 14:54:44 Wiping out workspace first. 14:54:44 Cloning the remote Git repository 14:54:44 Cloning repository git://devvexx.opendaylight.org/mirror/transportpce 14:54:44 > git init /w/workspace/transportpce-tox-verify-transportpce-master # timeout=10 14:54:44 Fetching upstream changes from git://devvexx.opendaylight.org/mirror/transportpce 14:54:44 > git --version # timeout=10 14:54:44 > git --version # 'git version 2.34.1' 14:54:44 using GIT_SSH to set credentials jenkins-ssh 14:54:44 Verifying host key using known hosts file 14:54:44 You're using 'Known hosts file' strategy to verify ssh host keys, but your known_hosts file does not exist, please go to 'Manage Jenkins' -> 'Security' -> 'Git Host Key Verification Configuration' and configure host key verification. 14:54:44 > git fetch --tags --force --progress -- git://devvexx.opendaylight.org/mirror/transportpce +refs/heads/*:refs/remotes/origin/* # timeout=10 14:54:48 > git config remote.origin.url git://devvexx.opendaylight.org/mirror/transportpce # timeout=10 14:54:48 > git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10 14:54:49 > git config remote.origin.url git://devvexx.opendaylight.org/mirror/transportpce # timeout=10 14:54:49 Fetching upstream changes from git://devvexx.opendaylight.org/mirror/transportpce 14:54:49 using GIT_SSH to set credentials jenkins-ssh 14:54:49 Verifying host key using known hosts file 14:54:49 You're using 'Known hosts file' strategy to verify ssh host keys, but your known_hosts file does not exist, please go to 'Manage Jenkins' -> 'Security' -> 'Git Host Key Verification Configuration' and configure host key verification. 14:54:49 > git fetch --tags --force --progress -- git://devvexx.opendaylight.org/mirror/transportpce refs/changes/08/117008/13 # timeout=10 14:54:49 > git rev-parse 9a75349dfef20c208e220e0018a83cb674daf74e^{commit} # timeout=10 14:54:49 JENKINS-19022: warning: possible memory leak due to Git plugin usage; see: https://plugins.jenkins.io/git/#remove-git-plugin-buildsbybranch-builddata-script 14:54:49 Checking out Revision 9a75349dfef20c208e220e0018a83cb674daf74e (refs/changes/08/117008/13) 14:54:49 > git config core.sparsecheckout # timeout=10 14:54:49 > git checkout -f 9a75349dfef20c208e220e0018a83cb674daf74e # timeout=10 14:54:50 Commit message: "Consolidation of TAPI PCE & func tests" 14:54:50 > git rev-parse FETCH_HEAD^{commit} # timeout=10 14:54:50 > git rev-list --no-walk 3bd981e34a025300a905fe7650b46132cb3484f4 # timeout=10 14:54:50 > git remote # timeout=10 14:54:50 > git submodule init # timeout=10 14:54:50 > git submodule sync # timeout=10 14:54:50 > git config --get remote.origin.url # timeout=10 14:54:50 > git submodule init # timeout=10 14:54:50 > git config -f .gitmodules --get-regexp ^submodule\.(.+)\.url # timeout=10 14:54:50 ERROR: No submodules found. 14:54:53 provisioning config files... 14:54:53 copy managed file [npmrc] to file:/home/jenkins/.npmrc 14:54:53 copy managed file [pipconf] to file:/home/jenkins/.config/pip/pip.conf 14:54:53 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins9379608321069787825.sh 14:54:53 ---> python-tools-install.sh 14:54:53 Setup pyenv: 14:54:53 * system (set by /opt/pyenv/version) 14:54:53 * 3.8.20 (set by /opt/pyenv/version) 14:54:53 * 3.9.20 (set by /opt/pyenv/version) 14:54:53 3.10.15 14:54:53 3.11.10 14:54:59 lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-EmAZ 14:54:59 lf-activate-venv(): INFO: Save venv in file: /tmp/.os_lf_venv 14:54:59 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 14:54:59 lf-activate-venv(): INFO: Attempting to install with network-safe options... 14:55:03 lf-activate-venv(): INFO: Base packages installed successfully 14:55:03 lf-activate-venv(): INFO: Installing additional packages: lftools 14:55:35 lf-activate-venv(): INFO: Adding /tmp/venv-EmAZ/bin to PATH 14:55:35 Generating Requirements File 14:55:58 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. 14:55:58 httplib2 0.31.0 requires pyparsing<4,>=3.0.4, but you have pyparsing 2.4.7 which is incompatible. 14:55:58 deprecated 1.2.18 requires wrapt<2,>=1.10, but you have wrapt 2.0.0 which is incompatible. 14:55:59 Python 3.11.10 14:55:59 pip 25.3 from /tmp/venv-EmAZ/lib/python3.11/site-packages/pip (python 3.11) 14:55:59 appdirs==1.4.4 14:55:59 argcomplete==3.6.3 14:55:59 aspy.yaml==1.3.0 14:55:59 attrs==25.4.0 14:55:59 autopage==0.5.2 14:55:59 beautifulsoup4==4.14.2 14:55:59 boto3==1.40.60 14:55:59 botocore==1.40.60 14:55:59 bs4==0.0.2 14:55:59 cachetools==6.2.1 14:55:59 certifi==2025.10.5 14:55:59 cffi==2.0.0 14:55:59 cfgv==3.4.0 14:55:59 chardet==5.2.0 14:55:59 charset-normalizer==3.4.4 14:55:59 click==8.3.0 14:55:59 cliff==4.11.0 14:55:59 cmd2==2.7.0 14:55:59 cryptography==3.3.2 14:55:59 debtcollector==3.0.0 14:55:59 decorator==5.2.1 14:55:59 defusedxml==0.7.1 14:55:59 Deprecated==1.2.18 14:55:59 distlib==0.4.0 14:55:59 dnspython==2.8.0 14:55:59 docker==7.1.0 14:55:59 dogpile.cache==1.5.0 14:55:59 durationpy==0.10 14:55:59 email-validator==2.3.0 14:55:59 filelock==3.20.0 14:55:59 future==1.0.0 14:55:59 gitdb==4.0.12 14:55:59 GitPython==3.1.45 14:55:59 google-auth==2.41.1 14:55:59 httplib2==0.31.0 14:55:59 identify==2.6.15 14:55:59 idna==3.11 14:55:59 importlib-resources==1.5.0 14:55:59 iso8601==2.1.0 14:55:59 Jinja2==3.1.6 14:55:59 jmespath==1.0.1 14:55:59 jsonpatch==1.33 14:55:59 jsonpointer==3.0.0 14:55:59 jsonschema==4.25.1 14:55:59 jsonschema-specifications==2025.9.1 14:55:59 keystoneauth1==5.12.0 14:55:59 kubernetes==34.1.0 14:55:59 lftools==0.37.15 14:55:59 lxml==6.0.2 14:55:59 markdown-it-py==4.0.0 14:55:59 MarkupSafe==3.0.3 14:55:59 mdurl==0.1.2 14:55:59 msgpack==1.1.2 14:55:59 multi_key_dict==2.0.3 14:55:59 munch==4.0.0 14:55:59 netaddr==1.3.0 14:55:59 niet==1.4.2 14:55:59 nodeenv==1.9.1 14:55:59 oauth2client==4.1.3 14:55:59 oauthlib==3.3.1 14:55:59 openstacksdk==4.7.1 14:55:59 os-service-types==1.8.0 14:55:59 osc-lib==4.2.0 14:55:59 oslo.config==10.0.0 14:55:59 oslo.context==6.1.0 14:55:59 oslo.i18n==6.6.0 14:55:59 oslo.log==7.2.1 14:55:59 oslo.serialization==5.8.0 14:55:59 oslo.utils==9.1.0 14:55:59 packaging==25.0 14:55:59 pbr==7.0.1 14:55:59 platformdirs==4.5.0 14:55:59 prettytable==3.16.0 14:55:59 psutil==7.1.2 14:55:59 pyasn1==0.6.1 14:55:59 pyasn1_modules==0.4.2 14:55:59 pycparser==2.23 14:55:59 pygerrit2==2.0.15 14:55:59 PyGithub==2.8.1 14:55:59 Pygments==2.19.2 14:55:59 PyJWT==2.10.1 14:55:59 PyNaCl==1.6.0 14:55:59 pyparsing==2.4.7 14:55:59 pyperclip==1.11.0 14:55:59 pyrsistent==0.20.0 14:55:59 python-cinderclient==9.8.0 14:55:59 python-dateutil==2.9.0.post0 14:55:59 python-heatclient==4.3.0 14:55:59 python-jenkins==1.8.3 14:55:59 python-keystoneclient==5.7.0 14:55:59 python-magnumclient==4.9.0 14:55:59 python-openstackclient==8.2.0 14:55:59 python-swiftclient==4.8.0 14:55:59 PyYAML==6.0.3 14:55:59 referencing==0.37.0 14:55:59 requests==2.32.5 14:55:59 requests-oauthlib==2.0.0 14:55:59 requestsexceptions==1.4.0 14:55:59 rfc3986==2.0.0 14:55:59 rich==14.2.0 14:55:59 rich-argparse==1.7.1 14:55:59 rpds-py==0.28.0 14:55:59 rsa==4.9.1 14:55:59 ruamel.yaml==0.18.16 14:55:59 ruamel.yaml.clib==0.2.14 14:55:59 s3transfer==0.14.0 14:55:59 simplejson==3.20.2 14:55:59 six==1.17.0 14:55:59 smmap==5.0.2 14:55:59 soupsieve==2.8 14:55:59 stevedore==5.5.0 14:55:59 tabulate==0.9.0 14:55:59 toml==0.10.2 14:55:59 tomlkit==0.13.3 14:55:59 tqdm==4.67.1 14:55:59 typing_extensions==4.15.0 14:55:59 tzdata==2025.2 14:55:59 urllib3==1.26.20 14:55:59 virtualenv==20.35.3 14:55:59 wcwidth==0.2.14 14:55:59 websocket-client==1.9.0 14:55:59 wrapt==2.0.0 14:55:59 xdg==6.0.0 14:55:59 xmltodict==1.0.2 14:55:59 yq==3.4.3 14:55:59 [EnvInject] - Injecting environment variables from a build step. 14:55:59 [EnvInject] - Injecting as environment variables the properties content 14:55:59 PYTHON=python3 14:55:59 14:55:59 [EnvInject] - Variables injected successfully. 14:55:59 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins9091473549307998386.sh 14:55:59 ---> tox-install.sh 14:55:59 + source /home/jenkins/lf-env.sh 14:55:59 + lf-activate-venv --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 14:55:59 ++ mktemp -d /tmp/venv-XXXX 14:55:59 + lf_venv=/tmp/venv-CvVY 14:55:59 + local venv_file=/tmp/.os_lf_venv 14:55:59 + local python=python3 14:55:59 + local options 14:55:59 + local set_path=true 14:55:59 + local install_args= 14:55:59 ++ 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 14:55:59 + options=' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 14:55:59 + eval set -- ' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 14:55:59 ++ set -- --venv-file /tmp/.toxenv -- tox virtualenv urllib3~=1.26.15 14:55:59 + true 14:55:59 + case $1 in 14:55:59 + venv_file=/tmp/.toxenv 14:55:59 + shift 2 14:55:59 + true 14:55:59 + case $1 in 14:55:59 + shift 14:55:59 + break 14:55:59 + case $python in 14:55:59 + local pkg_list= 14:55:59 + [[ -d /opt/pyenv ]] 14:55:59 + echo 'Setup pyenv:' 14:55:59 Setup pyenv: 14:55:59 + export PYENV_ROOT=/opt/pyenv 14:55:59 + PYENV_ROOT=/opt/pyenv 14:55:59 + export PATH=/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 14:55:59 + PATH=/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 14:55:59 + pyenv versions 14:55:59 system 14:55:59 3.8.20 14:55:59 3.9.20 14:55:59 3.10.15 14:55:59 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 14:55:59 + command -v pyenv 14:55:59 ++ pyenv init - --no-rehash 14:55:59 + eval 'PATH="$(bash --norc -ec '\''IFS=:; paths=($PATH); 14:55:59 for i in ${!paths[@]}; do 14:55:59 if [[ ${paths[i]} == "'\'''\''/opt/pyenv/shims'\'''\''" ]]; then unset '\''\'\'''\''paths[i]'\''\'\'''\''; 14:55:59 fi; done; 14:55:59 echo "${paths[*]}"'\'')" 14:55:59 export PATH="/opt/pyenv/shims:${PATH}" 14:55:59 export PYENV_SHELL=bash 14:55:59 source '\''/opt/pyenv/libexec/../completions/pyenv.bash'\'' 14:55:59 pyenv() { 14:55:59 local command 14:55:59 command="${1:-}" 14:55:59 if [ "$#" -gt 0 ]; then 14:55:59 shift 14:55:59 fi 14:55:59 14:55:59 case "$command" in 14:55:59 rehash|shell) 14:55:59 eval "$(pyenv "sh-$command" "$@")" 14:55:59 ;; 14:55:59 *) 14:55:59 command pyenv "$command" "$@" 14:55:59 ;; 14:55:59 esac 14:55:59 }' 14:55:59 +++ bash --norc -ec 'IFS=:; paths=($PATH); 14:55:59 for i in ${!paths[@]}; do 14:55:59 if [[ ${paths[i]} == "/opt/pyenv/shims" ]]; then unset '\''paths[i]'\''; 14:55:59 fi; done; 14:55:59 echo "${paths[*]}"' 14:55:59 ++ PATH=/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 14:55:59 ++ export PATH=/opt/pyenv/shims:/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 14:55:59 ++ PATH=/opt/pyenv/shims:/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 14:55:59 ++ export PYENV_SHELL=bash 14:55:59 ++ PYENV_SHELL=bash 14:55:59 ++ source /opt/pyenv/libexec/../completions/pyenv.bash 14:55:59 +++ complete -F _pyenv pyenv 14:55:59 ++ lf-pyver python3 14:55:59 ++ local py_version_xy=python3 14:55:59 ++ local py_version_xyz= 14:55:59 ++ pyenv versions 14:55:59 ++ local command 14:55:59 ++ command=versions 14:55:59 ++ '[' 1 -gt 0 ']' 14:55:59 ++ shift 14:55:59 ++ sed 's/^[ *]* //' 14:55:59 ++ case "$command" in 14:55:59 ++ command pyenv versions 14:55:59 ++ grep -E '^[0-9.]*[0-9]$' 14:55:59 ++ awk '{ print $1 }' 14:55:59 ++ [[ ! -s /tmp/.pyenv_versions ]] 14:55:59 +++ grep '^3' /tmp/.pyenv_versions 14:55:59 +++ sort -V 14:55:59 +++ tail -n 1 14:55:59 ++ py_version_xyz=3.11.10 14:55:59 ++ [[ -z 3.11.10 ]] 14:55:59 ++ echo 3.11.10 14:55:59 ++ return 0 14:55:59 + pyenv local 3.11.10 14:55:59 + local command 14:55:59 + command=local 14:55:59 + '[' 2 -gt 0 ']' 14:55:59 + shift 14:55:59 + case "$command" in 14:55:59 + command pyenv local 3.11.10 14:55:59 + for arg in "$@" 14:55:59 + case $arg in 14:55:59 + pkg_list+='tox ' 14:55:59 + for arg in "$@" 14:55:59 + case $arg in 14:55:59 + pkg_list+='virtualenv ' 14:55:59 + for arg in "$@" 14:55:59 + case $arg in 14:55:59 + pkg_list+='urllib3~=1.26.15 ' 14:55:59 + [[ -f /tmp/.toxenv ]] 14:55:59 + [[ ! -f /tmp/.toxenv ]] 14:55:59 + [[ -n '' ]] 14:55:59 + python3 -m venv /tmp/venv-CvVY 14:56:04 + echo 'lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-CvVY' 14:56:04 lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-CvVY 14:56:04 + echo /tmp/venv-CvVY 14:56:04 + echo 'lf-activate-venv(): INFO: Save venv in file: /tmp/.toxenv' 14:56:04 lf-activate-venv(): INFO: Save venv in file: /tmp/.toxenv 14:56:04 + echo 'lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv)' 14:56:04 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 14:56:04 + local 'pip_opts=--upgrade --quiet' 14:56:04 + pip_opts='--upgrade --quiet --trusted-host pypi.org' 14:56:04 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org' 14:56:04 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org' 14:56:04 + [[ -n '' ]] 14:56:04 + [[ -n '' ]] 14:56:04 + echo 'lf-activate-venv(): INFO: Attempting to install with network-safe options...' 14:56:04 lf-activate-venv(): INFO: Attempting to install with network-safe options... 14:56:04 + /tmp/venv-CvVY/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 14:56:08 + echo 'lf-activate-venv(): INFO: Base packages installed successfully' 14:56:08 lf-activate-venv(): INFO: Base packages installed successfully 14:56:08 + [[ -z tox virtualenv urllib3~=1.26.15 ]] 14:56:08 + echo 'lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 ' 14:56:08 lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 14:56:08 + /tmp/venv-CvVY/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 14:56:10 + type python3 14:56:10 + true 14:56:10 + echo 'lf-activate-venv(): INFO: Adding /tmp/venv-CvVY/bin to PATH' 14:56:10 lf-activate-venv(): INFO: Adding /tmp/venv-CvVY/bin to PATH 14:56:10 + PATH=/tmp/venv-CvVY/bin:/opt/pyenv/shims:/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 14:56:10 + return 0 14:56:10 + python3 --version 14:56:10 Python 3.11.10 14:56:10 + python3 -m pip --version 14:56:10 pip 25.3 from /tmp/venv-CvVY/lib/python3.11/site-packages/pip (python 3.11) 14:56:10 + python3 -m pip freeze 14:56:11 cachetools==6.2.1 14:56:11 chardet==5.2.0 14:56:11 colorama==0.4.6 14:56:11 distlib==0.4.0 14:56:11 filelock==3.20.0 14:56:11 packaging==25.0 14:56:11 platformdirs==4.5.0 14:56:11 pluggy==1.6.0 14:56:11 pyproject-api==1.10.0 14:56:11 tox==4.32.0 14:56:11 urllib3==1.26.20 14:56:11 virtualenv==20.35.3 14:56:11 [transportpce-tox-verify-transportpce-master] $ /bin/sh -xe /tmp/jenkins3409539275672859920.sh 14:56:11 [EnvInject] - Injecting environment variables from a build step. 14:56:11 [EnvInject] - Injecting as environment variables the properties content 14:56:11 PARALLEL=True 14:56:11 14:56:11 [EnvInject] - Variables injected successfully. 14:56:11 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins8581133737631685955.sh 14:56:11 ---> tox-run.sh 14:56:11 + PATH=/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin 14:56:11 + ARCHIVE_TOX_DIR=/w/workspace/transportpce-tox-verify-transportpce-master/archives/tox 14:56:11 + ARCHIVE_DOC_DIR=/w/workspace/transportpce-tox-verify-transportpce-master/archives/docs 14:56:11 + mkdir -p /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox 14:56:11 + cd /w/workspace/transportpce-tox-verify-transportpce-master/. 14:56:11 + source /home/jenkins/lf-env.sh 14:56:11 + lf-activate-venv --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 14:56:11 ++ mktemp -d /tmp/venv-XXXX 14:56:11 + lf_venv=/tmp/venv-jkDz 14:56:11 + local venv_file=/tmp/.os_lf_venv 14:56:11 + local python=python3 14:56:11 + local options 14:56:11 + local set_path=true 14:56:11 + local install_args= 14:56:11 ++ 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 14:56:11 + options=' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 14:56:11 + eval set -- ' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 14:56:11 ++ set -- --venv-file /tmp/.toxenv -- tox virtualenv urllib3~=1.26.15 14:56:11 + true 14:56:11 + case $1 in 14:56:11 + venv_file=/tmp/.toxenv 14:56:11 + shift 2 14:56:11 + true 14:56:11 + case $1 in 14:56:11 + shift 14:56:11 + break 14:56:11 + case $python in 14:56:11 + local pkg_list= 14:56:11 + [[ -d /opt/pyenv ]] 14:56:11 + echo 'Setup pyenv:' 14:56:11 Setup pyenv: 14:56:11 + export PYENV_ROOT=/opt/pyenv 14:56:11 + PYENV_ROOT=/opt/pyenv 14:56:11 + 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 14:56:11 + 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 14:56:11 + pyenv versions 14:56:11 system 14:56:11 3.8.20 14:56:11 3.9.20 14:56:11 3.10.15 14:56:11 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 14:56:11 + command -v pyenv 14:56:11 ++ pyenv init - --no-rehash 14:56:11 + eval 'PATH="$(bash --norc -ec '\''IFS=:; paths=($PATH); 14:56:11 for i in ${!paths[@]}; do 14:56:11 if [[ ${paths[i]} == "'\'''\''/opt/pyenv/shims'\'''\''" ]]; then unset '\''\'\'''\''paths[i]'\''\'\'''\''; 14:56:11 fi; done; 14:56:11 echo "${paths[*]}"'\'')" 14:56:11 export PATH="/opt/pyenv/shims:${PATH}" 14:56:11 export PYENV_SHELL=bash 14:56:11 source '\''/opt/pyenv/libexec/../completions/pyenv.bash'\'' 14:56:11 pyenv() { 14:56:11 local command 14:56:11 command="${1:-}" 14:56:11 if [ "$#" -gt 0 ]; then 14:56:11 shift 14:56:11 fi 14:56:11 14:56:11 case "$command" in 14:56:11 rehash|shell) 14:56:11 eval "$(pyenv "sh-$command" "$@")" 14:56:11 ;; 14:56:11 *) 14:56:11 command pyenv "$command" "$@" 14:56:11 ;; 14:56:11 esac 14:56:11 }' 14:56:11 +++ bash --norc -ec 'IFS=:; paths=($PATH); 14:56:11 for i in ${!paths[@]}; do 14:56:11 if [[ ${paths[i]} == "/opt/pyenv/shims" ]]; then unset '\''paths[i]'\''; 14:56:11 fi; done; 14:56:11 echo "${paths[*]}"' 14:56:11 ++ 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 14:56:11 ++ 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 14:56:11 ++ 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 14:56:11 ++ export PYENV_SHELL=bash 14:56:11 ++ PYENV_SHELL=bash 14:56:11 ++ source /opt/pyenv/libexec/../completions/pyenv.bash 14:56:11 +++ complete -F _pyenv pyenv 14:56:11 ++ lf-pyver python3 14:56:11 ++ local py_version_xy=python3 14:56:11 ++ local py_version_xyz= 14:56:11 ++ pyenv versions 14:56:11 ++ local command 14:56:11 ++ command=versions 14:56:11 ++ '[' 1 -gt 0 ']' 14:56:11 ++ shift 14:56:11 ++ case "$command" in 14:56:11 ++ command pyenv versions 14:56:11 ++ awk '{ print $1 }' 14:56:11 ++ grep -E '^[0-9.]*[0-9]$' 14:56:11 ++ sed 's/^[ *]* //' 14:56:11 ++ [[ ! -s /tmp/.pyenv_versions ]] 14:56:11 +++ grep '^3' /tmp/.pyenv_versions 14:56:11 +++ sort -V 14:56:11 +++ tail -n 1 14:56:11 ++ py_version_xyz=3.11.10 14:56:11 ++ [[ -z 3.11.10 ]] 14:56:11 ++ echo 3.11.10 14:56:11 ++ return 0 14:56:11 + pyenv local 3.11.10 14:56:11 + local command 14:56:11 + command=local 14:56:11 + '[' 2 -gt 0 ']' 14:56:11 + shift 14:56:11 + case "$command" in 14:56:11 + command pyenv local 3.11.10 14:56:11 + for arg in "$@" 14:56:11 + case $arg in 14:56:11 + pkg_list+='tox ' 14:56:11 + for arg in "$@" 14:56:11 + case $arg in 14:56:11 + pkg_list+='virtualenv ' 14:56:11 + for arg in "$@" 14:56:11 + case $arg in 14:56:11 + pkg_list+='urllib3~=1.26.15 ' 14:56:11 + [[ -f /tmp/.toxenv ]] 14:56:11 ++ cat /tmp/.toxenv 14:56:11 + lf_venv=/tmp/venv-CvVY 14:56:11 + echo 'lf-activate-venv(): INFO: Reuse venv:/tmp/venv-CvVY from' file:/tmp/.toxenv 14:56:11 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-CvVY from file:/tmp/.toxenv 14:56:11 + echo 'lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv)' 14:56:11 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 14:56:11 + local 'pip_opts=--upgrade --quiet' 14:56:11 + pip_opts='--upgrade --quiet --trusted-host pypi.org' 14:56:11 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org' 14:56:11 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org' 14:56:11 + [[ -n '' ]] 14:56:11 + [[ -n '' ]] 14:56:11 + echo 'lf-activate-venv(): INFO: Attempting to install with network-safe options...' 14:56:11 lf-activate-venv(): INFO: Attempting to install with network-safe options... 14:56:11 + /tmp/venv-CvVY/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 14:56:12 + echo 'lf-activate-venv(): INFO: Base packages installed successfully' 14:56:12 lf-activate-venv(): INFO: Base packages installed successfully 14:56:12 + [[ -z tox virtualenv urllib3~=1.26.15 ]] 14:56:12 + echo 'lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 ' 14:56:12 lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 14:56:12 + /tmp/venv-CvVY/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 14:56:13 + type python3 14:56:13 + true 14:56:13 + echo 'lf-activate-venv(): INFO: Adding /tmp/venv-CvVY/bin to PATH' 14:56:13 lf-activate-venv(): INFO: Adding /tmp/venv-CvVY/bin to PATH 14:56:13 + PATH=/tmp/venv-CvVY/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 14:56:13 + return 0 14:56:13 + [[ -d /opt/pyenv ]] 14:56:13 + echo '---> Setting up pyenv' 14:56:13 ---> Setting up pyenv 14:56:13 + export PYENV_ROOT=/opt/pyenv 14:56:13 + PYENV_ROOT=/opt/pyenv 14:56:13 + export PATH=/opt/pyenv/bin:/tmp/venv-CvVY/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 14:56:13 + PATH=/opt/pyenv/bin:/tmp/venv-CvVY/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 14:56:13 ++ pwd 14:56:13 + PYTHONPATH=/w/workspace/transportpce-tox-verify-transportpce-master 14:56:13 + export PYTHONPATH 14:56:13 + export TOX_TESTENV_PASSENV=PYTHONPATH 14:56:13 + TOX_TESTENV_PASSENV=PYTHONPATH 14:56:13 + tox --version 14:56:14 4.32.0 from /tmp/venv-CvVY/lib/python3.11/site-packages/tox/__init__.py 14:56:14 + PARALLEL=True 14:56:14 + TOX_OPTIONS_LIST= 14:56:14 + [[ -n '' ]] 14:56:14 + case ${PARALLEL,,} in 14:56:14 + TOX_OPTIONS_LIST=' --parallel auto --parallel-live' 14:56:14 + tox --parallel auto --parallel-live 14:56:14 + tee -a /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tox.log 14:56:15 docs: install_deps> python -I -m pip install -r docs/requirements.txt 14:56:15 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 14:56:15 docs-linkcheck: install_deps> python -I -m pip install -r docs/requirements.txt 14:56:15 checkbashisms: freeze> python -m pip freeze --all 14:56:16 checkbashisms: pip==25.2,setuptools==80.9.0 14:56:16 checkbashisms: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./fixCIcentOS8reposMirrors.sh 14:56:16 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)' 14:56:16 checkbashisms: commands[2] /w/workspace/transportpce-tox-verify-transportpce-master/tests> find . -not -path '*/\.*' -name '*.sh' -exec checkbashisms -f '{}' + 14:56:18 checkbashisms: OK ✔ in 3.64 seconds 14:56:18 pre-commit: install_deps> python -I -m pip install pre-commit 14:56:20 pre-commit: freeze> python -m pip freeze --all 14:56:21 pre-commit: cfgv==3.4.0,distlib==0.4.0,filelock==3.20.0,identify==2.6.15,nodeenv==1.9.1,pip==25.2,platformdirs==4.5.0,pre_commit==4.3.0,PyYAML==6.0.3,setuptools==80.9.0,virtualenv==20.35.3 14:56:21 pre-commit: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./fixCIcentOS8reposMirrors.sh 14:56:21 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)' 14:56:21 /usr/bin/cpan 14:56:21 pre-commit: commands[2] /w/workspace/transportpce-tox-verify-transportpce-master/tests> pre-commit run --all-files --show-diff-on-failure 14:56:21 [WARNING] hook id `remove-tabs` uses deprecated stage names (commit) which will be removed in a future version. run: `pre-commit migrate-config` to automatically fix this. 14:56:21 [WARNING] hook id `perltidy` uses deprecated stage names (commit) which will be removed in a future version. run: `pre-commit migrate-config` to automatically fix this. 14:56:21 [INFO] Initializing environment for https://github.com/pre-commit/pre-commit-hooks. 14:56:22 [WARNING] repo `https://github.com/pre-commit/pre-commit-hooks` uses deprecated stage names (commit, push) which will be removed in a future version. Hint: often `pre-commit autoupdate --repo https://github.com/pre-commit/pre-commit-hooks` will fix this. if it does not -- consider reporting an issue to that repo. 14:56:22 [INFO] Initializing environment for https://github.com/jorisroovers/gitlint. 14:56:22 [INFO] Initializing environment for https://github.com/jorisroovers/gitlint:./gitlint-core[trusted-deps]. 14:56:22 [INFO] Initializing environment for https://github.com/Lucas-C/pre-commit-hooks. 14:56:26 [INFO] Initializing environment for https://github.com/pre-commit/mirrors-autopep8. 14:56:26 [INFO] Initializing environment for https://github.com/perltidy/perltidy. 14:56:26 buildcontroller: freeze> python -m pip freeze --all 14:56:26 buildcontroller: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.2,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 14:56:26 buildcontroller: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_controller.sh 14:56:26 + update-java-alternatives -l 14:56:26 java-1.11.0-openjdk-amd64 1111 /usr/lib/jvm/java-1.11.0-openjdk-amd64 14:56:26 java-1.17.0-openjdk-amd64 1711 /usr/lib/jvm/java-1.17.0-openjdk-amd64 14:56:26 java-1.21.0-openjdk-amd64 2111 /usr/lib/jvm/java-1.21.0-openjdk-amd64 14:56:26 + sudo update-java-alternatives -s java-1.21.0-openjdk-amd64 14:56:26 update-alternatives: error: no alternatives for jaotc 14:56:26 [INFO] Installing environment for https://github.com/pre-commit/pre-commit-hooks. 14:56:26 [INFO] Once installed this environment will be reused. 14:56:26 [INFO] This may take a few minutes... 14:56:26 update-alternatives: error: no alternatives for rmic 14:56:26 + sed -n ;s/.* version "\(.*\)\.\(.*\)\..*".*$/\1/p; 14:56:26 + java -version 14:56:26 21 14:56:26 + JAVA_VER=21 14:56:26 + echo 21 14:56:26 + sed -n ;s/javac \(.*\)\.\(.*\)\..*.*$/\1/p; 14:56:26 + javac -version 14:56:26 + JAVAC_VER=21 14:56:26 + echo 21 14:56:26 21 14:56:26 ok, java is 21 or newer 14:56:26 + [ 21 -ge 21 ] 14:56:26 + [ 21 -ge 21 ] 14:56:26 + echo ok, java is 21 or newer 14:56:26 + wget -nv https://dlcdn.apache.org/maven/maven-3/3.9.11/binaries/apache-maven-3.9.11-bin.tar.gz -P /tmp 14:56:26 2025-10-28 14:56:25 URL:https://dlcdn.apache.org/maven/maven-3/3.9.11/binaries/apache-maven-3.9.11-bin.tar.gz [9160848/9160848] -> "/tmp/apache-maven-3.9.11-bin.tar.gz" [1] 14:56:26 + sudo mkdir -p /opt 14:56:26 + sudo tar xf /tmp/apache-maven-3.9.11-bin.tar.gz -C /opt 14:56:26 + sudo ln -s /opt/apache-maven-3.9.11 /opt/maven 14:56:26 + sudo ln -s /opt/maven/bin/mvn /usr/bin/mvn 14:56:26 + mvn --version 14:56:26 Apache Maven 3.9.11 (3e54c93a704957b63ee3494413a2b544fd3d825b) 14:56:26 Maven home: /opt/maven 14:56:26 Java version: 21.0.8, vendor: Ubuntu, runtime: /usr/lib/jvm/java-21-openjdk-amd64 14:56:26 Default locale: en, platform encoding: UTF-8 14:56:26 OS name: "linux", version: "5.15.0-153-generic", arch: "amd64", family: "unix" 14:56:26 NOTE: Picked up JDK_JAVA_OPTIONS: 14:56:26 --add-opens=java.base/java.io=ALL-UNNAMED 14:56:26 --add-opens=java.base/java.lang=ALL-UNNAMED 14:56:26 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 14:56:26 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 14:56:26 --add-opens=java.base/java.net=ALL-UNNAMED 14:56:26 --add-opens=java.base/java.nio=ALL-UNNAMED 14:56:26 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 14:56:26 --add-opens=java.base/java.nio.file=ALL-UNNAMED 14:56:26 --add-opens=java.base/java.util=ALL-UNNAMED 14:56:26 --add-opens=java.base/java.util.jar=ALL-UNNAMED 14:56:26 --add-opens=java.base/java.util.stream=ALL-UNNAMED 14:56:26 --add-opens=java.base/java.util.zip=ALL-UNNAMED 14:56:26 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 14:56:26 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 14:56:26 -Xlog:disable 14:56:30 [INFO] Installing environment for https://github.com/Lucas-C/pre-commit-hooks. 14:56:30 [INFO] Once installed this environment will be reused. 14:56:30 [INFO] This may take a few minutes... 14:56:39 [INFO] Installing environment for https://github.com/pre-commit/mirrors-autopep8. 14:56:39 [INFO] Once installed this environment will be reused. 14:56:39 [INFO] This may take a few minutes... 14:56:44 [INFO] Installing environment for https://github.com/perltidy/perltidy. 14:56:44 [INFO] Once installed this environment will be reused. 14:56:44 [INFO] This may take a few minutes... 14:56:45 docs: freeze> python -m pip freeze --all 14:56:45 docs: alabaster==1.0.0,attrs==25.4.0,babel==2.17.0,blockdiag==3.0.0,certifi==2025.10.5,charset-normalizer==3.4.4,contourpy==1.3.3,cycler==0.12.1,docutils==0.21.2,fonttools==4.60.1,funcparserlib==2.0.0a0,future==1.0.0,idna==3.11,imagesize==1.4.1,Jinja2==3.1.6,jsonschema==3.2.0,kiwisolver==1.4.9,lfdocs-conf==0.9.0,MarkupSafe==3.0.3,matplotlib==3.10.7,numpy==2.3.4,nwdiag==3.0.0,packaging==25.0,pillow==12.0.0,pip==25.2,Pygments==2.19.2,pyparsing==3.2.5,pyrsistent==0.20.0,python-dateutil==2.9.0.post0,PyYAML==6.0.3,requests==2.32.5,requests-file==1.5.1,roman-numerals-py==3.1.0,seqdiag==3.0.0,setuptools==80.9.0,six==1.17.0,snowballstemmer==3.0.1,Sphinx==8.2.3,sphinx-bootstrap-theme==0.8.1,sphinx-data-viewer==0.1.5,sphinx-rtd-theme==3.0.2,sphinx-tabs==3.4.7,sphinxcontrib-applehelp==2.0.0,sphinxcontrib-blockdiag==3.0.0,sphinxcontrib-devhelp==2.0.0,sphinxcontrib-htmlhelp==2.1.0,sphinxcontrib-jquery==4.1,sphinxcontrib-jsmath==1.0.1,sphinxcontrib-needs==0.7.9,sphinxcontrib-nwdiag==2.0.0,sphinxcontrib-plantuml==0.31,sphinxcontrib-qthelp==2.0.0,sphinxcontrib-seqdiag==3.0.0,sphinxcontrib-serializinghtml==2.0.0,sphinxcontrib-swaggerdoc==0.1.7,urllib3==2.5.0,webcolors==24.11.1 14:56:45 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 14:56:45 docs-linkcheck: freeze> python -m pip freeze --all 14:56:46 docs-linkcheck: alabaster==1.0.0,attrs==25.4.0,babel==2.17.0,blockdiag==3.0.0,certifi==2025.10.5,charset-normalizer==3.4.4,contourpy==1.3.3,cycler==0.12.1,docutils==0.21.2,fonttools==4.60.1,funcparserlib==2.0.0a0,future==1.0.0,idna==3.11,imagesize==1.4.1,Jinja2==3.1.6,jsonschema==3.2.0,kiwisolver==1.4.9,lfdocs-conf==0.9.0,MarkupSafe==3.0.3,matplotlib==3.10.7,numpy==2.3.4,nwdiag==3.0.0,packaging==25.0,pillow==12.0.0,pip==25.2,Pygments==2.19.2,pyparsing==3.2.5,pyrsistent==0.20.0,python-dateutil==2.9.0.post0,PyYAML==6.0.3,requests==2.32.5,requests-file==1.5.1,roman-numerals-py==3.1.0,seqdiag==3.0.0,setuptools==80.9.0,six==1.17.0,snowballstemmer==3.0.1,Sphinx==8.2.3,sphinx-bootstrap-theme==0.8.1,sphinx-data-viewer==0.1.5,sphinx-rtd-theme==3.0.2,sphinx-tabs==3.4.7,sphinxcontrib-applehelp==2.0.0,sphinxcontrib-blockdiag==3.0.0,sphinxcontrib-devhelp==2.0.0,sphinxcontrib-htmlhelp==2.1.0,sphinxcontrib-jquery==4.1,sphinxcontrib-jsmath==1.0.1,sphinxcontrib-needs==0.7.9,sphinxcontrib-nwdiag==2.0.0,sphinxcontrib-plantuml==0.31,sphinxcontrib-qthelp==2.0.0,sphinxcontrib-seqdiag==3.0.0,sphinxcontrib-serializinghtml==2.0.0,sphinxcontrib-swaggerdoc==0.1.7,urllib3==2.5.0,webcolors==24.11.1 14:56:46 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 14:56:49 docs: OK ✔ in 34.89 seconds 14:56:49 pylint: install_deps> python -I -m pip install 'pylint>=2.6.0' 14:56:56 docs-linkcheck: OK ✔ in 37.98 seconds 14:56:56 pylint: freeze> python -m pip freeze --all 14:56:56 trim trailing whitespace.................................................Failed 14:56:56 - hook id: trailing-whitespace 14:56:56 - exit code: 1 14:56:56 - files were modified by this hook 14:56:56 14:56:56 Fixing tests/transportpce_tests/pce/test05_pce_tapi.py 14:56:56 Fixing tests/transportpce_tests/common/test_utils_generate_tapi_topo.py 14:56:56 14:56:56 Tabs remover.............................................................pylint: astroid==4.0.1,dill==0.4.0,isort==7.0.0,mccabe==0.7.0,pip==25.2,platformdirs==4.5.0,pylint==4.0.2,setuptools==80.9.0,tomlkit==0.13.3 14:56:57 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}$' '{}' + 14:56:57 Passed 14:56:57 autopep8.................................................................Failed 14:57:03 - hook id: autopep8 14:57:03 - exit code: 1 14:57:03 - files were modified by this hook 14:57:03 14:57:03 Traceback (most recent call last): 14:57:03 File "/home/jenkins/.cache/pre-commit/repo0bnjx8tf/py_env-python3.11/bin/autopep8", line 7, in 14:57:03 sys.exit(main()) 14:57:03 ^^^^^^ 14:57:03 File "/home/jenkins/.cache/pre-commit/repo0bnjx8tf/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 4543, in main 14:57:03 results = fix_multiple_files(args.files, args, sys.stdout) 14:57:03 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 14:57:03 File "/home/jenkins/.cache/pre-commit/repo0bnjx8tf/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 4438, in fix_multiple_files 14:57:03 ret = _fix_file((name, options, output)) 14:57:03 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 14:57:03 File "/home/jenkins/.cache/pre-commit/repo0bnjx8tf/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 4408, in _fix_file 14:57:03 return fix_file(*parameters) 14:57:03 ^^^^^^^^^^^^^^^^^^^^^ 14:57:03 File "/home/jenkins/.cache/pre-commit/repo0bnjx8tf/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 3604, in fix_file 14:57:03 fixed_source = fix_lines(fixed_source, options, filename=filename) 14:57:03 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 14:57:03 File "/home/jenkins/.cache/pre-commit/repo0bnjx8tf/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 3584, in fix_lines 14:57:03 fixed_source = fix.fix() 14:57:03 ^^^^^^^^^ 14:57:03 File "/home/jenkins/.cache/pre-commit/repo0bnjx8tf/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 618, in fix 14:57:03 self._fix_source(filter_results(source=''.join(self.source), 14:57:03 File "/home/jenkins/.cache/pre-commit/repo0bnjx8tf/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 562, in _fix_source 14:57:03 modified_lines = fix(result) 14:57:03 ^^^^^^^^^^^ 14:57:03 File "/home/jenkins/.cache/pre-commit/repo0bnjx8tf/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 766, in fix_e225 14:57:03 pycodestyle.missing_whitespace_around_operator(fixed, ts)) 14:57:03 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 14:57:03 AttributeError: module 'pycodestyle' has no attribute 'missing_whitespace_around_operator'. Did you mean: 'whitespace_around_operator'? 14:57:03 14:57:03 perltidy.................................................................Passed 14:57:04 pre-commit hook(s) made changes. 14:57:04 If you are seeing this message in CI, reproduce locally with: `pre-commit run --all-files`. 14:57:04 To run `pre-commit` as part of git workflow, use `pre-commit install`. 14:57:04 All changes made by hooks: 14:57:04 diff --git a/tests/transportpce_tests/common/test_utils_generate_tapi_topo.py b/tests/transportpce_tests/common/test_utils_generate_tapi_topo.py 14:57:04 index 375b1b4ec..40d816398 100644 14:57:04 --- a/tests/transportpce_tests/common/test_utils_generate_tapi_topo.py 14:57:04 +++ b/tests/transportpce_tests/common/test_utils_generate_tapi_topo.py 14:57:04 @@ -24,6 +24,7 @@ sys.path.append('transportpce_tests/common/') 14:57:04 import test_utils # nopep8 14:57:04 # pylint: disable=too-few-public-methods 14:57:04 14:57:04 + 14:57:04 class UuidServices: 14:57:04 def __init__(self): 14:57:04 # pylint: disable=invalid-name 14:57:04 @@ -31,6 +32,7 @@ class UuidServices: 14:57:04 self.odu = None 14:57:04 self.dsr = None 14:57:04 14:57:04 + 14:57:04 class UuidServices2: 14:57:04 def __init__(self): 14:57:04 # pylint: disable=invalid-name 14:57:04 @@ -38,6 +40,7 @@ class UuidServices2: 14:57:04 self.odu = None 14:57:04 self.dsr = None 14:57:04 14:57:04 + 14:57:04 class UuidServices3: 14:57:04 def __init__(self): 14:57:04 # pylint: disable=invalid-name 14:57:04 @@ -47,6 +50,7 @@ class UuidServices3: 14:57:04 14:57:04 # class TransportPCEtesting(unittest.TestCase): 14:57:04 14:57:04 + 14:57:04 processes = None 14:57:04 WAITING = 20 # nominal value is 300 14:57:04 NODE_VERSION = '2.2.1' 14:57:04 @@ -56,6 +60,7 @@ uuid_services3 = UuidServices3() 14:57:04 del_serv_input_data = {"uuid": "TBD"} 14:57:04 tapi_topo = {"topology-id": "TBD"} 14:57:04 14:57:04 + 14:57:04 def initSimulators(): 14:57:04 print("Entering TestUtils setupClass starting simulators") 14:57:04 print("Node version is {}".format(NODE_VERSION)) 14:57:04 @@ -66,8 +71,9 @@ def initSimulators(): 14:57:04 ('xpdrc', NODE_VERSION), 14:57:04 ('spdrc', NODE_VERSION)]) 14:57:04 14:57:04 + 14:57:04 def connect_xpdrs(): 14:57:04 - 14:57:04 + 14:57:04 print("Connecting SPDRA") 14:57:04 response = test_utils.mount_device("SPDR-SA1", ('spdra', NODE_VERSION)) 14:57:04 time.sleep(2) 14:57:04 @@ -81,6 +87,7 @@ def connect_xpdrs(): 14:57:04 response = test_utils.mount_device("XPDR-C1", ('xpdrc', NODE_VERSION)) 14:57:04 time.sleep(2) 14:57:04 14:57:04 + 14:57:04 def connect_rdms(): 14:57:04 print("Connecting ROADMA") 14:57:04 response = test_utils.mount_device("ROADM-A1", ('roadma', NODE_VERSION)) 14:57:04 @@ -93,6 +100,7 @@ def connect_rdms(): 14:57:04 print("Connecting ROADMC failed") 14:57:04 time.sleep(2) 14:57:04 14:57:04 + 14:57:04 def interconnect_roadm_and_xpdr(): 14:57:04 response = test_utils.transportpce_api_rpc_request( 14:57:04 'transportpce-networkutils', 'init-xpdr-rdm-links', 14:57:04 @@ -295,6 +303,7 @@ def interconnect_roadm_and_xpdr(): 14:57:04 print("Connection from ROADMC1 to SPDRSC1-X2 succeeded") 14:57:04 time.sleep(2) 14:57:04 14:57:04 + 14:57:04 def add_omsAttributes_to_ROADM2ROADM_links(): 14:57:04 # Config ROADMA-ROADMC oms-attributes 14:57:04 data = {"span": { 14:57:04 @@ -331,6 +340,7 @@ def add_omsAttributes_to_ROADM2ROADM_links(): 14:57:04 else: 14:57:04 print("OMS attributes added on link ROADMC-ROADMA") 14:57:04 14:57:04 + 14:57:04 def create_services_on_infra(self): 14:57:04 create_connectivity_service_PhotonicMedia(self) 14:57:04 get_service_PhotonicMedia(self) 14:57:04 @@ -345,6 +355,7 @@ def create_services_on_infra(self): 14:57:04 create_connectivity_service_DSR(self) 14:57:04 get_service_DSR(self) 14:57:04 14:57:04 + 14:57:04 def create_connectivity_service_PhotonicMedia(self): 14:57:04 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.sAOTS 14:57:04 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.sZOTS 14:57:04 @@ -371,14 +382,15 @@ def create_connectivity_service_PhotonicMedia(self): 14:57:04 'value': 'SPDR-SA1-XPDR1'} 14:57:04 14:57:04 tpcetest.assertDictEqual(dict(input_dict_1, **response['output']['service']), 14:57:04 - response['output']['service']) 14:57:04 + response['output']['service']) 14:57:04 tpcetest.assertDictEqual(dict(input_dict_2, **response['output']['service']['end-point'][0]['name'][0]), 14:57:04 - response['output']['service']['end-point'][0]['name'][0]) 14:57:04 + response['output']['service']['end-point'][0]['name'][0]) 14:57:04 tpcetest.assertDictEqual(dict(input_dict_3, **response['output']['service']['end-point'][1]['name'][0]), 14:57:04 - response['output']['service']['end-point'][1]['name'][0]) 14:57:04 + response['output']['service']['end-point'][1]['name'][0]) 14:57:04 # If the gate fails is because of the waiting time not being enough 14:57:04 # time.sleep(self.WAITING) 14:57:04 14:57:04 + 14:57:04 def get_service_PhotonicMedia(self): 14:57:04 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services.pm)) 14:57:04 print("getServiceResponse Service1 PhotonicMedia: {}".format(response)) 14:57:04 @@ -389,6 +401,7 @@ def get_service_PhotonicMedia(self): 14:57:04 tpcetest.assertEqual(response['services'][0]['lifecycle-state'], 'planned') 14:57:04 time.sleep(1) 14:57:04 14:57:04 + 14:57:04 def create_connectivity_service2_PhotonicMedia(self): 14:57:04 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.s2AOTS 14:57:04 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.s2ZOTS 14:57:04 @@ -416,14 +429,15 @@ def create_connectivity_service2_PhotonicMedia(self): 14:57:04 'value': 'SPDR-SA1-XPDR2'} 14:57:04 14:57:04 tpcetest.assertDictEqual(dict(input_dict_1, **response['output']['service']), 14:57:04 - response['output']['service']) 14:57:04 + response['output']['service']) 14:57:04 tpcetest.assertDictEqual(dict(input_dict_2, **response['output']['service']['end-point'][0]['name'][0]), 14:57:04 - response['output']['service']['end-point'][0]['name'][0]) 14:57:04 + response['output']['service']['end-point'][0]['name'][0]) 14:57:04 tpcetest.assertDictEqual(dict(input_dict_3, **response['output']['service']['end-point'][1]['name'][0]), 14:57:04 - response['output']['service']['end-point'][1]['name'][0]) 14:57:04 + response['output']['service']['end-point'][1]['name'][0]) 14:57:04 # If the gate fails is because of the waiting time not being enough 14:57:04 # time.sleep(self.WAITING) 14:57:04 14:57:04 + 14:57:04 def get_service2_PhotonicMedia(self): 14:57:04 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services2.pm)) 14:57:04 print("getServiceResponse Service2 PhotonicMedia: {}".format(response)) 14:57:04 @@ -434,6 +448,7 @@ def get_service2_PhotonicMedia(self): 14:57:04 tpcetest.assertEqual(response['services'][0]['lifecycle-state'], 'planned') 14:57:04 time.sleep(1) 14:57:04 14:57:04 + 14:57:04 def create_connectivity_service3_PhotonicMedia(self): 14:57:04 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.s3AOTS 14:57:04 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.s3ZOTS 14:57:04 @@ -461,14 +476,15 @@ def create_connectivity_service3_PhotonicMedia(self): 14:57:04 'value': 'SPDR-SA1-XPDR3'} 14:57:04 14:57:04 tpcetest.assertDictEqual(dict(input_dict_1, **response['output']['service']), 14:57:04 - response['output']['service']) 14:57:04 + response['output']['service']) 14:57:04 tpcetest.assertDictEqual(dict(input_dict_2, **response['output']['service']['end-point'][0]['name'][0]), 14:57:04 - response['output']['service']['end-point'][0]['name'][0]) 14:57:04 + response['output']['service']['end-point'][0]['name'][0]) 14:57:04 tpcetest.assertDictEqual(dict(input_dict_3, **response['output']['service']['end-point'][1]['name'][0]), 14:57:04 - response['output']['service']['end-point'][1]['name'][0]) 14:57:04 + response['output']['service']['end-point'][1]['name'][0]) 14:57:04 # If the gate fails is because of the waiting time not being enough 14:57:04 # time.sleep(self.WAITING) 14:57:04 14:57:04 + 14:57:04 def get_service3_PhotonicMedia(self): 14:57:04 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services3.pm)) 14:57:04 print("getServiceResponse Service3 PhotonicMedia: {}".format(response)) 14:57:04 @@ -480,6 +496,8 @@ def get_service3_PhotonicMedia(self): 14:57:04 time.sleep(1) 14:57:04 14:57:04 # test create connectivity service from spdrA to spdrC for odu 14:57:04 + 14:57:04 + 14:57:04 def create_connectivity_service_ODU(self): 14:57:04 # pylint: disable=line-too-long 14:57:04 self.cr_serv_input_data["layer-protocol-name"] = "ODU" 14:57:04 @@ -515,14 +533,15 @@ def create_connectivity_service_ODU(self): 14:57:04 'value': 'SPDR-SA1-XPDR1'} 14:57:04 14:57:04 tpcetest.assertDictEqual(dict(input_dict_1, **response['output']['service']), 14:57:04 - response['output']['service']) 14:57:04 + response['output']['service']) 14:57:04 tpcetest.assertDictEqual(dict(input_dict_2, **response['output']['service']['end-point'][0]['name'][0]), 14:57:04 - response['output']['service']['end-point'][0]['name'][0]) 14:57:04 + response['output']['service']['end-point'][0]['name'][0]) 14:57:04 tpcetest.assertDictEqual(dict(input_dict_3, **response['output']['service']['end-point'][1]['name'][0]), 14:57:04 - response['output']['service']['end-point'][1]['name'][0]) 14:57:04 + response['output']['service']['end-point'][1]['name'][0]) 14:57:04 # If the gate fails is because of the waiting time not being enough 14:57:04 # time.sleep(self.WAITING) 14:57:04 14:57:04 + 14:57:04 def get_service_ODU(self): 14:57:04 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services.odu)) 14:57:04 tpcetest.assertEqual(response['status_code'], requests.codes.ok) 14:57:04 @@ -533,6 +552,8 @@ def get_service_ODU(self): 14:57:04 time.sleep(1) 14:57:04 14:57:04 # test create connectivity service from spdrA to spdrC for odu 14:57:04 + 14:57:04 + 14:57:04 def create_connectivity_service3_ODU(self): 14:57:04 # pylint: disable=line-too-long 14:57:04 self.cr_serv_input_data["layer-protocol-name"] = "ODU" 14:57:04 @@ -568,14 +589,15 @@ def create_connectivity_service3_ODU(self): 14:57:04 'value': 'SPDR-SA1-XPDR3'} 14:57:04 14:57:04 tpcetest.assertDictEqual(dict(input_dict_1, **response['output']['service']), 14:57:04 - response['output']['service']) 14:57:04 + response['output']['service']) 14:57:04 tpcetest.assertDictEqual(dict(input_dict_2, **response['output']['service']['end-point'][0]['name'][0]), 14:57:04 - response['output']['service']['end-point'][0]['name'][0]) 14:57:04 + response['output']['service']['end-point'][0]['name'][0]) 14:57:04 tpcetest.assertDictEqual(dict(input_dict_3, **response['output']['service']['end-point'][1]['name'][0]), 14:57:04 - response['output']['service']['end-point'][1]['name'][0]) 14:57:04 + response['output']['service']['end-point'][1]['name'][0]) 14:57:04 # If the gate fails is because of the waiting time not being enough 14:57:04 # time.sleep(self.WAITING) 14:57:04 14:57:04 + 14:57:04 def get_service3_ODU(self): 14:57:04 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services3.odu)) 14:57:04 tpcetest.assertEqual(response['status_code'], requests.codes.ok) 14:57:04 @@ -585,6 +607,8 @@ def get_service3_ODU(self): 14:57:04 tpcetest.assertEqual(response['services'][0]['lifecycle-state'], 'planned') 14:57:04 14:57:04 # test create connectivity service from spdrA to spdrC for dsr 14:57:04 + 14:57:04 + 14:57:04 def create_connectivity_service_DSR(self): 14:57:04 # pylint: disable=line-too-long 14:57:04 self.cr_serv_input_data["layer-protocol-name"] = "DSR" 14:57:04 @@ -621,17 +645,18 @@ def create_connectivity_service_DSR(self): 14:57:04 'value': 'SPDR-SA1-XPDR1'} 14:57:04 14:57:04 tpcetest.assertDictEqual(dict(input_dict_1, 14:57:04 - **response['output']['service']), 14:57:04 - response['output']['service']) 14:57:04 + **response['output']['service']), 14:57:04 + response['output']['service']) 14:57:04 tpcetest.assertDictEqual(dict(input_dict_2, 14:57:04 - **response['output']['service']['end-point'][0]['name'][0]), 14:57:04 - response['output']['service']['end-point'][0]['name'][0]) 14:57:04 + **response['output']['service']['end-point'][0]['name'][0]), 14:57:04 + response['output']['service']['end-point'][0]['name'][0]) 14:57:04 tpcetest.assertDictEqual(dict(input_dict_3, 14:57:04 - **response['output']['service']['end-point'][1]['name'][0]), 14:57:04 - response['output']['service']['end-point'][1]['name'][0]) 14:57:04 + **response['output']['service']['end-point'][1]['name'][0]), 14:57:04 + response['output']['service']['end-point'][1]['name'][0]) 14:57:04 # The sleep here is okey as the DSR service creation is very fast 14:57:04 # time.sleep(self.WAITING) 14:57:04 14:57:04 + 14:57:04 def get_service_DSR(self): 14:57:04 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services.dsr)) 14:57:04 tpcetest.assertEqual(response['status_code'], requests.codes.ok) 14:57:04 @@ -643,6 +668,7 @@ def get_service_DSR(self): 14:57:04 print("Time to retrieve topology : 100 seconds... Hurry up") 14:57:04 time.sleep(100) 14:57:04 14:57:04 + 14:57:04 def delete_created_tapi_services(self): 14:57:04 delete_connectivity_service_DSR(self) 14:57:04 delete_connectivity_service_ODU(self) 14:57:04 @@ -652,6 +678,7 @@ def delete_created_tapi_services(self): 14:57:04 delete_connectivity_service_PhotonicMedia(self) 14:57:04 get_no_tapi_services() 14:57:04 14:57:04 + 14:57:04 def delete_connectivity_service_DSR(self): 14:57:04 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services.dsr) 14:57:04 response = test_utils.transportpce_api_rpc_request( 14:57:04 @@ -659,6 +686,7 @@ def delete_connectivity_service_DSR(self): 14:57:04 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 14:57:04 time.sleep(self.WAITING) 14:57:04 14:57:04 + 14:57:04 def delete_connectivity_service_ODU(self): 14:57:04 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services.odu) 14:57:04 response = test_utils.transportpce_api_rpc_request( 14:57:04 @@ -666,6 +694,7 @@ def delete_connectivity_service_ODU(self): 14:57:04 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 14:57:04 time.sleep(self.WAITING) 14:57:04 14:57:04 + 14:57:04 def delete_connectivity_service3_ODU(self): 14:57:04 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services3.odu) 14:57:04 response = test_utils.transportpce_api_rpc_request( 14:57:04 @@ -673,6 +702,7 @@ def delete_connectivity_service3_ODU(self): 14:57:04 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 14:57:04 time.sleep(self.WAITING) 14:57:04 14:57:04 + 14:57:04 def delete_connectivity_service_PhotonicMedia(self): 14:57:04 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services.pm) 14:57:04 response = test_utils.transportpce_api_rpc_request( 14:57:04 @@ -680,6 +710,7 @@ def delete_connectivity_service_PhotonicMedia(self): 14:57:04 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 14:57:04 time.sleep(self.WAITING) 14:57:04 14:57:04 + 14:57:04 def delete_connectivity_service3_PhotonicMedia(self): 14:57:04 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services3.pm) 14:57:04 response = test_utils.transportpce_api_rpc_request( 14:57:04 @@ -687,6 +718,7 @@ def delete_connectivity_service3_PhotonicMedia(self): 14:57:04 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 14:57:04 time.sleep(self.WAITING) 14:57:04 14:57:04 + 14:57:04 def delete_connectivity_service2_PhotonicMedia(self): 14:57:04 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services2.pm) 14:57:04 response = test_utils.transportpce_api_rpc_request( 14:57:04 @@ -694,6 +726,7 @@ def delete_connectivity_service2_PhotonicMedia(self): 14:57:04 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 14:57:04 time.sleep(self.WAITING) 14:57:04 14:57:04 + 14:57:04 def get_no_tapi_services(self): 14:57:04 response = test_utils.transportpce_api_rpc_request( 14:57:04 'tapi-connectivity', 'get-connectivity-service-list', None) 14:57:04 @@ -703,6 +736,7 @@ def get_no_tapi_services(self): 14:57:04 "error-message": "No services exist in datastore"}, 14:57:04 response['output']['errors']['error']) 14:57:04 14:57:04 + 14:57:04 def cleanup_and_desinstall_tapi_feature(): 14:57:04 disconnect_spdrA_C() 14:57:04 disconnect_roadmA_C() 14:57:04 @@ -712,6 +746,7 @@ def cleanup_and_desinstall_tapi_feature(): 14:57:04 # response = test_utils.get_ordm_serv_list_request() 14:57:04 # tpcetest.assertEqual(response['status_code'], requests.codes.conflict) 14:57:04 14:57:04 + 14:57:04 def disconnect_spdrA_C(): 14:57:04 response = test_utils.unmount_device("SPDR-SA1") 14:57:04 if response.status_code not in [204]: 14:57:04 @@ -720,6 +755,7 @@ def disconnect_spdrA_C(): 14:57:04 if response.status_code not in [204]: 14:57:04 print("disconnection of SPDR-SC1 failed") 14:57:04 14:57:04 + 14:57:04 def disconnect_roadmA_C(): 14:57:04 response = test_utils.unmount_device("ROADM-A1") 14:57:04 if response.status_code not in [204]: 14:57:04 @@ -728,6 +764,7 @@ def disconnect_roadmA_C(): 14:57:04 if response.status_code not in [204]: 14:57:04 print("disconnection of ROADM-C1 failed") 14:57:04 14:57:04 + 14:57:04 def uninstall_Tapi_Feature(): 14:57:04 test_utils.uninstall_karaf_feature("odl-transportpce-tapi") 14:57:04 time.sleep(5) 14:57:04 @@ -736,16 +773,16 @@ def uninstall_Tapi_Feature(): 14:57:04 print("Tapi Feature uninstallation :") 14:57:04 # tpcetest.assertEqual(response['status_code'], requests.codes.ok) 14:57:04 # print("Tapi Feature uninstalled") 14:57:04 - if('node' not in response['network'][0] and 'ietf-network-topology:link' not in response['network'][0]): 14:57:04 - print(" otn topology empty") 14:57:04 + if ('node' not in response['network'][0] and 'ietf-network-topology:link' not in response['network'][0]): 14:57:04 + print(" otn topology empty") 14:57:04 # tpcetest.assertNotIn('node', response['network'][0]) 14:57:04 # tpcetest.assertNotIn('ietf-network-topology:link', response['network'][0]) 14:57:04 response = test_utils.get_ietf_network_request('openroadm-topology', 'config') 14:57:04 if ((requests.codes.ok in response['status_code']) and 14:57:04 ('node' not in response['network'][0] and 'ietf-network-topology:link' not in response['network'][0])): 14:57:04 - # tpcetest.assertEqual(response['status_code'], requests.codes.ok) 14:57:04 - # tpcetest.assertNotIn('node', response['network'][0]) 14:57:04 - # tpcetest.assertNotIn('ietf-network-topology:link', response['network'][0]) 14:57:04 + # tpcetest.assertEqual(response['status_code'], requests.codes.ok) 14:57:04 + # tpcetest.assertNotIn('node', response['network'][0]) 14:57:04 + # tpcetest.assertNotIn('ietf-network-topology:link', response['network'][0]) 14:57:04 print("OpenROADM topology also empty") 14:57:04 print("Confirm Tapi Feature correctly uninstalled") 14:57:04 14:57:04 diff --git a/tests/transportpce_tests/pce/test05_pce_tapi.py b/tests/transportpce_tests/pce/test05_pce_tapi.py 14:57:04 index af012b9a2..8f3e6dfd3 100644 14:57:04 --- a/tests/transportpce_tests/pce/test05_pce_tapi.py 14:57:04 +++ b/tests/transportpce_tests/pce/test05_pce_tapi.py 14:57:04 @@ -197,7 +197,7 @@ class TransportPCEtest(unittest.TestCase): 14:57:04 14:57:04 # cr_serv_input_data is used for tapi-connectivity service creation. However, at that stage we create service 14:57:04 # using OR PCE and OR renderer (in a first step, as TAPI Renderer is not available). Thus to trigger path 14:57:04 - # through OR PCE, considering initial request through TAPI API will be converted to an OR service-create, we need : 14:57:04 + # through OR PCE, considering initial request through TAPI API will be converted to an OR service-create, we need : 14:57:04 # 1) To use a service name that iS NOT a UUID but a string 14:57:04 # 2) To use as the local-id, the name of the node in the OPENROADM topology 14:57:04 cr_serv_input_data = { 14:57:04 @@ -301,7 +301,7 @@ class TransportPCEtest(unittest.TestCase): 14:57:04 uuid_services = UuidServices() 14:57:04 14:57:04 del_serv_input_data = {"uuid": "TBD"} 14:57:04 - 14:57:04 + 14:57:04 tapi_topo = {"topology-id": "TBD"} 14:57:04 14:57:04 14:57:04 @@ -415,7 +415,7 @@ class TransportPCEtest(unittest.TestCase): 14:57:04 self.assertEqual(response['services'][0]['connection-type'], 'infrastructure') 14:57:04 self.assertEqual(response['services'][0]['lifecycle-state'], 'planned') 14:57:04 time.sleep(self.WAITING) 14:57:04 - 14:57:04 + 14:57:04 14:57:04 def test_05_successfull_path_computation_ODU4(self): 14:57:04 self.path_computation_input_data["service-a-end"]["service-format"] = "ODU" 14:57:04 @@ -436,7 +436,7 @@ class TransportPCEtest(unittest.TestCase): 14:57:04 self.assertIn('Path is calculated', 14:57:04 response['output']['configuration-response-common']['response-message']) 14:57:04 print(response['output']['response-parameters']['path-description']) 14:57:04 - 14:57:04 + 14:57:04 self.assertEqual(response['output']['response-parameters']['path-description']['aToZ-direction']['rate'], 100) 14:57:04 node_to_find = [self.s2Auuid, self.s2Cuuid] 14:57:04 # tp to find are the iOTU CEP 14:57:04 @@ -482,14 +482,14 @@ class TransportPCEtest(unittest.TestCase): 14:57:04 } 14:57:04 input_dict_2 = {'value-name': 'OpenROADM node id', 'value': 'SPDR-SC1-XPDR2'} 14:57:04 input_dict_3 = {'value-name': 'OpenROADM node id', 'value': 'SPDR-SA1-XPDR2'} 14:57:04 - 14:57:04 + 14:57:04 self.assertDictEqual(dict(input_dict_1, **response['output']['service']), 14:57:04 response['output']['service']) 14:57:04 self.assertDictEqual(input_dict_2, response['output']['service']['end-point'][0]['name'][0]) 14:57:04 self.assertDictEqual(input_dict_3, response['output']['service']['end-point'][1]['name'][0]) 14:57:04 # If the gate fails is because of the waiting time not being enough 14:57:04 time.sleep(self.WAITING) 14:57:04 - 14:57:04 + 14:57:04 def test_07_get_ODU4_service1(self): 14:57:04 response = test_utils.get_ordm_serv_list_attr_request("services", "serviceOdu4-1") 14:57:04 self.assertEqual(response['status_code'], requests.codes.ok) 14:57:04 @@ -499,7 +499,7 @@ class TransportPCEtest(unittest.TestCase): 14:57:04 self.assertEqual(response['services'][0]['connection-type'], 'infrastructure') 14:57:04 self.assertEqual(response['services'][0]['lifecycle-state'], 'planned') 14:57:04 time.sleep(1) 14:57:04 - 14:57:04 + 14:57:04 def test_08_successfull_path_computation_100GE_service__spdr_x2(self): 14:57:04 # service-format set to other + service-rate set to 100 leads to 100GEs serviceType internally (switch) 14:57:04 self.path_computation_input_data["service-a-end"]["service-format"] = "other" 14:57:04 pre-commit: exit 1 (42.75 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> pre-commit run --all-files --show-diff-on-failure pid=2485 14:57:21 ************* Module test05_pce_tapi 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:380:0: C0301: Line too long (122/120) (line-too-long) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:381:0: C0301: Line too long (122/120) (line-too-long) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:459:0: C0301: Line too long (123/120) (line-too-long) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:463:0: C0301: Line too long (123/120) (line-too-long) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:596:0: C0301: Line too long (122/120) (line-too-long) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:603:0: C0301: Line too long (122/120) (line-too-long) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:680:0: C0301: Line too long (123/120) (line-too-long) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:684:0: C0301: Line too long (123/120) (line-too-long) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:765:0: C0301: Line too long (122/120) (line-too-long) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:772:0: C0301: Line too long (122/120) (line-too-long) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:815:0: C0301: Line too long (123/120) (line-too-long) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:819:0: C0301: Line too long (123/120) (line-too-long) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:347:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:434:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:496:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:518:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:559:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:656:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:718:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:739:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:851:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:876:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:903:16: R1723: Unnecessary "elif" after "break", remove the leading "el" from "elif" (no-else-break) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:913:16: R1723: Unnecessary "elif" after "break", remove the leading "el" from "elif" (no-else-break) 14:57:21 transportpce_tests/pce/test05_pce_tapi.py:15:0: W0611: Unused import os (unused-import) 14:57:21 ************* Module common.test_utils_generate_tapi_topo 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:321:0: C0325: Unnecessary parens after 'if' keyword (superfluous-parens) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:338:0: C0325: Unnecessary parens after 'if' keyword (superfluous-parens) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:772:0: C0325: Unnecessary parens after 'if' keyword (superfluous-parens) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:64:0: C0103: Function name "initSimulators" doesn't conform to snake_case naming style (invalid-name) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:67:4: W0621: Redefining name 'processes' from outer scope (line 54) (redefined-outer-name) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:66:10: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:67:4: W0612: Unused variable 'processes' (unused-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:78:4: W0612: Unused variable 'response' (unused-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:104:0: R0912: Too many branches (40/12) (too-many-branches) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:104:0: R0915: Too many statements (121/50) (too-many-statements) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:307:0: C0103: Function name "add_omsAttributes_to_ROADM2ROADM_links" doesn't conform to snake_case naming style (invalid-name) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:359:0: C0103: Function name "create_connectivity_service_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:365:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:366:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:368:52: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:384:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:386:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:388:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:394:0: C0103: Function name "get_service_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:395:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:396:10: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:397:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:398:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:399:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:399:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:400:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:401:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:394:30: W0613: Unused argument 'self' (unused-argument) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:405:0: C0103: Function name "create_connectivity_service2_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:415:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:416:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:418:52: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:431:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:433:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:435:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:441:0: C0103: Function name "get_service2_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:442:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:443:10: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:444:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:445:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:446:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:446:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:447:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:448:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:441:31: W0613: Unused argument 'self' (unused-argument) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:452:0: C0103: Function name "create_connectivity_service3_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:462:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:463:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:465:52: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:478:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:480:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:482:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:488:0: C0103: Function name "get_service3_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:489:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:490:10: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:491:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:492:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:493:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:493:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:494:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:495:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:488:31: W0613: Unused argument 'self' (unused-argument) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:501:0: C0103: Function name "create_connectivity_service_ODU" doesn't conform to snake_case naming style (invalid-name) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:513:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:518:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:519:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:521:41: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:535:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:537:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:539:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:545:0: C0103: Function name "get_service_ODU" doesn't conform to snake_case naming style (invalid-name) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:546:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:547:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:548:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:549:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:549:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:550:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:551:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:545:20: W0613: Unused argument 'self' (unused-argument) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:557:0: C0103: Function name "create_connectivity_service3_ODU" doesn't conform to snake_case naming style (invalid-name) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:569:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:574:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:575:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:577:41: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:591:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:593:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:595:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:601:0: C0103: Function name "get_service3_ODU" doesn't conform to snake_case naming style (invalid-name) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:602:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:603:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:604:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:605:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:605:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:606:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:607:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:601:21: W0613: Unused argument 'self' (unused-argument) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:612:0: C0103: Function name "create_connectivity_service_DSR" doesn't conform to snake_case naming style (invalid-name) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:625:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:630:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:631:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:633:41: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:647:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:21 transportpce_tests/common/test_utils_generate_tapi_topo.py:650:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:653:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:660:0: C0103: Function name "get_service_DSR" doesn't conform to snake_case naming style (invalid-name) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:661:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:662:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:663:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:664:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:664:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:665:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:666:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:660:20: W0613: Unused argument 'self' (unused-argument) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:679:4: E1120: No value for argument 'self' in function call (no-value-for-parameter) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:682:0: C0103: Function name "delete_connectivity_service_DSR" doesn't conform to snake_case naming style (invalid-name) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:683:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:686:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:690:0: C0103: Function name "delete_connectivity_service_ODU" doesn't conform to snake_case naming style (invalid-name) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:691:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:694:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:698:0: C0103: Function name "delete_connectivity_service3_ODU" doesn't conform to snake_case naming style (invalid-name) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:699:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:702:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:706:0: C0103: Function name "delete_connectivity_service_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:707:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:710:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:714:0: C0103: Function name "delete_connectivity_service3_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:715:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:718:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:722:0: C0103: Function name "delete_connectivity_service2_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:723:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:726:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:733:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:734:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:730:25: W0613: Unused argument 'self' (unused-argument) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:750:0: C0103: Function name "disconnect_spdrA_C" doesn't conform to snake_case naming style (invalid-name) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:759:0: C0103: Function name "disconnect_roadmA_C" doesn't conform to snake_case naming style (invalid-name) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:768:0: C0103: Function name "uninstall_Tapi_Feature" doesn't conform to snake_case naming style (invalid-name) 14:57:24 transportpce_tests/common/test_utils_generate_tapi_topo.py:15:0: W0611: Unused import os (unused-import) 14:57:24 14:57:24 ----------------------------------- 14:57:24 Your code has been rated at 9.57/10 14:57:24 14:57:26 pre-commit: FAIL ✖ in 46.25 seconds 14:57:26 pylint: exit 1 (29.36 seconds) /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}$' '{}' + pid=3375 14:58:17 pylint: FAIL ✖ in 37.14 seconds 14:58:17 buildcontroller: OK ✔ in 2 minutes 2.76 seconds 14:58: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 14:58:18 build_karaf_tests190: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 14:58:18 build_karaf_tests121: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 14:58:18 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 14:58:27 build_karaf_tests121: freeze> python -m pip freeze --all 14:58:27 build_karaf_tests221: freeze> python -m pip freeze --all 14:58:27 build_karaf_tests190: freeze> python -m pip freeze --all 14:58:27 build_karaf_tests121: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.2,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 14:58:27 build_karaf_tests121: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 14:58:27 build karaf in karaf121 with ./karaf121.env 14:58:27 NOTE: Picked up JDK_JAVA_OPTIONS: 14:58:27 --add-opens=java.base/java.io=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.lang=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.net=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.nio=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.nio.file=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.util=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.util.jar=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.util.stream=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.util.zip=ALL-UNNAMED 14:58:27 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 14:58:27 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 14:58:27 -Xlog:disable 14:58:27 build_karaf_tests221: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.2,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 14:58:27 build_karaf_tests221: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 14:58:27 build karaf in karaf221 with ./karaf221.env 14:58:27 build_karaf_tests190: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.2,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 14:58:27 build_karaf_tests190: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 14:58:27 build karaf in karafoc with ./karafoc.env 14:58:27 NOTE: Picked up JDK_JAVA_OPTIONS: 14:58:27 --add-opens=java.base/java.io=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.lang=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.net=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.nio=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.nio.file=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.util=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.util.jar=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.util.stream=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.util.zip=ALL-UNNAMED 14:58:27 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 14:58:27 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 14:58:27 -Xlog:disable 14:58:27 NOTE: Picked up JDK_JAVA_OPTIONS: 14:58:27 --add-opens=java.base/java.io=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.lang=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.net=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.nio=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.nio.file=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.util=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.util.jar=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.util.stream=ALL-UNNAMED 14:58:27 --add-opens=java.base/java.util.zip=ALL-UNNAMED 14:58:27 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 14:58:27 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 14:58:27 -Xlog:disable 14:58:27 build_karaf_tests71: freeze> python -m pip freeze --all 14:58:28 build_karaf_tests71: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.2,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 14:58:28 build_karaf_tests71: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 14:58:28 build karaf in karaf71 with ./karaf71.env 14:58:28 NOTE: Picked up JDK_JAVA_OPTIONS: 14:58:28 --add-opens=java.base/java.io=ALL-UNNAMED 14:58:28 --add-opens=java.base/java.lang=ALL-UNNAMED 14:58:28 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 14:58:28 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 14:58:28 --add-opens=java.base/java.net=ALL-UNNAMED 14:58:28 --add-opens=java.base/java.nio=ALL-UNNAMED 14:58:28 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 14:58:28 --add-opens=java.base/java.nio.file=ALL-UNNAMED 14:58:28 --add-opens=java.base/java.util=ALL-UNNAMED 14:58:28 --add-opens=java.base/java.util.jar=ALL-UNNAMED 14:58:28 --add-opens=java.base/java.util.stream=ALL-UNNAMED 14:58:28 --add-opens=java.base/java.util.zip=ALL-UNNAMED 14:58:28 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 14:58:28 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 14:58:28 -Xlog:disable 15:00:23 build_karaf_tests221: OK ✔ in 2 minutes 4.54 seconds 15:00:23 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 15:00:36 build_karaf_tests121: OK ✔ in 2 minutes 19.07 seconds 15:00:36 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 15:00:37 build_karaf_tests71: OK ✔ in 2 minutes 20.37 seconds 15:00:37 build_karaf_tests190: OK ✔ in 2 minutes 20.39 seconds 15:00:37 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 15:00:44 buildlighty: freeze> python -m pip freeze --all 15:00:44 sims: freeze> python -m pip freeze --all 15:00:44 buildlighty: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.2,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 15:00:44 buildlighty: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/lighty> ./build.sh 15:00:44 NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED 15:00:44 sims: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.2,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 15:00:44 sims: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./install_lightynode.sh 15:00:44 Using lighynode version 20.1.0.5 15:00:44 Installing lightynode device to ./lightynode/lightynode-openroadm-device directory 15:02:05 sims: OK ✔ in 12.5 seconds 15:02:05 buildlighty: OK ✔ in 46.84 seconds 15:02:05 testsPCE: freeze> python -m pip freeze --all 15:02:05 testsPCE: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,click==8.3.0,contourpy==1.3.3,cryptography==3.3.2,cycler==0.12.1,dict2xml==1.7.7,Flask==2.1.3,Flask-Injector==0.14.0,fonttools==4.60.1,gnpy4tpce==2.4.7,idna==3.11,iniconfig==2.3.0,injector==0.22.0,invoke==2.2.1,itsdangerous==2.2.0,Jinja2==3.1.6,kiwisolver==1.4.9,lxml==6.0.2,MarkupSafe==3.0.3,matplotlib==3.10.7,netconf-client==3.5.0,networkx==2.8.8,numpy==1.26.4,packaging==25.0,pandas==1.5.3,paramiko==4.0.0,pbr==5.11.1,pillow==12.0.0,pip==25.2,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pyparsing==3.2.5,pytest==8.4.2,python-dateutil==2.9.0.post0,pytz==2025.2,requests==2.32.5,scipy==1.16.2,setuptools==50.3.2,six==1.17.0,urllib3==2.5.0,Werkzeug==2.0.3,xlrd==1.2.0 15:02:05 testsPCE: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh pce 15:02:05 pytest -q transportpce_tests/pce/test01_pce.py 15:02:59 ....F....F....FFFF.F [100%] 15:03:39 =================================== FAILURES =================================== 15:03:39 _____________ TestTransportPCEPce.test_05_path_computation_xpdr_bi _____________ 15:03:39 15:03:39 self = 15:03:39 15:03:39 def test_05_path_computation_xpdr_bi(self): 15:03:39 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 15:03:39 'path-computation-request', 15:03:39 self.path_computation_input_data) 15:03:39 self.assertEqual(response['status_code'], requests.codes.ok) 15:03:39 > self.assertIn('Path is calculated', 15:03:39 response['output']['configuration-response-common']['response-message']) 15:03:39 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9)' 15:03:39 15:03:39 transportpce_tests/pce/test01_pce.py:143: AssertionError 15:03:39 ____________ TestTransportPCEPce.test_10_path_computation_xpdr_uni _____________ 15:03:39 15:03:39 self = 15:03:39 15:03:39 def test_10_path_computation_xpdr_uni(self): 15:03:39 self.path_computation_input_data["service-a-end"]["node-id"] = "XPONDER-1-2" 15:03:39 self.path_computation_input_data["service-a-end"]["clli"] = "ORANGE1" 15:03:39 self.path_computation_input_data["service-z-end"]["node-id"] = "XPONDER-3-2" 15:03:39 self.path_computation_input_data["service-z-end"]["clli"] = "ORANGE3" 15:03:39 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 15:03:39 'path-computation-request', 15:03:39 self.path_computation_input_data) 15:03:39 self.assertEqual(response['status_code'], requests.codes.ok) 15:03:39 > self.assertIn('Path is calculated', 15:03:39 response['output']['configuration-response-common']['response-message']) 15:03:39 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9)' 15:03:39 15:03:39 transportpce_tests/pce/test01_pce.py:190: AssertionError 15:03:39 ____________ TestTransportPCEPce.test_15_success1_path_computation _____________ 15:03:39 15:03:39 self = 15:03:39 15:03:39 def test_15_success1_path_computation(self): 15:03:39 self.path_computation_input_data["service-name"] = "service 1" 15:03:39 self.path_computation_input_data["service-a-end"] = {"service-format": "Ethernet", "service-rate": "100", 15:03:39 "clli": "ORANGE2", "node-id": "XPONDER-2-2"} 15:03:39 self.path_computation_input_data["service-z-end"] = {"service-format": "Ethernet", "service-rate": "100", 15:03:39 "clli": "ORANGE1", "node-id": "XPONDER-1-2"} 15:03:39 self.path_computation_input_data["hard-constraints"] = {"customer-code": ["Some customer-code"], 15:03:39 "co-routing": { 15:03:39 "service-identifier-list": [{ 15:03:39 "service-identifier": "Some existing-service"}] 15:03:39 }} 15:03:39 self.path_computation_input_data["soft-constraints"] = {"customer-code": ["Some customer-code"], 15:03:39 "co-routing": { 15:03:39 "service-identifier-list": [{ 15:03:39 "service-identifier": "Some existing-service"}] 15:03:39 }} 15:03:39 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 15:03:39 'path-computation-request', 15:03:39 self.path_computation_input_data) 15:03:39 self.assertEqual(response['status_code'], requests.codes.ok) 15:03:39 > self.assertIn('Path is calculated', 15:03:39 response['output']['configuration-response-common']['response-message']) 15:03:39 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9), No frequencies available' 15:03:39 15:03:39 transportpce_tests/pce/test01_pce.py:267: AssertionError 15:03:39 ____________ TestTransportPCEPce.test_16_success2_path_computation _____________ 15:03:39 15:03:39 self = 15:03:39 15:03:39 def test_16_success2_path_computation(self): 15:03:39 self.path_computation_input_data["service-a-end"]["node-id"] = "XPONDER-1-2" 15:03:39 self.path_computation_input_data["service-a-end"]["clli"] = "ORANGE1" 15:03:39 self.path_computation_input_data["service-z-end"]["node-id"] = "XPONDER-3-2" 15:03:39 self.path_computation_input_data["service-z-end"]["clli"] = "ORANGE3" 15:03:39 del self.path_computation_input_data["hard-constraints"] 15:03:39 del self.path_computation_input_data["soft-constraints"] 15:03:39 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 15:03:39 'path-computation-request', 15:03:39 self.path_computation_input_data) 15:03:39 self.assertEqual(response['status_code'], requests.codes.ok) 15:03:39 > self.assertIn('Path is calculated', 15:03:39 response['output']['configuration-response-common']['response-message']) 15:03:39 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9)' 15:03:39 15:03:39 transportpce_tests/pce/test01_pce.py:284: AssertionError 15:03:39 ____________ TestTransportPCEPce.test_17_success3_path_computation _____________ 15:03:39 15:03:39 self = 15:03:39 15:03:39 def test_17_success3_path_computation(self): 15:03:39 self.path_computation_input_data["hard-constraints"] = {"exclude": 15:03:39 {"node-id": ["OpenROADM-2-1", "OpenROADM-2-2"]}} 15:03:39 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 15:03:39 'path-computation-request', 15:03:39 self.path_computation_input_data) 15:03:39 self.assertEqual(response['status_code'], requests.codes.ok) 15:03:39 > self.assertIn('Path is calculated', 15:03:39 response['output']['configuration-response-common']['response-message']) 15:03:39 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9)' 15:03:39 15:03:39 transportpce_tests/pce/test01_pce.py:300: AssertionError 15:03:39 __ TestTransportPCEPce.test_18_path_computation_before_oms_attribute_deletion __ 15:03:39 15:03:39 self = 15:03:39 15:03:39 def test_18_path_computation_before_oms_attribute_deletion(self): 15:03:39 self.path_computation_input_data["service-a-end"]["node-id"] = "XPONDER-2-2" 15:03:39 self.path_computation_input_data["service-a-end"]["clli"] = "ORANGE2" 15:03:39 self.path_computation_input_data["service-z-end"]["node-id"] = "XPONDER-1-2" 15:03:39 self.path_computation_input_data["service-z-end"]["clli"] = "ORANGE1" 15:03:39 del self.path_computation_input_data["hard-constraints"] 15:03:39 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 15:03:39 'path-computation-request', 15:03:39 self.path_computation_input_data) 15:03:39 self.assertEqual(response['status_code'], requests.codes.ok) 15:03:39 > self.assertIn('Path is calculated', 15:03:39 response['output']['configuration-response-common']['response-message']) 15:03:39 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9), No frequencies available' 15:03:39 15:03:39 transportpce_tests/pce/test01_pce.py:319: AssertionError 15:03:39 __ TestTransportPCEPce.test_20_path_computation_after_oms_attribute_deletion ___ 15:03:39 15:03:39 self = 15:03:39 15:03:39 def test_20_path_computation_after_oms_attribute_deletion(self): 15:03:39 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 15:03:39 'path-computation-request', 15:03:39 self.path_computation_input_data) 15:03:39 self.assertEqual(response['status_code'], requests.codes.ok) 15:03:39 > self.assertIn('Path is calculated', 15:03:39 response['output']['configuration-response-common']['response-message']) 15:03:39 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9), No frequencies available' 15:03:39 15:03:39 transportpce_tests/pce/test01_pce.py:346: AssertionError 15:03:39 --------------------------- Captured stdout teardown --------------------------- 15:03:39 all processes killed 15:03:39 ODL log file stored 15:03:39 =========================== short test summary info ============================ 15:03:39 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_05_path_computation_xpdr_bi 15:03:39 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_10_path_computation_xpdr_uni 15:03:39 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_15_success1_path_computation 15:03:39 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_16_success2_path_computation 15:03:39 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_17_success3_path_computation 15:03:39 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_18_path_computation_before_oms_attribute_deletion 15:03:39 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_20_path_computation_after_oms_attribute_deletion 15:03:39 7 failed, 13 passed in 93.30s (0:01:33) 15:03:39 testsPCE: exit 1 (93.71 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh pce pid=4849 15:03:40 testsPCE: FAIL ✖ in 3 minutes 1.88 seconds 15:03:40 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 15:03:40 tests190: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 15:03:40 tests121: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 15:03:47 tests190: freeze> python -m pip freeze --all 15:03:47 tests_tapi: freeze> python -m pip freeze --all 15:03:47 tests121: freeze> python -m pip freeze --all 15:03:47 tests190: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.2,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 15:03:47 tests190: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh oc 15:03:47 using environment variables from ./karafoc.env 15:03:47 pytest -q transportpce_tests/oc/test01_portmapping.py 15:03:47 tests_tapi: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.2,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 15:03:47 tests_tapi: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh tapi 15:03:47 using environment variables from ./karaf221.env 15:03:47 pytest -q transportpce_tests/tapi/test01_abstracted_topology.py 15:03:47 tests121: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.2,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 15:03:47 tests121: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 1.2.1 15:03:47 using environment variables from ./karaf121.env 15:03:47 pytest -q transportpce_tests/1.2.1/test01_portmapping.py 15:05:07 ........... [100%] 15:05:24 10 passed in 96.45s (0:01:36) 15:05:24 pytest -q transportpce_tests/oc/test02_topology.py 15:05:31 ........................ [100%] 15:06:11 21 passed in 143.22s (0:02:23) 15:06:11 pytest -q transportpce_tests/1.2.1/test02_topo_portmapping.py 15:06:12 .................................. [100%] 15:06:37 14 passed in 72.48s (0:01:12) 15:06:37 pytest -q transportpce_tests/oc/test03_renderer.py 15:06:38 ..................... [100%] 15:07:24 6 passed in 72.24s (0:01:12) 15:07:24 pytest -q transportpce_tests/1.2.1/test03_topology.py 15:07:25 ................. [100%] 15:07:43 19 passed in 65.67s (0:01:05) 15:07:43 tests190: OK ✔ in 4 minutes 4.17 seconds 15:07:43 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 15:07:47 .tests71: freeze> python -m pip freeze --all 15:07:54 tests71: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.2,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 15:07:54 tests71: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 7.1 15:07:54 using environment variables from ./karaf71.env 15:07:54 pytest -q transportpce_tests/7.1/test01_portmapping.py 15:08:07 ............................. [100%] 15:08:56 12 passed in 61.17s (0:01:01) 15:08:56 pytest -q transportpce_tests/7.1/test02_otn_renderer.py 15:09:01 .................................................... [100%] 15:10:09 44 passed in 164.89s (0:02:44) 15:10:09 pytest -q transportpce_tests/1.2.1/test04_renderer_service_path_nominal.py 15:10:10 ....................................................................... [100%] 15:11:39 24 passed in 89.07s (0:01:29) 15:11:39 pytest -q transportpce_tests/1.2.1/test05_olm.py 15:11:40 [100%] 15:11:40 62 passed in 163.87s (0:02:43) 15:11:40 pytest -q transportpce_tests/7.1/test03_renderer_or_modes.py 15:12:32 ............................................................................... [100%] 15:14:17 48 passed in 156.30s (0:02:36) 15:14:17 pytest -q transportpce_tests/7.1/test04_renderer_regen_mode.py 15:14:24 ................... [100%] 15:15:03 40 passed in 204.35s (0:03:24) 15:15:03 pytest -q transportpce_tests/1.2.1/test06_end2end.py 15:15:07 ............. [100%] 15:15:30 51 passed in 702.44s (0:11:42) 15:15:30 pytest -q transportpce_tests/tapi/test02_full_topology.py 15:15:31 .. [100%] 15:15:35 22 passed in 78.06s (0:01:18) 15:15:52 .............................................FFFF.....FFF....F.F..FF.FFF............ [100%] 15:19:56 =================================== FAILURES =================================== 15:19:56 _ TestTransportPCEFullTopology.test_16_create_connectivity_service_PhotonicMedia _ 15:19:56 15:19:56 self = 15:19:56 15:19:56 def test_16_create_connectivity_service_PhotonicMedia(self): 15:19:56 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.sAOTS 15:19:56 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.sZOTS 15:19:56 response = test_utils.transportpce_api_rpc_request( 15:19:56 'tapi-connectivity', 'create-connectivity-service', self.cr_serv_input_data) 15:19:56 time.sleep(self.WAITING) 15:19:56 > self.assertEqual(response['status_code'], requests.codes.ok) 15:19:56 E AssertionError: 500 != 200 15:19:56 15:19:56 transportpce_tests/tapi/test02_full_topology.py:316: AssertionError 15:19:56 ________ TestTransportPCEFullTopology.test_17_get_service_PhotonicMedia ________ 15:19:56 15:19:56 self = 15:19:56 15:19:56 def test_17_get_service_PhotonicMedia(self): 15:19:56 response = test_utils.get_ordm_serv_list_attr_request("services", str(self.uuid_services.pm)) 15:19:56 > self.assertEqual(response['status_code'], requests.codes.ok) 15:19:56 E AssertionError: 409 != 200 15:19:56 15:19:56 transportpce_tests/tapi/test02_full_topology.py:346: AssertionError 15:19:56 _ TestTransportPCEFullTopology.test_18a_get_tapi_Pht_node_details_at_Pht_Service_creation _ 15:19:56 15:19:56 self = 15:19:56 15:19:56 def test_18a_get_tapi_Pht_node_details_at_Pht_Service_creation(self): 15:19:56 response = test_utils.get_tapi_topology_node( 15:19:56 test_utils.T0_FULL_MULTILAYER_TOPO_UUID, self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1OTS, "nonconfig") 15:19:56 time.sleep(2) 15:19:56 self.assertEqual(response['status_code'], requests.codes.ok) 15:19:56 input_dict_1 = {"spectrum-capability-pac": {"occupied-spectrum": [{"upper-frequency": "196125000000000", 15:19:56 "lower-frequency": "196075000000000"}], 15:19:56 "supportable-spectrum": [{"upper-frequency": "196125000000000", 15:19:56 "lower-frequency": "191325000000000"}]} 15:19:56 } 15:19:56 15:19:56 self.assertDictEqual(dict(input_dict_1, 15:19:56 **response['onep'][0]['tapi-photonic-media:photonic-media-node-edge-point-spec']), 15:19:56 response['onep'][0]['tapi-photonic-media:photonic-media-node-edge-point-spec']) 15:19:56 self.assertEqual(response['onep'][0]['name'][0]['value-name'], 'eNodeEdgePoint') 15:19:56 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+PHOTONIC_MEDIA_OTS+XPDR1-NETWORK1') 15:19:56 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 15:19:56 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 15:19:56 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '1') 15:19:56 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['capacity']['value'], '100.0') 15:19:56 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['number-of-cep-instances'], '1') 15:19:56 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['capacity']['value'], '100.0') 15:19:56 self.assertEqual(response['onep'][0]['available-capacity']['total-size']['value'], '100.0') 15:19:56 self.assertEqual(response['onep'][0]['tapi-connectivity:cep-list']['connection-end-point'][0] 15:19:56 ['client-node-edge-point'][0]['node-edge-point-uuid'], 'f32f5e9e-d167-31ba-a9e4-8f1efdb8786d') 15:19:56 self.assertEqual(response['onep'][0]['tapi-connectivity:cep-list']['connection-end-point'][0] 15:19:56 ['parent-node-edge-point']['node-edge-point-uuid'], '21efd6a4-2d81-3cdb-aabb-b983fb61904e') 15:19:56 15:19:56 response = test_utils.get_tapi_topology_node( 15:19:56 test_utils.T0_FULL_MULTILAYER_TOPO_UUID, self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1OTSi, "nonconfig") 15:19:56 time.sleep(2) 15:19:56 self.assertDictEqual(dict(input_dict_1, 15:19:56 **response['onep'][0]['tapi-photonic-media:photonic-media-node-edge-point-spec']), 15:19:56 response['onep'][0]['tapi-photonic-media:photonic-media-node-edge-point-spec']) 15:19:56 self.assertEqual(response['status_code'], requests.codes.ok) 15:19:56 self.assertEqual(response['onep'][0]['name'][0]['value-name'], 'PhotMedNodeEdgePoint') 15:19:56 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+OTSi_MEDIA_CHANNEL+XPDR1-NETWORK1') 15:19:56 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 15:19:56 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 15:19:56 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '1') 15:19:56 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['capacity']['value'], '100.0') 15:19:56 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['number-of-cep-instances'], '1') 15:19:56 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['capacity']['value'], '100.0') 15:19:56 self.assertEqual(response['onep'][0]['available-capacity']['total-size']['value'], '100.0') 15:19:56 > self.assertEqual(response['onep'][0]['tapi-connectivity:cep-list']['connection-end-point'][0] 15:19:56 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 15:19:56 ['client-node-edge-point'][0]['node-edge-point-uuid'], '7d2a0549-63e3-3c7f-b4dc-5653e8a81dbe') 15:19:56 E KeyError: 'tapi-connectivity:cep-list' 15:19:56 15:19:56 transportpce_tests/tapi/test02_full_topology.py:397: KeyError 15:19:56 _ TestTransportPCEFullTopology.test_18b_get_tapi_OTN_node_details_at_Pht_Service_creation _ 15:19:56 15:19:56 self = 15:19:56 15:19:56 def test_18b_get_tapi_OTN_node_details_at_Pht_Service_creation(self): 15:19:56 response = test_utils.get_tapi_topology_node( 15:19:56 test_utils.T0_FULL_MULTILAYER_TOPO_UUID, self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1iODU, "nonconfig") 15:19:56 time.sleep(2) 15:19:56 self.assertEqual(response['onep'][0]['name'][0]['value-name'], 'iNodeEdgePoint_N') 15:19:56 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+iODU+XPDR1-NETWORK1') 15:19:56 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 15:19:56 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 15:19:56 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '1') 15:19:56 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['capacity']['value'], '100.0') 15:19:56 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['number-of-cep-instances'], '1') 15:19:56 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['capacity']['value'], '100.0') 15:19:56 self.assertEqual(response['onep'][0]['available-capacity']['total-size']['value'], '100.0') 15:19:56 15:19:56 response = test_utils.get_tapi_topology_node(test_utils.T0_FULL_MULTILAYER_TOPO_UUID, 15:19:56 self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1eODUC1, 15:19:56 "nonconfig") 15:19:56 time.sleep(2) 15:19:56 self.assertEqual(response['onep'][0]['name'][0]['value-name'], 'eNodeEdgePoint_N') 15:19:56 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+eODU+XPDR1-CLIENT1') 15:19:56 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 15:19:56 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 15:19:56 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '1') 15:19:56 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['capacity']['value'], '10.0') 15:19:56 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['number-of-cep-instances'], '1') 15:19:56 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['capacity']['value'], '10.0') 15:19:56 self.assertEqual(response['onep'][0]['available-capacity']['total-size']['value'], '10.0') 15:19:56 > self.assertEqual(response['onep'][0]['tapi-connectivity:cep-list']['connection-end-point'][0] 15:19:56 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 15:19:56 ['parent-node-edge-point']['node-edge-point-uuid'], '72c6b97a-3944-3d88-9882-b7e688bb2772') 15:19:56 E KeyError: 'tapi-connectivity:cep-list' 15:19:56 15:19:56 transportpce_tests/tapi/test02_full_topology.py:447: KeyError 15:19:56 _____ TestTransportPCEFullTopology.test_19_create_connectivity_service_ODU _____ 15:19:56 15:19:56 self = 15:19:56 15:19:56 def test_19_create_connectivity_service_ODU(self): 15:19:56 # pylint: disable=line-too-long 15:19:56 self.cr_serv_input_data["layer-protocol-name"] = "ODU" 15:19:56 self.cr_serv_input_data["end-point"][0]["layer-protocol-name"] = "ODU" 15:19:56 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.sAeODU 15:19:56 self.cr_serv_input_data["end-point"][1]["layer-protocol-name"] = "ODU" 15:19:56 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.sZeODU 15:19:56 # self.cr_serv_input_data["connectivity-constraint"]["service-layer"] = "ODU" 15:19:56 self.cr_serv_input_data["connectivity-constraint"]["service-level"] = self.uuid_services.pm 15:19:56 15:19:56 response = test_utils.transportpce_api_rpc_request( 15:19:56 'tapi-connectivity', 'create-connectivity-service', self.cr_serv_input_data) 15:19:56 time.sleep(self.WAITING) 15:19:56 > self.assertEqual(response['status_code'], requests.codes.ok) 15:19:56 E AssertionError: 500 != 200 15:19:56 15:19:56 transportpce_tests/tapi/test02_full_topology.py:464: AssertionError 15:19:56 _ TestTransportPCEFullTopology.test_20_get_tapi_node_details_at_ODU_Service_creation _ 15:19:56 15:19:56 self = 15:19:56 15:19:56 def test_20_get_tapi_node_details_at_ODU_Service_creation(self): 15:19:56 # ODU service creation correspond to the creation of HO-ODU between 2 Network ports and is associated an 15:19:56 # iODU4 top connection which uses 100% of underlying OTU4 15:19:56 response = test_utils.get_tapi_topology_node(test_utils.T0_FULL_MULTILAYER_TOPO_UUID, 15:19:56 self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1eODUC1, 15:19:56 "nonconfig") 15:19:56 time.sleep(2) 15:19:56 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+eODU+XPDR1-CLIENT1') 15:19:56 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 15:19:56 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 15:19:56 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '1') 15:19:56 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['capacity']['value'], '10.0') 15:19:56 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['number-of-cep-instances'], '1') 15:19:56 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['capacity']['value'], '10.0') 15:19:56 self.assertEqual(response['onep'][0]['available-capacity']['total-size']['value'], '10.0') 15:19:56 > self.assertEqual(response['onep'][0]['tapi-connectivity:cep-list']['connection-end-point'][0] 15:19:56 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 15:19:56 ['client-node-edge-point'][0]['node-edge-point-uuid'], 'c6cd334c-51a1-3995-bed3-5cf2b7445c04') 15:19:56 E KeyError: 'tapi-connectivity:cep-list' 15:19:56 15:19:56 transportpce_tests/tapi/test02_full_topology.py:505: KeyError 15:19:56 _____________ TestTransportPCEFullTopology.test_21_get_service_ODU _____________ 15:19:56 15:19:56 self = 15:19:56 15:19:56 def test_21_get_service_ODU(self): 15:19:56 response = test_utils.get_ordm_serv_list_attr_request("services", str(self.uuid_services.odu)) 15:19:56 > self.assertEqual(response['status_code'], requests.codes.ok) 15:19:56 E AssertionError: 409 != 200 15:19:56 15:19:56 transportpce_tests/tapi/test02_full_topology.py:552: AssertionError 15:19:56 _____ TestTransportPCEFullTopology.test_22_create_connectivity_service_DSR _____ 15:19:56 15:19:56 self = 15:19:56 15:19:56 def test_22_create_connectivity_service_DSR(self): 15:19:56 # pylint: disable=line-too-long 15:19:56 self.cr_serv_input_data["layer-protocol-name"] = "DSR" 15:19:56 self.cr_serv_input_data["end-point"][0]["layer-protocol-name"] = "DSR" 15:19:56 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.sADSR 15:19:56 self.cr_serv_input_data["end-point"][1]["layer-protocol-name"] = "DSR" 15:19:56 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.sZDSR 15:19:56 # self.cr_serv_input_data["connectivity-constraint"]["service-layer"] = "DSR" 15:19:56 self.cr_serv_input_data["connectivity-constraint"]["requested-capacity"]["total-size"]["value"] = "10" 15:19:56 self.cr_serv_input_data["connectivity-constraint"]["service-level"] = self.uuid_services.odu 15:19:56 15:19:56 response = test_utils.transportpce_api_rpc_request( 15:19:56 'tapi-connectivity', 'create-connectivity-service', self.cr_serv_input_data) 15:19:56 time.sleep(self.WAITING) 15:19:56 > self.assertEqual(response['status_code'], requests.codes.ok) 15:19:56 E AssertionError: 500 != 200 15:19:56 15:19:56 transportpce_tests/tapi/test02_full_topology.py:574: AssertionError 15:19:56 _ TestTransportPCEFullTopology.test_23_get_tapi_node_details_at_DSR_Service_creation _ 15:19:56 15:19:56 self = 15:19:56 15:19:56 def test_23_get_tapi_node_details_at_DSR_Service_creation(self): 15:19:56 15:19:56 response = test_utils.get_tapi_topology_node(test_utils.T0_FULL_MULTILAYER_TOPO_UUID, 15:19:56 self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1eODUC1, 15:19:56 "nonconfig") 15:19:56 time.sleep(2) 15:19:56 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+eODU+XPDR1-CLIENT1') 15:19:56 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 15:19:56 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 15:19:56 > self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '0') 15:19:56 E AssertionError: '1' != '0' 15:19:56 E - 1 15:19:56 E + 0 15:19:56 15:19:56 transportpce_tests/tapi/test02_full_topology.py:612: AssertionError 15:19:56 _____________ TestTransportPCEFullTopology.test_24_get_service_DSR _____________ 15:19:56 15:19:56 self = 15:19:56 15:19:56 def test_24_get_service_DSR(self): 15:19:56 response = test_utils.get_ordm_serv_list_attr_request("services", str(self.uuid_services.dsr)) 15:19:56 > self.assertEqual(response['status_code'], requests.codes.ok) 15:19:56 E AssertionError: 409 != 200 15:19:56 15:19:56 transportpce_tests/tapi/test02_full_topology.py:642: AssertionError 15:19:56 ______ TestTransportPCEFullTopology.test_25_get_connectivity_service_list ______ 15:19:56 15:19:56 self = 15:19:56 15:19:56 def test_25_get_connectivity_service_list(self): 15:19:56 response = test_utils.transportpce_api_rpc_request( 15:19:56 'tapi-connectivity', 'get-connectivity-service-list', None) 15:19:56 > self.assertEqual(response['status_code'], requests.codes.ok) 15:19:56 E AssertionError: 500 != 200 15:19:56 15:19:56 transportpce_tests/tapi/test02_full_topology.py:652: AssertionError 15:19:56 _____ TestTransportPCEFullTopology.test_26_delete_connectivity_service_DSR _____ 15:19:56 15:19:56 self = 15:19:56 15:19:56 def test_26_delete_connectivity_service_DSR(self): 15:19:56 self.del_serv_input_data["uuid"] = str(self.uuid_services.dsr) 15:19:56 response = test_utils.transportpce_api_rpc_request( 15:19:56 'tapi-connectivity', 'delete-connectivity-service', self.del_serv_input_data) 15:19:56 > self.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 15:19:56 E AssertionError: 500 not found in (200, 204) 15:19:56 15:19:56 transportpce_tests/tapi/test02_full_topology.py:681: AssertionError 15:19:56 _____ TestTransportPCEFullTopology.test_27_delete_connectivity_service_ODU _____ 15:19:56 15:19:56 self = 15:19:56 15:19:56 def test_27_delete_connectivity_service_ODU(self): 15:19:56 self.del_serv_input_data["uuid"] = str(self.uuid_services.odu) 15:19:56 response = test_utils.transportpce_api_rpc_request( 15:19:56 'tapi-connectivity', 'delete-connectivity-service', self.del_serv_input_data) 15:19:56 > self.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 15:19:56 E AssertionError: 500 not found in (200, 204) 15:19:56 15:19:56 transportpce_tests/tapi/test02_full_topology.py:688: AssertionError 15:19:56 _ TestTransportPCEFullTopology.test_28_delete_connectivity_service_PhotonicMedia _ 15:19:56 15:19:56 self = 15:19:56 15:19:56 def test_28_delete_connectivity_service_PhotonicMedia(self): 15:19:56 self.del_serv_input_data["uuid"] = str(self.uuid_services.pm) 15:19:56 response = test_utils.transportpce_api_rpc_request( 15:19:56 'tapi-connectivity', 'delete-connectivity-service', self.del_serv_input_data) 15:19:56 > self.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 15:19:56 E AssertionError: 500 not found in (200, 204) 15:19:56 15:19:56 transportpce_tests/tapi/test02_full_topology.py:695: AssertionError 15:19:56 =========================== short test summary info ============================ 15:19:56 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_16_create_connectivity_service_PhotonicMedia 15:19:56 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_17_get_service_PhotonicMedia 15:19:56 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_18a_get_tapi_Pht_node_details_at_Pht_Service_creation 15:19:56 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_18b_get_tapi_OTN_node_details_at_Pht_Service_creation 15:19:56 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_19_create_connectivity_service_ODU 15:19:56 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_20_get_tapi_node_details_at_ODU_Service_creation 15:19:56 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_21_get_service_ODU 15:19:56 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_22_create_connectivity_service_DSR 15:19:56 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_23_get_tapi_node_details_at_DSR_Service_creation 15:19:56 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_24_get_service_DSR 15:19:56 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_25_get_connectivity_service_list 15:19:56 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_26_delete_connectivity_service_DSR 15:19:56 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_27_delete_connectivity_service_ODU 15:19:56 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_28_delete_connectivity_service_PhotonicMedia 15:19:56 14 failed, 22 passed in 265.29s (0:04:25) 15:19:56 tests71: OK ✔ in 7 minutes 52.32 seconds 15:19:56 tests_tapi: exit 1 (968.61 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh tapi pid=5558 15:19:56 tests_tapi: FAIL ✖ in 16 minutes 17.04 seconds 15:19:56 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 15:20:03 tests221: freeze> python -m pip freeze --all 15:20:03 tests221: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.2,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 15:20:03 tests221: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 2.2.1 15:20:03 using environment variables from ./karaf221.env 15:20:03 pytest -q transportpce_tests/2.2.1/test01_portmapping.py 15:20:40 ................................... [100%] 15:21:20 35 passed in 76.73s (0:01:16) 15:21:20 pytest -q transportpce_tests/2.2.1/test02_topo_portmapping.py 15:21:53 ....... [100%] 15:22:06 6 passed in 46.22s 15:22:06 pytest -q transportpce_tests/2.2.1/test03_topology.py 15:22:50 ............................................. [100%] 15:24:25 44 passed in 138.25s (0:02:18) 15:24:25 pytest -q transportpce_tests/2.2.1/test04_otn_topology.py 15:25:02 ............ [100%] 15:25:26 12 passed in 60.74s (0:01:00) 15:25:26 pytest -q transportpce_tests/2.2.1/test05_flex_grid.py 15:25:53 ................. [100%] 15:27:10 54 passed in 725.98s (0:12:05) 15:27:13 ... [100%] 15:27:22 16 passed in 115.85s (0:01:55) 15:27:22 pytest -q transportpce_tests/2.2.1/test06_renderer_service_path_nominal.py 15:27:51 ............................... [100%] 15:27:58 31 passed in 35.19s 15:27:58 pytest -q transportpce_tests/2.2.1/test07_otn_renderer.py 15:28:34 .......................... [100%] 15:29:30 26 passed in 91.84s (0:01:31) 15:29:30 pytest -q transportpce_tests/2.2.1/test08_otn_sh_renderer.py 15:30:07 ...................... [100%] 15:31:10 22 passed in 100.19s (0:01:40) 15:31:10 pytest -q transportpce_tests/2.2.1/test09_olm.py 15:31:52 ........................................ [100%] 15:34:14 40 passed in 182.93s (0:03:02) 15:34:14 pytest -q transportpce_tests/2.2.1/test11_otn_end2end.py 15:34:56 ........................................................................ [ 74%] 15:40:33 ......................... [100%] 15:42:25 97 passed in 490.98s (0:08:10) 15:42:25 pytest -q transportpce_tests/2.2.1/test12_end2end.py 15:43:06 ...................................................... [100%] 15:49:53 54 passed in 448.18s (0:07:28) 15:49:53 pytest -q transportpce_tests/2.2.1/test14_otn_switch_end2end.py 15:50:47 ........................................................................ [ 71%] 15:55:54 ............................. [100%] 16:01:03 101 passed in 669.61s (0:11:09) 16:01:03 pytest -q transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py 16:01:57 ........................................................................ [ 67%] 16:07:42 ................................... [100%] 16:11:03 107 passed in 599.48s (0:09:59) 16:11:03 pytest -q transportpce_tests/2.2.1/test16_freq_end2end.py 16:11:48 ..............FFFFFFFFFFF.........FFFF....... [100%] 16:14:25 =================================== FAILURES =================================== 16:14:25 ___________ TestTransportPCEFreqEndtoend.test_15_get_other_service1 ____________ 16:14:25 16:14:25 self = 16:14:25 16:14:25 def test_15_get_other_service1(self): 16:14:25 response = test_utils.get_ordm_serv_list_attr_request( 16:14:25 "services", "service1-openroadm") 16:14:25 > self.assertEqual(response['status_code'], requests.codes.ok) 16:14:25 E AssertionError: 409 != 200 16:14:25 16:14:25 transportpce_tests/2.2.1/test16_freq_end2end.py:270: AssertionError 16:14:25 _____ TestTransportPCEFreqEndtoend.test_16_check_interface_roadma1_deg2_mc _____ 16:14:25 16:14:25 self = 16:14:25 16:14:25 def test_16_check_interface_roadma1_deg2_mc(self): 16:14:25 response = test_utils.check_node_attribute_request( 16:14:25 'ROADM-A1', 'interface', 'DEG2-TTP-TXRX-mc-282:287') 16:14:25 > self.assertEqual(response['status_code'], requests.codes.ok) 16:14:25 E AssertionError: 409 != 200 16:14:25 16:14:25 transportpce_tests/2.2.1/test16_freq_end2end.py:284: AssertionError 16:14:25 ____ TestTransportPCEFreqEndtoend.test_17_check_interface_roadm_a1_deg2_nmc ____ 16:14:25 16:14:25 self = 16:14:25 16:14:25 def test_17_check_interface_roadm_a1_deg2_nmc(self): 16:14:25 response = test_utils.check_node_attribute_request( 16:14:25 'ROADM-A1', 'interface', 'DEG2-TTP-TXRX-nmc-282:287') 16:14:25 > self.assertEqual(response['status_code'], requests.codes.ok) 16:14:25 E AssertionError: 409 != 200 16:14:25 16:14:25 transportpce_tests/2.2.1/test16_freq_end2end.py:307: AssertionError 16:14:25 ____ TestTransportPCEFreqEndtoend.test_18_check_interface_roadm_a1_srg3_nmc ____ 16:14:25 16:14:25 self = 16:14:25 16:14:25 def test_18_check_interface_roadm_a1_srg3_nmc(self): 16:14:25 response = test_utils.check_node_attribute_request( 16:14:25 'ROADM-A1', 'interface', 'SRG3-PP1-TXRX-nmc-282:287') 16:14:25 > self.assertEqual(response['status_code'], requests.codes.ok) 16:14:25 E AssertionError: 409 != 200 16:14:25 16:14:25 transportpce_tests/2.2.1/test16_freq_end2end.py:330: AssertionError 16:14:25 ____ TestTransportPCEFreqEndtoend.test_19_check_interface_roadm_c1_deg1_mc _____ 16:14:25 16:14:25 self = 16:14:25 16:14:25 def test_19_check_interface_roadm_c1_deg1_mc(self): 16:14:25 response = test_utils.check_node_attribute_request( 16:14:25 'ROADM-C1', 'interface', 'DEG1-TTP-TXRX-mc-282:287') 16:14:25 > self.assertEqual(response['status_code'], requests.codes.ok) 16:14:25 E AssertionError: 409 != 200 16:14:25 16:14:25 transportpce_tests/2.2.1/test16_freq_end2end.py:352: AssertionError 16:14:25 ____ TestTransportPCEFreqEndtoend.test_20_check_interface_roadm_c1_deg1_nmc ____ 16:14:25 16:14:25 self = 16:14:25 16:14:25 def test_20_check_interface_roadm_c1_deg1_nmc(self): 16:14:25 response = test_utils.check_node_attribute_request( 16:14:25 'ROADM-C1', 'interface', 'DEG1-TTP-TXRX-nmc-282:287') 16:14:25 > self.assertEqual(response['status_code'], requests.codes.ok) 16:14:25 E AssertionError: 409 != 200 16:14:25 16:14:25 transportpce_tests/2.2.1/test16_freq_end2end.py:375: AssertionError 16:14:25 ____ TestTransportPCEFreqEndtoend.test_21_check_interface_roadm_c1_srg1_nmc ____ 16:14:25 16:14:25 self = 16:14:25 16:14:25 def test_21_check_interface_roadm_c1_srg1_nmc(self): 16:14:25 response = test_utils.check_node_attribute_request( 16:14:25 'ROADM-C1', 'interface', 'SRG1-PP1-TXRX-nmc-282:287') 16:14:25 > self.assertEqual(response['status_code'], requests.codes.ok) 16:14:25 E AssertionError: 409 != 200 16:14:25 16:14:25 transportpce_tests/2.2.1/test16_freq_end2end.py:398: AssertionError 16:14:25 ____ TestTransportPCEFreqEndtoend.test_22_check_openroadm_topo_ROADM_A1_SRG ____ 16:14:25 16:14:25 self = 16:14:25 16:14:25 def test_22_check_openroadm_topo_ROADM_A1_SRG(self): 16:14:25 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-A1-SRG3', 'config') 16:14:25 self.assertEqual(response['status_code'], requests.codes.ok) 16:14:25 freq_map = base64.b64decode( 16:14:25 response['node']['org-openroadm-network-topology:srg-attributes']['avail-freq-maps'][0]['freq-map']) 16:14:25 freq_map_array = [int(x) for x in freq_map] 16:14:25 > self.assertEqual(freq_map_array[35], 129, "Bits 282 to 287 should not be available") 16:14:25 E AssertionError: 255 != 129 : Bits 282 to 287 should not be available 16:14:25 16:14:25 transportpce_tests/2.2.1/test16_freq_end2end.py:423: AssertionError 16:14:25 ____ TestTransportPCEFreqEndtoend.test_23_check_openroadm_topo_ROADM_A1_DEG ____ 16:14:25 16:14:25 self = 16:14:25 16:14:25 def test_23_check_openroadm_topo_ROADM_A1_DEG(self): 16:14:25 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-A1-DEG2', 'config') 16:14:25 self.assertEqual(response['status_code'], requests.codes.ok) 16:14:25 freq_map = base64.b64decode( 16:14:25 response['node']['org-openroadm-network-topology:degree-attributes']['avail-freq-maps'][0]['freq-map']) 16:14:25 freq_map_array = [int(x) for x in freq_map] 16:14:25 > self.assertEqual(freq_map_array[35], 129, "Bits 282 to 287 should not be available") 16:14:25 E AssertionError: 255 != 129 : Bits 282 to 287 should not be available 16:14:25 16:14:25 transportpce_tests/2.2.1/test16_freq_end2end.py:447: AssertionError 16:14:25 ___ TestTransportPCEFreqEndtoend.test_24_check_openroadm_topo_ROADM_C1_DEG1 ____ 16:14:25 16:14:25 self = 16:14:25 16:14:25 def test_24_check_openroadm_topo_ROADM_C1_DEG1(self): 16:14:25 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-C1-DEG1', 'config') 16:14:25 self.assertEqual(response['status_code'], requests.codes.ok) 16:14:25 freq_map = base64.b64decode( 16:14:25 response['node']['org-openroadm-network-topology:degree-attributes']['avail-freq-maps'][0]['freq-map']) 16:14:25 freq_map_array = [int(x) for x in freq_map] 16:14:25 > self.assertEqual(freq_map_array[35], 129, "Bits 282 to 287 should not be available") 16:14:25 E AssertionError: 255 != 129 : Bits 282 to 287 should not be available 16:14:25 16:14:25 transportpce_tests/2.2.1/test16_freq_end2end.py:471: AssertionError 16:14:25 ___ TestTransportPCEFreqEndtoend.test_25_check_openroadm_topo_ROADM_C1_SRG1 ____ 16:14:25 16:14:25 self = 16:14:25 16:14:25 def test_25_check_openroadm_topo_ROADM_C1_SRG1(self): 16:14:25 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-C1-SRG1', 'config') 16:14:25 self.assertEqual(response['status_code'], requests.codes.ok) 16:14:25 freq_map = base64.b64decode( 16:14:25 response['node']['org-openroadm-network-topology:srg-attributes']['avail-freq-maps'][0]['freq-map']) 16:14:25 freq_map_array = [int(x) for x in freq_map] 16:14:25 > self.assertEqual(freq_map_array[35], 129, "Bits 282 to 287 should not be available") 16:14:25 E AssertionError: 255 != 129 : Bits 282 to 287 should not be available 16:14:25 16:14:25 transportpce_tests/2.2.1/test16_freq_end2end.py:495: AssertionError 16:14:25 _____ TestTransportPCEFreqEndtoend.test_35_check_openroadm_topo_ROADMA_SRG _____ 16:14:25 16:14:25 self = 16:14:25 16:14:25 def test_35_check_openroadm_topo_ROADMA_SRG(self): 16:14:25 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-A1-SRG3', 'config') 16:14:25 self.assertEqual(response['status_code'], requests.codes.ok) 16:14:25 freq_map = base64.b64decode( 16:14:25 response['node']['org-openroadm-network-topology:srg-attributes']['avail-freq-maps'][0]['freq-map']) 16:14:25 freq_map_array = [int(x) for x in freq_map] 16:14:25 self.assertEqual(freq_map_array[35], 255, "Bits 282 to 287 should be available") 16:14:25 liste_tp = response['node']['ietf-network-topology:termination-point'] 16:14:25 for ele in liste_tp: 16:14:25 if ele['tp-id'] == 'SRG3-PP1-TXRX': 16:14:25 freq_map = base64.b64decode( 16:14:25 ele['org-openroadm-network-topology:pp-attributes']['avail-freq-maps'][0]['freq-map']) 16:14:25 freq_map_array = [int(x) for x in freq_map] 16:14:25 self.assertEqual(freq_map_array[35], 255, "Bits 282 to 287 should be available") 16:14:25 if ele['tp-id'] == 'SRG3-CP-TXRX': 16:14:25 freq_map = base64.b64decode( 16:14:25 > ele['org-openroadm-network-topology:cp-attributes']['avail-freq-maps'][0]['freq-map']) 16:14:25 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16:14:25 E KeyError: 'org-openroadm-network-topology:cp-attributes' 16:14:25 16:14:25 transportpce_tests/2.2.1/test16_freq_end2end.py:603: KeyError 16:14:25 _____ TestTransportPCEFreqEndtoend.test_36_check_openroadm_topo_ROADMA_DEG _____ 16:14:25 16:14:25 self = 16:14:25 16:14:25 def test_36_check_openroadm_topo_ROADMA_DEG(self): 16:14:25 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-A1-DEG2', 'config') 16:14:25 self.assertEqual(response['status_code'], requests.codes.ok) 16:14:25 freq_map = base64.b64decode( 16:14:25 response['node']['org-openroadm-network-topology:degree-attributes']['avail-freq-maps'][0]['freq-map']) 16:14:25 freq_map_array = [int(x) for x in freq_map] 16:14:25 self.assertEqual(freq_map_array[35], 255, "Bits 282 to 287 should be available") 16:14:25 self.assertEqual(response['node']['ietf-network-topology:termination-point'][0]['tp-id'], 'DEG2-TTP-TXRX') 16:14:25 self.assertEqual(response['node']['ietf-network-topology:termination-point'][1]['tp-id'], 'DEG2-CTP-TXRX') 16:14:25 liste_tp = response['node']['ietf-network-topology:termination-point'] 16:14:25 for ele in liste_tp: 16:14:25 if ele['tp-id'] == 'DEG2-TTP-TXRX': 16:14:25 freq_map = base64.b64decode( 16:14:25 > ele['org-openroadm-network-topology:tx-ttp-attributes']['avail-freq-maps'][0]['freq-map']) 16:14:25 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16:14:25 E KeyError: 'org-openroadm-network-topology:tx-ttp-attributes' 16:14:25 16:14:25 transportpce_tests/2.2.1/test16_freq_end2end.py:622: KeyError 16:14:25 ___ TestTransportPCEFreqEndtoend.test_37_check_openroadm_topo_ROADM_C1_DEG1 ____ 16:14:25 16:14:25 self = 16:14:25 16:14:25 def test_37_check_openroadm_topo_ROADM_C1_DEG1(self): 16:14:25 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-C1-DEG1', 'config') 16:14:25 self.assertEqual(response['status_code'], requests.codes.ok) 16:14:25 freq_map = base64.b64decode( 16:14:25 response['node']['org-openroadm-network-topology:degree-attributes']['avail-freq-maps'][0]['freq-map']) 16:14:25 freq_map_array = [int(x) for x in freq_map] 16:14:25 self.assertEqual(freq_map_array[35], 255, "Bits 282 to 287 should be available") 16:14:25 self.assertEqual(response['node']['ietf-network-topology:termination-point'][0]['tp-id'], 'DEG1-CTP-TXRX') 16:14:25 self.assertEqual(response['node']['ietf-network-topology:termination-point'][1]['tp-id'], 'DEG1-TTP-TXRX') 16:14:25 liste_tp = response['node']['ietf-network-topology:termination-point'] 16:14:25 for ele in liste_tp: 16:14:25 if ele['tp-id'] == 'DEG1-CTP-TXRX': 16:14:25 freq_map = base64.b64decode( 16:14:25 > ele['org-openroadm-network-topology:ctp-attributes']['avail-freq-maps'][0]['freq-map']) 16:14:25 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16:14:25 E KeyError: 'org-openroadm-network-topology:ctp-attributes' 16:14:25 16:14:25 transportpce_tests/2.2.1/test16_freq_end2end.py:644: KeyError 16:14:25 ___ TestTransportPCEFreqEndtoend.test_38_check_openroadm_topo_ROADM_C1_SRG1 ____ 16:14:25 16:14:25 self = 16:14:25 16:14:25 def test_38_check_openroadm_topo_ROADM_C1_SRG1(self): 16:14:25 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-C1-SRG1', 'config') 16:14:25 self.assertEqual(response['status_code'], requests.codes.ok) 16:14:25 freq_map = base64.b64decode( 16:14:25 response['node']['org-openroadm-network-topology:srg-attributes']['avail-freq-maps'][0]['freq-map']) 16:14:25 freq_map_array = [int(x) for x in freq_map] 16:14:25 self.assertEqual(freq_map_array[35], 255, "Bits 282 to 287 should be available") 16:14:25 self.assertEqual(response['node']['ietf-network-topology:termination-point'][1]['tp-id'], 'SRG1-PP1-TXRX') 16:14:25 self.assertEqual(response['node']['ietf-network-topology:termination-point'][4]['tp-id'], 'SRG1-CP-TXRX') 16:14:25 liste_tp = response['node']['ietf-network-topology:termination-point'] 16:14:25 for ele in liste_tp: 16:14:25 if ele['tp-id'] == 'SRG1-PP1-TXRX': 16:14:25 freq_map = base64.b64decode( 16:14:25 > ele['org-openroadm-network-topology:pp-attributes']['avail-freq-maps'][0]['freq-map']) 16:14:25 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16:14:25 E KeyError: 'org-openroadm-network-topology:pp-attributes' 16:14:25 16:14:25 transportpce_tests/2.2.1/test16_freq_end2end.py:668: KeyError 16:14:25 =========================== short test summary info ============================ 16:14:25 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_15_get_other_service1 16:14:25 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_16_check_interface_roadma1_deg2_mc 16:14:25 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_17_check_interface_roadm_a1_deg2_nmc 16:14:25 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_18_check_interface_roadm_a1_srg3_nmc 16:14:25 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_19_check_interface_roadm_c1_deg1_mc 16:14:25 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_20_check_interface_roadm_c1_deg1_nmc 16:14:25 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_21_check_interface_roadm_c1_srg1_nmc 16:14:25 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_22_check_openroadm_topo_ROADM_A1_SRG 16:14:25 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_23_check_openroadm_topo_ROADM_A1_DEG 16:14:25 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_24_check_openroadm_topo_ROADM_C1_DEG1 16:14:25 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_25_check_openroadm_topo_ROADM_C1_SRG1 16:14:25 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_35_check_openroadm_topo_ROADMA_SRG 16:14:25 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_36_check_openroadm_topo_ROADMA_DEG 16:14:25 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_37_check_openroadm_topo_ROADM_C1_DEG1 16:14:25 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_38_check_openroadm_topo_ROADM_C1_SRG1 16:14:25 15 failed, 30 passed in 202.03s (0:03:22) 16:14:25 tests121: OK ✔ in 23 minutes 30.87 seconds 16:14:25 tests221: exit 1 (3262.56 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 2.2.1 pid=19733 16:14:26 tests221: FAIL ✖ in 54 minutes 29.57 seconds 16:14:26 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 16:14:33 tests_hybrid: freeze> python -m pip freeze --all 16:14:33 tests_hybrid: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.3,dict2xml==1.7.7,idna==3.11,iniconfig==2.3.0,invoke==2.2.1,lxml==6.0.2,netconf-client==3.5.0,packaging==25.0,paramiko==4.0.0,pip==25.2,pluggy==1.6.0,psutil==7.1.2,pycparser==2.23,Pygments==2.19.2,PyNaCl==1.6.0,pytest==8.4.2,requests==2.32.5,setuptools==80.9.0,urllib3==2.5.0 16:14:33 tests_hybrid: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh hybrid 16:14:33 using environment variables from ./karaf221.env 16:14:33 pytest -q transportpce_tests/hybrid/test01_device_change_notifications.py 16:15:14 ................................................... [100%] 16:17:02 51 passed in 148.01s (0:02:28) 16:17:02 pytest -q transportpce_tests/hybrid/test02_B100G_end2end.py 16:17:44 ........................................................................ [ 66%] 16:22:04 ..................................... [100%] 16:24:10 109 passed in 428.53s (0:07:08) 16:24:10 pytest -q transportpce_tests/hybrid/test03_autonomous_reroute.py 16:24:59 ..................................................... [100%] 16:28:32 53 passed in 261.02s (0:04:21) 16:28:32 buildcontroller: OK (122.76=setup[9.92]+cmd[112.84] seconds) 16:28:32 sims: OK (12.50=setup[8.63]+cmd[3.86] seconds) 16:28:32 build_karaf_tests121: OK (139.07=setup[10.28]+cmd[128.78] seconds) 16:28:32 testsPCE: FAIL code 1 (181.88=setup[88.16]+cmd[93.71] seconds) 16:28:32 tests121: OK (1410.87=setup[8.47]+cmd[1402.40] seconds) 16:28:32 build_karaf_tests221: OK (124.54=setup[10.43]+cmd[114.11] seconds) 16:28:32 tests_tapi: FAIL code 1 (977.04=setup[8.43]+cmd[968.61] seconds) 16:28:32 tests221: FAIL code 1 (3269.57=setup[7.01]+cmd[3262.56] seconds) 16:28:32 build_karaf_tests71: OK (140.37=setup[11.29]+cmd[129.08] seconds) 16:28:32 tests71: OK (472.32=setup[11.27]+cmd[461.05] seconds) 16:28:32 build_karaf_tests190: OK (140.39=setup[10.44]+cmd[129.95] seconds) 16:28:32 tests190: OK (244.17=setup[8.31]+cmd[235.86] seconds) 16:28:32 tests_hybrid: OK (846.33=setup[7.88]+cmd[838.46] seconds) 16:28:32 buildlighty: OK (46.84=setup[22.95]+cmd[23.89] seconds) 16:28:32 docs: OK (34.89=setup[31.16]+cmd[3.73] seconds) 16:28:32 docs-linkcheck: OK (37.98=setup[31.85]+cmd[6.13] seconds) 16:28:32 checkbashisms: OK (3.64=setup[2.22]+cmd[0.01,0.10,1.30] seconds) 16:28:32 pre-commit: FAIL code 1 (46.25=setup[3.49]+cmd[0.01,0.00,42.75] seconds) 16:28:32 pylint: FAIL code 1 (37.14=setup[7.77]+cmd[29.36] seconds) 16:28:32 evaluation failed :( (5538.02 seconds) 16:28:32 + tox_status=255 16:28:32 + echo '---> Completed tox runs' 16:28:32 ---> Completed tox runs 16:28:32 + for i in .tox/*/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 ++ echo .tox/build_karaf_tests121/log 16:28:32 + tox_env=build_karaf_tests121 16:28:32 + cp -r .tox/build_karaf_tests121/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests121 16:28:32 + for i in .tox/*/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 ++ echo .tox/build_karaf_tests190/log 16:28:32 + tox_env=build_karaf_tests190 16:28:32 + cp -r .tox/build_karaf_tests190/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests190 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/build_karaf_tests221/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=build_karaf_tests221 16:28:32 + cp -r .tox/build_karaf_tests221/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests221 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/build_karaf_tests71/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=build_karaf_tests71 16:28:32 + cp -r .tox/build_karaf_tests71/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests71 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/buildcontroller/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=buildcontroller 16:28:32 + cp -r .tox/buildcontroller/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/buildcontroller 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/buildlighty/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=buildlighty 16:28:32 + cp -r .tox/buildlighty/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/buildlighty 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/checkbashisms/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=checkbashisms 16:28:32 + cp -r .tox/checkbashisms/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/checkbashisms 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/docs-linkcheck/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=docs-linkcheck 16:28:32 + cp -r .tox/docs-linkcheck/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/docs-linkcheck 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/docs/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=docs 16:28:32 + cp -r .tox/docs/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/docs 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/pre-commit/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=pre-commit 16:28:32 + cp -r .tox/pre-commit/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/pre-commit 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/pylint/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=pylint 16:28:32 + cp -r .tox/pylint/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/pylint 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/sims/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=sims 16:28:32 + cp -r .tox/sims/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/sims 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/tests121/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=tests121 16:28:32 + cp -r .tox/tests121/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests121 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/tests190/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=tests190 16:28:32 + cp -r .tox/tests190/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests190 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/tests221/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=tests221 16:28:32 + cp -r .tox/tests221/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests221 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/tests71/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=tests71 16:28:32 + cp -r .tox/tests71/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests71 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/testsPCE/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=testsPCE 16:28:32 + cp -r .tox/testsPCE/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/testsPCE 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/tests_hybrid/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=tests_hybrid 16:28:32 + cp -r .tox/tests_hybrid/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests_hybrid 16:28:32 + for i in .tox/*/log 16:28:32 ++ echo .tox/tests_tapi/log 16:28:32 ++ awk -F/ '{print $2}' 16:28:32 + tox_env=tests_tapi 16:28:32 + cp -r .tox/tests_tapi/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests_tapi 16:28:33 + DOC_DIR=docs/_build/html 16:28:33 + [[ -d docs/_build/html ]] 16:28:33 + echo '---> Archiving generated docs' 16:28:33 ---> Archiving generated docs 16:28:33 + mv docs/_build/html /w/workspace/transportpce-tox-verify-transportpce-master/archives/docs 16:28:33 + echo '---> tox-run.sh ends' 16:28:33 ---> tox-run.sh ends 16:28:33 + test 255 -eq 0 16:28:33 + exit 255 16:28:33 ++ '[' 1 = 1 ']' 16:28:33 ++ '[' -x /usr/bin/clear_console ']' 16:28:33 ++ /usr/bin/clear_console -q 16:28:33 Build step 'Execute shell' marked build as failure 16:28:33 $ ssh-agent -k 16:28:33 unset SSH_AUTH_SOCK; 16:28:33 unset SSH_AGENT_PID; 16:28:33 echo Agent pid 1570 killed; 16:28:33 [ssh-agent] Stopped. 16:28:33 [PostBuildScript] - [INFO] Executing post build scripts. 16:28:33 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins13374675637573638878.sh 16:28:33 ---> sysstat.sh 16:28:34 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins9839050186310885364.sh 16:28:34 ---> package-listing.sh 16:28:34 ++ facter osfamily 16:28:34 ++ tr '[:upper:]' '[:lower:]' 16:28:34 + OS_FAMILY=debian 16:28:34 + workspace=/w/workspace/transportpce-tox-verify-transportpce-master 16:28:34 + START_PACKAGES=/tmp/packages_start.txt 16:28:34 + END_PACKAGES=/tmp/packages_end.txt 16:28:34 + DIFF_PACKAGES=/tmp/packages_diff.txt 16:28:34 + PACKAGES=/tmp/packages_start.txt 16:28:34 + '[' /w/workspace/transportpce-tox-verify-transportpce-master ']' 16:28:34 + PACKAGES=/tmp/packages_end.txt 16:28:34 + case "${OS_FAMILY}" in 16:28:34 + dpkg -l 16:28:34 + grep '^ii' 16:28:34 + '[' -f /tmp/packages_start.txt ']' 16:28:34 + '[' -f /tmp/packages_end.txt ']' 16:28:34 + diff /tmp/packages_start.txt /tmp/packages_end.txt 16:28:34 + '[' /w/workspace/transportpce-tox-verify-transportpce-master ']' 16:28:34 + mkdir -p /w/workspace/transportpce-tox-verify-transportpce-master/archives/ 16:28:34 + cp -f /tmp/packages_diff.txt /tmp/packages_end.txt /tmp/packages_start.txt /w/workspace/transportpce-tox-verify-transportpce-master/archives/ 16:28:34 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins17379801222176089796.sh 16:28:34 ---> capture-instance-metadata.sh 16:28:34 Setup pyenv: 16:28:34 system 16:28:34 3.8.20 16:28:34 3.9.20 16:28:34 3.10.15 16:28:34 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 16:28:35 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-EmAZ from file:/tmp/.os_lf_venv 16:28:35 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 16:28:35 lf-activate-venv(): INFO: Attempting to install with network-safe options... 16:28:39 lf-activate-venv(): INFO: Base packages installed successfully 16:28:39 lf-activate-venv(): INFO: Installing additional packages: lftools 16:28:54 lf-activate-venv(): INFO: Adding /tmp/venv-EmAZ/bin to PATH 16:28:54 INFO: Running in OpenStack, capturing instance metadata 16:28:54 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins12641977253008628435.sh 16:28:54 provisioning config files... 16:28:55 Could not find credentials [logs] for transportpce-tox-verify-transportpce-master #3786 16:28:55 copy managed file [jenkins-log-archives-settings] to file:/w/workspace/transportpce-tox-verify-transportpce-master@tmp/config17854259642075284217tmp 16:28:55 Regular expression run condition: Expression=[^.*logs-s3.*], Label=[odl-logs-s3-cloudfront-index] 16:28:55 Run condition [Regular expression match] enabling perform for step [Provide Configuration files] 16:28:55 provisioning config files... 16:28:55 copy managed file [jenkins-s3-log-ship] to file:/home/jenkins/.aws/credentials 16:28:55 [EnvInject] - Injecting environment variables from a build step. 16:28:55 [EnvInject] - Injecting as environment variables the properties content 16:28:55 SERVER_ID=logs 16:28:55 16:28:55 [EnvInject] - Variables injected successfully. 16:28:55 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins10848373494745937001.sh 16:28:55 ---> create-netrc.sh 16:28:55 WARN: Log server credential not found. 16:28:55 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins16713677977545211943.sh 16:28:55 ---> python-tools-install.sh 16:28:55 Setup pyenv: 16:28:55 system 16:28:55 3.8.20 16:28:55 3.9.20 16:28:55 3.10.15 16:28:55 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 16:28:55 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-EmAZ from file:/tmp/.os_lf_venv 16:28:55 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 16:28:55 lf-activate-venv(): INFO: Attempting to install with network-safe options... 16:28:57 lf-activate-venv(): INFO: Base packages installed successfully 16:28:57 lf-activate-venv(): INFO: Installing additional packages: lftools 16:29:08 lf-activate-venv(): INFO: Adding /tmp/venv-EmAZ/bin to PATH 16:29:08 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins16858892409643586340.sh 16:29:08 ---> sudo-logs.sh 16:29:08 Archiving 'sudo' log.. 16:29:08 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins8969249440596430121.sh 16:29:08 ---> job-cost.sh 16:29:08 Setup pyenv: 16:29:08 system 16:29:08 3.8.20 16:29:08 3.9.20 16:29:08 3.10.15 16:29:08 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 16:29:08 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-EmAZ from file:/tmp/.os_lf_venv 16:29:08 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 16:29:08 lf-activate-venv(): INFO: Attempting to install with network-safe options... 16:29:10 lf-activate-venv(): INFO: Base packages installed successfully 16:29:10 lf-activate-venv(): INFO: Installing additional packages: zipp==1.1.0 python-openstackclient urllib3~=1.26.15 16:29:17 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. 16:29:17 deprecated 1.2.18 requires wrapt<2,>=1.10, but you have wrapt 2.0.0 which is incompatible. 16:29:18 lf-activate-venv(): INFO: Adding /tmp/venv-EmAZ/bin to PATH 16:29:18 INFO: No Stack... 16:29:18 INFO: Retrieving Pricing Info for: v3-standard-4 16:29:18 INFO: Archiving Costs 16:29:18 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins15533597176352885963.sh 16:29:18 ---> logs-deploy.sh 16:29:18 Setup pyenv: 16:29:18 system 16:29:18 3.8.20 16:29:18 3.9.20 16:29:18 3.10.15 16:29:18 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 16:29:18 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-EmAZ from file:/tmp/.os_lf_venv 16:29:18 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 16:29:18 lf-activate-venv(): INFO: Attempting to install with network-safe options... 16:29:20 lf-activate-venv(): INFO: Base packages installed successfully 16:29:20 lf-activate-venv(): INFO: Installing additional packages: lftools urllib3~=1.26.15 16:29:33 lf-activate-venv(): INFO: Adding /tmp/venv-EmAZ/bin to PATH 16:29:33 WARNING: Nexus logging server not set 16:29:33 INFO: S3 path logs/releng/vex-yul-odl-jenkins-1/transportpce-tox-verify-transportpce-master/3786/ 16:29:33 INFO: archiving logs to S3 16:29:36 ---> uname -a: 16:29:36 Linux prd-ubuntu2204-docker-4c-16g-2903 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux 16:29:36 16:29:36 16:29:36 ---> lscpu: 16:29:36 Architecture: x86_64 16:29:36 CPU op-mode(s): 32-bit, 64-bit 16:29:36 Address sizes: 40 bits physical, 48 bits virtual 16:29:36 Byte Order: Little Endian 16:29:36 CPU(s): 4 16:29:36 On-line CPU(s) list: 0-3 16:29:36 Vendor ID: AuthenticAMD 16:29:36 Model name: AMD EPYC-Rome Processor 16:29:36 CPU family: 23 16:29:36 Model: 49 16:29:36 Thread(s) per core: 1 16:29:36 Core(s) per socket: 1 16:29:36 Socket(s): 4 16:29:36 Stepping: 0 16:29:36 BogoMIPS: 5600.00 16:29:36 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 16:29:36 Virtualization: AMD-V 16:29:36 Hypervisor vendor: KVM 16:29:36 Virtualization type: full 16:29:36 L1d cache: 128 KiB (4 instances) 16:29:36 L1i cache: 128 KiB (4 instances) 16:29:36 L2 cache: 2 MiB (4 instances) 16:29:36 L3 cache: 64 MiB (4 instances) 16:29:36 NUMA node(s): 1 16:29:36 NUMA node0 CPU(s): 0-3 16:29:36 Vulnerability Gather data sampling: Not affected 16:29:36 Vulnerability Indirect target selection: Not affected 16:29:36 Vulnerability Itlb multihit: Not affected 16:29:36 Vulnerability L1tf: Not affected 16:29:36 Vulnerability Mds: Not affected 16:29:36 Vulnerability Meltdown: Not affected 16:29:36 Vulnerability Mmio stale data: Not affected 16:29:36 Vulnerability Reg file data sampling: Not affected 16:29:36 Vulnerability Retbleed: Mitigation; untrained return thunk; SMT disabled 16:29:36 Vulnerability Spec rstack overflow: Mitigation; SMT disabled 16:29:36 Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl and seccomp 16:29:36 Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization 16:29:36 Vulnerability Spectre v2: Mitigation; Retpolines; IBPB disabled; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI Not affected 16:29:36 Vulnerability Srbds: Not affected 16:29:36 Vulnerability Tsx async abort: Not affected 16:29:36 16:29:36 16:29:36 ---> nproc: 16:29:36 4 16:29:36 16:29:36 16:29:36 ---> df -h: 16:29:36 Filesystem Size Used Avail Use% Mounted on 16:29:36 tmpfs 1.6G 1.1M 1.6G 1% /run 16:29:36 /dev/vda1 78G 18G 61G 23% / 16:29:36 tmpfs 7.9G 0 7.9G 0% /dev/shm 16:29:36 tmpfs 5.0M 0 5.0M 0% /run/lock 16:29:36 /dev/vda15 105M 6.1M 99M 6% /boot/efi 16:29:36 tmpfs 1.6G 4.0K 1.6G 1% /run/user/1001 16:29:36 16:29:36 16:29:36 ---> free -m: 16:29:36 total used free shared buff/cache available 16:29:36 Mem: 15989 691 11569 3 3728 14955 16:29:36 Swap: 1023 11 1012 16:29:36 16:29:36 16:29:36 ---> ip addr: 16:29:36 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 16:29:36 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 16:29:36 inet 127.0.0.1/8 scope host lo 16:29:36 valid_lft forever preferred_lft forever 16:29:36 inet6 ::1/128 scope host 16:29:36 valid_lft forever preferred_lft forever 16:29:36 2: ens3: mtu 1458 qdisc mq state UP group default qlen 1000 16:29:36 link/ether fa:16:3e:c5:76:40 brd ff:ff:ff:ff:ff:ff 16:29:36 altname enp0s3 16:29:36 inet 10.30.171.205/23 metric 100 brd 10.30.171.255 scope global dynamic ens3 16:29:36 valid_lft 80646sec preferred_lft 80646sec 16:29:36 inet6 fe80::f816:3eff:fec5:7640/64 scope link 16:29:36 valid_lft forever preferred_lft forever 16:29:36 3: docker0: mtu 1458 qdisc noqueue state DOWN group default 16:29:36 link/ether 82:44:2a:76:d8:0a brd ff:ff:ff:ff:ff:ff 16:29:36 inet 10.250.0.254/24 brd 10.250.0.255 scope global docker0 16:29:36 valid_lft forever preferred_lft forever 16:29:36 16:29:36 16:29:36 ---> sar -b -r -n DEV: 16:29:36 Linux 5.15.0-153-generic (prd-ubuntu2204-docker-4c-16g-2903) 10/28/25 _x86_64_ (4 CPU) 16:29:36 16:29:36 14:53:44 LINUX RESTART (4 CPU) 16:29:36 16:29:36 15:00:02 tps rtps wtps dtps bread/s bwrtn/s bdscd/s 16:29:36 15:10:02 79.97 22.54 53.47 3.96 386.43 18563.77 19923.89 16:29:36 15:20:02 25.46 7.70 16.73 1.02 153.59 514.77 881.41 16:29:36 15:30:02 20.94 0.04 19.95 0.95 1.51 740.59 909.31 16:29:36 15:40:02 8.10 0.16 7.63 0.31 4.55 193.21 174.53 16:29:36 15:50:02 6.24 0.01 6.00 0.22 1.93 142.69 182.85 16:29:36 16:00:02 4.07 0.03 3.89 0.15 1.71 101.81 104.59 16:29:36 16:10:02 18.54 0.07 5.41 13.06 2.29 136.71 211797.43 16:29:36 16:20:02 10.80 0.09 10.17 0.54 2.87 602.51 170.52 16:29:36 Average: 21.76 3.83 15.41 2.53 69.36 2624.51 29268.07 16:29:36 16:29:36 15:00:02 kbmemfree kbavail kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty 16:29:36 15:10:02 165132 3722760 12207384 74.56 260164 3266408 13347116 76.61 2072092 13534344 472 16:29:36 15:20:02 8387952 11298824 4638784 28.33 262952 2684548 5292132 30.38 2001876 5461896 70528 16:29:36 15:30:02 10285088 13245652 2695480 16.46 266760 2730428 3527196 20.25 2022792 3569416 5736 16:29:36 15:40:02 8387464 11363912 4576072 27.95 267856 2745216 5273656 30.27 2026572 5454392 208 16:29:36 15:50:02 11778596 14778332 1163472 7.11 268540 2767820 1907240 10.95 2029656 2078476 10972 16:29:36 16:00:02 6941452 9943876 5995264 36.62 269292 2769756 6695664 38.43 2030880 6894536 296 16:29:36 16:10:02 6684616 9706264 6232812 38.07 270112 2788176 6877448 39.48 2039284 7133624 364 16:29:36 16:20:02 8297400 11442612 4497336 27.47 274084 2907264 5199620 29.85 2056176 5515268 260 16:29:36 Average: 7615962 10687779 5250826 32.07 267470 2832452 6015009 34.53 2034916 6205244 11104 16:29:36 16:29:36 15:00:02 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil 16:29:36 15:10:02 lo 19.31 19.31 16.09 16.09 0.00 0.00 0.00 0.00 16:29:36 15:10:02 ens3 39.80 27.45 640.04 3.14 0.00 0.00 0.00 0.00 16:29:36 15:10:02 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 16:29:36 15:20:02 lo 35.67 35.67 14.75 14.75 0.00 0.00 0.00 0.00 16:29:36 15:20:02 ens3 1.64 1.60 0.41 0.39 0.00 0.00 0.00 0.00 16:29:36 15:20:02 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 16:29:36 15:30:02 lo 20.58 20.58 9.12 9.12 0.00 0.00 0.00 0.00 16:29:36 15:30:02 ens3 0.98 0.82 0.20 0.16 0.00 0.00 0.00 0.00 16:29:36 15:30:02 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 16:29:36 15:40:02 lo 19.72 19.72 10.08 10.08 0.00 0.00 0.00 0.00 16:29:36 15:40:02 ens3 0.97 0.77 0.22 1.05 0.00 0.00 0.00 0.00 16:29:36 15:40:02 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 16:29:36 15:50:02 lo 28.53 28.53 10.07 10.07 0.00 0.00 0.00 0.00 16:29:36 15:50:02 ens3 0.74 0.51 0.21 0.15 0.00 0.00 0.00 0.00 16:29:36 15:50:02 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 16:29:36 16:00:02 lo 16.68 16.68 8.63 8.63 0.00 0.00 0.00 0.00 16:29:36 16:00:02 ens3 0.66 0.51 0.16 0.12 0.00 0.00 0.00 0.00 16:29:36 16:00:02 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 16:29:36 16:10:02 lo 16.00 16.00 9.81 9.81 0.00 0.00 0.00 0.00 16:29:36 16:10:02 ens3 0.61 0.46 0.12 0.09 0.00 0.00 0.00 0.00 16:29:36 16:10:02 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 16:29:36 16:20:02 lo 16.87 16.87 9.57 9.57 0.00 0.00 0.00 0.00 16:29:36 16:20:02 ens3 1.35 0.99 0.42 0.35 0.00 0.00 0.00 0.00 16:29:36 16:20:02 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 16:29:36 Average: lo 21.67 21.67 11.02 11.02 0.00 0.00 0.00 0.00 16:29:36 Average: ens3 5.84 4.14 80.22 0.68 0.00 0.00 0.00 0.00 16:29:36 Average: docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 16:29:36 16:29:36 16:29:36 ---> sar -P ALL: 16:29:36 Linux 5.15.0-153-generic (prd-ubuntu2204-docker-4c-16g-2903) 10/28/25 _x86_64_ (4 CPU) 16:29:36 16:29:36 14:53:44 LINUX RESTART (4 CPU) 16:29:36 16:29:36 15:00:02 CPU %user %nice %system %iowait %steal %idle 16:29:36 15:10:02 all 56.13 0.00 2.99 6.16 0.16 34.55 16:29:36 15:10:02 0 57.79 0.00 2.95 5.13 0.16 33.97 16:29:36 15:10:02 1 54.53 0.00 3.04 8.21 0.16 34.06 16:29:36 15:10:02 2 57.41 0.00 3.10 7.57 0.17 31.75 16:29:36 15:10:02 3 54.80 0.00 2.87 3.73 0.16 38.44 16:29:36 15:20:02 all 34.42 0.00 1.61 0.27 0.18 63.53 16:29:36 15:20:02 0 34.54 0.00 1.80 0.04 0.24 63.37 16:29:36 15:20:02 1 33.53 0.00 1.55 0.16 0.17 64.59 16:29:36 15:20:02 2 33.91 0.00 1.54 0.77 0.16 63.62 16:29:36 15:20:02 3 35.69 0.00 1.54 0.09 0.16 62.52 16:29:36 15:30:02 all 32.40 0.00 1.14 0.05 0.11 66.29 16:29:36 15:30:02 0 32.49 0.00 1.19 0.05 0.11 66.15 16:29:36 15:30:02 1 30.92 0.00 1.09 0.03 0.11 67.85 16:29:36 15:30:02 2 33.41 0.00 1.21 0.03 0.11 65.24 16:29:36 15:30:02 3 32.80 0.00 1.07 0.10 0.11 65.93 16:29:36 15:40:02 all 14.23 0.00 0.56 0.03 0.09 85.09 16:29:36 15:40:02 0 14.39 0.00 0.46 0.03 0.08 85.04 16:29:36 15:40:02 1 14.59 0.00 0.60 0.05 0.10 84.67 16:29:36 15:40:02 2 13.77 0.00 0.62 0.01 0.10 85.51 16:29:36 15:40:02 3 14.19 0.00 0.57 0.02 0.09 85.13 16:29:36 15:50:02 all 9.71 0.00 0.56 0.02 0.08 89.62 16:29:36 15:50:02 0 10.02 0.00 0.53 0.02 0.08 89.35 16:29:36 15:50:02 1 9.54 0.00 0.63 0.02 0.09 89.72 16:29:36 15:50:02 2 9.71 0.00 0.55 0.04 0.08 89.62 16:29:36 15:50:02 3 9.58 0.00 0.52 0.02 0.09 89.80 16:29:36 16:00:02 all 8.11 0.00 0.46 0.02 0.10 91.31 16:29:36 16:00:02 0 8.62 0.00 0.44 0.03 0.10 90.82 16:29:36 16:00:02 1 8.04 0.00 0.40 0.01 0.10 91.45 16:29:36 16:00:02 2 8.18 0.00 0.48 0.01 0.09 91.24 16:29:36 16:00:02 3 7.61 0.00 0.53 0.02 0.10 91.74 16:29:36 16:10:02 all 9.10 0.00 0.43 0.05 0.09 90.32 16:29:36 16:10:02 0 8.62 0.00 0.47 0.05 0.09 90.76 16:29:36 16:10:02 1 9.67 0.00 0.41 0.06 0.10 89.77 16:29:36 16:10:02 2 8.96 0.00 0.38 0.07 0.09 90.49 16:29:36 16:10:02 3 9.16 0.00 0.47 0.02 0.09 90.27 16:29:36 16:20:02 all 19.00 0.00 0.74 0.04 0.10 80.11 16:29:36 16:20:02 0 18.86 0.00 0.79 0.06 0.10 80.19 16:29:36 16:20:02 1 20.25 0.00 0.75 0.06 0.11 78.84 16:29:36 16:20:02 2 18.98 0.00 0.72 0.02 0.10 80.18 16:29:36 16:20:02 3 17.93 0.00 0.71 0.03 0.10 81.23 16:29:36 Average: all 22.86 0.00 1.06 0.83 0.12 75.13 16:29:36 Average: 0 23.15 0.00 1.08 0.68 0.12 74.98 16:29:36 Average: 1 22.60 0.00 1.06 1.07 0.12 75.15 16:29:36 Average: 2 23.02 0.00 1.08 1.06 0.11 74.73 16:29:36 Average: 3 22.69 0.00 1.03 0.50 0.11 75.67 16:29:36 16:29:36 16:29:36