15:30:55 Triggered by Gerrit: https://git.opendaylight.org/gerrit/c/transportpce/+/117008 15:30:55 Running as SYSTEM 15:30:55 [EnvInject] - Loading node environment variables. 15:30:55 Building remotely on prd-ubuntu2204-docker-4c-16g-486 (ubuntu2204-docker-4c-16g) in workspace /w/workspace/transportpce-tox-verify-transportpce-master 15:30:57 [ssh-agent] Looking for ssh-agent implementation... 15:30:57 [ssh-agent] Exec ssh-agent (binary ssh-agent on a remote machine) 15:30:57 $ ssh-agent 15:30:57 SSH_AUTH_SOCK=/tmp/ssh-XXXXXXrLD838/agent.1563 15:30:57 SSH_AGENT_PID=1565 15:30:57 [ssh-agent] Started. 15:30:57 Running ssh-add (command line suppressed) 15:30:57 Identity added: /w/workspace/transportpce-tox-verify-transportpce-master@tmp/private_key_14797794153904123183.key (/w/workspace/transportpce-tox-verify-transportpce-master@tmp/private_key_14797794153904123183.key) 15:30:57 [ssh-agent] Using credentials jenkins (jenkins-ssh) 15:30:57 The recommended git tool is: NONE 15:31:00 using credential jenkins-ssh 15:31:00 Wiping out workspace first. 15:31:00 Cloning the remote Git repository 15:31:00 Cloning repository git://devvexx.opendaylight.org/mirror/transportpce 15:31:00 > git init /w/workspace/transportpce-tox-verify-transportpce-master # timeout=10 15:31:00 Fetching upstream changes from git://devvexx.opendaylight.org/mirror/transportpce 15:31:00 > git --version # timeout=10 15:31:00 > git --version # 'git version 2.34.1' 15:31:00 using GIT_SSH to set credentials jenkins-ssh 15:31:00 Verifying host key using known hosts file 15:31:00 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. 15:31:00 > git fetch --tags --force --progress -- git://devvexx.opendaylight.org/mirror/transportpce +refs/heads/*:refs/remotes/origin/* # timeout=10 15:31:07 > git config remote.origin.url git://devvexx.opendaylight.org/mirror/transportpce # timeout=10 15:31:07 > git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10 15:31:07 > git config remote.origin.url git://devvexx.opendaylight.org/mirror/transportpce # timeout=10 15:31:07 Fetching upstream changes from git://devvexx.opendaylight.org/mirror/transportpce 15:31:07 using GIT_SSH to set credentials jenkins-ssh 15:31:07 Verifying host key using known hosts file 15:31:07 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. 15:31:07 > git fetch --tags --force --progress -- git://devvexx.opendaylight.org/mirror/transportpce refs/changes/08/117008/11 # timeout=10 15:31:08 > git rev-parse 61ba16c8cf818cb9cda71d88dc06d41283b27ddb^{commit} # timeout=10 15:31:08 JENKINS-19022: warning: possible memory leak due to Git plugin usage; see: https://plugins.jenkins.io/git/#remove-git-plugin-buildsbybranch-builddata-script 15:31:08 Checking out Revision 61ba16c8cf818cb9cda71d88dc06d41283b27ddb (refs/changes/08/117008/11) 15:31:08 > git config core.sparsecheckout # timeout=10 15:31:08 > git checkout -f 61ba16c8cf818cb9cda71d88dc06d41283b27ddb # timeout=10 15:31:08 Commit message: "Consolidation of TAPI PCE & func tests" 15:31:08 > git rev-parse FETCH_HEAD^{commit} # timeout=10 15:31:09 > git rev-list --no-walk 1e3d0f9cfd5e94b274cf7a040915aabbb7a173c6 # timeout=10 15:31:09 > git remote # timeout=10 15:31:09 > git submodule init # timeout=10 15:31:09 > git submodule sync # timeout=10 15:31:09 > git config --get remote.origin.url # timeout=10 15:31:09 > git submodule init # timeout=10 15:31:09 > git config -f .gitmodules --get-regexp ^submodule\.(.+)\.url # timeout=10 15:31:09 ERROR: No submodules found. 15:31:12 provisioning config files... 15:31:12 copy managed file [npmrc] to file:/home/jenkins/.npmrc 15:31:12 copy managed file [pipconf] to file:/home/jenkins/.config/pip/pip.conf 15:31:12 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins3933298764285969460.sh 15:31:12 ---> python-tools-install.sh 15:31:12 Setup pyenv: 15:31:12 * system (set by /opt/pyenv/version) 15:31:13 * 3.8.20 (set by /opt/pyenv/version) 15:31:13 * 3.9.20 (set by /opt/pyenv/version) 15:31:13 3.10.15 15:31:13 3.11.10 15:31:20 lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-Q7PH 15:31:20 lf-activate-venv(): INFO: Save venv in file: /tmp/.os_lf_venv 15:31:20 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 15:31:20 lf-activate-venv(): INFO: Attempting to install with network-safe options... 15:31:26 lf-activate-venv(): INFO: Base packages installed successfully 15:31:26 lf-activate-venv(): INFO: Installing additional packages: lftools 15:31:52 lf-activate-venv(): INFO: Adding /tmp/venv-Q7PH/bin to PATH 15:31:52 Generating Requirements File 15:32:16 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. 15:32:16 httplib2 0.31.0 requires pyparsing<4,>=3.0.4, but you have pyparsing 2.4.7 which is incompatible. 15:32:16 deprecated 1.2.18 requires wrapt<2,>=1.10, but you have wrapt 2.0.0 which is incompatible. 15:32:16 Python 3.11.10 15:32:16 pip 25.2 from /tmp/venv-Q7PH/lib/python3.11/site-packages/pip (python 3.11) 15:32:17 appdirs==1.4.4 15:32:17 argcomplete==3.6.3 15:32:17 aspy.yaml==1.3.0 15:32:17 attrs==25.4.0 15:32:17 autopage==0.5.2 15:32:17 beautifulsoup4==4.14.2 15:32:17 boto3==1.40.55 15:32:17 botocore==1.40.55 15:32:17 bs4==0.0.2 15:32:17 cachetools==6.2.1 15:32:17 certifi==2025.10.5 15:32:17 cffi==2.0.0 15:32:17 cfgv==3.4.0 15:32:17 chardet==5.2.0 15:32:17 charset-normalizer==3.4.4 15:32:17 click==8.3.0 15:32:17 cliff==4.11.0 15:32:17 cmd2==2.7.0 15:32:17 cryptography==3.3.2 15:32:17 debtcollector==3.0.0 15:32:17 decorator==5.2.1 15:32:17 defusedxml==0.7.1 15:32:17 Deprecated==1.2.18 15:32:17 distlib==0.4.0 15:32:17 dnspython==2.8.0 15:32:17 docker==7.1.0 15:32:17 dogpile.cache==1.5.0 15:32:17 durationpy==0.10 15:32:17 email-validator==2.3.0 15:32:17 filelock==3.20.0 15:32:17 future==1.0.0 15:32:17 gitdb==4.0.12 15:32:17 GitPython==3.1.45 15:32:17 google-auth==2.41.1 15:32:17 httplib2==0.31.0 15:32:17 identify==2.6.15 15:32:17 idna==3.11 15:32:17 importlib-resources==1.5.0 15:32:17 iso8601==2.1.0 15:32:17 Jinja2==3.1.6 15:32:17 jmespath==1.0.1 15:32:17 jsonpatch==1.33 15:32:17 jsonpointer==3.0.0 15:32:17 jsonschema==4.25.1 15:32:17 jsonschema-specifications==2025.9.1 15:32:17 keystoneauth1==5.12.0 15:32:17 kubernetes==34.1.0 15:32:17 lftools==0.37.15 15:32:17 lxml==6.0.2 15:32:17 markdown-it-py==4.0.0 15:32:17 MarkupSafe==3.0.3 15:32:17 mdurl==0.1.2 15:32:17 msgpack==1.1.2 15:32:17 multi_key_dict==2.0.3 15:32:17 munch==4.0.0 15:32:17 netaddr==1.3.0 15:32:17 niet==1.4.2 15:32:17 nodeenv==1.9.1 15:32:17 oauth2client==4.1.3 15:32:17 oauthlib==3.3.1 15:32:17 openstacksdk==4.7.1 15:32:17 os-service-types==1.8.0 15:32:17 osc-lib==4.2.0 15:32:17 oslo.config==10.0.0 15:32:17 oslo.context==6.1.0 15:32:17 oslo.i18n==6.6.0 15:32:17 oslo.log==7.2.1 15:32:17 oslo.serialization==5.8.0 15:32:17 oslo.utils==9.1.0 15:32:17 packaging==25.0 15:32:17 pbr==7.0.1 15:32:17 platformdirs==4.5.0 15:32:17 prettytable==3.16.0 15:32:17 psutil==7.1.1 15:32:17 pyasn1==0.6.1 15:32:17 pyasn1_modules==0.4.2 15:32:17 pycparser==2.23 15:32:17 pygerrit2==2.0.15 15:32:17 PyGithub==2.8.1 15:32:17 Pygments==2.19.2 15:32:17 PyJWT==2.10.1 15:32:17 PyNaCl==1.6.0 15:32:17 pyparsing==2.4.7 15:32:17 pyperclip==1.11.0 15:32:17 pyrsistent==0.20.0 15:32:17 python-cinderclient==9.8.0 15:32:17 python-dateutil==2.9.0.post0 15:32:17 python-heatclient==4.3.0 15:32:17 python-jenkins==1.8.3 15:32:17 python-keystoneclient==5.7.0 15:32:17 python-magnumclient==4.9.0 15:32:17 python-openstackclient==8.2.0 15:32:17 python-swiftclient==4.8.0 15:32:17 PyYAML==6.0.3 15:32:17 referencing==0.37.0 15:32:17 requests==2.32.5 15:32:17 requests-oauthlib==2.0.0 15:32:17 requestsexceptions==1.4.0 15:32:17 rfc3986==2.0.0 15:32:17 rich==14.2.0 15:32:17 rich-argparse==1.7.1 15:32:17 rpds-py==0.27.1 15:32:17 rsa==4.9.1 15:32:17 ruamel.yaml==0.18.15 15:32:17 ruamel.yaml.clib==0.2.14 15:32:17 s3transfer==0.14.0 15:32:17 simplejson==3.20.2 15:32:17 six==1.17.0 15:32:17 smmap==5.0.2 15:32:17 soupsieve==2.8 15:32:17 stevedore==5.5.0 15:32:17 tabulate==0.9.0 15:32:17 toml==0.10.2 15:32:17 tomlkit==0.13.3 15:32:17 tqdm==4.67.1 15:32:17 typing_extensions==4.15.0 15:32:17 tzdata==2025.2 15:32:17 urllib3==1.26.20 15:32:17 virtualenv==20.35.3 15:32:17 wcwidth==0.2.14 15:32:17 websocket-client==1.9.0 15:32:17 wrapt==2.0.0 15:32:17 xdg==6.0.0 15:32:17 xmltodict==1.0.2 15:32:17 yq==3.4.3 15:32:17 [EnvInject] - Injecting environment variables from a build step. 15:32:17 [EnvInject] - Injecting as environment variables the properties content 15:32:17 PYTHON=python3 15:32:17 15:32:17 [EnvInject] - Variables injected successfully. 15:32:17 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins3876891277243969668.sh 15:32:17 ---> tox-install.sh 15:32:17 + source /home/jenkins/lf-env.sh 15:32:17 + lf-activate-venv --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 15:32:17 ++ mktemp -d /tmp/venv-XXXX 15:32:17 + lf_venv=/tmp/venv-yunH 15:32:17 + local venv_file=/tmp/.os_lf_venv 15:32:17 + local python=python3 15:32:17 + local options 15:32:17 + local set_path=true 15:32:17 + local install_args= 15:32:17 ++ 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 15:32:17 + options=' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 15:32:17 + eval set -- ' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 15:32:17 ++ set -- --venv-file /tmp/.toxenv -- tox virtualenv urllib3~=1.26.15 15:32:17 + true 15:32:17 + case $1 in 15:32:17 + venv_file=/tmp/.toxenv 15:32:17 + shift 2 15:32:17 + true 15:32:17 + case $1 in 15:32:17 + shift 15:32:17 + break 15:32:17 + case $python in 15:32:17 + local pkg_list= 15:32:17 + [[ -d /opt/pyenv ]] 15:32:17 + echo 'Setup pyenv:' 15:32:17 Setup pyenv: 15:32:17 + export PYENV_ROOT=/opt/pyenv 15:32:17 + PYENV_ROOT=/opt/pyenv 15:32:17 + 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 15:32:17 + 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 15:32:17 + pyenv versions 15:32:17 system 15:32:17 3.8.20 15:32:17 3.9.20 15:32:17 3.10.15 15:32:17 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 15:32:17 + command -v pyenv 15:32:17 ++ pyenv init - --no-rehash 15:32:17 + eval 'PATH="$(bash --norc -ec '\''IFS=:; paths=($PATH); 15:32:17 for i in ${!paths[@]}; do 15:32:17 if [[ ${paths[i]} == "'\'''\''/opt/pyenv/shims'\'''\''" ]]; then unset '\''\'\'''\''paths[i]'\''\'\'''\''; 15:32:17 fi; done; 15:32:17 echo "${paths[*]}"'\'')" 15:32:17 export PATH="/opt/pyenv/shims:${PATH}" 15:32:17 export PYENV_SHELL=bash 15:32:17 source '\''/opt/pyenv/libexec/../completions/pyenv.bash'\'' 15:32:17 pyenv() { 15:32:17 local command 15:32:17 command="${1:-}" 15:32:17 if [ "$#" -gt 0 ]; then 15:32:17 shift 15:32:17 fi 15:32:17 15:32:17 case "$command" in 15:32:17 rehash|shell) 15:32:17 eval "$(pyenv "sh-$command" "$@")" 15:32:17 ;; 15:32:17 *) 15:32:17 command pyenv "$command" "$@" 15:32:17 ;; 15:32:17 esac 15:32:17 }' 15:32:17 +++ bash --norc -ec 'IFS=:; paths=($PATH); 15:32:17 for i in ${!paths[@]}; do 15:32:17 if [[ ${paths[i]} == "/opt/pyenv/shims" ]]; then unset '\''paths[i]'\''; 15:32:17 fi; done; 15:32:17 echo "${paths[*]}"' 15:32:17 ++ 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 15:32:17 ++ 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 15:32:17 ++ 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 15:32:17 ++ export PYENV_SHELL=bash 15:32:17 ++ PYENV_SHELL=bash 15:32:17 ++ source /opt/pyenv/libexec/../completions/pyenv.bash 15:32:17 +++ complete -F _pyenv pyenv 15:32:17 ++ lf-pyver python3 15:32:17 ++ local py_version_xy=python3 15:32:17 ++ local py_version_xyz= 15:32:17 ++ pyenv versions 15:32:17 ++ local command 15:32:17 ++ command=versions 15:32:17 ++ '[' 1 -gt 0 ']' 15:32:17 ++ shift 15:32:17 ++ case "$command" in 15:32:17 ++ command pyenv versions 15:32:17 ++ sed 's/^[ *]* //' 15:32:17 ++ awk '{ print $1 }' 15:32:17 ++ grep -E '^[0-9.]*[0-9]$' 15:32:17 ++ [[ ! -s /tmp/.pyenv_versions ]] 15:32:17 +++ grep '^3' /tmp/.pyenv_versions 15:32:17 +++ sort -V 15:32:17 +++ tail -n 1 15:32:17 ++ py_version_xyz=3.11.10 15:32:17 ++ [[ -z 3.11.10 ]] 15:32:17 ++ echo 3.11.10 15:32:17 ++ return 0 15:32:17 + pyenv local 3.11.10 15:32:17 + local command 15:32:17 + command=local 15:32:17 + '[' 2 -gt 0 ']' 15:32:17 + shift 15:32:17 + case "$command" in 15:32:17 + command pyenv local 3.11.10 15:32:17 + for arg in "$@" 15:32:17 + case $arg in 15:32:17 + pkg_list+='tox ' 15:32:17 + for arg in "$@" 15:32:17 + case $arg in 15:32:17 + pkg_list+='virtualenv ' 15:32:17 + for arg in "$@" 15:32:17 + case $arg in 15:32:17 + pkg_list+='urllib3~=1.26.15 ' 15:32:17 + [[ -f /tmp/.toxenv ]] 15:32:17 + [[ ! -f /tmp/.toxenv ]] 15:32:17 + [[ -n '' ]] 15:32:17 + python3 -m venv /tmp/venv-yunH 15:32:21 + echo 'lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-yunH' 15:32:21 lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-yunH 15:32:21 + echo /tmp/venv-yunH 15:32:21 + echo 'lf-activate-venv(): INFO: Save venv in file: /tmp/.toxenv' 15:32:21 lf-activate-venv(): INFO: Save venv in file: /tmp/.toxenv 15:32:21 + echo 'lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv)' 15:32:21 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 15:32:21 + local 'pip_opts=--upgrade --quiet' 15:32:21 + pip_opts='--upgrade --quiet --trusted-host pypi.org' 15:32:21 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org' 15:32:21 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org' 15:32:21 + [[ -n '' ]] 15:32:21 + [[ -n '' ]] 15:32:21 + echo 'lf-activate-venv(): INFO: Attempting to install with network-safe options...' 15:32:21 lf-activate-venv(): INFO: Attempting to install with network-safe options... 15:32:21 + /tmp/venv-yunH/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 15:32:26 + echo 'lf-activate-venv(): INFO: Base packages installed successfully' 15:32:26 lf-activate-venv(): INFO: Base packages installed successfully 15:32:26 + [[ -z tox virtualenv urllib3~=1.26.15 ]] 15:32:26 + echo 'lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 ' 15:32:26 lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 15:32:26 + /tmp/venv-yunH/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 15:32:28 + type python3 15:32:28 + true 15:32:28 + echo 'lf-activate-venv(): INFO: Adding /tmp/venv-yunH/bin to PATH' 15:32:28 lf-activate-venv(): INFO: Adding /tmp/venv-yunH/bin to PATH 15:32:28 + PATH=/tmp/venv-yunH/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 15:32:28 + return 0 15:32:28 + python3 --version 15:32:28 Python 3.11.10 15:32:28 + python3 -m pip --version 15:32:28 pip 25.2 from /tmp/venv-yunH/lib/python3.11/site-packages/pip (python 3.11) 15:32:28 + python3 -m pip freeze 15:32:28 cachetools==6.2.1 15:32:28 chardet==5.2.0 15:32:28 colorama==0.4.6 15:32:28 distlib==0.4.0 15:32:28 filelock==3.20.0 15:32:28 packaging==25.0 15:32:28 platformdirs==4.5.0 15:32:28 pluggy==1.6.0 15:32:28 pyproject-api==1.10.0 15:32:28 tox==4.31.0 15:32:28 urllib3==1.26.20 15:32:28 virtualenv==20.35.3 15:32:28 [transportpce-tox-verify-transportpce-master] $ /bin/sh -xe /tmp/jenkins15067088956798341176.sh 15:32:28 [EnvInject] - Injecting environment variables from a build step. 15:32:28 [EnvInject] - Injecting as environment variables the properties content 15:32:28 PARALLEL=True 15:32:28 15:32:28 [EnvInject] - Variables injected successfully. 15:32:28 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins4428265651145158905.sh 15:32:28 ---> tox-run.sh 15:32:28 + 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 15:32:28 + ARCHIVE_TOX_DIR=/w/workspace/transportpce-tox-verify-transportpce-master/archives/tox 15:32:28 + ARCHIVE_DOC_DIR=/w/workspace/transportpce-tox-verify-transportpce-master/archives/docs 15:32:28 + mkdir -p /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox 15:32:28 + cd /w/workspace/transportpce-tox-verify-transportpce-master/. 15:32:28 + source /home/jenkins/lf-env.sh 15:32:28 + lf-activate-venv --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 15:32:28 ++ mktemp -d /tmp/venv-XXXX 15:32:28 + lf_venv=/tmp/venv-ofNA 15:32:28 + local venv_file=/tmp/.os_lf_venv 15:32:28 + local python=python3 15:32:28 + local options 15:32:28 + local set_path=true 15:32:28 + local install_args= 15:32:28 ++ 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 15:32:28 + options=' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 15:32:28 + eval set -- ' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 15:32:28 ++ set -- --venv-file /tmp/.toxenv -- tox virtualenv urllib3~=1.26.15 15:32:28 + true 15:32:28 + case $1 in 15:32:28 + venv_file=/tmp/.toxenv 15:32:28 + shift 2 15:32:28 + true 15:32:28 + case $1 in 15:32:28 + shift 15:32:28 + break 15:32:28 + case $python in 15:32:28 + local pkg_list= 15:32:28 + [[ -d /opt/pyenv ]] 15:32:28 + echo 'Setup pyenv:' 15:32:28 Setup pyenv: 15:32:28 + export PYENV_ROOT=/opt/pyenv 15:32:28 + PYENV_ROOT=/opt/pyenv 15:32:28 + 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 15:32:28 + 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 15:32:28 + pyenv versions 15:32:28 system 15:32:28 3.8.20 15:32:28 3.9.20 15:32:28 3.10.15 15:32:28 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 15:32:28 + command -v pyenv 15:32:28 ++ pyenv init - --no-rehash 15:32:28 + eval 'PATH="$(bash --norc -ec '\''IFS=:; paths=($PATH); 15:32:28 for i in ${!paths[@]}; do 15:32:28 if [[ ${paths[i]} == "'\'''\''/opt/pyenv/shims'\'''\''" ]]; then unset '\''\'\'''\''paths[i]'\''\'\'''\''; 15:32:28 fi; done; 15:32:28 echo "${paths[*]}"'\'')" 15:32:28 export PATH="/opt/pyenv/shims:${PATH}" 15:32:28 export PYENV_SHELL=bash 15:32:28 source '\''/opt/pyenv/libexec/../completions/pyenv.bash'\'' 15:32:28 pyenv() { 15:32:28 local command 15:32:28 command="${1:-}" 15:32:28 if [ "$#" -gt 0 ]; then 15:32:28 shift 15:32:28 fi 15:32:28 15:32:28 case "$command" in 15:32:28 rehash|shell) 15:32:28 eval "$(pyenv "sh-$command" "$@")" 15:32:28 ;; 15:32:28 *) 15:32:28 command pyenv "$command" "$@" 15:32:28 ;; 15:32:28 esac 15:32:28 }' 15:32:28 +++ bash --norc -ec 'IFS=:; paths=($PATH); 15:32:28 for i in ${!paths[@]}; do 15:32:28 if [[ ${paths[i]} == "/opt/pyenv/shims" ]]; then unset '\''paths[i]'\''; 15:32:28 fi; done; 15:32:28 echo "${paths[*]}"' 15:32:28 ++ 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 15:32:28 ++ 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 15:32:28 ++ 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 15:32:28 ++ export PYENV_SHELL=bash 15:32:28 ++ PYENV_SHELL=bash 15:32:28 ++ source /opt/pyenv/libexec/../completions/pyenv.bash 15:32:28 +++ complete -F _pyenv pyenv 15:32:28 ++ lf-pyver python3 15:32:28 ++ local py_version_xy=python3 15:32:28 ++ local py_version_xyz= 15:32:28 ++ pyenv versions 15:32:28 ++ local command 15:32:28 ++ command=versions 15:32:28 ++ '[' 1 -gt 0 ']' 15:32:28 ++ shift 15:32:28 ++ case "$command" in 15:32:28 ++ command pyenv versions 15:32:28 ++ sed 's/^[ *]* //' 15:32:28 ++ grep -E '^[0-9.]*[0-9]$' 15:32:28 ++ awk '{ print $1 }' 15:32:28 ++ [[ ! -s /tmp/.pyenv_versions ]] 15:32:28 +++ grep '^3' /tmp/.pyenv_versions 15:32:28 +++ sort -V 15:32:28 +++ tail -n 1 15:32:28 ++ py_version_xyz=3.11.10 15:32:28 ++ [[ -z 3.11.10 ]] 15:32:28 ++ echo 3.11.10 15:32:28 ++ return 0 15:32:28 + pyenv local 3.11.10 15:32:28 + local command 15:32:28 + command=local 15:32:28 + '[' 2 -gt 0 ']' 15:32:28 + shift 15:32:28 + case "$command" in 15:32:28 + command pyenv local 3.11.10 15:32:29 + for arg in "$@" 15:32:29 + case $arg in 15:32:29 + pkg_list+='tox ' 15:32:29 + for arg in "$@" 15:32:29 + case $arg in 15:32:29 + pkg_list+='virtualenv ' 15:32:29 + for arg in "$@" 15:32:29 + case $arg in 15:32:29 + pkg_list+='urllib3~=1.26.15 ' 15:32:29 + [[ -f /tmp/.toxenv ]] 15:32:29 ++ cat /tmp/.toxenv 15:32:29 + lf_venv=/tmp/venv-yunH 15:32:29 + echo 'lf-activate-venv(): INFO: Reuse venv:/tmp/venv-yunH from' file:/tmp/.toxenv 15:32:29 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-yunH from file:/tmp/.toxenv 15:32:29 + echo 'lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv)' 15:32:29 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 15:32:29 + local 'pip_opts=--upgrade --quiet' 15:32:29 + pip_opts='--upgrade --quiet --trusted-host pypi.org' 15:32:29 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org' 15:32:29 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org' 15:32:29 + [[ -n '' ]] 15:32:29 + [[ -n '' ]] 15:32:29 + echo 'lf-activate-venv(): INFO: Attempting to install with network-safe options...' 15:32:29 lf-activate-venv(): INFO: Attempting to install with network-safe options... 15:32:29 + /tmp/venv-yunH/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 15:32:30 + echo 'lf-activate-venv(): INFO: Base packages installed successfully' 15:32:30 lf-activate-venv(): INFO: Base packages installed successfully 15:32:30 + [[ -z tox virtualenv urllib3~=1.26.15 ]] 15:32:30 + echo 'lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 ' 15:32:30 lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 15:32:30 + /tmp/venv-yunH/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 15:32:31 + type python3 15:32:31 + true 15:32:31 + echo 'lf-activate-venv(): INFO: Adding /tmp/venv-yunH/bin to PATH' 15:32:31 lf-activate-venv(): INFO: Adding /tmp/venv-yunH/bin to PATH 15:32:31 + PATH=/tmp/venv-yunH/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 15:32:31 + return 0 15:32:31 + [[ -d /opt/pyenv ]] 15:32:31 + echo '---> Setting up pyenv' 15:32:31 ---> Setting up pyenv 15:32:31 + export PYENV_ROOT=/opt/pyenv 15:32:31 + PYENV_ROOT=/opt/pyenv 15:32:31 + export PATH=/opt/pyenv/bin:/tmp/venv-yunH/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 15:32:31 + PATH=/opt/pyenv/bin:/tmp/venv-yunH/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 15:32:31 ++ pwd 15:32:31 + PYTHONPATH=/w/workspace/transportpce-tox-verify-transportpce-master 15:32:31 + export PYTHONPATH 15:32:31 + export TOX_TESTENV_PASSENV=PYTHONPATH 15:32:31 + TOX_TESTENV_PASSENV=PYTHONPATH 15:32:31 + tox --version 15:32:31 4.31.0 from /tmp/venv-yunH/lib/python3.11/site-packages/tox/__init__.py 15:32:31 + PARALLEL=True 15:32:31 + TOX_OPTIONS_LIST= 15:32:31 + [[ -n '' ]] 15:32:31 + case ${PARALLEL,,} in 15:32:31 + TOX_OPTIONS_LIST=' --parallel auto --parallel-live' 15:32:31 + tox --parallel auto --parallel-live 15:32:31 + tee -a /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tox.log 15:32:33 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 15:32:33 docs-linkcheck: install_deps> python -I -m pip install -r docs/requirements.txt 15:32:33 docs: install_deps> python -I -m pip install -r docs/requirements.txt 15:32:33 checkbashisms: freeze> python -m pip freeze --all 15:32:33 checkbashisms: pip==25.2,setuptools==80.9.0 15:32:33 checkbashisms: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./fixCIcentOS8reposMirrors.sh 15:32:33 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)' 15:32:34 checkbashisms: commands[2] /w/workspace/transportpce-tox-verify-transportpce-master/tests> find . -not -path '*/\.*' -name '*.sh' -exec checkbashisms -f '{}' + 15:32:35 checkbashisms: OK ✔ in 3.49 seconds 15:32:35 pre-commit: install_deps> python -I -m pip install pre-commit 15:32:40 pre-commit: freeze> python -m pip freeze --all 15:32:40 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 15:32:40 pre-commit: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./fixCIcentOS8reposMirrors.sh 15:32:40 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)' 15:32:40 /usr/bin/cpan 15:32:40 pre-commit: commands[2] /w/workspace/transportpce-tox-verify-transportpce-master/tests> pre-commit run --all-files --show-diff-on-failure 15:32:40 [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. 15:32:40 [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. 15:32:40 [INFO] Initializing environment for https://github.com/pre-commit/pre-commit-hooks. 15:32:40 [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. 15:32:40 [INFO] Initializing environment for https://github.com/jorisroovers/gitlint. 15:32:41 [INFO] Initializing environment for https://github.com/jorisroovers/gitlint:./gitlint-core[trusted-deps]. 15:32:42 [INFO] Initializing environment for https://github.com/Lucas-C/pre-commit-hooks. 15:32:42 [INFO] Initializing environment for https://github.com/pre-commit/mirrors-autopep8. 15:32:43 [INFO] Initializing environment for https://github.com/perltidy/perltidy. 15:32:45 [INFO] Installing environment for https://github.com/pre-commit/pre-commit-hooks. 15:32:45 [INFO] Once installed this environment will be reused. 15:32:45 [INFO] This may take a few minutes... 15:32:51 buildcontroller: freeze> python -m pip freeze --all 15:32:51 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.1,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:32:51 buildcontroller: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_controller.sh 15:32:51 + update-java-alternatives -l 15:32:51 java-1.11.0-openjdk-amd64 1111 /usr/lib/jvm/java-1.11.0-openjdk-amd64 15:32:51 java-1.17.0-openjdk-amd64 1711 /usr/lib/jvm/java-1.17.0-openjdk-amd64 15:32:51 java-1.21.0-openjdk-amd64 2111 /usr/lib/jvm/java-1.21.0-openjdk-amd64 15:32:51 + sudo update-java-alternatives -s java-1.21.0-openjdk-amd64 15:32:51 update-alternatives: error: no alternatives for jaotc 15:32:51 update-alternatives: error: no alternatives for rmic 15:32:52 [INFO] Installing environment for https://github.com/Lucas-C/pre-commit-hooks. 15:32:52 [INFO] Once installed this environment will be reused. 15:32:52 [INFO] This may take a few minutes... 15:32:52 + sed -n ;s/.* version "\(.*\)\.\(.*\)\..*".*$/\1/p; 15:32:52 + java -version 15:32:52 + JAVA_VER=21 15:32:52 + echo 21 15:32:52 21 15:32:52 + javac -version 15:32:52 + sed -n ;s/javac \(.*\)\.\(.*\)\..*.*$/\1/p; 15:32:52 + JAVAC_VER=21 15:32:52 + echo 21 15:32:52 + [ 21 -ge 21 ] 15:32:52 21 15:32:52 ok, java is 21 or newer 15:32:52 + [ 21 -ge 21 ] 15:32:52 + echo ok, java is 21 or newer 15:32:52 + wget -nv https://dlcdn.apache.org/maven/maven-3/3.9.11/binaries/apache-maven-3.9.11-bin.tar.gz -P /tmp 15:32:52 2025-10-20 15:32:52 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] 15:32:52 + sudo mkdir -p /opt 15:32:52 + sudo tar xf /tmp/apache-maven-3.9.11-bin.tar.gz -C /opt 15:32:52 + sudo ln -s /opt/apache-maven-3.9.11 /opt/maven 15:32:52 + sudo ln -s /opt/maven/bin/mvn /usr/bin/mvn 15:32:52 + mvn --version 15:32:53 Apache Maven 3.9.11 (3e54c93a704957b63ee3494413a2b544fd3d825b) 15:32:53 Maven home: /opt/maven 15:32:53 Java version: 21.0.8, vendor: Ubuntu, runtime: /usr/lib/jvm/java-21-openjdk-amd64 15:32:53 Default locale: en, platform encoding: UTF-8 15:32:53 OS name: "linux", version: "5.15.0-153-generic", arch: "amd64", family: "unix" 15:32:53 NOTE: Picked up JDK_JAVA_OPTIONS: 15:32:53 --add-opens=java.base/java.io=ALL-UNNAMED 15:32:53 --add-opens=java.base/java.lang=ALL-UNNAMED 15:32:53 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 15:32:53 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 15:32:53 --add-opens=java.base/java.net=ALL-UNNAMED 15:32:53 --add-opens=java.base/java.nio=ALL-UNNAMED 15:32:53 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 15:32:53 --add-opens=java.base/java.nio.file=ALL-UNNAMED 15:32:53 --add-opens=java.base/java.util=ALL-UNNAMED 15:32:53 --add-opens=java.base/java.util.jar=ALL-UNNAMED 15:32:53 --add-opens=java.base/java.util.stream=ALL-UNNAMED 15:32:53 --add-opens=java.base/java.util.zip=ALL-UNNAMED 15:32:53 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 15:32:53 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 15:32:53 -Xlog:disable 15:32:59 [INFO] Installing environment for https://github.com/pre-commit/mirrors-autopep8. 15:32:59 [INFO] Once installed this environment will be reused. 15:32:59 [INFO] This may take a few minutes... 15:33:04 [INFO] Installing environment for https://github.com/perltidy/perltidy. 15:33:04 [INFO] Once installed this environment will be reused. 15:33:04 [INFO] This may take a few minutes... 15:33:20 trim trailing whitespace.................................................Failed 15:33:20 - hook id: trailing-whitespace 15:33:20 - exit code: 1 15:33:20 - files were modified by this hook 15:33:20 15:33:20 Fixing tests/transportpce_tests/pce/test05_pce_tapi.py 15:33:20 Fixing tests/transportpce_tests/common/test_utils_generate_tapi_topo.py 15:33:20 15:33:20 Tabs remover.............................................................Passed 15:33:20 autopep8.................................................................Failed 15:33:26 - hook id: autopep8 15:33:26 - exit code: 1 15:33:26 - files were modified by this hook 15:33:26 15:33:26 Traceback (most recent call last): 15:33:26 File "/home/jenkins/.cache/pre-commit/repobzltey5n/py_env-python3.11/bin/autopep8", line 7, in 15:33:26 sys.exit(main()) 15:33:26 ^^^^^^ 15:33:26 File "/home/jenkins/.cache/pre-commit/repobzltey5n/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 4543, in main 15:33:26 results = fix_multiple_files(args.files, args, sys.stdout) 15:33:26 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 15:33:26 File "/home/jenkins/.cache/pre-commit/repobzltey5n/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 4438, in fix_multiple_files 15:33:26 ret = _fix_file((name, options, output)) 15:33:26 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 15:33:26 File "/home/jenkins/.cache/pre-commit/repobzltey5n/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 4408, in _fix_file 15:33:26 return fix_file(*parameters) 15:33:26 ^^^^^^^^^^^^^^^^^^^^^ 15:33:26 File "/home/jenkins/.cache/pre-commit/repobzltey5n/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 3604, in fix_file 15:33:26 fixed_source = fix_lines(fixed_source, options, filename=filename) 15:33:26 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 15:33:26 File "/home/jenkins/.cache/pre-commit/repobzltey5n/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 3584, in fix_lines 15:33:26 fixed_source = fix.fix() 15:33:26 ^^^^^^^^^ 15:33:26 File "/home/jenkins/.cache/pre-commit/repobzltey5n/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 618, in fix 15:33:26 self._fix_source(filter_results(source=''.join(self.source), 15:33:26 File "/home/jenkins/.cache/pre-commit/repobzltey5n/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 562, in _fix_source 15:33:26 modified_lines = fix(result) 15:33:26 ^^^^^^^^^^^ 15:33:26 File "/home/jenkins/.cache/pre-commit/repobzltey5n/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 766, in fix_e225 15:33:26 pycodestyle.missing_whitespace_around_operator(fixed, ts)) 15:33:26 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 15:33:26 AttributeError: module 'pycodestyle' has no attribute 'missing_whitespace_around_operator'. Did you mean: 'whitespace_around_operator'? 15:33:26 15:33:26 perltidy.................................................................docs-linkcheck: freeze> python -m pip freeze --all 15:33:27 Passed 15:33:27 pre-commit hook(s) made changes. 15:33:27 If you are seeing this message in CI, reproduce locally with: `pre-commit run --all-files`. 15:33:27 To run `pre-commit` as part of git workflow, use `pre-commit install`. 15:33:27 All changes made by hooks: 15:33:27 diff --git a/tests/transportpce_tests/common/test_utils_generate_tapi_topo.py b/tests/transportpce_tests/common/test_utils_generate_tapi_topo.py 15:33:27 index 375b1b4ec..40d816398 100644 15:33:27 --- a/tests/transportpce_tests/common/test_utils_generate_tapi_topo.py 15:33:27 +++ b/tests/transportpce_tests/common/test_utils_generate_tapi_topo.py 15:33:27 @@ -24,6 +24,7 @@ sys.path.append('transportpce_tests/common/') 15:33:27 import test_utils # nopep8 15:33:27 # pylint: disable=too-few-public-methods 15:33:27 15:33:27 + 15:33:27 class UuidServices: 15:33:27 def __init__(self): 15:33:27 # pylint: disable=invalid-name 15:33:27 @@ -31,6 +32,7 @@ class UuidServices: 15:33:27 self.odu = None 15:33:27 self.dsr = None 15:33:27 15:33:27 + 15:33:27 class UuidServices2: 15:33:27 def __init__(self): 15:33:27 # pylint: disable=invalid-name 15:33:27 @@ -38,6 +40,7 @@ class UuidServices2: 15:33:27 self.odu = None 15:33:27 self.dsr = None 15:33:27 15:33:27 + 15:33:27 class UuidServices3: 15:33:27 def __init__(self): 15:33:27 # pylint: disable=invalid-name 15:33:27 @@ -47,6 +50,7 @@ class UuidServices3: 15:33:27 15:33:27 # class TransportPCEtesting(unittest.TestCase): 15:33:27 15:33:27 + 15:33:27 processes = None 15:33:27 WAITING = 20 # nominal value is 300 15:33:27 NODE_VERSION = '2.2.1' 15:33:27 @@ -56,6 +60,7 @@ uuid_services3 = UuidServices3() 15:33:27 del_serv_input_data = {"uuid": "TBD"} 15:33:27 tapi_topo = {"topology-id": "TBD"} 15:33:27 15:33:27 + 15:33:27 def initSimulators(): 15:33:27 print("Entering TestUtils setupClass starting simulators") 15:33:27 print("Node version is {}".format(NODE_VERSION)) 15:33:27 @@ -66,8 +71,9 @@ def initSimulators(): 15:33:27 ('xpdrc', NODE_VERSION), 15:33:27 ('spdrc', NODE_VERSION)]) 15:33:27 15:33:27 + 15:33:27 def connect_xpdrs(): 15:33:27 - 15:33:27 + 15:33:27 print("Connecting SPDRA") 15:33:27 response = test_utils.mount_device("SPDR-SA1", ('spdra', NODE_VERSION)) 15:33:27 time.sleep(2) 15:33:27 @@ -81,6 +87,7 @@ def connect_xpdrs(): 15:33:27 response = test_utils.mount_device("XPDR-C1", ('xpdrc', NODE_VERSION)) 15:33:27 time.sleep(2) 15:33:27 15:33:27 + 15:33:27 def connect_rdms(): 15:33:27 print("Connecting ROADMA") 15:33:27 response = test_utils.mount_device("ROADM-A1", ('roadma', NODE_VERSION)) 15:33:27 @@ -93,6 +100,7 @@ def connect_rdms(): 15:33:27 print("Connecting ROADMC failed") 15:33:27 time.sleep(2) 15:33:27 15:33:27 + 15:33:27 def interconnect_roadm_and_xpdr(): 15:33:27 response = test_utils.transportpce_api_rpc_request( 15:33:27 'transportpce-networkutils', 'init-xpdr-rdm-links', 15:33:27 @@ -295,6 +303,7 @@ def interconnect_roadm_and_xpdr(): 15:33:27 print("Connection from ROADMC1 to SPDRSC1-X2 succeeded") 15:33:27 time.sleep(2) 15:33:27 15:33:27 + 15:33:27 def add_omsAttributes_to_ROADM2ROADM_links(): 15:33:27 # Config ROADMA-ROADMC oms-attributes 15:33:27 data = {"span": { 15:33:27 @@ -331,6 +340,7 @@ def add_omsAttributes_to_ROADM2ROADM_links(): 15:33:27 else: 15:33:27 print("OMS attributes added on link ROADMC-ROADMA") 15:33:27 15:33:27 + 15:33:27 def create_services_on_infra(self): 15:33:27 create_connectivity_service_PhotonicMedia(self) 15:33:27 get_service_PhotonicMedia(self) 15:33:27 @@ -345,6 +355,7 @@ def create_services_on_infra(self): 15:33:27 create_connectivity_service_DSR(self) 15:33:27 get_service_DSR(self) 15:33:27 15:33:27 + 15:33:27 def create_connectivity_service_PhotonicMedia(self): 15:33:27 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.sAOTS 15:33:27 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.sZOTS 15:33:27 @@ -371,14 +382,15 @@ def create_connectivity_service_PhotonicMedia(self): 15:33:27 'value': 'SPDR-SA1-XPDR1'} 15:33:27 15:33:27 tpcetest.assertDictEqual(dict(input_dict_1, **response['output']['service']), 15:33:27 - response['output']['service']) 15:33:27 + response['output']['service']) 15:33:27 tpcetest.assertDictEqual(dict(input_dict_2, **response['output']['service']['end-point'][0]['name'][0]), 15:33:27 - response['output']['service']['end-point'][0]['name'][0]) 15:33:27 + response['output']['service']['end-point'][0]['name'][0]) 15:33:27 tpcetest.assertDictEqual(dict(input_dict_3, **response['output']['service']['end-point'][1]['name'][0]), 15:33:27 - response['output']['service']['end-point'][1]['name'][0]) 15:33:27 + response['output']['service']['end-point'][1]['name'][0]) 15:33:27 # If the gate fails is because of the waiting time not being enough 15:33:27 # time.sleep(self.WAITING) 15:33:27 15:33:27 + 15:33:27 def get_service_PhotonicMedia(self): 15:33:27 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services.pm)) 15:33:27 print("getServiceResponse Service1 PhotonicMedia: {}".format(response)) 15:33:27 @@ -389,6 +401,7 @@ def get_service_PhotonicMedia(self): 15:33:27 tpcetest.assertEqual(response['services'][0]['lifecycle-state'], 'planned') 15:33:27 time.sleep(1) 15:33:27 15:33:27 + 15:33:27 def create_connectivity_service2_PhotonicMedia(self): 15:33:27 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.s2AOTS 15:33:27 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.s2ZOTS 15:33:27 @@ -416,14 +429,15 @@ def create_connectivity_service2_PhotonicMedia(self): 15:33:27 'value': 'SPDR-SA1-XPDR2'} 15:33:27 15:33:27 tpcetest.assertDictEqual(dict(input_dict_1, **response['output']['service']), 15:33:27 - response['output']['service']) 15:33:27 + response['output']['service']) 15:33:27 tpcetest.assertDictEqual(dict(input_dict_2, **response['output']['service']['end-point'][0]['name'][0]), 15:33:27 - response['output']['service']['end-point'][0]['name'][0]) 15:33:27 + response['output']['service']['end-point'][0]['name'][0]) 15:33:27 tpcetest.assertDictEqual(dict(input_dict_3, **response['output']['service']['end-point'][1]['name'][0]), 15:33:27 - response['output']['service']['end-point'][1]['name'][0]) 15:33:27 + response['output']['service']['end-point'][1]['name'][0]) 15:33:27 # If the gate fails is because of the waiting time not being enough 15:33:27 # time.sleep(self.WAITING) 15:33:27 15:33:27 + 15:33:27 def get_service2_PhotonicMedia(self): 15:33:27 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services2.pm)) 15:33:27 print("getServiceResponse Service2 PhotonicMedia: {}".format(response)) 15:33:27 @@ -434,6 +448,7 @@ def get_service2_PhotonicMedia(self): 15:33:27 tpcetest.assertEqual(response['services'][0]['lifecycle-state'], 'planned') 15:33:27 time.sleep(1) 15:33:27 15:33:27 + 15:33:27 def create_connectivity_service3_PhotonicMedia(self): 15:33:27 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.s3AOTS 15:33:27 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.s3ZOTS 15:33:27 @@ -461,14 +476,15 @@ def create_connectivity_service3_PhotonicMedia(self): 15:33:27 'value': 'SPDR-SA1-XPDR3'} 15:33:27 15:33:27 tpcetest.assertDictEqual(dict(input_dict_1, **response['output']['service']), 15:33:27 - response['output']['service']) 15:33:27 + response['output']['service']) 15:33:27 tpcetest.assertDictEqual(dict(input_dict_2, **response['output']['service']['end-point'][0]['name'][0]), 15:33:27 - response['output']['service']['end-point'][0]['name'][0]) 15:33:27 + response['output']['service']['end-point'][0]['name'][0]) 15:33:27 tpcetest.assertDictEqual(dict(input_dict_3, **response['output']['service']['end-point'][1]['name'][0]), 15:33:27 - response['output']['service']['end-point'][1]['name'][0]) 15:33:27 + response['output']['service']['end-point'][1]['name'][0]) 15:33:27 # If the gate fails is because of the waiting time not being enough 15:33:27 # time.sleep(self.WAITING) 15:33:27 15:33:27 + 15:33:27 def get_service3_PhotonicMedia(self): 15:33:27 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services3.pm)) 15:33:27 print("getServiceResponse Service3 PhotonicMedia: {}".format(response)) 15:33:27 @@ -480,6 +496,8 @@ def get_service3_PhotonicMedia(self): 15:33:27 time.sleep(1) 15:33:27 15:33:27 # test create connectivity service from spdrA to spdrC for odu 15:33:27 + 15:33:27 + 15:33:27 def create_connectivity_service_ODU(self): 15:33:27 # pylint: disable=line-too-long 15:33:27 self.cr_serv_input_data["layer-protocol-name"] = "ODU" 15:33:27 @@ -515,14 +533,15 @@ def create_connectivity_service_ODU(self): 15:33:27 'value': 'SPDR-SA1-XPDR1'} 15:33:27 15:33:27 tpcetest.assertDictEqual(dict(input_dict_1, **response['output']['service']), 15:33:27 - response['output']['service']) 15:33:27 + response['output']['service']) 15:33:27 tpcetest.assertDictEqual(dict(input_dict_2, **response['output']['service']['end-point'][0]['name'][0]), 15:33:27 - response['output']['service']['end-point'][0]['name'][0]) 15:33:27 + response['output']['service']['end-point'][0]['name'][0]) 15:33:27 tpcetest.assertDictEqual(dict(input_dict_3, **response['output']['service']['end-point'][1]['name'][0]), 15:33:27 - response['output']['service']['end-point'][1]['name'][0]) 15:33:27 + response['output']['service']['end-point'][1]['name'][0]) 15:33:27 # If the gate fails is because of the waiting time not being enough 15:33:27 # time.sleep(self.WAITING) 15:33:27 15:33:27 + 15:33:27 def get_service_ODU(self): 15:33:27 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services.odu)) 15:33:27 tpcetest.assertEqual(response['status_code'], requests.codes.ok) 15:33:27 @@ -533,6 +552,8 @@ def get_service_ODU(self): 15:33:27 time.sleep(1) 15:33:27 15:33:27 # test create connectivity service from spdrA to spdrC for odu 15:33:27 + 15:33:27 + 15:33:27 def create_connectivity_service3_ODU(self): 15:33:27 # pylint: disable=line-too-long 15:33:27 self.cr_serv_input_data["layer-protocol-name"] = "ODU" 15:33:27 @@ -568,14 +589,15 @@ def create_connectivity_service3_ODU(self): 15:33:27 'value': 'SPDR-SA1-XPDR3'} 15:33:27 15:33:27 tpcetest.assertDictEqual(dict(input_dict_1, **response['output']['service']), 15:33:27 - response['output']['service']) 15:33:27 + response['output']['service']) 15:33:27 tpcetest.assertDictEqual(dict(input_dict_2, **response['output']['service']['end-point'][0]['name'][0]), 15:33:27 - response['output']['service']['end-point'][0]['name'][0]) 15:33:27 + response['output']['service']['end-point'][0]['name'][0]) 15:33:27 tpcetest.assertDictEqual(dict(input_dict_3, **response['output']['service']['end-point'][1]['name'][0]), 15:33:27 - response['output']['service']['end-point'][1]['name'][0]) 15:33:27 + response['output']['service']['end-point'][1]['name'][0]) 15:33:27 # If the gate fails is because of the waiting time not being enough 15:33:27 # time.sleep(self.WAITING) 15:33:27 15:33:27 + 15:33:27 def get_service3_ODU(self): 15:33:27 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services3.odu)) 15:33:27 tpcetest.assertEqual(response['status_code'], requests.codes.ok) 15:33:27 @@ -585,6 +607,8 @@ def get_service3_ODU(self): 15:33:27 tpcetest.assertEqual(response['services'][0]['lifecycle-state'], 'planned') 15:33:27 15:33:27 # test create connectivity service from spdrA to spdrC for dsr 15:33:27 + 15:33:27 + 15:33:27 def create_connectivity_service_DSR(self): 15:33:27 # pylint: disable=line-too-long 15:33:27 self.cr_serv_input_data["layer-protocol-name"] = "DSR" 15:33:27 @@ -621,17 +645,18 @@ def create_connectivity_service_DSR(self): 15:33:27 'value': 'SPDR-SA1-XPDR1'} 15:33:27 15:33:27 tpcetest.assertDictEqual(dict(input_dict_1, 15:33:27 - **response['output']['service']), 15:33:27 - response['output']['service']) 15:33:27 + **response['output']['service']), 15:33:27 + response['output']['service']) 15:33:27 tpcetest.assertDictEqual(dict(input_dict_2, 15:33:27 - **response['output']['service']['end-point'][0]['name'][0]), 15:33:27 - response['output']['service']['end-point'][0]['name'][0]) 15:33:27 + **response['output']['service']['end-point'][0]['name'][0]), 15:33:27 + response['output']['service']['end-point'][0]['name'][0]) 15:33:27 tpcetest.assertDictEqual(dict(input_dict_3, 15:33:27 - **response['output']['service']['end-point'][1]['name'][0]), 15:33:27 - response['output']['service']['end-point'][1]['name'][0]) 15:33:27 + **response['output']['service']['end-point'][1]['name'][0]), 15:33:27 + response['output']['service']['end-point'][1]['name'][0]) 15:33:27 # The sleep here is okey as the DSR service creation is very fast 15:33:27 # time.sleep(self.WAITING) 15:33:27 15:33:27 + 15:33:27 def get_service_DSR(self): 15:33:27 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services.dsr)) 15:33:27 tpcetest.assertEqual(response['status_code'], requests.codes.ok) 15:33:27 @@ -643,6 +668,7 @@ def get_service_DSR(self): 15:33:27 print("Time to retrieve topology : 100 seconds... Hurry up") 15:33:27 time.sleep(100) 15:33:27 15:33:27 + 15:33:27 def delete_created_tapi_services(self): 15:33:27 delete_connectivity_service_DSR(self) 15:33:27 delete_connectivity_service_ODU(self) 15:33:27 @@ -652,6 +678,7 @@ def delete_created_tapi_services(self): 15:33:27 delete_connectivity_service_PhotonicMedia(self) 15:33:27 get_no_tapi_services() 15:33:27 15:33:27 + 15:33:27 def delete_connectivity_service_DSR(self): 15:33:27 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services.dsr) 15:33:27 response = test_utils.transportpce_api_rpc_request( 15:33:27 @@ -659,6 +686,7 @@ def delete_connectivity_service_DSR(self): 15:33:27 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 15:33:27 time.sleep(self.WAITING) 15:33:27 15:33:27 + 15:33:27 def delete_connectivity_service_ODU(self): 15:33:27 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services.odu) 15:33:27 response = test_utils.transportpce_api_rpc_request( 15:33:27 @@ -666,6 +694,7 @@ def delete_connectivity_service_ODU(self): 15:33:27 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 15:33:27 time.sleep(self.WAITING) 15:33:27 15:33:27 + 15:33:27 def delete_connectivity_service3_ODU(self): 15:33:27 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services3.odu) 15:33:27 response = test_utils.transportpce_api_rpc_request( 15:33:27 @@ -673,6 +702,7 @@ def delete_connectivity_service3_ODU(self): 15:33:27 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 15:33:27 time.sleep(self.WAITING) 15:33:27 15:33:27 + 15:33:27 def delete_connectivity_service_PhotonicMedia(self): 15:33:27 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services.pm) 15:33:27 response = test_utils.transportpce_api_rpc_request( 15:33:27 @@ -680,6 +710,7 @@ def delete_connectivity_service_PhotonicMedia(self): 15:33:27 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 15:33:27 time.sleep(self.WAITING) 15:33:27 15:33:27 + 15:33:27 def delete_connectivity_service3_PhotonicMedia(self): 15:33:27 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services3.pm) 15:33:27 response = test_utils.transportpce_api_rpc_request( 15:33:27 @@ -687,6 +718,7 @@ def delete_connectivity_service3_PhotonicMedia(self): 15:33:27 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 15:33:27 time.sleep(self.WAITING) 15:33:27 15:33:27 + 15:33:27 def delete_connectivity_service2_PhotonicMedia(self): 15:33:27 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services2.pm) 15:33:27 response = test_utils.transportpce_api_rpc_request( 15:33:27 @@ -694,6 +726,7 @@ def delete_connectivity_service2_PhotonicMedia(self): 15:33:27 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 15:33:27 time.sleep(self.WAITING) 15:33:27 15:33:27 + 15:33:27 def get_no_tapi_services(self): 15:33:27 response = test_utils.transportpce_api_rpc_request( 15:33:27 'tapi-connectivity', 'get-connectivity-service-list', None) 15:33:27 @@ -703,6 +736,7 @@ def get_no_tapi_services(self): 15:33:27 "error-message": "No services exist in datastore"}, 15:33:27 response['output']['errors']['error']) 15:33:27 15:33:27 + 15:33:27 def cleanup_and_desinstall_tapi_feature(): 15:33:27 disconnect_spdrA_C() 15:33:27 disconnect_roadmA_C() 15:33:27 @@ -712,6 +746,7 @@ def cleanup_and_desinstall_tapi_feature(): 15:33:27 # response = test_utils.get_ordm_serv_list_request() 15:33:27 # tpcetest.assertEqual(response['status_code'], requests.codes.conflict) 15:33:27 15:33:27 + 15:33:27 def disconnect_spdrA_C(): 15:33:27 response = test_utils.unmount_device("SPDR-SA1") 15:33:27 if response.status_code not in [204]: 15:33:27 @@ -720,6 +755,7 @@ def disconnect_spdrA_C(): 15:33:27 if response.status_code not in [204]: 15:33:27 print("disconnection of SPDR-SC1 failed") 15:33:27 15:33:27 + 15:33:27 def disconnect_roadmA_C(): 15:33:27 response = test_utils.unmount_device("ROADM-A1") 15:33:27 if response.status_code not in [204]: 15:33:27 @@ -728,6 +764,7 @@ def disconnect_roadmA_C(): 15:33:27 if response.status_code not in [204]: 15:33:27 print("disconnection of ROADM-C1 failed") 15:33:27 15:33:27 + 15:33:27 def uninstall_Tapi_Feature(): 15:33:27 test_utils.uninstall_karaf_feature("odl-transportpce-tapi") 15:33:27 time.sleep(5) 15:33:27 @@ -736,16 +773,16 @@ def uninstall_Tapi_Feature(): 15:33:27 print("Tapi Feature uninstallation :") 15:33:27 # tpcetest.assertEqual(response['status_code'], requests.codes.ok) 15:33:27 # print("Tapi Feature uninstalled") 15:33:27 - if('node' not in response['network'][0] and 'ietf-network-topology:link' not in response['network'][0]): 15:33:27 - print(" otn topology empty") 15:33:27 + if ('node' not in response['network'][0] and 'ietf-network-topology:link' not in response['network'][0]): 15:33:27 + print(" otn topology empty") 15:33:27 # tpcetest.assertNotIn('node', response['network'][0]) 15:33:27 # tpcetest.assertNotIn('ietf-network-topology:link', response['network'][0]) 15:33:27 response = test_utils.get_ietf_network_request('openroadm-topology', 'config') 15:33:27 if ((requests.codes.ok in response['status_code']) and 15:33:27 ('node' not in response['network'][0] and 'ietf-network-topology:link' not in response['network'][0])): 15:33:27 - # tpcetest.assertEqual(response['status_code'], requests.codes.ok) 15:33:27 - # tpcetest.assertNotIn('node', response['network'][0]) 15:33:27 - # tpcetest.assertNotIn('ietf-network-topology:link', response['network'][0]) 15:33:27 + # tpcetest.assertEqual(response['status_code'], requests.codes.ok) 15:33:27 + # tpcetest.assertNotIn('node', response['network'][0]) 15:33:27 + # tpcetest.assertNotIn('ietf-network-topology:link', response['network'][0]) 15:33:27 print("OpenROADM topology also empty") 15:33:27 print("Confirm Tapi Feature correctly uninstalled") 15:33:27 15:33:27 diff --git a/tests/transportpce_tests/pce/test05_pce_tapi.py b/tests/transportpce_tests/pce/test05_pce_tapi.py 15:33:27 index af012b9a2..8f3e6dfd3 100644 15:33:27 --- a/tests/transportpce_tests/pce/test05_pce_tapi.py 15:33:27 +++ b/tests/transportpce_tests/pce/test05_pce_tapi.py 15:33:27 @@ -197,7 +197,7 @@ class TransportPCEtest(unittest.TestCase): 15:33:27 15:33:27 # cr_serv_input_data is used for tapi-connectivity service creation. However, at that stage we create service 15:33:27 # using OR PCE and OR renderer (in a first step, as TAPI Renderer is not available). Thus to trigger path 15:33:27 - # through OR PCE, considering initial request through TAPI API will be converted to an OR service-create, we need : 15:33:27 + # through OR PCE, considering initial request through TAPI API will be converted to an OR service-create, we need : 15:33:27 # 1) To use a service name that iS NOT a UUID but a string 15:33:27 # 2) To use as the local-id, the name of the node in the OPENROADM topology 15:33:27 cr_serv_input_data = { 15:33:27 @@ -301,7 +301,7 @@ class TransportPCEtest(unittest.TestCase): 15:33:27 uuid_services = UuidServices() 15:33:27 15:33:27 del_serv_input_data = {"uuid": "TBD"} 15:33:27 - 15:33:27 + 15:33:27 tapi_topo = {"topology-id": "TBD"} 15:33:27 15:33:27 15:33:27 @@ -415,7 +415,7 @@ class TransportPCEtest(unittest.TestCase): 15:33:27 self.assertEqual(response['services'][0]['connection-type'], 'infrastructure') 15:33:27 self.assertEqual(response['services'][0]['lifecycle-state'], 'planned') 15:33:27 time.sleep(self.WAITING) 15:33:27 - 15:33:27 + 15:33:27 15:33:27 def test_05_successfull_path_computation_ODU4(self): 15:33:27 self.path_computation_input_data["service-a-end"]["service-format"] = "ODU" 15:33:27 @@ -436,7 +436,7 @@ class TransportPCEtest(unittest.TestCase): 15:33:27 self.assertIn('Path is calculated', 15:33:27 response['output']['configuration-response-common']['response-message']) 15:33:27 print(response['output']['response-parameters']['path-description']) 15:33:27 - 15:33:27 + 15:33:27 self.assertEqual(response['output']['response-parameters']['path-description']['aToZ-direction']['rate'], 100) 15:33:27 node_to_find = [self.s2Auuid, self.s2Cuuid] 15:33:27 # tp to find are the iOTU CEP 15:33:27 @@ -482,14 +482,14 @@ class TransportPCEtest(unittest.TestCase): 15:33:27 } 15:33:27 input_dict_2 = {'value-name': 'OpenROADM node id', 'value': 'SPDR-SC1-XPDR2'} 15:33:27 input_dict_3 = {'value-name': 'OpenROADM node id', 'value': 'SPDR-SA1-XPDR2'} 15:33:27 - 15:33:27 + 15:33:27 self.assertDictEqual(dict(input_dict_1, **response['output']['service']), 15:33:27 response['output']['service']) 15:33:27 self.assertDictEqual(input_dict_2, response['output']['service']['end-point'][0]['name'][0]) 15:33:27 self.assertDictEqual(input_dict_3, response['output']['service']['end-point'][1]['name'][0]) 15:33:27 # If the gate fails is because of the waiting time not being enough 15:33:27 time.sleep(self.WAITING) 15:33:27 - 15:33:27 + 15:33:27 def test_07_get_ODU4_service1(self): 15:33:27 response = test_utils.get_ordm_serv_list_attr_request("services", "serviceOdu4-1") 15:33:27 self.assertEqual(response['status_code'], requests.codes.ok) 15:33:27 @@ -499,7 +499,7 @@ class TransportPCEtest(unittest.TestCase): 15:33:27 self.assertEqual(response['services'][0]['connection-type'], 'infrastructure') 15:33:27 self.assertEqual(response['services'][0]['lifecycle-state'], 'planned') 15:33:27 time.sleep(1) 15:33:27 - 15:33:27 + 15:33:27 def test_08_successfull_path_computation_100GE_service__spdr_x2(self): 15:33:27 # service-format set to other + service-rate set to 100 leads to 100GEs serviceType internally (switch) 15:33:27 self.path_computation_input_data["service-a-end"]["service-format"] = "other" 15:33:27 pre-commit: exit 1 (47.57 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> pre-commit run --all-files --show-diff-on-failure pid=2462 15:33:28 pre-commit: FAIL ✖ in 52.39 seconds 15:33:28 docs: freeze> python -m pip freeze --all 15:33:28 pylint: install_deps> python -I -m pip install 'pylint>=2.6.0' 15:33:28 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 15:33:28 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 15:33:28 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 15:33:28 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 15:33:41 docs: OK ✔ in 59.57 seconds 15:33:41 docs-linkcheck: OK ✔ in 1 minute 0.27 seconds 15:33:41 pylint: freeze> python -m pip freeze --all 15:33:42 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 15:33:42 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}$' '{}' + 15:34:02 ************* Module test05_pce_tapi 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:380:0: C0301: Line too long (122/120) (line-too-long) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:381:0: C0301: Line too long (122/120) (line-too-long) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:459:0: C0301: Line too long (123/120) (line-too-long) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:463:0: C0301: Line too long (123/120) (line-too-long) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:596:0: C0301: Line too long (122/120) (line-too-long) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:603:0: C0301: Line too long (122/120) (line-too-long) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:680:0: C0301: Line too long (123/120) (line-too-long) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:684:0: C0301: Line too long (123/120) (line-too-long) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:765:0: C0301: Line too long (122/120) (line-too-long) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:772:0: C0301: Line too long (122/120) (line-too-long) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:815:0: C0301: Line too long (123/120) (line-too-long) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:819:0: C0301: Line too long (123/120) (line-too-long) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:347:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:434:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:496:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:518:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:559:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:656:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:718:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:739:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:851:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:876:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:903:16: R1723: Unnecessary "elif" after "break", remove the leading "el" from "elif" (no-else-break) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:913:16: R1723: Unnecessary "elif" after "break", remove the leading "el" from "elif" (no-else-break) 15:34:02 transportpce_tests/pce/test05_pce_tapi.py:15:0: W0611: Unused import os (unused-import) 15:34:02 ************* Module common.test_utils_generate_tapi_topo 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:321:0: C0325: Unnecessary parens after 'if' keyword (superfluous-parens) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:338:0: C0325: Unnecessary parens after 'if' keyword (superfluous-parens) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:772:0: C0325: Unnecessary parens after 'if' keyword (superfluous-parens) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:67:4: W0621: Redefining name 'processes' from outer scope (line 54) (redefined-outer-name) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:67:4: W0612: Unused variable 'processes' (unused-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:78:4: W0612: Unused variable 'response' (unused-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:104:0: R0912: Too many branches (40/12) (too-many-branches) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:104:0: R0915: Too many statements (121/50) (too-many-statements) 15:34:02 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) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:365:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:366:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:368:52: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:384:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:386:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:388:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:395:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:397:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:398:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:399:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:399:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:400:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:401:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:394:30: W0613: Unused argument 'self' (unused-argument) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:415:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:416:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:418:52: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:431:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:433:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:435:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:442:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:444:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:445:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:446:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:446:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:447:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:448:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:441:31: W0613: Unused argument 'self' (unused-argument) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:462:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:463:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:465:52: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:478:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:480:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:482:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:489:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:491:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:492:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:493:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:493:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:494:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:495:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:488:31: W0613: Unused argument 'self' (unused-argument) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:513:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:518:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:519:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:521:41: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:535:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:537:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:539:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:546:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:547:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:548:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:549:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:549:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:550:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:551:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:545:20: W0613: Unused argument 'self' (unused-argument) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:569:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:574:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:575:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:577:41: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:591:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:593:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:595:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:602:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:603:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:604:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:605:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:605:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:606:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:607:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:601:21: W0613: Unused argument 'self' (unused-argument) 15:34:02 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) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:625:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:630:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:631:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:633:41: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:647:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:02 transportpce_tests/common/test_utils_generate_tapi_topo.py:650:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:653:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 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) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:661:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:662:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:663:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:664:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:664:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:665:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:666:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:660:20: W0613: Unused argument 'self' (unused-argument) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:679:4: E1120: No value for argument 'self' in function call (no-value-for-parameter) 15:34:04 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) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:683:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:686:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 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) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:691:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:694:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 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) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:699:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:702:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 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) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:707:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:710:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 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) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:715:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:718:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 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) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:723:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:726:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:733:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:734:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:730:25: W0613: Unused argument 'self' (unused-argument) 15:34:04 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) 15:34:04 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) 15:34:04 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) 15:34:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:15:0: W0611: Unused import os (unused-import) 15:34:04 15:34:04 ----------------------------------- 15:34:04 Your code has been rated at 9.57/10 15:34:04 15:34:06 pylint: exit 1 (24.28 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=3433 15:34:49 pylint: FAIL ✖ in 38.46 seconds 15:34:49 buildcontroller: OK ✔ in 2 minutes 15.33 seconds 15:34:49 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 15:34:49 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 15:34:49 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 15:34:49 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 15:34:57 build_karaf_tests121: freeze> python -m pip freeze --all 15:34:57 build_karaf_tests190: freeze> python -m pip freeze --all 15:34:57 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.1,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:34:57 build_karaf_tests121: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 15:34:57 build karaf in karaf121 with ./karaf121.env 15:34:57 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.1,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:34:57 build_karaf_tests190: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 15:34:57 build karaf in karafoc with ./karafoc.env 15:34:57 build_karaf_tests71: freeze> python -m pip freeze --all 15:34:57 build_karaf_tests221: freeze> python -m pip freeze --all 15:34:57 NOTE: Picked up JDK_JAVA_OPTIONS: 15:34:57 --add-opens=java.base/java.io=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.lang=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.net=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.nio=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.nio.file=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.util=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.util.jar=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.util.stream=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.util.zip=ALL-UNNAMED 15:34:57 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 15:34:57 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 15:34:57 -Xlog:disable 15:34:57 NOTE: Picked up JDK_JAVA_OPTIONS: 15:34:57 --add-opens=java.base/java.io=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.lang=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.net=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.nio=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.nio.file=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.util=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.util.jar=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.util.stream=ALL-UNNAMED 15:34:57 --add-opens=java.base/java.util.zip=ALL-UNNAMED 15:34:57 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 15:34:57 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 15:34:57 -Xlog:disable 15:34:57 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.1,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:34:57 build_karaf_tests71: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 15:34:57 build karaf in karaf71 with ./karaf71.env 15:34:58 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.1,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:34:58 build_karaf_tests221: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 15:34:58 build karaf in karaf221 with ./karaf221.env 15:34:58 NOTE: Picked up JDK_JAVA_OPTIONS: 15:34:58 --add-opens=java.base/java.io=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.lang=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.net=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.nio=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.nio.file=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.util=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.util.jar=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.util.stream=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.util.zip=ALL-UNNAMED 15:34:58 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 15:34:58 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 15:34:58 -Xlog:disable 15:34:58 NOTE: Picked up JDK_JAVA_OPTIONS: 15:34:58 --add-opens=java.base/java.io=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.lang=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.net=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.nio=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.nio.file=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.util=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.util.jar=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.util.stream=ALL-UNNAMED 15:34:58 --add-opens=java.base/java.util.zip=ALL-UNNAMED 15:34:58 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 15:34:58 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 15:34:58 -Xlog:disable 15:36:21 build_karaf_tests190: OK ✔ in 1 minute 33.39 seconds 15:36:21 build_karaf_tests221: OK ✔ in 1 minute 33.86 seconds 15:36:21 build_karaf_tests71: OK ✔ in 1 minute 33.87 seconds 15:36:21 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:36:21 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:36:21 build_karaf_tests121: OK ✔ in 1 minute 34.11 seconds 15:36:21 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:36:39 buildlighty: freeze> python -m pip freeze --all 15:36:39 sims: freeze> python -m pip freeze --all 15:36:39 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.1,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:36:39 buildlighty: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/lighty> ./build.sh 15:36:39 NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED 15:36:39 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.1,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:36:39 sims: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./install_lightynode.sh 15:36:39 Using lighynode version 20.1.0.5 15:36:39 Installing lightynode device to ./lightynode/lightynode-openroadm-device directory 15:37:27 sims: OK ✔ in 22.95 seconds 15:37:27 buildlighty: OK ✔ in 44.31 seconds 15:37:27 testsPCE: freeze> python -m pip freeze --all 15:37:27 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.1,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:37:27 testsPCE: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh pce 15:37:27 pytest -q transportpce_tests/pce/test01_pce.py 15:38:15 ....F....F....FFFF.F [100%] 15:38:55 =================================== FAILURES =================================== 15:38:55 _____________ TestTransportPCEPce.test_05_path_computation_xpdr_bi _____________ 15:38:55 15:38:55 self = 15:38:55 15:38:55 def test_05_path_computation_xpdr_bi(self): 15:38:55 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 15:38:55 'path-computation-request', 15:38:55 self.path_computation_input_data) 15:38:55 self.assertEqual(response['status_code'], requests.codes.ok) 15:38:55 > self.assertIn('Path is calculated', 15:38:55 response['output']['configuration-response-common']['response-message']) 15:38:55 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9)' 15:38:55 15:38:55 transportpce_tests/pce/test01_pce.py:143: AssertionError 15:38:55 ____________ TestTransportPCEPce.test_10_path_computation_xpdr_uni _____________ 15:38:55 15:38:55 self = 15:38:55 15:38:55 def test_10_path_computation_xpdr_uni(self): 15:38:55 self.path_computation_input_data["service-a-end"]["node-id"] = "XPONDER-1-2" 15:38:55 self.path_computation_input_data["service-a-end"]["clli"] = "ORANGE1" 15:38:55 self.path_computation_input_data["service-z-end"]["node-id"] = "XPONDER-3-2" 15:38:55 self.path_computation_input_data["service-z-end"]["clli"] = "ORANGE3" 15:38:55 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 15:38:55 'path-computation-request', 15:38:55 self.path_computation_input_data) 15:38:55 self.assertEqual(response['status_code'], requests.codes.ok) 15:38:55 > self.assertIn('Path is calculated', 15:38:55 response['output']['configuration-response-common']['response-message']) 15:38:55 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9)' 15:38:55 15:38:55 transportpce_tests/pce/test01_pce.py:190: AssertionError 15:38:55 ____________ TestTransportPCEPce.test_15_success1_path_computation _____________ 15:38:55 15:38:55 self = 15:38:55 15:38:55 def test_15_success1_path_computation(self): 15:38:55 self.path_computation_input_data["service-name"] = "service 1" 15:38:55 self.path_computation_input_data["service-a-end"] = {"service-format": "Ethernet", "service-rate": "100", 15:38:55 "clli": "ORANGE2", "node-id": "XPONDER-2-2"} 15:38:55 self.path_computation_input_data["service-z-end"] = {"service-format": "Ethernet", "service-rate": "100", 15:38:55 "clli": "ORANGE1", "node-id": "XPONDER-1-2"} 15:38:55 self.path_computation_input_data["hard-constraints"] = {"customer-code": ["Some customer-code"], 15:38:55 "co-routing": { 15:38:55 "service-identifier-list": [{ 15:38:55 "service-identifier": "Some existing-service"}] 15:38:55 }} 15:38:55 self.path_computation_input_data["soft-constraints"] = {"customer-code": ["Some customer-code"], 15:38:55 "co-routing": { 15:38:55 "service-identifier-list": [{ 15:38:55 "service-identifier": "Some existing-service"}] 15:38:55 }} 15:38:55 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 15:38:55 'path-computation-request', 15:38:55 self.path_computation_input_data) 15:38:55 self.assertEqual(response['status_code'], requests.codes.ok) 15:38:55 > self.assertIn('Path is calculated', 15:38:55 response['output']['configuration-response-common']['response-message']) 15:38:55 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9), No frequencies available' 15:38:55 15:38:55 transportpce_tests/pce/test01_pce.py:267: AssertionError 15:38:55 ____________ TestTransportPCEPce.test_16_success2_path_computation _____________ 15:38:55 15:38:55 self = 15:38:55 15:38:55 def test_16_success2_path_computation(self): 15:38:55 self.path_computation_input_data["service-a-end"]["node-id"] = "XPONDER-1-2" 15:38:55 self.path_computation_input_data["service-a-end"]["clli"] = "ORANGE1" 15:38:55 self.path_computation_input_data["service-z-end"]["node-id"] = "XPONDER-3-2" 15:38:55 self.path_computation_input_data["service-z-end"]["clli"] = "ORANGE3" 15:38:55 del self.path_computation_input_data["hard-constraints"] 15:38:55 del self.path_computation_input_data["soft-constraints"] 15:38:55 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 15:38:55 'path-computation-request', 15:38:55 self.path_computation_input_data) 15:38:55 self.assertEqual(response['status_code'], requests.codes.ok) 15:38:55 > self.assertIn('Path is calculated', 15:38:55 response['output']['configuration-response-common']['response-message']) 15:38:55 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9)' 15:38:55 15:38:55 transportpce_tests/pce/test01_pce.py:284: AssertionError 15:38:55 ____________ TestTransportPCEPce.test_17_success3_path_computation _____________ 15:38:55 15:38:55 self = 15:38:55 15:38:55 def test_17_success3_path_computation(self): 15:38:55 self.path_computation_input_data["hard-constraints"] = {"exclude": 15:38:55 {"node-id": ["OpenROADM-2-1", "OpenROADM-2-2"]}} 15:38:55 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 15:38:55 'path-computation-request', 15:38:55 self.path_computation_input_data) 15:38:55 self.assertEqual(response['status_code'], requests.codes.ok) 15:38:55 > self.assertIn('Path is calculated', 15:38:55 response['output']['configuration-response-common']['response-message']) 15:38:55 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9)' 15:38:55 15:38:55 transportpce_tests/pce/test01_pce.py:300: AssertionError 15:38:55 __ TestTransportPCEPce.test_18_path_computation_before_oms_attribute_deletion __ 15:38:55 15:38:55 self = 15:38:55 15:38:55 def test_18_path_computation_before_oms_attribute_deletion(self): 15:38:55 self.path_computation_input_data["service-a-end"]["node-id"] = "XPONDER-2-2" 15:38:55 self.path_computation_input_data["service-a-end"]["clli"] = "ORANGE2" 15:38:55 self.path_computation_input_data["service-z-end"]["node-id"] = "XPONDER-1-2" 15:38:55 self.path_computation_input_data["service-z-end"]["clli"] = "ORANGE1" 15:38:55 del self.path_computation_input_data["hard-constraints"] 15:38:55 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 15:38:55 'path-computation-request', 15:38:55 self.path_computation_input_data) 15:38:55 self.assertEqual(response['status_code'], requests.codes.ok) 15:38:55 > self.assertIn('Path is calculated', 15:38:55 response['output']['configuration-response-common']['response-message']) 15:38:55 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9), No frequencies available' 15:38:55 15:38:55 transportpce_tests/pce/test01_pce.py:319: AssertionError 15:38:55 __ TestTransportPCEPce.test_20_path_computation_after_oms_attribute_deletion ___ 15:38:55 15:38:55 self = 15:38:55 15:38:55 def test_20_path_computation_after_oms_attribute_deletion(self): 15:38:55 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 15:38:55 'path-computation-request', 15:38:55 self.path_computation_input_data) 15:38:55 self.assertEqual(response['status_code'], requests.codes.ok) 15:38:55 > self.assertIn('Path is calculated', 15:38:55 response['output']['configuration-response-common']['response-message']) 15:38:55 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9), No frequencies available' 15:38:55 15:38:55 transportpce_tests/pce/test01_pce.py:346: AssertionError 15:38:55 --------------------------- Captured stdout teardown --------------------------- 15:38:55 all processes killed 15:38:55 ODL log file stored 15:38:55 =========================== short test summary info ============================ 15:38:55 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_05_path_computation_xpdr_bi 15:38:55 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_10_path_computation_xpdr_uni 15:38:55 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_15_success1_path_computation 15:38:55 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_16_success2_path_computation 15:38:55 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_17_success3_path_computation 15:38:55 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_18_path_computation_before_oms_attribute_deletion 15:38:55 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_20_path_computation_after_oms_attribute_deletion 15:38:55 7 failed, 13 passed in 86.97s (0:01:26) 15:38:55 testsPCE: exit 1 (87.30 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh pce pid=5153 15:38:55 testsPCE: FAIL ✖ in 2 minutes 33.7 seconds 15:38:55 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:38:56 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:38:56 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:39:03 tests121: freeze> python -m pip freeze --all 15:39:03 tests190: freeze> python -m pip freeze --all 15:39:03 tests_tapi: freeze> python -m pip freeze --all 15:39:03 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.1,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:39:03 tests121: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 1.2.1 15:39:03 using environment variables from ./karaf121.env 15:39:03 pytest -q transportpce_tests/1.2.1/test01_portmapping.py 15:39:03 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.1,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:39:03 tests190: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh oc 15:39:03 using environment variables from ./karafoc.env 15:39:03 pytest -q transportpce_tests/oc/test01_portmapping.py 15:39:03 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.1,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:39:03 tests_tapi: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh tapi 15:39:03 using environment variables from ./karaf221.env 15:39:03 pytest -q transportpce_tests/tapi/test01_abstracted_topology.py 15:40:06 ........... [100%] 15:40:22 10 passed in 78.14s (0:01:18) 15:40:22 pytest -q transportpce_tests/oc/test02_topology.py 15:40:31 ............................... [100%] 15:41:11 21 passed in 127.81s (0:02:07) 15:41:11 pytest -q transportpce_tests/1.2.1/test02_topo_portmapping.py 15:41:12 ....... [100%] 15:41:27 14 passed in 64.41s (0:01:04) 15:41:27 pytest -q transportpce_tests/oc/test03_renderer.py 15:41:50 .................................................... [100%] 15:45:04 6 passed in 232.62s (0:03:52) 15:45:04 pytest -q transportpce_tests/1.2.1/test03_topology.py 15:45:08 ...... [100%] 15:45:22 19 passed in 234.97s (0:03:54) 15:45:22 tests190: OK ✔ in 6 minutes 27.16 seconds 15:45:22 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:45:29 tests71: freeze> python -m pip freeze --all 15:45:30 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.1,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:45:30 tests71: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 7.1 15:45:30 using environment variables from ./karaf71.env 15:45:30 pytest -q transportpce_tests/7.1/test01_portmapping.py 15:45:32 ...................................... [100%] 15:46:28 12 passed in 58.45s 15:46:29 pytest -q transportpce_tests/7.1/test02_otn_renderer.py 15:46:29 ............................ [100%] 15:47:12 51 passed in 488.17s (0:08:08) 15:47:12 pytest -q transportpce_tests/tapi/test02_full_topology.py 15:47:12 ....................... [100%] 15:47:36 44 passed in 151.62s (0:02:31) 15:47:36 pytest -q transportpce_tests/1.2.1/test04_renderer_service_path_nominal.py 15:47:38 ................................................................................ [100%] 15:49:08 62 passed in 159.53s (0:02:39) 15:49:08 pytest -q transportpce_tests/7.1/test03_renderer_or_modes.py 15:49:08 .. [100%] 15:49:12 24 passed in 95.17s (0:01:35) 15:49:12 pytest -q transportpce_tests/1.2.1/test05_olm.py 15:49:31 FFFF.....F....F.F......................F...F..F.F.F.F.F......................................... [100%] 15:51:36 =================================== FAILURES =================================== 15:51:36 _ TestTransportPCEFullTopology.test_16_create_connectivity_service_PhotonicMedia _ 15:51:36 15:51:36 self = 15:51:36 15:51:36 def test_16_create_connectivity_service_PhotonicMedia(self): 15:51:36 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.sAOTS 15:51:36 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.sZOTS 15:51:36 response = test_utils.transportpce_api_rpc_request( 15:51:36 'tapi-connectivity', 'create-connectivity-service', self.cr_serv_input_data) 15:51:36 time.sleep(self.WAITING) 15:51:36 > self.assertEqual(response['status_code'], requests.codes.ok) 15:51:36 E AssertionError: 500 != 200 15:51:36 15:51:36 transportpce_tests/tapi/test02_full_topology.py:316: AssertionError 15:51:36 ________ TestTransportPCEFullTopology.test_17_get_service_PhotonicMedia ________ 15:51:36 15:51:36 self = 15:51:36 15:51:36 def test_17_get_service_PhotonicMedia(self): 15:51:36 response = test_utils.get_ordm_serv_list_attr_request("services", str(self.uuid_services.pm)) 15:51:36 > self.assertEqual(response['status_code'], requests.codes.ok) 15:51:36 E AssertionError: 409 != 200 15:51:36 15:51:36 transportpce_tests/tapi/test02_full_topology.py:346: AssertionError 15:51:36 _ TestTransportPCEFullTopology.test_18a_get_tapi_Pht_node_details_at_Pht_Service_creation _ 15:51:36 15:51:36 self = 15:51:36 15:51:36 def test_18a_get_tapi_Pht_node_details_at_Pht_Service_creation(self): 15:51:36 response = test_utils.get_tapi_topology_node( 15:51:36 test_utils.T0_FULL_MULTILAYER_TOPO_UUID, self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1OTS, "nonconfig") 15:51:36 time.sleep(2) 15:51:36 self.assertEqual(response['status_code'], requests.codes.ok) 15:51:36 input_dict_1 = {"spectrum-capability-pac": {"occupied-spectrum": [{"upper-frequency": "196125000000000", 15:51:36 "lower-frequency": "196075000000000"}], 15:51:36 "supportable-spectrum": [{"upper-frequency": "196125000000000", 15:51:36 "lower-frequency": "191325000000000"}]} 15:51:36 } 15:51:36 15:51:36 self.assertDictEqual(dict(input_dict_1, 15:51:36 **response['onep'][0]['tapi-photonic-media:photonic-media-node-edge-point-spec']), 15:51:36 response['onep'][0]['tapi-photonic-media:photonic-media-node-edge-point-spec']) 15:51:36 self.assertEqual(response['onep'][0]['name'][0]['value-name'], 'eNodeEdgePoint') 15:51:36 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+PHOTONIC_MEDIA_OTS+XPDR1-NETWORK1') 15:51:36 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 15:51:36 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 15:51:36 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '1') 15:51:36 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['capacity']['value'], '100.0') 15:51:36 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['number-of-cep-instances'], '1') 15:51:36 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['capacity']['value'], '100.0') 15:51:36 self.assertEqual(response['onep'][0]['available-capacity']['total-size']['value'], '100.0') 15:51:36 self.assertEqual(response['onep'][0]['tapi-connectivity:cep-list']['connection-end-point'][0] 15:51:36 ['client-node-edge-point'][0]['node-edge-point-uuid'], 'f32f5e9e-d167-31ba-a9e4-8f1efdb8786d') 15:51:36 self.assertEqual(response['onep'][0]['tapi-connectivity:cep-list']['connection-end-point'][0] 15:51:36 ['parent-node-edge-point']['node-edge-point-uuid'], '21efd6a4-2d81-3cdb-aabb-b983fb61904e') 15:51:36 15:51:36 response = test_utils.get_tapi_topology_node( 15:51:36 test_utils.T0_FULL_MULTILAYER_TOPO_UUID, self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1OTSi, "nonconfig") 15:51:36 time.sleep(2) 15:51:36 self.assertDictEqual(dict(input_dict_1, 15:51:36 **response['onep'][0]['tapi-photonic-media:photonic-media-node-edge-point-spec']), 15:51:36 response['onep'][0]['tapi-photonic-media:photonic-media-node-edge-point-spec']) 15:51:36 self.assertEqual(response['status_code'], requests.codes.ok) 15:51:36 self.assertEqual(response['onep'][0]['name'][0]['value-name'], 'PhotMedNodeEdgePoint') 15:51:36 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+OTSi_MEDIA_CHANNEL+XPDR1-NETWORK1') 15:51:36 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 15:51:36 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 15:51:36 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '1') 15:51:36 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['capacity']['value'], '100.0') 15:51:36 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['number-of-cep-instances'], '1') 15:51:36 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['capacity']['value'], '100.0') 15:51:36 self.assertEqual(response['onep'][0]['available-capacity']['total-size']['value'], '100.0') 15:51:36 > self.assertEqual(response['onep'][0]['tapi-connectivity:cep-list']['connection-end-point'][0] 15:51:36 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 15:51:36 ['client-node-edge-point'][0]['node-edge-point-uuid'], '7d2a0549-63e3-3c7f-b4dc-5653e8a81dbe') 15:51:36 E KeyError: 'tapi-connectivity:cep-list' 15:51:36 15:51:36 transportpce_tests/tapi/test02_full_topology.py:397: KeyError 15:51:36 _ TestTransportPCEFullTopology.test_18b_get_tapi_OTN_node_details_at_Pht_Service_creation _ 15:51:36 15:51:36 self = 15:51:36 15:51:36 def test_18b_get_tapi_OTN_node_details_at_Pht_Service_creation(self): 15:51:36 response = test_utils.get_tapi_topology_node( 15:51:36 test_utils.T0_FULL_MULTILAYER_TOPO_UUID, self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1iODU, "nonconfig") 15:51:36 time.sleep(2) 15:51:36 self.assertEqual(response['onep'][0]['name'][0]['value-name'], 'iNodeEdgePoint_N') 15:51:36 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+iODU+XPDR1-NETWORK1') 15:51:36 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 15:51:36 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 15:51:36 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '1') 15:51:36 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['capacity']['value'], '100.0') 15:51:36 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['number-of-cep-instances'], '1') 15:51:36 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['capacity']['value'], '100.0') 15:51:36 self.assertEqual(response['onep'][0]['available-capacity']['total-size']['value'], '100.0') 15:51:36 15:51:36 response = test_utils.get_tapi_topology_node(test_utils.T0_FULL_MULTILAYER_TOPO_UUID, 15:51:36 self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1eODUC1, 15:51:36 "nonconfig") 15:51:36 time.sleep(2) 15:51:36 self.assertEqual(response['onep'][0]['name'][0]['value-name'], 'eNodeEdgePoint_N') 15:51:36 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+eODU+XPDR1-CLIENT1') 15:51:36 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 15:51:36 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 15:51:36 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '1') 15:51:36 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['capacity']['value'], '10.0') 15:51:36 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['number-of-cep-instances'], '1') 15:51:36 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['capacity']['value'], '10.0') 15:51:36 self.assertEqual(response['onep'][0]['available-capacity']['total-size']['value'], '10.0') 15:51:36 > self.assertEqual(response['onep'][0]['tapi-connectivity:cep-list']['connection-end-point'][0] 15:51:36 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 15:51:36 ['parent-node-edge-point']['node-edge-point-uuid'], '72c6b97a-3944-3d88-9882-b7e688bb2772') 15:51:36 E KeyError: 'tapi-connectivity:cep-list' 15:51:36 15:51:36 transportpce_tests/tapi/test02_full_topology.py:447: KeyError 15:51:36 _____ TestTransportPCEFullTopology.test_19_create_connectivity_service_ODU _____ 15:51:36 15:51:36 self = 15:51:36 15:51:36 def test_19_create_connectivity_service_ODU(self): 15:51:36 # pylint: disable=line-too-long 15:51:36 self.cr_serv_input_data["layer-protocol-name"] = "ODU" 15:51:36 self.cr_serv_input_data["end-point"][0]["layer-protocol-name"] = "ODU" 15:51:36 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.sAeODU 15:51:36 self.cr_serv_input_data["end-point"][1]["layer-protocol-name"] = "ODU" 15:51:36 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.sZeODU 15:51:36 # self.cr_serv_input_data["connectivity-constraint"]["service-layer"] = "ODU" 15:51:36 self.cr_serv_input_data["connectivity-constraint"]["service-level"] = self.uuid_services.pm 15:51:36 15:51:36 response = test_utils.transportpce_api_rpc_request( 15:51:36 'tapi-connectivity', 'create-connectivity-service', self.cr_serv_input_data) 15:51:36 time.sleep(self.WAITING) 15:51:36 > self.assertEqual(response['status_code'], requests.codes.ok) 15:51:36 E AssertionError: 500 != 200 15:51:36 15:51:36 transportpce_tests/tapi/test02_full_topology.py:464: AssertionError 15:51:36 _ TestTransportPCEFullTopology.test_20_get_tapi_node_details_at_ODU_Service_creation _ 15:51:36 15:51:36 self = 15:51:36 15:51:36 def test_20_get_tapi_node_details_at_ODU_Service_creation(self): 15:51:36 # ODU service creation correspond to the creation of HO-ODU between 2 Network ports and is associated an 15:51:36 # iODU4 top connection which uses 100% of underlying OTU4 15:51:36 response = test_utils.get_tapi_topology_node(test_utils.T0_FULL_MULTILAYER_TOPO_UUID, 15:51:36 self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1eODUC1, 15:51:36 "nonconfig") 15:51:36 time.sleep(2) 15:51:36 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+eODU+XPDR1-CLIENT1') 15:51:36 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 15:51:36 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 15:51:36 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '1') 15:51:36 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['capacity']['value'], '10.0') 15:51:36 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['number-of-cep-instances'], '1') 15:51:36 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['capacity']['value'], '10.0') 15:51:36 self.assertEqual(response['onep'][0]['available-capacity']['total-size']['value'], '10.0') 15:51:36 > self.assertEqual(response['onep'][0]['tapi-connectivity:cep-list']['connection-end-point'][0] 15:51:36 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 15:51:36 ['client-node-edge-point'][0]['node-edge-point-uuid'], 'c6cd334c-51a1-3995-bed3-5cf2b7445c04') 15:51:36 E KeyError: 'tapi-connectivity:cep-list' 15:51:36 15:51:36 transportpce_tests/tapi/test02_full_topology.py:505: KeyError 15:51:36 _____________ TestTransportPCEFullTopology.test_21_get_service_ODU _____________ 15:51:36 15:51:36 self = 15:51:36 15:51:36 def test_21_get_service_ODU(self): 15:51:36 response = test_utils.get_ordm_serv_list_attr_request("services", str(self.uuid_services.odu)) 15:51:36 > self.assertEqual(response['status_code'], requests.codes.ok) 15:51:36 E AssertionError: 409 != 200 15:51:36 15:51:36 transportpce_tests/tapi/test02_full_topology.py:552: AssertionError 15:51:36 _____ TestTransportPCEFullTopology.test_22_create_connectivity_service_DSR _____ 15:51:36 15:51:36 self = 15:51:36 15:51:36 def test_22_create_connectivity_service_DSR(self): 15:51:36 # pylint: disable=line-too-long 15:51:36 self.cr_serv_input_data["layer-protocol-name"] = "DSR" 15:51:36 self.cr_serv_input_data["end-point"][0]["layer-protocol-name"] = "DSR" 15:51:36 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.sADSR 15:51:36 self.cr_serv_input_data["end-point"][1]["layer-protocol-name"] = "DSR" 15:51:36 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.sZDSR 15:51:36 # self.cr_serv_input_data["connectivity-constraint"]["service-layer"] = "DSR" 15:51:36 self.cr_serv_input_data["connectivity-constraint"]["requested-capacity"]["total-size"]["value"] = "10" 15:51:36 self.cr_serv_input_data["connectivity-constraint"]["service-level"] = self.uuid_services.odu 15:51:36 15:51:36 response = test_utils.transportpce_api_rpc_request( 15:51:36 'tapi-connectivity', 'create-connectivity-service', self.cr_serv_input_data) 15:51:36 time.sleep(self.WAITING) 15:51:36 > self.assertEqual(response['status_code'], requests.codes.ok) 15:51:36 E AssertionError: 500 != 200 15:51:36 15:51:36 transportpce_tests/tapi/test02_full_topology.py:574: AssertionError 15:51:36 _ TestTransportPCEFullTopology.test_23_get_tapi_node_details_at_DSR_Service_creation _ 15:51:36 15:51:36 self = 15:51:36 15:51:36 def test_23_get_tapi_node_details_at_DSR_Service_creation(self): 15:51:36 15:51:36 response = test_utils.get_tapi_topology_node(test_utils.T0_FULL_MULTILAYER_TOPO_UUID, 15:51:36 self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1eODUC1, 15:51:36 "nonconfig") 15:51:36 time.sleep(2) 15:51:36 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+eODU+XPDR1-CLIENT1') 15:51:36 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 15:51:36 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 15:51:36 > self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '0') 15:51:36 E AssertionError: '1' != '0' 15:51:36 E - 1 15:51:36 E + 0 15:51:36 15:51:36 transportpce_tests/tapi/test02_full_topology.py:612: AssertionError 15:51:36 _____________ TestTransportPCEFullTopology.test_24_get_service_DSR _____________ 15:51:36 15:51:36 self = 15:51:36 15:51:36 def test_24_get_service_DSR(self): 15:51:36 response = test_utils.get_ordm_serv_list_attr_request("services", str(self.uuid_services.dsr)) 15:51:36 > self.assertEqual(response['status_code'], requests.codes.ok) 15:51:36 E AssertionError: 409 != 200 15:51:36 15:51:36 transportpce_tests/tapi/test02_full_topology.py:642: AssertionError 15:51:36 ______ TestTransportPCEFullTopology.test_25_get_connectivity_service_list ______ 15:51:36 15:51:36 self = 15:51:36 15:51:36 def test_25_get_connectivity_service_list(self): 15:51:36 response = test_utils.transportpce_api_rpc_request( 15:51:36 'tapi-connectivity', 'get-connectivity-service-list', None) 15:51:36 > self.assertEqual(response['status_code'], requests.codes.ok) 15:51:36 E AssertionError: 500 != 200 15:51:36 15:51:36 transportpce_tests/tapi/test02_full_topology.py:652: AssertionError 15:51:36 _____ TestTransportPCEFullTopology.test_26_delete_connectivity_service_DSR _____ 15:51:36 15:51:36 self = 15:51:36 15:51:36 def test_26_delete_connectivity_service_DSR(self): 15:51:36 self.del_serv_input_data["uuid"] = str(self.uuid_services.dsr) 15:51:36 response = test_utils.transportpce_api_rpc_request( 15:51:36 'tapi-connectivity', 'delete-connectivity-service', self.del_serv_input_data) 15:51:36 > self.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 15:51:36 E AssertionError: 500 not found in (200, 204) 15:51:36 15:51:36 transportpce_tests/tapi/test02_full_topology.py:681: AssertionError 15:51:36 _____ TestTransportPCEFullTopology.test_27_delete_connectivity_service_ODU _____ 15:51:36 15:51:36 self = 15:51:36 15:51:36 def test_27_delete_connectivity_service_ODU(self): 15:51:36 self.del_serv_input_data["uuid"] = str(self.uuid_services.odu) 15:51:36 response = test_utils.transportpce_api_rpc_request( 15:51:36 'tapi-connectivity', 'delete-connectivity-service', self.del_serv_input_data) 15:51:36 > self.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 15:51:36 E AssertionError: 500 not found in (200, 204) 15:51:36 15:51:36 transportpce_tests/tapi/test02_full_topology.py:688: AssertionError 15:51:36 _ TestTransportPCEFullTopology.test_28_delete_connectivity_service_PhotonicMedia _ 15:51:36 15:51:36 self = 15:51:36 15:51:36 def test_28_delete_connectivity_service_PhotonicMedia(self): 15:51:36 self.del_serv_input_data["uuid"] = str(self.uuid_services.pm) 15:51:36 response = test_utils.transportpce_api_rpc_request( 15:51:36 'tapi-connectivity', 'delete-connectivity-service', self.del_serv_input_data) 15:51:36 > self.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 15:51:36 E AssertionError: 500 not found in (200, 204) 15:51:36 15:51:36 transportpce_tests/tapi/test02_full_topology.py:695: AssertionError 15:51:36 =========================== short test summary info ============================ 15:51:36 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_16_create_connectivity_service_PhotonicMedia 15:51:36 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_17_get_service_PhotonicMedia 15:51:36 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_18a_get_tapi_Pht_node_details_at_Pht_Service_creation 15:51:36 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_18b_get_tapi_OTN_node_details_at_Pht_Service_creation 15:51:36 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_19_create_connectivity_service_ODU 15:51:36 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_20_get_tapi_node_details_at_ODU_Service_creation 15:51:36 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_21_get_service_ODU 15:51:36 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_22_create_connectivity_service_DSR 15:51:36 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_23_get_tapi_node_details_at_DSR_Service_creation 15:51:36 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_24_get_service_DSR 15:51:36 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_25_get_connectivity_service_list 15:51:36 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_26_delete_connectivity_service_DSR 15:51:36 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_27_delete_connectivity_service_ODU 15:51:36 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_28_delete_connectivity_service_PhotonicMedia 15:51:36 14 failed, 22 passed in 263.73s (0:04:23) 15:51:36 tests_tapi: exit 1 (752.60 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh tapi pid=5947 15:51:36 tests_tapi: FAIL ✖ in 12 minutes 41.29 seconds 15:51:36 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:51:36 . [100%] 15:51:39 48 passed in 149.94s (0:02:29) 15:51:39 pytest -q transportpce_tests/7.1/test04_renderer_regen_mode.py 15:51:39 .tests221: freeze> python -m pip freeze --all 15:51:44 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.1,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:51:44 tests221: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 2.2.1 15:51:44 using environment variables from ./karaf221.env 15:51:44 pytest -q transportpce_tests/2.2.1/test01_portmapping.py 15:51:50 ................. [100%] 15:52:31 40 passed in 198.36s (0:03:18) 15:52:31 pytest -q transportpce_tests/1.2.1/test06_end2end.py 15:52:32 ........................................ [100%] 15:53:07 22 passed in 88.32s (0:01:28) 15:53:08 .............. [100%] 15:53:21 35 passed in 96.79s (0:01:36) 15:53:21 pytest -q transportpce_tests/2.2.1/test02_topo_portmapping.py 15:53:22 ........................ [100%] 15:54:09 6 passed in 47.94s 15:54:10 pytest -q transportpce_tests/2.2.1/test03_topology.py 15:54:24 .................................................................. [100%] 15:56:28 44 passed in 138.37s (0:02:18) 15:56:28 pytest -q transportpce_tests/2.2.1/test04_otn_topology.py 15:56:47 ................. [100%] 15:57:29 12 passed in 60.11s (0:01:00) 15:57:29 pytest -q transportpce_tests/2.2.1/test05_flex_grid.py 15:57:55 ................. [100%] 15:59:24 16 passed in 114.79s (0:01:54) 15:59:24 pytest -q transportpce_tests/2.2.1/test06_renderer_service_path_nominal.py 15:59:53 ............................... [100%] 16:00:00 31 passed in 36.11s 16:00:00 pytest -q transportpce_tests/2.2.1/test07_otn_renderer.py 16:00:36 ............................... [100%] 16:01:32 54 passed in 540.99s (0:09:00) 16:01:32 [100%] 16:01:32 26 passed in 91.79s (0:01:31) 16:01:32 pytest -q transportpce_tests/2.2.1/test08_otn_sh_renderer.py 16:02:09 ...................... [100%] 16:03:12 22 passed in 99.95s (0:01:39) 16:03:13 pytest -q transportpce_tests/2.2.1/test09_olm.py 16:03:56 ........................................ [100%] 16:06:18 40 passed in 185.07s (0:03:05) 16:06:18 pytest -q transportpce_tests/2.2.1/test11_otn_end2end.py 16:07:01 ........................................................................ [ 74%] 16:12:38 ......................... [100%] 16:14:30 97 passed in 491.69s (0:08:11) 16:14:30 pytest -q transportpce_tests/2.2.1/test12_end2end.py 16:15:11 ...................................................... [100%] 16:21:59 54 passed in 448.38s (0:07:28) 16:21:59 pytest -q transportpce_tests/2.2.1/test14_otn_switch_end2end.py 16:22:54 ........................................................................ [ 71%] 16:28:01 ............................. [100%] 16:30:11 101 passed in 491.83s (0:08:11) 16:30:11 pytest -q transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py 16:31:06 ........................................................................ [ 67%] 16:36:52 ................................... [100%] 16:40:12 107 passed in 601.47s (0:10:01) 16:40:13 pytest -q transportpce_tests/2.2.1/test16_freq_end2end.py 16:40:56 ..............FFFFFFFFFFF.........FFFF....... [100%] 16:46:32 =================================== FAILURES =================================== 16:46:32 ___________ TestTransportPCEFreqEndtoend.test_15_get_other_service1 ____________ 16:46:32 16:46:32 self = 16:46:32 16:46:32 def test_15_get_other_service1(self): 16:46:32 response = test_utils.get_ordm_serv_list_attr_request( 16:46:32 "services", "service1-openroadm") 16:46:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:46:32 E AssertionError: 409 != 200 16:46:32 16:46:32 transportpce_tests/2.2.1/test16_freq_end2end.py:270: AssertionError 16:46:32 _____ TestTransportPCEFreqEndtoend.test_16_check_interface_roadma1_deg2_mc _____ 16:46:32 16:46:32 self = 16:46:32 16:46:32 def test_16_check_interface_roadma1_deg2_mc(self): 16:46:32 response = test_utils.check_node_attribute_request( 16:46:32 'ROADM-A1', 'interface', 'DEG2-TTP-TXRX-mc-282:287') 16:46:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:46:32 E AssertionError: 409 != 200 16:46:32 16:46:32 transportpce_tests/2.2.1/test16_freq_end2end.py:284: AssertionError 16:46:32 ____ TestTransportPCEFreqEndtoend.test_17_check_interface_roadm_a1_deg2_nmc ____ 16:46:32 16:46:32 self = 16:46:32 16:46:32 def test_17_check_interface_roadm_a1_deg2_nmc(self): 16:46:32 response = test_utils.check_node_attribute_request( 16:46:32 'ROADM-A1', 'interface', 'DEG2-TTP-TXRX-nmc-282:287') 16:46:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:46:32 E AssertionError: 409 != 200 16:46:32 16:46:32 transportpce_tests/2.2.1/test16_freq_end2end.py:307: AssertionError 16:46:32 ____ TestTransportPCEFreqEndtoend.test_18_check_interface_roadm_a1_srg3_nmc ____ 16:46:32 16:46:32 self = 16:46:32 16:46:32 def test_18_check_interface_roadm_a1_srg3_nmc(self): 16:46:32 response = test_utils.check_node_attribute_request( 16:46:32 'ROADM-A1', 'interface', 'SRG3-PP1-TXRX-nmc-282:287') 16:46:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:46:32 E AssertionError: 409 != 200 16:46:32 16:46:32 transportpce_tests/2.2.1/test16_freq_end2end.py:330: AssertionError 16:46:32 ____ TestTransportPCEFreqEndtoend.test_19_check_interface_roadm_c1_deg1_mc _____ 16:46:32 16:46:32 self = 16:46:32 16:46:32 def test_19_check_interface_roadm_c1_deg1_mc(self): 16:46:32 response = test_utils.check_node_attribute_request( 16:46:32 'ROADM-C1', 'interface', 'DEG1-TTP-TXRX-mc-282:287') 16:46:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:46:32 E AssertionError: 409 != 200 16:46:32 16:46:32 transportpce_tests/2.2.1/test16_freq_end2end.py:352: AssertionError 16:46:32 ____ TestTransportPCEFreqEndtoend.test_20_check_interface_roadm_c1_deg1_nmc ____ 16:46:32 16:46:32 self = 16:46:32 16:46:32 def test_20_check_interface_roadm_c1_deg1_nmc(self): 16:46:32 response = test_utils.check_node_attribute_request( 16:46:32 'ROADM-C1', 'interface', 'DEG1-TTP-TXRX-nmc-282:287') 16:46:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:46:32 E AssertionError: 409 != 200 16:46:32 16:46:32 transportpce_tests/2.2.1/test16_freq_end2end.py:375: AssertionError 16:46:32 ____ TestTransportPCEFreqEndtoend.test_21_check_interface_roadm_c1_srg1_nmc ____ 16:46:32 16:46:32 self = 16:46:32 16:46:32 def test_21_check_interface_roadm_c1_srg1_nmc(self): 16:46:32 response = test_utils.check_node_attribute_request( 16:46:32 'ROADM-C1', 'interface', 'SRG1-PP1-TXRX-nmc-282:287') 16:46:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:46:32 E AssertionError: 409 != 200 16:46:32 16:46:32 transportpce_tests/2.2.1/test16_freq_end2end.py:398: AssertionError 16:46:32 ____ TestTransportPCEFreqEndtoend.test_22_check_openroadm_topo_ROADM_A1_SRG ____ 16:46:32 16:46:32 self = 16:46:32 16:46:32 def test_22_check_openroadm_topo_ROADM_A1_SRG(self): 16:46:32 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-A1-SRG3', 'config') 16:46:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:46:32 freq_map = base64.b64decode( 16:46:32 response['node']['org-openroadm-network-topology:srg-attributes']['avail-freq-maps'][0]['freq-map']) 16:46:32 freq_map_array = [int(x) for x in freq_map] 16:46:32 > self.assertEqual(freq_map_array[35], 129, "Bits 282 to 287 should not be available") 16:46:32 E AssertionError: 255 != 129 : Bits 282 to 287 should not be available 16:46:32 16:46:32 transportpce_tests/2.2.1/test16_freq_end2end.py:423: AssertionError 16:46:32 ____ TestTransportPCEFreqEndtoend.test_23_check_openroadm_topo_ROADM_A1_DEG ____ 16:46:32 16:46:32 self = 16:46:32 16:46:32 def test_23_check_openroadm_topo_ROADM_A1_DEG(self): 16:46:32 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-A1-DEG2', 'config') 16:46:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:46:32 freq_map = base64.b64decode( 16:46:32 response['node']['org-openroadm-network-topology:degree-attributes']['avail-freq-maps'][0]['freq-map']) 16:46:32 freq_map_array = [int(x) for x in freq_map] 16:46:32 > self.assertEqual(freq_map_array[35], 129, "Bits 282 to 287 should not be available") 16:46:32 E AssertionError: 255 != 129 : Bits 282 to 287 should not be available 16:46:32 16:46:32 transportpce_tests/2.2.1/test16_freq_end2end.py:447: AssertionError 16:46:32 ___ TestTransportPCEFreqEndtoend.test_24_check_openroadm_topo_ROADM_C1_DEG1 ____ 16:46:32 16:46:32 self = 16:46:32 16:46:32 def test_24_check_openroadm_topo_ROADM_C1_DEG1(self): 16:46:32 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-C1-DEG1', 'config') 16:46:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:46:32 freq_map = base64.b64decode( 16:46:32 response['node']['org-openroadm-network-topology:degree-attributes']['avail-freq-maps'][0]['freq-map']) 16:46:32 freq_map_array = [int(x) for x in freq_map] 16:46:32 > self.assertEqual(freq_map_array[35], 129, "Bits 282 to 287 should not be available") 16:46:32 E AssertionError: 255 != 129 : Bits 282 to 287 should not be available 16:46:32 16:46:32 transportpce_tests/2.2.1/test16_freq_end2end.py:471: AssertionError 16:46:32 ___ TestTransportPCEFreqEndtoend.test_25_check_openroadm_topo_ROADM_C1_SRG1 ____ 16:46:32 16:46:32 self = 16:46:32 16:46:32 def test_25_check_openroadm_topo_ROADM_C1_SRG1(self): 16:46:32 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-C1-SRG1', 'config') 16:46:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:46:32 freq_map = base64.b64decode( 16:46:32 response['node']['org-openroadm-network-topology:srg-attributes']['avail-freq-maps'][0]['freq-map']) 16:46:32 freq_map_array = [int(x) for x in freq_map] 16:46:32 > self.assertEqual(freq_map_array[35], 129, "Bits 282 to 287 should not be available") 16:46:32 E AssertionError: 255 != 129 : Bits 282 to 287 should not be available 16:46:32 16:46:32 transportpce_tests/2.2.1/test16_freq_end2end.py:495: AssertionError 16:46:32 _____ TestTransportPCEFreqEndtoend.test_35_check_openroadm_topo_ROADMA_SRG _____ 16:46:32 16:46:32 self = 16:46:32 16:46:32 def test_35_check_openroadm_topo_ROADMA_SRG(self): 16:46:32 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-A1-SRG3', 'config') 16:46:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:46:32 freq_map = base64.b64decode( 16:46:32 response['node']['org-openroadm-network-topology:srg-attributes']['avail-freq-maps'][0]['freq-map']) 16:46:32 freq_map_array = [int(x) for x in freq_map] 16:46:32 self.assertEqual(freq_map_array[35], 255, "Bits 282 to 287 should be available") 16:46:32 liste_tp = response['node']['ietf-network-topology:termination-point'] 16:46:32 for ele in liste_tp: 16:46:32 if ele['tp-id'] == 'SRG3-PP1-TXRX': 16:46:32 freq_map = base64.b64decode( 16:46:32 ele['org-openroadm-network-topology:pp-attributes']['avail-freq-maps'][0]['freq-map']) 16:46:32 freq_map_array = [int(x) for x in freq_map] 16:46:32 self.assertEqual(freq_map_array[35], 255, "Bits 282 to 287 should be available") 16:46:32 if ele['tp-id'] == 'SRG3-CP-TXRX': 16:46:32 freq_map = base64.b64decode( 16:46:32 > ele['org-openroadm-network-topology:cp-attributes']['avail-freq-maps'][0]['freq-map']) 16:46:32 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16:46:32 E KeyError: 'org-openroadm-network-topology:cp-attributes' 16:46:32 16:46:32 transportpce_tests/2.2.1/test16_freq_end2end.py:603: KeyError 16:46:32 _____ TestTransportPCEFreqEndtoend.test_36_check_openroadm_topo_ROADMA_DEG _____ 16:46:32 16:46:32 self = 16:46:32 16:46:32 def test_36_check_openroadm_topo_ROADMA_DEG(self): 16:46:32 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-A1-DEG2', 'config') 16:46:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:46:32 freq_map = base64.b64decode( 16:46:32 response['node']['org-openroadm-network-topology:degree-attributes']['avail-freq-maps'][0]['freq-map']) 16:46:32 freq_map_array = [int(x) for x in freq_map] 16:46:32 self.assertEqual(freq_map_array[35], 255, "Bits 282 to 287 should be available") 16:46:32 self.assertEqual(response['node']['ietf-network-topology:termination-point'][0]['tp-id'], 'DEG2-TTP-TXRX') 16:46:32 self.assertEqual(response['node']['ietf-network-topology:termination-point'][1]['tp-id'], 'DEG2-CTP-TXRX') 16:46:32 liste_tp = response['node']['ietf-network-topology:termination-point'] 16:46:32 for ele in liste_tp: 16:46:32 if ele['tp-id'] == 'DEG2-TTP-TXRX': 16:46:32 freq_map = base64.b64decode( 16:46:32 > ele['org-openroadm-network-topology:tx-ttp-attributes']['avail-freq-maps'][0]['freq-map']) 16:46:32 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16:46:32 E KeyError: 'org-openroadm-network-topology:tx-ttp-attributes' 16:46:32 16:46:32 transportpce_tests/2.2.1/test16_freq_end2end.py:622: KeyError 16:46:32 ___ TestTransportPCEFreqEndtoend.test_37_check_openroadm_topo_ROADM_C1_DEG1 ____ 16:46:32 16:46:32 self = 16:46:32 16:46:32 def test_37_check_openroadm_topo_ROADM_C1_DEG1(self): 16:46:32 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-C1-DEG1', 'config') 16:46:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:46:32 freq_map = base64.b64decode( 16:46:32 response['node']['org-openroadm-network-topology:degree-attributes']['avail-freq-maps'][0]['freq-map']) 16:46:32 freq_map_array = [int(x) for x in freq_map] 16:46:32 self.assertEqual(freq_map_array[35], 255, "Bits 282 to 287 should be available") 16:46:32 self.assertEqual(response['node']['ietf-network-topology:termination-point'][0]['tp-id'], 'DEG1-CTP-TXRX') 16:46:32 self.assertEqual(response['node']['ietf-network-topology:termination-point'][1]['tp-id'], 'DEG1-TTP-TXRX') 16:46:32 liste_tp = response['node']['ietf-network-topology:termination-point'] 16:46:32 for ele in liste_tp: 16:46:32 if ele['tp-id'] == 'DEG1-CTP-TXRX': 16:46:32 freq_map = base64.b64decode( 16:46:32 > ele['org-openroadm-network-topology:ctp-attributes']['avail-freq-maps'][0]['freq-map']) 16:46:32 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16:46:32 E KeyError: 'org-openroadm-network-topology:ctp-attributes' 16:46:32 16:46:32 transportpce_tests/2.2.1/test16_freq_end2end.py:644: KeyError 16:46:32 ___ TestTransportPCEFreqEndtoend.test_38_check_openroadm_topo_ROADM_C1_SRG1 ____ 16:46:32 16:46:32 self = 16:46:32 16:46:32 def test_38_check_openroadm_topo_ROADM_C1_SRG1(self): 16:46:32 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-C1-SRG1', 'config') 16:46:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:46:32 freq_map = base64.b64decode( 16:46:32 response['node']['org-openroadm-network-topology:srg-attributes']['avail-freq-maps'][0]['freq-map']) 16:46:32 freq_map_array = [int(x) for x in freq_map] 16:46:32 self.assertEqual(freq_map_array[35], 255, "Bits 282 to 287 should be available") 16:46:32 self.assertEqual(response['node']['ietf-network-topology:termination-point'][1]['tp-id'], 'SRG1-PP1-TXRX') 16:46:32 self.assertEqual(response['node']['ietf-network-topology:termination-point'][4]['tp-id'], 'SRG1-CP-TXRX') 16:46:32 liste_tp = response['node']['ietf-network-topology:termination-point'] 16:46:32 for ele in liste_tp: 16:46:32 if ele['tp-id'] == 'SRG1-PP1-TXRX': 16:46:32 freq_map = base64.b64decode( 16:46:32 > ele['org-openroadm-network-topology:pp-attributes']['avail-freq-maps'][0]['freq-map']) 16:46:32 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16:46:32 E KeyError: 'org-openroadm-network-topology:pp-attributes' 16:46:32 16:46:32 transportpce_tests/2.2.1/test16_freq_end2end.py:668: KeyError 16:46:32 =========================== short test summary info ============================ 16:46:32 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_15_get_other_service1 16:46:32 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_16_check_interface_roadma1_deg2_mc 16:46:32 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_17_check_interface_roadm_a1_deg2_nmc 16:46:32 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_18_check_interface_roadm_a1_srg3_nmc 16:46:32 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_19_check_interface_roadm_c1_deg1_mc 16:46:32 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_20_check_interface_roadm_c1_deg1_nmc 16:46:32 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_21_check_interface_roadm_c1_srg1_nmc 16:46:32 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_22_check_openroadm_topo_ROADM_A1_SRG 16:46:32 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_23_check_openroadm_topo_ROADM_A1_DEG 16:46:32 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_24_check_openroadm_topo_ROADM_C1_DEG1 16:46:32 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_25_check_openroadm_topo_ROADM_C1_SRG1 16:46:32 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_35_check_openroadm_topo_ROADMA_SRG 16:46:32 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_36_check_openroadm_topo_ROADMA_DEG 16:46:32 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_37_check_openroadm_topo_ROADM_C1_DEG1 16:46:32 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_38_check_openroadm_topo_ROADM_C1_SRG1 16:46:32 15 failed, 30 passed in 379.65s (0:06:19) 16:46:32 tests71: OK ✔ in 7 minutes 45.36 seconds 16:46:32 tests121: OK ✔ in 22 minutes 37.37 seconds 16:46:32 tests221: exit 1 (3288.37 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 2.2.1 pid=18116 16:46:33 tests221: FAIL ✖ in 54 minutes 56.45 seconds 16:46:33 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:46:40 tests_hybrid: freeze> python -m pip freeze --all 16:46:40 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.1,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:46:40 tests_hybrid: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh hybrid 16:46:40 using environment variables from ./karaf221.env 16:46:40 pytest -q transportpce_tests/hybrid/test01_device_change_notifications.py 16:47:21 ................................................... [100%] 16:49:08 51 passed in 147.79s (0:02:27) 16:49:08 pytest -q transportpce_tests/hybrid/test02_B100G_end2end.py 16:49:52 ........................................................................ [ 66%] 16:54:13 ..................................... [100%] 16:56:19 109 passed in 430.80s (0:07:10) 16:56:19 pytest -q transportpce_tests/hybrid/test03_autonomous_reroute.py 16:57:08 ..................................................... [100%] 17:00:41 53 passed in 261.39s (0:04:21) 17:00:41 buildcontroller: OK (135.33=setup[19.71]+cmd[115.62] seconds) 17:00:41 sims: OK (22.95=setup[18.20]+cmd[4.75] seconds) 17:00:41 build_karaf_tests121: OK (94.11=setup[10.26]+cmd[83.86] seconds) 17:00:41 testsPCE: FAIL code 1 (153.70=setup[66.40]+cmd[87.30] seconds) 17:00:41 tests121: OK (1357.37=setup[8.59]+cmd[1348.78] seconds) 17:00:41 build_karaf_tests221: OK (93.86=setup[10.62]+cmd[83.24] seconds) 17:00:41 tests_tapi: FAIL code 1 (761.29=setup[8.69]+cmd[752.60] seconds) 17:00:41 tests221: FAIL code 1 (3296.45=setup[8.08]+cmd[3288.37] seconds) 17:00:41 build_karaf_tests71: OK (93.87=setup[10.58]+cmd[83.28] seconds) 17:00:41 tests71: OK (465.36=setup[7.86]+cmd[457.51] seconds) 17:00:41 build_karaf_tests190: OK (93.39=setup[10.27]+cmd[83.11] seconds) 17:00:41 tests190: OK (387.16=setup[8.62]+cmd[378.54] seconds) 17:00:41 tests_hybrid: OK (848.77=setup[7.81]+cmd[840.96] seconds) 17:00:41 buildlighty: OK (44.31=setup[18.55]+cmd[25.76] seconds) 17:00:41 docs: OK (59.57=setup[56.75]+cmd[2.82] seconds) 17:00:41 docs-linkcheck: OK (60.27=setup[56.55]+cmd[3.72] seconds) 17:00:41 checkbashisms: OK (3.49=setup[1.91]+cmd[0.00,0.16,1.43] seconds) 17:00:41 pre-commit: FAIL code 1 (52.39=setup[4.75]+cmd[0.03,0.03,47.57] seconds) 17:00:41 pylint: FAIL code 1 (38.46=setup[14.18]+cmd[24.28] seconds) 17:00:41 evaluation failed :( (5289.71 seconds) 17:00:41 + tox_status=255 17:00:41 + echo '---> Completed tox runs' 17:00:41 ---> Completed tox runs 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/build_karaf_tests121/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=build_karaf_tests121 17:00:41 + cp -r .tox/build_karaf_tests121/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests121 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/build_karaf_tests190/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=build_karaf_tests190 17:00:41 + cp -r .tox/build_karaf_tests190/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests190 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/build_karaf_tests221/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=build_karaf_tests221 17:00:41 + cp -r .tox/build_karaf_tests221/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests221 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/build_karaf_tests71/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=build_karaf_tests71 17:00:41 + cp -r .tox/build_karaf_tests71/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests71 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/buildcontroller/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=buildcontroller 17:00:41 + cp -r .tox/buildcontroller/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/buildcontroller 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/buildlighty/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=buildlighty 17:00:41 + cp -r .tox/buildlighty/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/buildlighty 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/checkbashisms/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=checkbashisms 17:00:41 + cp -r .tox/checkbashisms/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/checkbashisms 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/docs-linkcheck/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=docs-linkcheck 17:00:41 + cp -r .tox/docs-linkcheck/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/docs-linkcheck 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/docs/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=docs 17:00:41 + cp -r .tox/docs/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/docs 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/pre-commit/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=pre-commit 17:00:41 + cp -r .tox/pre-commit/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/pre-commit 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/pylint/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=pylint 17:00:41 + cp -r .tox/pylint/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/pylint 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/sims/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=sims 17:00:41 + cp -r .tox/sims/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/sims 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/tests121/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=tests121 17:00:41 + cp -r .tox/tests121/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests121 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/tests190/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=tests190 17:00:41 + cp -r .tox/tests190/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests190 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/tests221/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=tests221 17:00:41 + cp -r .tox/tests221/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests221 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/tests71/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=tests71 17:00:41 + cp -r .tox/tests71/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests71 17:00:41 + for i in .tox/*/log 17:00:41 ++ echo .tox/testsPCE/log 17:00:41 ++ awk -F/ '{print $2}' 17:00:41 + tox_env=testsPCE 17:00:41 + cp -r .tox/testsPCE/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/testsPCE 17:00:42 + for i in .tox/*/log 17:00:42 ++ echo .tox/tests_hybrid/log 17:00:42 ++ awk -F/ '{print $2}' 17:00:42 + tox_env=tests_hybrid 17:00:42 + cp -r .tox/tests_hybrid/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests_hybrid 17:00:42 + for i in .tox/*/log 17:00:42 ++ echo .tox/tests_tapi/log 17:00:42 ++ awk -F/ '{print $2}' 17:00:42 + tox_env=tests_tapi 17:00:42 + cp -r .tox/tests_tapi/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests_tapi 17:00:42 + DOC_DIR=docs/_build/html 17:00:42 + [[ -d docs/_build/html ]] 17:00:42 + echo '---> Archiving generated docs' 17:00:42 ---> Archiving generated docs 17:00:42 + mv docs/_build/html /w/workspace/transportpce-tox-verify-transportpce-master/archives/docs 17:00:42 + echo '---> tox-run.sh ends' 17:00:42 ---> tox-run.sh ends 17:00:42 + test 255 -eq 0 17:00:42 + exit 255 17:00:42 ++ '[' 1 = 1 ']' 17:00:42 ++ '[' -x /usr/bin/clear_console ']' 17:00:42 ++ /usr/bin/clear_console -q 17:00:42 Build step 'Execute shell' marked build as failure 17:00:42 $ ssh-agent -k 17:00:42 unset SSH_AUTH_SOCK; 17:00:42 unset SSH_AGENT_PID; 17:00:42 echo Agent pid 1565 killed; 17:00:42 [ssh-agent] Stopped. 17:00:42 [PostBuildScript] - [INFO] Executing post build scripts. 17:00:42 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins3954259017193428583.sh 17:00:42 ---> sysstat.sh 17:00:42 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins3345377591787786508.sh 17:00:42 ---> package-listing.sh 17:00:42 ++ tr '[:upper:]' '[:lower:]' 17:00:42 ++ facter osfamily 17:00:43 + OS_FAMILY=debian 17:00:43 + workspace=/w/workspace/transportpce-tox-verify-transportpce-master 17:00:43 + START_PACKAGES=/tmp/packages_start.txt 17:00:43 + END_PACKAGES=/tmp/packages_end.txt 17:00:43 + DIFF_PACKAGES=/tmp/packages_diff.txt 17:00:43 + PACKAGES=/tmp/packages_start.txt 17:00:43 + '[' /w/workspace/transportpce-tox-verify-transportpce-master ']' 17:00:43 + PACKAGES=/tmp/packages_end.txt 17:00:43 + case "${OS_FAMILY}" in 17:00:43 + dpkg -l 17:00:43 + grep '^ii' 17:00:43 + '[' -f /tmp/packages_start.txt ']' 17:00:43 + '[' -f /tmp/packages_end.txt ']' 17:00:43 + diff /tmp/packages_start.txt /tmp/packages_end.txt 17:00:43 + '[' /w/workspace/transportpce-tox-verify-transportpce-master ']' 17:00:43 + mkdir -p /w/workspace/transportpce-tox-verify-transportpce-master/archives/ 17:00:43 + cp -f /tmp/packages_diff.txt /tmp/packages_end.txt /tmp/packages_start.txt /w/workspace/transportpce-tox-verify-transportpce-master/archives/ 17:00:43 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins17124893101078849697.sh 17:00:43 ---> capture-instance-metadata.sh 17:00:43 Setup pyenv: 17:00:43 system 17:00:43 3.8.20 17:00:43 3.9.20 17:00:43 3.10.15 17:00:43 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 17:00:43 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-Q7PH from file:/tmp/.os_lf_venv 17:00:43 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 17:00:43 lf-activate-venv(): INFO: Attempting to install with network-safe options... 17:00:45 lf-activate-venv(): INFO: Base packages installed successfully 17:00:45 lf-activate-venv(): INFO: Installing additional packages: lftools 17:01:00 lf-activate-venv(): INFO: Adding /tmp/venv-Q7PH/bin to PATH 17:01:00 INFO: Running in OpenStack, capturing instance metadata 17:01:00 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins15700063503112572144.sh 17:01:00 provisioning config files... 17:01:01 Could not find credentials [logs] for transportpce-tox-verify-transportpce-master #3668 17:01:01 copy managed file [jenkins-log-archives-settings] to file:/w/workspace/transportpce-tox-verify-transportpce-master@tmp/config13975957978998439006tmp 17:01:01 Regular expression run condition: Expression=[^.*logs-s3.*], Label=[odl-logs-s3-cloudfront-index] 17:01:01 Run condition [Regular expression match] enabling perform for step [Provide Configuration files] 17:01:01 provisioning config files... 17:01:01 copy managed file [jenkins-s3-log-ship] to file:/home/jenkins/.aws/credentials 17:01:01 [EnvInject] - Injecting environment variables from a build step. 17:01:01 [EnvInject] - Injecting as environment variables the properties content 17:01:01 SERVER_ID=logs 17:01:01 17:01:01 [EnvInject] - Variables injected successfully. 17:01:01 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins4281224863044617829.sh 17:01:01 ---> create-netrc.sh 17:01:01 WARN: Log server credential not found. 17:01:01 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins3244686249640148311.sh 17:01:01 ---> python-tools-install.sh 17:01:01 Setup pyenv: 17:01:01 system 17:01:01 3.8.20 17:01:01 3.9.20 17:01:01 3.10.15 17:01:01 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 17:01:01 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-Q7PH from file:/tmp/.os_lf_venv 17:01:01 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 17:01:01 lf-activate-venv(): INFO: Attempting to install with network-safe options... 17:01:03 lf-activate-venv(): INFO: Base packages installed successfully 17:01:03 lf-activate-venv(): INFO: Installing additional packages: lftools 17:01:13 lf-activate-venv(): INFO: Adding /tmp/venv-Q7PH/bin to PATH 17:01:13 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins18281340201483158572.sh 17:01:13 ---> sudo-logs.sh 17:01:13 Archiving 'sudo' log.. 17:01:14 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins9341056488454564494.sh 17:01:14 ---> job-cost.sh 17:01:14 Setup pyenv: 17:01:14 system 17:01:14 3.8.20 17:01:14 3.9.20 17:01:14 3.10.15 17:01:14 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 17:01:14 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-Q7PH from file:/tmp/.os_lf_venv 17:01:14 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 17:01:14 lf-activate-venv(): INFO: Attempting to install with network-safe options... 17:01:16 lf-activate-venv(): INFO: Base packages installed successfully 17:01:16 lf-activate-venv(): INFO: Installing additional packages: zipp==1.1.0 python-openstackclient urllib3~=1.26.15 17:01:23 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. 17:01:23 deprecated 1.2.18 requires wrapt<2,>=1.10, but you have wrapt 2.0.0 which is incompatible. 17:01:23 lf-activate-venv(): INFO: Adding /tmp/venv-Q7PH/bin to PATH 17:01:23 INFO: No Stack... 17:01:23 INFO: Retrieving Pricing Info for: v3-standard-4 17:01:23 INFO: Archiving Costs 17:01:23 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins14182979789741643733.sh 17:01:23 ---> logs-deploy.sh 17:01:23 Setup pyenv: 17:01:24 system 17:01:24 3.8.20 17:01:24 3.9.20 17:01:24 3.10.15 17:01:24 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 17:01:24 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-Q7PH from file:/tmp/.os_lf_venv 17:01:24 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 17:01:24 lf-activate-venv(): INFO: Attempting to install with network-safe options... 17:01:26 lf-activate-venv(): INFO: Base packages installed successfully 17:01:26 lf-activate-venv(): INFO: Installing additional packages: lftools urllib3~=1.26.15 17:01:37 lf-activate-venv(): INFO: Adding /tmp/venv-Q7PH/bin to PATH 17:01:37 WARNING: Nexus logging server not set 17:01:37 INFO: S3 path logs/releng/vex-yul-odl-jenkins-1/transportpce-tox-verify-transportpce-master/3668/ 17:01:37 INFO: archiving logs to S3 17:01:39 ---> uname -a: 17:01:39 Linux prd-ubuntu2204-docker-4c-16g-486 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux 17:01:39 17:01:39 17:01:39 ---> lscpu: 17:01:39 Architecture: x86_64 17:01:39 CPU op-mode(s): 32-bit, 64-bit 17:01:39 Address sizes: 40 bits physical, 48 bits virtual 17:01:39 Byte Order: Little Endian 17:01:39 CPU(s): 4 17:01:39 On-line CPU(s) list: 0-3 17:01:39 Vendor ID: AuthenticAMD 17:01:39 Model name: AMD EPYC-Rome Processor 17:01:39 CPU family: 23 17:01:39 Model: 49 17:01:39 Thread(s) per core: 1 17:01:39 Core(s) per socket: 1 17:01:39 Socket(s): 4 17:01:39 Stepping: 0 17:01:39 BogoMIPS: 5599.99 17:01:39 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 17:01:39 Virtualization: AMD-V 17:01:39 Hypervisor vendor: KVM 17:01:39 Virtualization type: full 17:01:39 L1d cache: 128 KiB (4 instances) 17:01:39 L1i cache: 128 KiB (4 instances) 17:01:39 L2 cache: 2 MiB (4 instances) 17:01:39 L3 cache: 64 MiB (4 instances) 17:01:39 NUMA node(s): 1 17:01:39 NUMA node0 CPU(s): 0-3 17:01:39 Vulnerability Gather data sampling: Not affected 17:01:39 Vulnerability Indirect target selection: Not affected 17:01:39 Vulnerability Itlb multihit: Not affected 17:01:39 Vulnerability L1tf: Not affected 17:01:39 Vulnerability Mds: Not affected 17:01:39 Vulnerability Meltdown: Not affected 17:01:39 Vulnerability Mmio stale data: Not affected 17:01:39 Vulnerability Reg file data sampling: Not affected 17:01:39 Vulnerability Retbleed: Mitigation; untrained return thunk; SMT disabled 17:01:39 Vulnerability Spec rstack overflow: Mitigation; SMT disabled 17:01:39 Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl and seccomp 17:01:39 Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization 17:01:39 Vulnerability Spectre v2: Mitigation; Retpolines; IBPB disabled; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI Not affected 17:01:39 Vulnerability Srbds: Not affected 17:01:39 Vulnerability Tsx async abort: Not affected 17:01:39 17:01:39 17:01:39 ---> nproc: 17:01:39 4 17:01:39 17:01:39 17:01:39 ---> df -h: 17:01:39 Filesystem Size Used Avail Use% Mounted on 17:01:39 tmpfs 1.6G 1.1M 1.6G 1% /run 17:01:39 /dev/vda1 78G 18G 61G 23% / 17:01:39 tmpfs 7.9G 0 7.9G 0% /dev/shm 17:01:39 tmpfs 5.0M 0 5.0M 0% /run/lock 17:01:39 /dev/vda15 105M 6.1M 99M 6% /boot/efi 17:01:39 tmpfs 1.6G 4.0K 1.6G 1% /run/user/1001 17:01:39 17:01:39 17:01:39 ---> free -m: 17:01:39 total used free shared buff/cache available 17:01:39 Mem: 15989 687 11179 3 4122 14959 17:01:39 Swap: 1023 1 1022 17:01:39 17:01:39 17:01:39 ---> ip addr: 17:01:39 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 17:01:39 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 17:01:39 inet 127.0.0.1/8 scope host lo 17:01:39 valid_lft forever preferred_lft forever 17:01:39 inet6 ::1/128 scope host 17:01:39 valid_lft forever preferred_lft forever 17:01:39 2: ens3: mtu 1458 qdisc mq state UP group default qlen 1000 17:01:39 link/ether fa:16:3e:5b:0a:92 brd ff:ff:ff:ff:ff:ff 17:01:39 altname enp0s3 17:01:39 inet 10.30.171.85/23 metric 100 brd 10.30.171.255 scope global dynamic ens3 17:01:39 valid_lft 80900sec preferred_lft 80900sec 17:01:39 inet6 fe80::f816:3eff:fe5b:a92/64 scope link 17:01:39 valid_lft forever preferred_lft forever 17:01:39 3: docker0: mtu 1458 qdisc noqueue state DOWN group default 17:01:39 link/ether ba:bf:b5:c9:fe:99 brd ff:ff:ff:ff:ff:ff 17:01:39 inet 10.250.0.254/24 brd 10.250.0.255 scope global docker0 17:01:39 valid_lft forever preferred_lft forever 17:01:39 17:01:39 17:01:39 ---> sar -b -r -n DEV: 17:01:39 Linux 5.15.0-153-generic (prd-ubuntu2204-docker-4c-16g-486) 10/20/25 _x86_64_ (4 CPU) 17:01:39 17:01:39 15:30:01 LINUX RESTART (4 CPU) 17:01:39 17:01:39 15:40:22 tps rtps wtps dtps bread/s bwrtn/s bdscd/s 17:01:39 15:50:25 57.98 27.78 28.62 1.58 314.97 1720.65 1303.30 17:01:39 16:00:01 23.63 0.03 22.45 1.16 0.96 856.92 1175.03 17:01:39 16:10:25 11.83 0.01 11.36 0.46 0.88 293.81 197.46 17:01:39 16:20:13 5.04 0.01 4.86 0.18 0.27 119.77 55.62 17:01:39 16:30:01 5.91 0.02 5.73 0.17 1.22 140.81 52.12 17:01:39 16:40:13 5.58 0.01 5.37 0.20 0.48 136.35 54.22 17:01:39 16:50:09 10.93 0.08 10.31 0.53 2.39 598.87 186.34 17:01:39 17:00:01 19.12 0.06 5.53 13.52 2.28 160.15 214180.37 17:01:39 Average: 17.50 3.53 11.76 2.21 40.78 502.68 26906.43 17:01:39 17:01:39 15:40:22 kbmemfree kbavail kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty 17:01:39 15:50:25 970548 4209256 11722992 71.60 263064 2975332 13031128 74.80 2200640 12636792 136 17:01:39 16:00:01 8055428 11411160 4523140 27.63 269220 3086120 5242828 30.09 2250568 5512120 5040 17:01:39 16:10:25 7999248 11381828 4554808 27.82 271044 3111152 5285548 30.34 2255524 5579260 156 17:01:39 16:20:13 7884160 11278540 4658064 28.45 271728 3122272 5370448 30.83 2256836 5684272 136 17:01:39 16:30:01 6488904 9896812 6038964 36.88 272240 3135284 6783956 38.94 2258980 7078676 312 17:01:39 16:40:13 11912168 15348296 589904 3.60 272784 3162960 1335016 7.66 2263724 1662036 13936 17:01:39 16:50:09 7919836 11466968 4469976 27.30 276612 3268504 5226700 30.00 2278220 5636060 92 17:01:39 17:00:01 6944916 10517736 5418356 33.09 277616 3293188 6071356 34.85 2295300 6573720 508 17:01:39 Average: 7271901 10688824 5247026 32.05 271788 3144352 6043372 34.69 2257474 6295367 2540 17:01:39 17:01:39 15:40:22 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil 17:01:39 15:50:25 lo 27.88 27.88 18.05 18.05 0.00 0.00 0.00 0.00 17:01:39 15:50:25 ens3 1.97 1.53 0.49 0.39 0.00 0.00 0.00 0.00 17:01:39 15:50:25 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:01:39 16:00:01 lo 40.75 40.75 15.47 15.47 0.00 0.00 0.00 0.00 17:01:39 16:00:01 ens3 1.71 1.60 0.42 0.40 0.00 0.00 0.00 0.00 17:01:39 16:00:01 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:01:39 16:10:25 lo 20.90 20.90 10.88 10.88 0.00 0.00 0.00 0.00 17:01:39 16:10:25 ens3 0.83 0.71 0.16 0.13 0.00 0.00 0.00 0.00 17:01:39 16:10:25 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:01:39 16:20:13 lo 25.01 25.01 9.25 9.25 0.00 0.00 0.00 0.00 17:01:39 16:20:13 ens3 1.03 0.61 0.34 0.24 0.00 0.00 0.00 0.00 17:01:39 16:20:13 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:01:39 16:30:01 lo 24.65 24.65 11.29 11.29 0.00 0.00 0.00 0.00 17:01:39 16:30:01 ens3 0.65 0.49 0.13 0.10 0.00 0.00 0.00 0.00 17:01:39 16:30:01 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:01:39 16:40:13 lo 17.48 17.48 10.30 10.30 0.00 0.00 0.00 0.00 17:01:39 16:40:13 ens3 0.76 0.55 0.19 0.14 0.00 0.00 0.00 0.00 17:01:39 16:40:13 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:01:39 16:50:09 lo 10.72 10.72 7.13 7.13 0.00 0.00 0.00 0.00 17:01:39 16:50:09 ens3 0.82 0.72 0.22 0.21 0.00 0.00 0.00 0.00 17:01:39 16:50:09 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:01:39 17:00:01 lo 31.45 31.45 12.41 12.41 0.00 0.00 0.00 0.00 17:01:39 17:00:01 ens3 0.70 0.62 0.16 0.13 0.00 0.00 0.00 0.00 17:01:39 17:00:01 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:01:39 Average: lo 24.74 24.74 11.83 11.83 0.00 0.00 0.00 0.00 17:01:39 Average: ens3 1.06 0.85 0.26 0.22 0.00 0.00 0.00 0.00 17:01:39 Average: docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:01:39 17:01:39 17:01:39 ---> sar -P ALL: 17:01:39 Linux 5.15.0-153-generic (prd-ubuntu2204-docker-4c-16g-486) 10/20/25 _x86_64_ (4 CPU) 17:01:39 17:01:39 15:30:01 LINUX RESTART (4 CPU) 17:01:39 17:01:39 15:40:22 CPU %user %nice %system %iowait %steal %idle 17:01:39 15:50:25 all 48.39 0.00 2.13 0.11 0.12 49.25 17:01:39 15:50:25 0 48.90 0.00 2.15 0.15 0.12 48.68 17:01:39 15:50:25 1 48.13 0.00 2.10 0.12 0.12 49.52 17:01:39 15:50:25 2 48.16 0.00 2.08 0.10 0.12 49.54 17:01:39 15:50:25 3 48.37 0.00 2.20 0.07 0.12 49.24 17:01:39 16:00:01 all 38.57 0.00 1.62 0.07 0.10 59.63 17:01:39 16:00:01 0 38.78 0.00 1.58 0.05 0.10 59.48 17:01:39 16:00:01 1 38.38 0.00 1.63 0.05 0.10 59.83 17:01:39 16:00:01 2 38.26 0.00 1.62 0.05 0.10 59.96 17:01:39 16:00:01 3 38.86 0.00 1.65 0.11 0.10 59.27 17:01:39 16:10:25 all 20.41 0.00 0.84 0.26 0.08 78.41 17:01:39 16:10:25 0 20.41 0.00 0.80 0.04 0.08 78.68 17:01:39 16:10:25 1 21.01 0.00 0.89 0.11 0.08 77.91 17:01:39 16:10:25 2 19.84 0.00 0.88 0.77 0.08 78.43 17:01:39 16:10:25 3 20.38 0.00 0.79 0.12 0.07 78.63 17:01:39 16:20:13 all 8.61 0.00 0.55 0.10 0.06 90.68 17:01:39 16:20:13 0 8.87 0.00 0.55 0.08 0.06 90.45 17:01:39 16:20:13 1 8.75 0.00 0.51 0.06 0.06 90.62 17:01:39 16:20:13 2 8.53 0.00 0.58 0.20 0.07 90.62 17:01:39 16:20:13 3 8.31 0.00 0.54 0.05 0.06 91.04 17:01:39 16:30:01 all 10.17 0.00 0.46 0.03 0.07 89.27 17:01:39 16:30:01 0 10.10 0.00 0.51 0.09 0.06 89.24 17:01:39 16:30:01 1 9.81 0.00 0.38 0.01 0.06 89.73 17:01:39 16:30:01 2 10.47 0.00 0.54 0.01 0.07 88.91 17:01:39 16:30:01 3 10.31 0.00 0.40 0.01 0.07 89.19 17:01:39 16:40:13 all 9.40 0.00 0.51 0.02 0.07 90.01 17:01:39 16:40:13 0 9.66 0.00 0.49 0.02 0.06 89.76 17:01:39 16:40:13 1 9.16 0.00 0.49 0.02 0.07 90.26 17:01:39 16:40:13 2 9.58 0.00 0.59 0.02 0.07 89.74 17:01:39 16:40:13 3 9.19 0.00 0.46 0.02 0.07 90.26 17:01:39 16:50:09 all 18.04 0.00 0.64 0.04 0.07 81.20 17:01:39 16:50:09 0 19.02 0.00 0.68 0.02 0.07 80.21 17:01:39 16:50:09 1 17.68 0.00 0.65 0.03 0.07 81.58 17:01:39 16:50:09 2 17.65 0.00 0.62 0.08 0.07 81.57 17:01:39 16:50:09 3 17.82 0.00 0.62 0.04 0.06 81.46 17:01:39 17:00:01 all 10.51 0.00 0.42 0.06 0.07 88.95 17:01:39 17:00:01 0 10.86 0.00 0.42 0.02 0.07 88.63 17:01:39 17:00:01 1 10.44 0.00 0.42 0.14 0.06 88.94 17:01:39 17:00:01 2 10.61 0.00 0.41 0.01 0.06 88.90 17:01:39 17:00:01 3 10.13 0.00 0.43 0.05 0.07 89.32 17:01:39 Average: all 20.49 0.00 0.90 0.09 0.08 78.45 17:01:39 Average: 0 20.79 0.00 0.90 0.06 0.08 78.18 17:01:39 Average: 1 20.40 0.00 0.88 0.07 0.08 78.56 17:01:39 Average: 2 20.36 0.00 0.92 0.16 0.08 78.48 17:01:39 Average: 3 20.39 0.00 0.89 0.06 0.08 78.58 17:01:39 17:01:39 17:01:39