16:26:39 Triggered by Gerrit: https://git.opendaylight.org/gerrit/c/transportpce/+/117008 16:26:39 Running as SYSTEM 16:26:39 [EnvInject] - Loading node environment variables. 16:26:39 Building remotely on prd-ubuntu2204-docker-4c-16g-3853 (ubuntu2204-docker-4c-16g) in workspace /w/workspace/transportpce-tox-verify-transportpce-master 16:26:41 [ssh-agent] Looking for ssh-agent implementation... 16:26:41 [ssh-agent] Exec ssh-agent (binary ssh-agent on a remote machine) 16:26:41 $ ssh-agent 16:26:41 SSH_AUTH_SOCK=/tmp/ssh-XXXXXXA9S9ht/agent.1557 16:26:41 SSH_AGENT_PID=1559 16:26:41 [ssh-agent] Started. 16:26:41 Running ssh-add (command line suppressed) 16:26:41 Identity added: /w/workspace/transportpce-tox-verify-transportpce-master@tmp/private_key_12222802307058350353.key (/w/workspace/transportpce-tox-verify-transportpce-master@tmp/private_key_12222802307058350353.key) 16:26:41 [ssh-agent] Using credentials jenkins (jenkins-ssh) 16:26:41 The recommended git tool is: NONE 16:26:44 using credential jenkins-ssh 16:26:44 Wiping out workspace first. 16:26:44 Cloning the remote Git repository 16:26:44 Cloning repository git://devvexx.opendaylight.org/mirror/transportpce 16:26:44 > git init /w/workspace/transportpce-tox-verify-transportpce-master # timeout=10 16:26:44 Fetching upstream changes from git://devvexx.opendaylight.org/mirror/transportpce 16:26:44 > git --version # timeout=10 16:26:44 > git --version # 'git version 2.34.1' 16:26:44 using GIT_SSH to set credentials jenkins-ssh 16:26:44 Verifying host key using known hosts file 16:26:44 You're using 'Known hosts file' strategy to verify ssh host keys, but your known_hosts file does not exist, please go to 'Manage Jenkins' -> 'Security' -> 'Git Host Key Verification Configuration' and configure host key verification. 16:26:44 > git fetch --tags --force --progress -- git://devvexx.opendaylight.org/mirror/transportpce +refs/heads/*:refs/remotes/origin/* # timeout=10 16:26:50 > git config remote.origin.url git://devvexx.opendaylight.org/mirror/transportpce # timeout=10 16:26:50 > git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10 16:26:51 > git config remote.origin.url git://devvexx.opendaylight.org/mirror/transportpce # timeout=10 16:26:51 Fetching upstream changes from git://devvexx.opendaylight.org/mirror/transportpce 16:26:51 using GIT_SSH to set credentials jenkins-ssh 16:26:51 Verifying host key using known hosts file 16:26:51 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. 16:26:51 > git fetch --tags --force --progress -- git://devvexx.opendaylight.org/mirror/transportpce refs/changes/08/117008/8 # timeout=10 16:26:51 > git rev-parse 207689cbd157e30e2b32d88baa5e16aed98989ec^{commit} # timeout=10 16:26:51 JENKINS-19022: warning: possible memory leak due to Git plugin usage; see: https://plugins.jenkins.io/git/#remove-git-plugin-buildsbybranch-builddata-script 16:26:51 Checking out Revision 207689cbd157e30e2b32d88baa5e16aed98989ec (refs/changes/08/117008/8) 16:26:51 > git config core.sparsecheckout # timeout=10 16:26:51 > git checkout -f 207689cbd157e30e2b32d88baa5e16aed98989ec # timeout=10 16:26:52 Commit message: "Consolidation of TAPI PCE & func tests" 16:26:52 > git rev-parse FETCH_HEAD^{commit} # timeout=10 16:26:52 > git rev-list --no-walk 786d7289e6539b69a9e46355975b981ac94048c4 # timeout=10 16:26:52 > git remote # timeout=10 16:26:52 > git submodule init # timeout=10 16:26:52 > git submodule sync # timeout=10 16:26:52 > git config --get remote.origin.url # timeout=10 16:26:52 > git submodule init # timeout=10 16:26:52 > git config -f .gitmodules --get-regexp ^submodule\.(.+)\.url # timeout=10 16:26:52 ERROR: No submodules found. 16:26:55 provisioning config files... 16:26:55 copy managed file [npmrc] to file:/home/jenkins/.npmrc 16:26:55 copy managed file [pipconf] to file:/home/jenkins/.config/pip/pip.conf 16:26:55 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins14151258737160544051.sh 16:26:55 ---> python-tools-install.sh 16:26:55 Setup pyenv: 16:26:55 * system (set by /opt/pyenv/version) 16:26:55 * 3.8.20 (set by /opt/pyenv/version) 16:26:55 * 3.9.20 (set by /opt/pyenv/version) 16:26:55 3.10.15 16:26:55 3.11.10 16:27:00 lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-eZ3k 16:27:00 lf-activate-venv(): INFO: Save venv in file: /tmp/.os_lf_venv 16:27:00 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 16:27:00 lf-activate-venv(): INFO: Attempting to install with network-safe options... 16:27:04 lf-activate-venv(): INFO: Base packages installed successfully 16:27:04 lf-activate-venv(): INFO: Installing additional packages: lftools 16:27:31 lf-activate-venv(): INFO: Adding /tmp/venv-eZ3k/bin to PATH 16:27:31 Generating Requirements File 16:27:52 ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts. 16:27:52 httplib2 0.31.0 requires pyparsing<4,>=3.0.4, but you have pyparsing 2.4.7 which is incompatible. 16:27:52 Python 3.11.10 16:27:52 pip 25.2 from /tmp/venv-eZ3k/lib/python3.11/site-packages/pip (python 3.11) 16:27:53 appdirs==1.4.4 16:27:53 argcomplete==3.6.2 16:27:53 aspy.yaml==1.3.0 16:27:53 attrs==25.4.0 16:27:53 autopage==0.5.2 16:27:53 beautifulsoup4==4.14.2 16:27:53 boto3==1.40.52 16:27:53 botocore==1.40.52 16:27:53 bs4==0.0.2 16:27:53 cachetools==6.2.1 16:27:53 certifi==2025.10.5 16:27:53 cffi==2.0.0 16:27:53 cfgv==3.4.0 16:27:53 chardet==5.2.0 16:27:53 charset-normalizer==3.4.4 16:27:53 click==8.3.0 16:27:53 cliff==4.11.0 16:27:53 cmd2==2.7.0 16:27:53 cryptography==3.3.2 16:27:53 debtcollector==3.0.0 16:27:53 decorator==5.2.1 16:27:53 defusedxml==0.7.1 16:27:53 Deprecated==1.2.18 16:27:53 distlib==0.4.0 16:27:53 dnspython==2.8.0 16:27:53 docker==7.1.0 16:27:53 dogpile.cache==1.5.0 16:27:53 durationpy==0.10 16:27:53 email-validator==2.3.0 16:27:53 filelock==3.20.0 16:27:53 future==1.0.0 16:27:53 gitdb==4.0.12 16:27:53 GitPython==3.1.45 16:27:53 google-auth==2.41.1 16:27:53 httplib2==0.31.0 16:27:53 identify==2.6.15 16:27:53 idna==3.11 16:27:53 importlib-resources==1.5.0 16:27:53 iso8601==2.1.0 16:27:53 Jinja2==3.1.6 16:27:53 jmespath==1.0.1 16:27:53 jsonpatch==1.33 16:27:53 jsonpointer==3.0.0 16:27:53 jsonschema==4.25.1 16:27:53 jsonschema-specifications==2025.9.1 16:27:53 keystoneauth1==5.12.0 16:27:53 kubernetes==34.1.0 16:27:53 lftools==0.37.15 16:27:53 lxml==6.0.2 16:27:53 markdown-it-py==4.0.0 16:27:53 MarkupSafe==3.0.3 16:27:53 mdurl==0.1.2 16:27:53 msgpack==1.1.2 16:27:53 multi_key_dict==2.0.3 16:27:53 munch==4.0.0 16:27:53 netaddr==1.3.0 16:27:53 niet==1.4.2 16:27:53 nodeenv==1.9.1 16:27:53 oauth2client==4.1.3 16:27:53 oauthlib==3.3.1 16:27:53 openstacksdk==4.7.1 16:27:53 os-service-types==1.8.0 16:27:53 osc-lib==4.2.0 16:27:53 oslo.config==10.0.0 16:27:53 oslo.context==6.1.0 16:27:53 oslo.i18n==6.6.0 16:27:53 oslo.log==7.2.1 16:27:53 oslo.serialization==5.8.0 16:27:53 oslo.utils==9.1.0 16:27:53 packaging==25.0 16:27:53 pbr==7.0.1 16:27:53 platformdirs==4.5.0 16:27:53 prettytable==3.16.0 16:27:53 psutil==7.1.0 16:27:53 pyasn1==0.6.1 16:27:53 pyasn1_modules==0.4.2 16:27:53 pycparser==2.23 16:27:53 pygerrit2==2.0.15 16:27:53 PyGithub==2.8.1 16:27:53 Pygments==2.19.2 16:27:53 PyJWT==2.10.1 16:27:53 PyNaCl==1.6.0 16:27:53 pyparsing==2.4.7 16:27:53 pyperclip==1.11.0 16:27:53 pyrsistent==0.20.0 16:27:53 python-cinderclient==9.8.0 16:27:53 python-dateutil==2.9.0.post0 16:27:53 python-heatclient==4.3.0 16:27:53 python-jenkins==1.8.3 16:27:53 python-keystoneclient==5.7.0 16:27:53 python-magnumclient==4.9.0 16:27:53 python-openstackclient==8.2.0 16:27:53 python-swiftclient==4.8.0 16:27:53 PyYAML==6.0.3 16:27:53 referencing==0.37.0 16:27:53 requests==2.32.5 16:27:53 requests-oauthlib==2.0.0 16:27:53 requestsexceptions==1.4.0 16:27:53 rfc3986==2.0.0 16:27:53 rich==14.2.0 16:27:53 rich-argparse==1.7.1 16:27:53 rpds-py==0.27.1 16:27:53 rsa==4.9.1 16:27:53 ruamel.yaml==0.18.15 16:27:53 ruamel.yaml.clib==0.2.14 16:27:53 s3transfer==0.14.0 16:27:53 simplejson==3.20.2 16:27:53 six==1.17.0 16:27:53 smmap==5.0.2 16:27:53 soupsieve==2.8 16:27:53 stevedore==5.5.0 16:27:53 tabulate==0.9.0 16:27:53 toml==0.10.2 16:27:53 tomlkit==0.13.3 16:27:53 tqdm==4.67.1 16:27:53 typing_extensions==4.15.0 16:27:53 tzdata==2025.2 16:27:53 urllib3==1.26.20 16:27:53 virtualenv==20.35.3 16:27:53 wcwidth==0.2.14 16:27:53 websocket-client==1.9.0 16:27:53 wrapt==1.17.3 16:27:53 xdg==6.0.0 16:27:53 xmltodict==1.0.2 16:27:53 yq==3.4.3 16:27:53 [EnvInject] - Injecting environment variables from a build step. 16:27:53 [EnvInject] - Injecting as environment variables the properties content 16:27:53 PYTHON=python3 16:27:53 16:27:53 [EnvInject] - Variables injected successfully. 16:27:53 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins2808698281970165763.sh 16:27:53 ---> tox-install.sh 16:27:53 + source /home/jenkins/lf-env.sh 16:27:53 + lf-activate-venv --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 16:27:53 ++ mktemp -d /tmp/venv-XXXX 16:27:53 + lf_venv=/tmp/venv-W1Qb 16:27:53 + local venv_file=/tmp/.os_lf_venv 16:27:53 + local python=python3 16:27:53 + local options 16:27:53 + local set_path=true 16:27:53 + local install_args= 16:27:53 ++ 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 16:27:53 + options=' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 16:27:53 + eval set -- ' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 16:27:53 ++ set -- --venv-file /tmp/.toxenv -- tox virtualenv urllib3~=1.26.15 16:27:53 + true 16:27:53 + case $1 in 16:27:53 + venv_file=/tmp/.toxenv 16:27:53 + shift 2 16:27:53 + true 16:27:53 + case $1 in 16:27:53 + shift 16:27:53 + break 16:27:53 + case $python in 16:27:53 + local pkg_list= 16:27:53 + [[ -d /opt/pyenv ]] 16:27:53 + echo 'Setup pyenv:' 16:27:53 Setup pyenv: 16:27:53 + export PYENV_ROOT=/opt/pyenv 16:27:53 + PYENV_ROOT=/opt/pyenv 16:27:53 + 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 16:27:53 + 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 16:27:53 + pyenv versions 16:27:53 system 16:27:53 3.8.20 16:27:53 3.9.20 16:27:53 3.10.15 16:27:53 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 16:27:53 + command -v pyenv 16:27:53 ++ pyenv init - --no-rehash 16:27:53 + eval 'PATH="$(bash --norc -ec '\''IFS=:; paths=($PATH); 16:27:53 for i in ${!paths[@]}; do 16:27:53 if [[ ${paths[i]} == "'\'''\''/opt/pyenv/shims'\'''\''" ]]; then unset '\''\'\'''\''paths[i]'\''\'\'''\''; 16:27:53 fi; done; 16:27:53 echo "${paths[*]}"'\'')" 16:27:53 export PATH="/opt/pyenv/shims:${PATH}" 16:27:53 export PYENV_SHELL=bash 16:27:53 source '\''/opt/pyenv/libexec/../completions/pyenv.bash'\'' 16:27:53 pyenv() { 16:27:53 local command 16:27:53 command="${1:-}" 16:27:53 if [ "$#" -gt 0 ]; then 16:27:53 shift 16:27:53 fi 16:27:53 16:27:53 case "$command" in 16:27:53 rehash|shell) 16:27:53 eval "$(pyenv "sh-$command" "$@")" 16:27:53 ;; 16:27:53 *) 16:27:53 command pyenv "$command" "$@" 16:27:53 ;; 16:27:53 esac 16:27:53 }' 16:27:53 +++ bash --norc -ec 'IFS=:; paths=($PATH); 16:27:53 for i in ${!paths[@]}; do 16:27:53 if [[ ${paths[i]} == "/opt/pyenv/shims" ]]; then unset '\''paths[i]'\''; 16:27:53 fi; done; 16:27:53 echo "${paths[*]}"' 16:27:53 ++ 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 16:27:53 ++ 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 16:27:53 ++ 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 16:27:53 ++ export PYENV_SHELL=bash 16:27:53 ++ PYENV_SHELL=bash 16:27:53 ++ source /opt/pyenv/libexec/../completions/pyenv.bash 16:27:53 +++ complete -F _pyenv pyenv 16:27:53 ++ lf-pyver python3 16:27:53 ++ local py_version_xy=python3 16:27:53 ++ local py_version_xyz= 16:27:53 ++ pyenv versions 16:27:53 ++ local command 16:27:53 ++ command=versions 16:27:53 ++ '[' 1 -gt 0 ']' 16:27:53 ++ shift 16:27:53 ++ case "$command" in 16:27:53 ++ command pyenv versions 16:27:53 ++ sed 's/^[ *]* //' 16:27:53 ++ awk '{ print $1 }' 16:27:53 ++ grep -E '^[0-9.]*[0-9]$' 16:27:53 ++ [[ ! -s /tmp/.pyenv_versions ]] 16:27:53 +++ grep '^3' /tmp/.pyenv_versions 16:27:53 +++ sort -V 16:27:53 +++ tail -n 1 16:27:53 ++ py_version_xyz=3.11.10 16:27:53 ++ [[ -z 3.11.10 ]] 16:27:53 ++ echo 3.11.10 16:27:53 ++ return 0 16:27:53 + pyenv local 3.11.10 16:27:53 + local command 16:27:53 + command=local 16:27:53 + '[' 2 -gt 0 ']' 16:27:53 + shift 16:27:53 + case "$command" in 16:27:53 + command pyenv local 3.11.10 16:27:53 + for arg in "$@" 16:27:53 + case $arg in 16:27:53 + pkg_list+='tox ' 16:27:53 + for arg in "$@" 16:27:53 + case $arg in 16:27:53 + pkg_list+='virtualenv ' 16:27:53 + for arg in "$@" 16:27:53 + case $arg in 16:27:53 + pkg_list+='urllib3~=1.26.15 ' 16:27:53 + [[ -f /tmp/.toxenv ]] 16:27:53 + [[ ! -f /tmp/.toxenv ]] 16:27:53 + [[ -n '' ]] 16:27:53 + python3 -m venv /tmp/venv-W1Qb 16:27:57 + echo 'lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-W1Qb' 16:27:57 lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-W1Qb 16:27:57 + echo /tmp/venv-W1Qb 16:27:57 + echo 'lf-activate-venv(): INFO: Save venv in file: /tmp/.toxenv' 16:27:57 lf-activate-venv(): INFO: Save venv in file: /tmp/.toxenv 16:27:57 + echo 'lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv)' 16:27:57 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 16:27:57 + local 'pip_opts=--upgrade --quiet' 16:27:57 + pip_opts='--upgrade --quiet --trusted-host pypi.org' 16:27:57 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org' 16:27:57 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org' 16:27:57 + [[ -n '' ]] 16:27:57 + [[ -n '' ]] 16:27:57 + echo 'lf-activate-venv(): INFO: Attempting to install with network-safe options...' 16:27:57 lf-activate-venv(): INFO: Attempting to install with network-safe options... 16:27:57 + /tmp/venv-W1Qb/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 16:28:01 + echo 'lf-activate-venv(): INFO: Base packages installed successfully' 16:28:01 lf-activate-venv(): INFO: Base packages installed successfully 16:28:01 + [[ -z tox virtualenv urllib3~=1.26.15 ]] 16:28:01 + echo 'lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 ' 16:28:01 lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 16:28:01 + /tmp/venv-W1Qb/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 16:28:03 + type python3 16:28:03 + true 16:28:03 + echo 'lf-activate-venv(): INFO: Adding /tmp/venv-W1Qb/bin to PATH' 16:28:03 lf-activate-venv(): INFO: Adding /tmp/venv-W1Qb/bin to PATH 16:28:03 + PATH=/tmp/venv-W1Qb/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 16:28:03 + return 0 16:28:03 + python3 --version 16:28:03 Python 3.11.10 16:28:03 + python3 -m pip --version 16:28:04 pip 25.2 from /tmp/venv-W1Qb/lib/python3.11/site-packages/pip (python 3.11) 16:28:04 + python3 -m pip freeze 16:28:04 cachetools==6.2.1 16:28:04 chardet==5.2.0 16:28:04 colorama==0.4.6 16:28:04 distlib==0.4.0 16:28:04 filelock==3.20.0 16:28:04 packaging==25.0 16:28:04 platformdirs==4.5.0 16:28:04 pluggy==1.6.0 16:28:04 pyproject-api==1.10.0 16:28:04 tox==4.31.0 16:28:04 urllib3==1.26.20 16:28:04 virtualenv==20.35.3 16:28:04 [transportpce-tox-verify-transportpce-master] $ /bin/sh -xe /tmp/jenkins10642286765648307381.sh 16:28:04 [EnvInject] - Injecting environment variables from a build step. 16:28:04 [EnvInject] - Injecting as environment variables the properties content 16:28:04 PARALLEL=True 16:28:04 16:28:04 [EnvInject] - Variables injected successfully. 16:28:04 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins1550034222567045019.sh 16:28:04 ---> tox-run.sh 16:28:04 + 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 16:28:04 + ARCHIVE_TOX_DIR=/w/workspace/transportpce-tox-verify-transportpce-master/archives/tox 16:28:04 + ARCHIVE_DOC_DIR=/w/workspace/transportpce-tox-verify-transportpce-master/archives/docs 16:28:04 + mkdir -p /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox 16:28:04 + cd /w/workspace/transportpce-tox-verify-transportpce-master/. 16:28:04 + source /home/jenkins/lf-env.sh 16:28:04 + lf-activate-venv --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 16:28:04 ++ mktemp -d /tmp/venv-XXXX 16:28:04 + lf_venv=/tmp/venv-NZU3 16:28:04 + local venv_file=/tmp/.os_lf_venv 16:28:04 + local python=python3 16:28:04 + local options 16:28:04 + local set_path=true 16:28:04 + local install_args= 16:28:04 ++ 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 16:28:04 + options=' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 16:28:04 + eval set -- ' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 16:28:04 ++ set -- --venv-file /tmp/.toxenv -- tox virtualenv urllib3~=1.26.15 16:28:04 + true 16:28:04 + case $1 in 16:28:04 + venv_file=/tmp/.toxenv 16:28:04 + shift 2 16:28:04 + true 16:28:04 + case $1 in 16:28:04 + shift 16:28:04 + break 16:28:04 + case $python in 16:28:04 + local pkg_list= 16:28:04 + [[ -d /opt/pyenv ]] 16:28:04 + echo 'Setup pyenv:' 16:28:04 Setup pyenv: 16:28:04 + export PYENV_ROOT=/opt/pyenv 16:28:04 + PYENV_ROOT=/opt/pyenv 16:28:04 + 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 16:28:04 + 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 16:28:04 + pyenv versions 16:28:04 system 16:28:04 3.8.20 16:28:04 3.9.20 16:28:04 3.10.15 16:28:04 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 16:28:04 + command -v pyenv 16:28:04 ++ pyenv init - --no-rehash 16:28:04 + eval 'PATH="$(bash --norc -ec '\''IFS=:; paths=($PATH); 16:28:04 for i in ${!paths[@]}; do 16:28:04 if [[ ${paths[i]} == "'\'''\''/opt/pyenv/shims'\'''\''" ]]; then unset '\''\'\'''\''paths[i]'\''\'\'''\''; 16:28:04 fi; done; 16:28:04 echo "${paths[*]}"'\'')" 16:28:04 export PATH="/opt/pyenv/shims:${PATH}" 16:28:04 export PYENV_SHELL=bash 16:28:04 source '\''/opt/pyenv/libexec/../completions/pyenv.bash'\'' 16:28:04 pyenv() { 16:28:04 local command 16:28:04 command="${1:-}" 16:28:04 if [ "$#" -gt 0 ]; then 16:28:04 shift 16:28:04 fi 16:28:04 16:28:04 case "$command" in 16:28:04 rehash|shell) 16:28:04 eval "$(pyenv "sh-$command" "$@")" 16:28:04 ;; 16:28:04 *) 16:28:04 command pyenv "$command" "$@" 16:28:04 ;; 16:28:04 esac 16:28:04 }' 16:28:04 +++ bash --norc -ec 'IFS=:; paths=($PATH); 16:28:04 for i in ${!paths[@]}; do 16:28:04 if [[ ${paths[i]} == "/opt/pyenv/shims" ]]; then unset '\''paths[i]'\''; 16:28:04 fi; done; 16:28:04 echo "${paths[*]}"' 16:28:04 ++ 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 16:28:04 ++ 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 16:28:04 ++ 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 16:28:04 ++ export PYENV_SHELL=bash 16:28:04 ++ PYENV_SHELL=bash 16:28:04 ++ source /opt/pyenv/libexec/../completions/pyenv.bash 16:28:04 +++ complete -F _pyenv pyenv 16:28:04 ++ lf-pyver python3 16:28:04 ++ local py_version_xy=python3 16:28:04 ++ local py_version_xyz= 16:28:04 ++ pyenv versions 16:28:04 ++ local command 16:28:04 ++ sed 's/^[ *]* //' 16:28:04 ++ command=versions 16:28:04 ++ '[' 1 -gt 0 ']' 16:28:04 ++ shift 16:28:04 ++ case "$command" in 16:28:04 ++ command pyenv versions 16:28:04 ++ awk '{ print $1 }' 16:28:04 ++ grep -E '^[0-9.]*[0-9]$' 16:28:04 ++ [[ ! -s /tmp/.pyenv_versions ]] 16:28:04 +++ grep '^3' /tmp/.pyenv_versions 16:28:04 +++ sort -V 16:28:04 +++ tail -n 1 16:28:04 ++ py_version_xyz=3.11.10 16:28:04 ++ [[ -z 3.11.10 ]] 16:28:04 ++ echo 3.11.10 16:28:04 ++ return 0 16:28:04 + pyenv local 3.11.10 16:28:04 + local command 16:28:04 + command=local 16:28:04 + '[' 2 -gt 0 ']' 16:28:04 + shift 16:28:04 + case "$command" in 16:28:04 + command pyenv local 3.11.10 16:28:04 + for arg in "$@" 16:28:04 + case $arg in 16:28:04 + pkg_list+='tox ' 16:28:04 + for arg in "$@" 16:28:04 + case $arg in 16:28:04 + pkg_list+='virtualenv ' 16:28:04 + for arg in "$@" 16:28:04 + case $arg in 16:28:04 + pkg_list+='urllib3~=1.26.15 ' 16:28:04 + [[ -f /tmp/.toxenv ]] 16:28:04 ++ cat /tmp/.toxenv 16:28:04 + lf_venv=/tmp/venv-W1Qb 16:28:04 + echo 'lf-activate-venv(): INFO: Reuse venv:/tmp/venv-W1Qb from' file:/tmp/.toxenv 16:28:04 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-W1Qb from file:/tmp/.toxenv 16:28:04 + echo 'lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv)' 16:28:04 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 16:28:04 + local 'pip_opts=--upgrade --quiet' 16:28:04 + pip_opts='--upgrade --quiet --trusted-host pypi.org' 16:28:04 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org' 16:28:04 + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org' 16:28:04 + [[ -n '' ]] 16:28:04 + [[ -n '' ]] 16:28:04 + echo 'lf-activate-venv(): INFO: Attempting to install with network-safe options...' 16:28:04 lf-activate-venv(): INFO: Attempting to install with network-safe options... 16:28:04 + /tmp/venv-W1Qb/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 16:28:05 + echo 'lf-activate-venv(): INFO: Base packages installed successfully' 16:28:05 lf-activate-venv(): INFO: Base packages installed successfully 16:28:05 + [[ -z tox virtualenv urllib3~=1.26.15 ]] 16:28:05 + echo 'lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 ' 16:28:05 lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 16:28:05 + /tmp/venv-W1Qb/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 16:28:06 + type python3 16:28:06 + true 16:28:06 + echo 'lf-activate-venv(): INFO: Adding /tmp/venv-W1Qb/bin to PATH' 16:28:06 lf-activate-venv(): INFO: Adding /tmp/venv-W1Qb/bin to PATH 16:28:06 + PATH=/tmp/venv-W1Qb/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 16:28:06 + return 0 16:28:06 + [[ -d /opt/pyenv ]] 16:28:06 + echo '---> Setting up pyenv' 16:28:06 ---> Setting up pyenv 16:28:06 + export PYENV_ROOT=/opt/pyenv 16:28:06 + PYENV_ROOT=/opt/pyenv 16:28:06 + export PATH=/opt/pyenv/bin:/tmp/venv-W1Qb/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 16:28:06 + PATH=/opt/pyenv/bin:/tmp/venv-W1Qb/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 16:28:06 ++ pwd 16:28:06 + PYTHONPATH=/w/workspace/transportpce-tox-verify-transportpce-master 16:28:06 + export PYTHONPATH 16:28:06 + export TOX_TESTENV_PASSENV=PYTHONPATH 16:28:06 + TOX_TESTENV_PASSENV=PYTHONPATH 16:28:06 + tox --version 16:28:07 4.31.0 from /tmp/venv-W1Qb/lib/python3.11/site-packages/tox/__init__.py 16:28:07 + PARALLEL=True 16:28:07 + TOX_OPTIONS_LIST= 16:28:07 + [[ -n '' ]] 16:28:07 + case ${PARALLEL,,} in 16:28:07 + TOX_OPTIONS_LIST=' --parallel auto --parallel-live' 16:28:07 + tox --parallel auto --parallel-live 16:28:07 + tee -a /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tox.log 16:28:08 docs-linkcheck: install_deps> python -I -m pip install -r docs/requirements.txt 16:28:08 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 16:28:08 docs: install_deps> python -I -m pip install -r docs/requirements.txt 16:28:08 checkbashisms: freeze> python -m pip freeze --all 16:28:09 checkbashisms: pip==25.2,setuptools==80.9.0 16:28:09 checkbashisms: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./fixCIcentOS8reposMirrors.sh 16:28:09 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)' 16:28:09 checkbashisms: commands[2] /w/workspace/transportpce-tox-verify-transportpce-master/tests> find . -not -path '*/\.*' -name '*.sh' -exec checkbashisms -f '{}' + 16:28:11 checkbashisms: OK ✔ in 3.38 seconds 16:28:11 pre-commit: install_deps> python -I -m pip install pre-commit 16:28:13 pre-commit: freeze> python -m pip freeze --all 16:28:13 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 16:28:13 pre-commit: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./fixCIcentOS8reposMirrors.sh 16:28:13 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)' 16:28:13 /usr/bin/cpan 16:28:13 pre-commit: commands[2] /w/workspace/transportpce-tox-verify-transportpce-master/tests> pre-commit run --all-files --show-diff-on-failure 16:28:13 [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. 16:28:13 [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. 16:28:13 [INFO] Initializing environment for https://github.com/pre-commit/pre-commit-hooks. 16:28:14 [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. 16:28:14 [INFO] Initializing environment for https://github.com/jorisroovers/gitlint. 16:28:14 [INFO] Initializing environment for https://github.com/jorisroovers/gitlint:./gitlint-core[trusted-deps]. 16:28:15 [INFO] Initializing environment for https://github.com/Lucas-C/pre-commit-hooks. 16:28:15 [INFO] Initializing environment for https://github.com/pre-commit/mirrors-autopep8. 16:28:15 [INFO] Initializing environment for https://github.com/perltidy/perltidy. 16:28:15 buildcontroller: freeze> python -m pip freeze --all 16:28:16 buildcontroller: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.2,dict2xml==1.7.7,idna==3.11,iniconfig==2.1.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.0,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:28:16 buildcontroller: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_controller.sh 16:28:16 + update-java-alternatives -l 16:28:16 java-1.11.0-openjdk-amd64 1111 /usr/lib/jvm/java-1.11.0-openjdk-amd64 16:28:16 java-1.17.0-openjdk-amd64 1711 /usr/lib/jvm/java-1.17.0-openjdk-amd64 16:28:16 java-1.21.0-openjdk-amd64 2111 /usr/lib/jvm/java-1.21.0-openjdk-amd64 16:28:16 + sudo update-java-alternatives -s java-1.21.0-openjdk-amd64 16:28:16 update-alternatives: error: no alternatives for jaotc 16:28:16 update-alternatives: error: no alternatives for rmic 16:28:16 [INFO] Installing environment for https://github.com/pre-commit/pre-commit-hooks. 16:28:16 [INFO] Once installed this environment will be reused. 16:28:16 [INFO] This may take a few minutes... 16:28:16 + sed -n ;s/.* version "\(.*\)\.\(.*\)\..*".*$/\1/p; 16:28:16 + java -version 16:28:16 + JAVA_VER=21 16:28:16 + echo 21 16:28:16 21 16:28:16 + javac -version 16:28:16 + sed -n ;s/javac \(.*\)\.\(.*\)\..*.*$/\1/p; 16:28:16 + JAVAC_VER=21 16:28:16 + echo 21 16:28:16 21 16:28:16 ok, java is 21 or newer 16:28:16 + [ 21 -ge 21 ] 16:28:16 + [ 21 -ge 21 ] 16:28:16 + echo ok, java is 21 or newer 16:28:16 + wget -nv https://dlcdn.apache.org/maven/maven-3/3.9.11/binaries/apache-maven-3.9.11-bin.tar.gz -P /tmp 16:28:17 2025-10-15 16:28:17 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] 16:28:17 + sudo mkdir -p /opt 16:28:17 + sudo tar xf /tmp/apache-maven-3.9.11-bin.tar.gz -C /opt 16:28:17 + sudo ln -s /opt/apache-maven-3.9.11 /opt/maven 16:28:17 + sudo ln -s /opt/maven/bin/mvn /usr/bin/mvn 16:28:17 + mvn --version 16:28:18 Apache Maven 3.9.11 (3e54c93a704957b63ee3494413a2b544fd3d825b) 16:28:18 Maven home: /opt/maven 16:28:18 Java version: 21.0.8, vendor: Ubuntu, runtime: /usr/lib/jvm/java-21-openjdk-amd64 16:28:18 Default locale: en, platform encoding: UTF-8 16:28:18 OS name: "linux", version: "5.15.0-153-generic", arch: "amd64", family: "unix" 16:28:18 NOTE: Picked up JDK_JAVA_OPTIONS: 16:28:18 --add-opens=java.base/java.io=ALL-UNNAMED 16:28:18 --add-opens=java.base/java.lang=ALL-UNNAMED 16:28:18 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 16:28:18 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 16:28:18 --add-opens=java.base/java.net=ALL-UNNAMED 16:28:18 --add-opens=java.base/java.nio=ALL-UNNAMED 16:28:18 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 16:28:18 --add-opens=java.base/java.nio.file=ALL-UNNAMED 16:28:18 --add-opens=java.base/java.util=ALL-UNNAMED 16:28:18 --add-opens=java.base/java.util.jar=ALL-UNNAMED 16:28:18 --add-opens=java.base/java.util.stream=ALL-UNNAMED 16:28:18 --add-opens=java.base/java.util.zip=ALL-UNNAMED 16:28:18 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 16:28:18 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 16:28:18 -Xlog:disable 16:28:22 [INFO] Installing environment for https://github.com/Lucas-C/pre-commit-hooks. 16:28:22 [INFO] Once installed this environment will be reused. 16:28:22 [INFO] This may take a few minutes... 16:28:30 [INFO] Installing environment for https://github.com/pre-commit/mirrors-autopep8. 16:28:30 [INFO] Once installed this environment will be reused. 16:28:30 [INFO] This may take a few minutes... 16:28:33 docs-linkcheck: freeze> python -m pip freeze --all 16:28:33 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==11.3.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 16:28:33 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 16:28:34 [INFO] Installing environment for https://github.com/perltidy/perltidy. 16:28:34 [INFO] Once installed this environment will be reused. 16:28:34 [INFO] This may take a few minutes... 16:28:35 docs: freeze> python -m pip freeze --all 16:28:35 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==11.3.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 16:28:35 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 16:28:37 docs-linkcheck: OK ✔ in 30.25 seconds 16:28:37 pylint: install_deps> python -I -m pip install 'pylint>=2.6.0' 16:28:42 docs: OK ✔ in 30.67 seconds 16:28:42 pylint: freeze> python -m pip freeze --all 16:28: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.1,setuptools==80.9.0,tomlkit==0.13.3 16:28: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}$' '{}' + 16:28:46 trim trailing whitespace.................................................Failed 16:28:46 - hook id: trailing-whitespace 16:28:46 - exit code: 1 16:28:46 - files were modified by this hook 16:28:46 16:28:46 Fixing tests/transportpce_tests/pce/test05_pce_tapi.py 16:28:46 Fixing tests/transportpce_tests/common/test_utils_generate_tapi_topo.py 16:28:46 16:28:46 Tabs remover.............................................................Passed 16:28:47 autopep8.................................................................Failed 16:28:52 - hook id: autopep8 16:28:52 - exit code: 1 16:28:52 - files were modified by this hook 16:28:52 16:28:52 Traceback (most recent call last): 16:28:52 File "/home/jenkins/.cache/pre-commit/repo46q3e1cl/py_env-python3.11/bin/autopep8", line 7, in 16:28:52 sys.exit(main()) 16:28:52 ^^^^^^ 16:28:52 File "/home/jenkins/.cache/pre-commit/repo46q3e1cl/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 4543, in main 16:28:52 results = fix_multiple_files(args.files, args, sys.stdout) 16:28:52 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16:28:52 File "/home/jenkins/.cache/pre-commit/repo46q3e1cl/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 4438, in fix_multiple_files 16:28:52 ret = _fix_file((name, options, output)) 16:28:52 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16:28:52 File "/home/jenkins/.cache/pre-commit/repo46q3e1cl/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 4408, in _fix_file 16:28:52 return fix_file(*parameters) 16:28:52 ^^^^^^^^^^^^^^^^^^^^^ 16:28:52 File "/home/jenkins/.cache/pre-commit/repo46q3e1cl/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 3604, in fix_file 16:28:52 fixed_source = fix_lines(fixed_source, options, filename=filename) 16:28:52 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16:28:52 File "/home/jenkins/.cache/pre-commit/repo46q3e1cl/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 3584, in fix_lines 16:28:52 fixed_source = fix.fix() 16:28:52 ^^^^^^^^^ 16:28:52 File "/home/jenkins/.cache/pre-commit/repo46q3e1cl/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 618, in fix 16:28:52 self._fix_source(filter_results(source=''.join(self.source), 16:28:52 File "/home/jenkins/.cache/pre-commit/repo46q3e1cl/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 562, in _fix_source 16:28:52 modified_lines = fix(result) 16:28:52 ^^^^^^^^^^^ 16:28:52 File "/home/jenkins/.cache/pre-commit/repo46q3e1cl/py_env-python3.11/lib/python3.11/site-packages/autopep8.py", line 766, in fix_e225 16:28:52 pycodestyle.missing_whitespace_around_operator(fixed, ts)) 16:28:52 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16:28:52 AttributeError: module 'pycodestyle' has no attribute 'missing_whitespace_around_operator'. Did you mean: 'whitespace_around_operator'? 16:28:52 16:28:53 perltidy.................................................................Passed 16:28:53 pre-commit hook(s) made changes. 16:28:53 If you are seeing this message in CI, reproduce locally with: `pre-commit run --all-files`. 16:28:53 To run `pre-commit` as part of git workflow, use `pre-commit install`. 16:28:53 All changes made by hooks: 16:28:53 diff --git a/tests/transportpce_tests/common/test_utils_generate_tapi_topo.py b/tests/transportpce_tests/common/test_utils_generate_tapi_topo.py 16:28:53 index 375b1b4ec..40d816398 100644 16:28:53 --- a/tests/transportpce_tests/common/test_utils_generate_tapi_topo.py 16:28:53 +++ b/tests/transportpce_tests/common/test_utils_generate_tapi_topo.py 16:28:53 @@ -24,6 +24,7 @@ sys.path.append('transportpce_tests/common/') 16:28:53 import test_utils # nopep8 16:28:53 # pylint: disable=too-few-public-methods 16:28:53 16:28:53 + 16:28:53 class UuidServices: 16:28:53 def __init__(self): 16:28:53 # pylint: disable=invalid-name 16:28:53 @@ -31,6 +32,7 @@ class UuidServices: 16:28:53 self.odu = None 16:28:53 self.dsr = None 16:28:53 16:28:53 + 16:28:53 class UuidServices2: 16:28:53 def __init__(self): 16:28:53 # pylint: disable=invalid-name 16:28:53 @@ -38,6 +40,7 @@ class UuidServices2: 16:28:53 self.odu = None 16:28:53 self.dsr = None 16:28:53 16:28:53 + 16:28:53 class UuidServices3: 16:28:53 def __init__(self): 16:28:53 # pylint: disable=invalid-name 16:28:53 @@ -47,6 +50,7 @@ class UuidServices3: 16:28:53 16:28:53 # class TransportPCEtesting(unittest.TestCase): 16:28:53 16:28:53 + 16:28:53 processes = None 16:28:53 WAITING = 20 # nominal value is 300 16:28:53 NODE_VERSION = '2.2.1' 16:28:53 @@ -56,6 +60,7 @@ uuid_services3 = UuidServices3() 16:28:53 del_serv_input_data = {"uuid": "TBD"} 16:28:53 tapi_topo = {"topology-id": "TBD"} 16:28:53 16:28:53 + 16:28:53 def initSimulators(): 16:28:53 print("Entering TestUtils setupClass starting simulators") 16:28:53 print("Node version is {}".format(NODE_VERSION)) 16:28:53 @@ -66,8 +71,9 @@ def initSimulators(): 16:28:53 ('xpdrc', NODE_VERSION), 16:28:53 ('spdrc', NODE_VERSION)]) 16:28:53 16:28:53 + 16:28:53 def connect_xpdrs(): 16:28:53 - 16:28:53 + 16:28:53 print("Connecting SPDRA") 16:28:53 response = test_utils.mount_device("SPDR-SA1", ('spdra', NODE_VERSION)) 16:28:53 time.sleep(2) 16:28:53 @@ -81,6 +87,7 @@ def connect_xpdrs(): 16:28:53 response = test_utils.mount_device("XPDR-C1", ('xpdrc', NODE_VERSION)) 16:28:53 time.sleep(2) 16:28:53 16:28:53 + 16:28:53 def connect_rdms(): 16:28:53 print("Connecting ROADMA") 16:28:53 response = test_utils.mount_device("ROADM-A1", ('roadma', NODE_VERSION)) 16:28:53 @@ -93,6 +100,7 @@ def connect_rdms(): 16:28:53 print("Connecting ROADMC failed") 16:28:53 time.sleep(2) 16:28:53 16:28:53 + 16:28:53 def interconnect_roadm_and_xpdr(): 16:28:53 response = test_utils.transportpce_api_rpc_request( 16:28:53 'transportpce-networkutils', 'init-xpdr-rdm-links', 16:28:53 @@ -295,6 +303,7 @@ def interconnect_roadm_and_xpdr(): 16:28:53 print("Connection from ROADMC1 to SPDRSC1-X2 succeeded") 16:28:53 time.sleep(2) 16:28:53 16:28:53 + 16:28:53 def add_omsAttributes_to_ROADM2ROADM_links(): 16:28:53 # Config ROADMA-ROADMC oms-attributes 16:28:53 data = {"span": { 16:28:53 @@ -331,6 +340,7 @@ def add_omsAttributes_to_ROADM2ROADM_links(): 16:28:53 else: 16:28:53 print("OMS attributes added on link ROADMC-ROADMA") 16:28:53 16:28:53 + 16:28:53 def create_services_on_infra(self): 16:28:53 create_connectivity_service_PhotonicMedia(self) 16:28:53 get_service_PhotonicMedia(self) 16:28:53 @@ -345,6 +355,7 @@ def create_services_on_infra(self): 16:28:53 create_connectivity_service_DSR(self) 16:28:53 get_service_DSR(self) 16:28:53 16:28:53 + 16:28:53 def create_connectivity_service_PhotonicMedia(self): 16:28:53 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.sAOTS 16:28:53 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.sZOTS 16:28:53 @@ -371,14 +382,15 @@ def create_connectivity_service_PhotonicMedia(self): 16:28:53 'value': 'SPDR-SA1-XPDR1'} 16:28:53 16:28:53 tpcetest.assertDictEqual(dict(input_dict_1, **response['output']['service']), 16:28:53 - response['output']['service']) 16:28:53 + response['output']['service']) 16:28:53 tpcetest.assertDictEqual(dict(input_dict_2, **response['output']['service']['end-point'][0]['name'][0]), 16:28:53 - response['output']['service']['end-point'][0]['name'][0]) 16:28:53 + response['output']['service']['end-point'][0]['name'][0]) 16:28:53 tpcetest.assertDictEqual(dict(input_dict_3, **response['output']['service']['end-point'][1]['name'][0]), 16:28:53 - response['output']['service']['end-point'][1]['name'][0]) 16:28:53 + response['output']['service']['end-point'][1]['name'][0]) 16:28:53 # If the gate fails is because of the waiting time not being enough 16:28:53 # time.sleep(self.WAITING) 16:28:53 16:28:53 + 16:28:53 def get_service_PhotonicMedia(self): 16:28:53 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services.pm)) 16:28:53 print("getServiceResponse Service1 PhotonicMedia: {}".format(response)) 16:28:53 @@ -389,6 +401,7 @@ def get_service_PhotonicMedia(self): 16:28:53 tpcetest.assertEqual(response['services'][0]['lifecycle-state'], 'planned') 16:28:53 time.sleep(1) 16:28:53 16:28:53 + 16:28:53 def create_connectivity_service2_PhotonicMedia(self): 16:28:53 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.s2AOTS 16:28:53 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.s2ZOTS 16:28:53 @@ -416,14 +429,15 @@ def create_connectivity_service2_PhotonicMedia(self): 16:28:53 'value': 'SPDR-SA1-XPDR2'} 16:28:53 16:28:53 tpcetest.assertDictEqual(dict(input_dict_1, **response['output']['service']), 16:28:53 - response['output']['service']) 16:28:53 + response['output']['service']) 16:28:53 tpcetest.assertDictEqual(dict(input_dict_2, **response['output']['service']['end-point'][0]['name'][0]), 16:28:53 - response['output']['service']['end-point'][0]['name'][0]) 16:28:53 + response['output']['service']['end-point'][0]['name'][0]) 16:28:53 tpcetest.assertDictEqual(dict(input_dict_3, **response['output']['service']['end-point'][1]['name'][0]), 16:28:53 - response['output']['service']['end-point'][1]['name'][0]) 16:28:53 + response['output']['service']['end-point'][1]['name'][0]) 16:28:53 # If the gate fails is because of the waiting time not being enough 16:28:53 # time.sleep(self.WAITING) 16:28:53 16:28:53 + 16:28:53 def get_service2_PhotonicMedia(self): 16:28:53 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services2.pm)) 16:28:53 print("getServiceResponse Service2 PhotonicMedia: {}".format(response)) 16:28:53 @@ -434,6 +448,7 @@ def get_service2_PhotonicMedia(self): 16:28:53 tpcetest.assertEqual(response['services'][0]['lifecycle-state'], 'planned') 16:28:53 time.sleep(1) 16:28:53 16:28:53 + 16:28:53 def create_connectivity_service3_PhotonicMedia(self): 16:28:53 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.s3AOTS 16:28:53 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.s3ZOTS 16:28:53 @@ -461,14 +476,15 @@ def create_connectivity_service3_PhotonicMedia(self): 16:28:53 'value': 'SPDR-SA1-XPDR3'} 16:28:53 16:28:53 tpcetest.assertDictEqual(dict(input_dict_1, **response['output']['service']), 16:28:53 - response['output']['service']) 16:28:53 + response['output']['service']) 16:28:53 tpcetest.assertDictEqual(dict(input_dict_2, **response['output']['service']['end-point'][0]['name'][0]), 16:28:53 - response['output']['service']['end-point'][0]['name'][0]) 16:28:53 + response['output']['service']['end-point'][0]['name'][0]) 16:28:53 tpcetest.assertDictEqual(dict(input_dict_3, **response['output']['service']['end-point'][1]['name'][0]), 16:28:53 - response['output']['service']['end-point'][1]['name'][0]) 16:28:53 + response['output']['service']['end-point'][1]['name'][0]) 16:28:53 # If the gate fails is because of the waiting time not being enough 16:28:53 # time.sleep(self.WAITING) 16:28:53 16:28:53 + 16:28:53 def get_service3_PhotonicMedia(self): 16:28:53 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services3.pm)) 16:28:53 print("getServiceResponse Service3 PhotonicMedia: {}".format(response)) 16:28:53 @@ -480,6 +496,8 @@ def get_service3_PhotonicMedia(self): 16:28:53 time.sleep(1) 16:28:53 16:28:53 # test create connectivity service from spdrA to spdrC for odu 16:28:53 + 16:28:53 + 16:28:53 def create_connectivity_service_ODU(self): 16:28:53 # pylint: disable=line-too-long 16:28:53 self.cr_serv_input_data["layer-protocol-name"] = "ODU" 16:28:53 @@ -515,14 +533,15 @@ def create_connectivity_service_ODU(self): 16:28:53 'value': 'SPDR-SA1-XPDR1'} 16:28:53 16:28:53 tpcetest.assertDictEqual(dict(input_dict_1, **response['output']['service']), 16:28:53 - response['output']['service']) 16:28:53 + response['output']['service']) 16:28:53 tpcetest.assertDictEqual(dict(input_dict_2, **response['output']['service']['end-point'][0]['name'][0]), 16:28:53 - response['output']['service']['end-point'][0]['name'][0]) 16:28:53 + response['output']['service']['end-point'][0]['name'][0]) 16:28:53 tpcetest.assertDictEqual(dict(input_dict_3, **response['output']['service']['end-point'][1]['name'][0]), 16:28:53 - response['output']['service']['end-point'][1]['name'][0]) 16:28:53 + response['output']['service']['end-point'][1]['name'][0]) 16:28:53 # If the gate fails is because of the waiting time not being enough 16:28:53 # time.sleep(self.WAITING) 16:28:53 16:28:53 + 16:28:53 def get_service_ODU(self): 16:28:53 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services.odu)) 16:28:53 tpcetest.assertEqual(response['status_code'], requests.codes.ok) 16:28:53 @@ -533,6 +552,8 @@ def get_service_ODU(self): 16:28:53 time.sleep(1) 16:28:53 16:28:53 # test create connectivity service from spdrA to spdrC for odu 16:28:53 + 16:28:53 + 16:28:53 def create_connectivity_service3_ODU(self): 16:28:53 # pylint: disable=line-too-long 16:28:53 self.cr_serv_input_data["layer-protocol-name"] = "ODU" 16:28:53 @@ -568,14 +589,15 @@ def create_connectivity_service3_ODU(self): 16:28:53 'value': 'SPDR-SA1-XPDR3'} 16:28:53 16:28:53 tpcetest.assertDictEqual(dict(input_dict_1, **response['output']['service']), 16:28:53 - response['output']['service']) 16:28:53 + response['output']['service']) 16:28:53 tpcetest.assertDictEqual(dict(input_dict_2, **response['output']['service']['end-point'][0]['name'][0]), 16:28:53 - response['output']['service']['end-point'][0]['name'][0]) 16:28:53 + response['output']['service']['end-point'][0]['name'][0]) 16:28:53 tpcetest.assertDictEqual(dict(input_dict_3, **response['output']['service']['end-point'][1]['name'][0]), 16:28:53 - response['output']['service']['end-point'][1]['name'][0]) 16:28:53 + response['output']['service']['end-point'][1]['name'][0]) 16:28:53 # If the gate fails is because of the waiting time not being enough 16:28:53 # time.sleep(self.WAITING) 16:28:53 16:28:53 + 16:28:53 def get_service3_ODU(self): 16:28:53 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services3.odu)) 16:28:53 tpcetest.assertEqual(response['status_code'], requests.codes.ok) 16:28:53 @@ -585,6 +607,8 @@ def get_service3_ODU(self): 16:28:53 tpcetest.assertEqual(response['services'][0]['lifecycle-state'], 'planned') 16:28:53 16:28:53 # test create connectivity service from spdrA to spdrC for dsr 16:28:53 + 16:28:53 + 16:28:53 def create_connectivity_service_DSR(self): 16:28:53 # pylint: disable=line-too-long 16:28:53 self.cr_serv_input_data["layer-protocol-name"] = "DSR" 16:28:53 @@ -621,17 +645,18 @@ def create_connectivity_service_DSR(self): 16:28:53 'value': 'SPDR-SA1-XPDR1'} 16:28:53 16:28:53 tpcetest.assertDictEqual(dict(input_dict_1, 16:28:53 - **response['output']['service']), 16:28:53 - response['output']['service']) 16:28:53 + **response['output']['service']), 16:28:53 + response['output']['service']) 16:28:53 tpcetest.assertDictEqual(dict(input_dict_2, 16:28:53 - **response['output']['service']['end-point'][0]['name'][0]), 16:28:53 - response['output']['service']['end-point'][0]['name'][0]) 16:28:53 + **response['output']['service']['end-point'][0]['name'][0]), 16:28:53 + response['output']['service']['end-point'][0]['name'][0]) 16:28:53 tpcetest.assertDictEqual(dict(input_dict_3, 16:28:53 - **response['output']['service']['end-point'][1]['name'][0]), 16:28:53 - response['output']['service']['end-point'][1]['name'][0]) 16:28:53 + **response['output']['service']['end-point'][1]['name'][0]), 16:28:53 + response['output']['service']['end-point'][1]['name'][0]) 16:28:53 # The sleep here is okey as the DSR service creation is very fast 16:28:53 # time.sleep(self.WAITING) 16:28:53 16:28:53 + 16:28:53 def get_service_DSR(self): 16:28:53 response = test_utils.get_ordm_serv_list_attr_request("services", str(tpcetest.uuid_services.dsr)) 16:28:53 tpcetest.assertEqual(response['status_code'], requests.codes.ok) 16:28:53 @@ -643,6 +668,7 @@ def get_service_DSR(self): 16:28:53 print("Time to retrieve topology : 100 seconds... Hurry up") 16:28:53 time.sleep(100) 16:28:53 16:28:53 + 16:28:53 def delete_created_tapi_services(self): 16:28:53 delete_connectivity_service_DSR(self) 16:28:53 delete_connectivity_service_ODU(self) 16:28:53 @@ -652,6 +678,7 @@ def delete_created_tapi_services(self): 16:28:53 delete_connectivity_service_PhotonicMedia(self) 16:28:53 get_no_tapi_services() 16:28:53 16:28:53 + 16:28:53 def delete_connectivity_service_DSR(self): 16:28:53 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services.dsr) 16:28:53 response = test_utils.transportpce_api_rpc_request( 16:28:53 @@ -659,6 +686,7 @@ def delete_connectivity_service_DSR(self): 16:28:53 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 16:28:53 time.sleep(self.WAITING) 16:28:53 16:28:53 + 16:28:53 def delete_connectivity_service_ODU(self): 16:28:53 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services.odu) 16:28:53 response = test_utils.transportpce_api_rpc_request( 16:28:53 @@ -666,6 +694,7 @@ def delete_connectivity_service_ODU(self): 16:28:53 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 16:28:53 time.sleep(self.WAITING) 16:28:53 16:28:53 + 16:28:53 def delete_connectivity_service3_ODU(self): 16:28:53 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services3.odu) 16:28:53 response = test_utils.transportpce_api_rpc_request( 16:28:53 @@ -673,6 +702,7 @@ def delete_connectivity_service3_ODU(self): 16:28:53 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 16:28:53 time.sleep(self.WAITING) 16:28:53 16:28:53 + 16:28:53 def delete_connectivity_service_PhotonicMedia(self): 16:28:53 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services.pm) 16:28:53 response = test_utils.transportpce_api_rpc_request( 16:28:53 @@ -680,6 +710,7 @@ def delete_connectivity_service_PhotonicMedia(self): 16:28:53 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 16:28:53 time.sleep(self.WAITING) 16:28:53 16:28:53 + 16:28:53 def delete_connectivity_service3_PhotonicMedia(self): 16:28:53 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services3.pm) 16:28:53 response = test_utils.transportpce_api_rpc_request( 16:28:53 @@ -687,6 +718,7 @@ def delete_connectivity_service3_PhotonicMedia(self): 16:28:53 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 16:28:53 time.sleep(self.WAITING) 16:28:53 16:28:53 + 16:28:53 def delete_connectivity_service2_PhotonicMedia(self): 16:28:53 self.del_serv_input_data["uuid"] = str(tpcetest.uuid_services2.pm) 16:28:53 response = test_utils.transportpce_api_rpc_request( 16:28:53 @@ -694,6 +726,7 @@ def delete_connectivity_service2_PhotonicMedia(self): 16:28:53 tpcetest.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 16:28:53 time.sleep(self.WAITING) 16:28:53 16:28:53 + 16:28:53 def get_no_tapi_services(self): 16:28:53 response = test_utils.transportpce_api_rpc_request( 16:28:53 'tapi-connectivity', 'get-connectivity-service-list', None) 16:28:53 @@ -703,6 +736,7 @@ def get_no_tapi_services(self): 16:28:53 "error-message": "No services exist in datastore"}, 16:28:53 response['output']['errors']['error']) 16:28:53 16:28:53 + 16:28:53 def cleanup_and_desinstall_tapi_feature(): 16:28:53 disconnect_spdrA_C() 16:28:53 disconnect_roadmA_C() 16:28:53 @@ -712,6 +746,7 @@ def cleanup_and_desinstall_tapi_feature(): 16:28:53 # response = test_utils.get_ordm_serv_list_request() 16:28:53 # tpcetest.assertEqual(response['status_code'], requests.codes.conflict) 16:28:53 16:28:53 + 16:28:53 def disconnect_spdrA_C(): 16:28:53 response = test_utils.unmount_device("SPDR-SA1") 16:28:53 if response.status_code not in [204]: 16:28:53 @@ -720,6 +755,7 @@ def disconnect_spdrA_C(): 16:28:53 if response.status_code not in [204]: 16:28:53 print("disconnection of SPDR-SC1 failed") 16:28:53 16:28:53 + 16:28:53 def disconnect_roadmA_C(): 16:28:53 response = test_utils.unmount_device("ROADM-A1") 16:28:53 if response.status_code not in [204]: 16:28:53 @@ -728,6 +764,7 @@ def disconnect_roadmA_C(): 16:28:53 if response.status_code not in [204]: 16:28:53 print("disconnection of ROADM-C1 failed") 16:28:53 16:28:53 + 16:28:53 def uninstall_Tapi_Feature(): 16:28:53 test_utils.uninstall_karaf_feature("odl-transportpce-tapi") 16:28:53 time.sleep(5) 16:28:53 @@ -736,16 +773,16 @@ def uninstall_Tapi_Feature(): 16:28:53 print("Tapi Feature uninstallation :") 16:28:53 # tpcetest.assertEqual(response['status_code'], requests.codes.ok) 16:28:53 # print("Tapi Feature uninstalled") 16:28:53 - if('node' not in response['network'][0] and 'ietf-network-topology:link' not in response['network'][0]): 16:28:53 - print(" otn topology empty") 16:28:53 + if ('node' not in response['network'][0] and 'ietf-network-topology:link' not in response['network'][0]): 16:28:53 + print(" otn topology empty") 16:28:53 # tpcetest.assertNotIn('node', response['network'][0]) 16:28:53 # tpcetest.assertNotIn('ietf-network-topology:link', response['network'][0]) 16:28:53 response = test_utils.get_ietf_network_request('openroadm-topology', 'config') 16:28:53 if ((requests.codes.ok in response['status_code']) and 16:28:53 ('node' not in response['network'][0] and 'ietf-network-topology:link' not in response['network'][0])): 16:28:53 - # tpcetest.assertEqual(response['status_code'], requests.codes.ok) 16:28:53 - # tpcetest.assertNotIn('node', response['network'][0]) 16:28:53 - # tpcetest.assertNotIn('ietf-network-topology:link', response['network'][0]) 16:28:53 + # tpcetest.assertEqual(response['status_code'], requests.codes.ok) 16:28:53 + # tpcetest.assertNotIn('node', response['network'][0]) 16:28:53 + # tpcetest.assertNotIn('ietf-network-topology:link', response['network'][0]) 16:28:53 print("OpenROADM topology also empty") 16:28:53 print("Confirm Tapi Feature correctly uninstalled") 16:28:53 16:28:53 diff --git a/tests/transportpce_tests/pce/test05_pce_tapi.py b/tests/transportpce_tests/pce/test05_pce_tapi.py 16:28:53 index c105c55d4..f1c659eaa 100644 16:28:53 --- a/tests/transportpce_tests/pce/test05_pce_tapi.py 16:28:53 +++ b/tests/transportpce_tests/pce/test05_pce_tapi.py 16:28:53 @@ -197,7 +197,7 @@ class TransportPCEtest(unittest.TestCase): 16:28:53 16:28:53 # cr_serv_input_data is used for tapi-connectivity service creation. However, at that stage we create service 16:28:53 # using OR PCE and OR renderer (in a first step, as TAPI Renderer is not available). Thus to trigger path 16:28:53 - # through OR PCE, considering initial request through TAPI API will be converted to an OR service-create, we need : 16:28:53 + # through OR PCE, considering initial request through TAPI API will be converted to an OR service-create, we need : 16:28:53 # 1) To use a service name that iS NOT a UUID but a string 16:28:53 # 2) To use as the local-id, the name of the node in the OPENROADM topology 16:28:53 cr_serv_input_data = { 16:28:53 @@ -301,7 +301,7 @@ class TransportPCEtest(unittest.TestCase): 16:28:53 uuid_services = UuidServices() 16:28:53 16:28:53 del_serv_input_data = {"uuid": "TBD"} 16:28:53 - 16:28:53 + 16:28:53 tapi_topo = {"topology-id": "TBD"} 16:28:53 16:28:53 16:28:53 @@ -415,7 +415,7 @@ class TransportPCEtest(unittest.TestCase): 16:28:53 self.assertEqual(response['services'][0]['connection-type'], 'infrastructure') 16:28:53 self.assertEqual(response['services'][0]['lifecycle-state'], 'planned') 16:28:53 time.sleep(self.WAITING) 16:28:53 - 16:28:53 + 16:28:53 16:28:53 def test_05_successfull_path_computation_ODU4(self): 16:28:53 self.path_computation_input_data["service-a-end"]["service-format"] = "ODU" 16:28:53 @@ -436,7 +436,7 @@ class TransportPCEtest(unittest.TestCase): 16:28:53 self.assertIn('Path is calculated', 16:28:53 response['output']['configuration-response-common']['response-message']) 16:28:53 print(response['output']['response-parameters']['path-description']) 16:28:53 - 16:28:53 + 16:28:53 self.assertEqual(response['output']['response-parameters']['path-description']['aToZ-direction']['rate'], 100) 16:28:53 node_to_find = [self.s2Auuid, self.s2Cuuid] 16:28:53 # tp to find are the iOTU CEP 16:28:53 @@ -482,14 +482,14 @@ class TransportPCEtest(unittest.TestCase): 16:28:53 } 16:28:53 input_dict_2 = {'value-name': 'OpenROADM node id', 'value': 'SPDR-SC1-XPDR2'} 16:28:53 input_dict_3 = {'value-name': 'OpenROADM node id', 'value': 'SPDR-SA1-XPDR2'} 16:28:53 - 16:28:53 + 16:28:53 self.assertDictEqual(dict(input_dict_1, **response['output']['service']), 16:28:53 response['output']['service']) 16:28:53 self.assertDictEqual(input_dict_2, response['output']['service']['end-point'][0]['name'][0]) 16:28:53 self.assertDictEqual(input_dict_3, response['output']['service']['end-point'][1]['name'][0]) 16:28:53 # If the gate fails is because of the waiting time not being enough 16:28:53 time.sleep(self.WAITING) 16:28:53 - 16:28:53 + 16:28:53 def test_07_get_ODU4_service1(self): 16:28:53 response = test_utils.get_ordm_serv_list_attr_request("services", "serviceOdu4-1") 16:28:53 self.assertEqual(response['status_code'], requests.codes.ok) 16:28:53 @@ -499,7 +499,7 @@ class TransportPCEtest(unittest.TestCase): 16:28:53 self.assertEqual(response['services'][0]['connection-type'], 'infrastructure') 16:28:53 self.assertEqual(response['services'][0]['lifecycle-state'], 'planned') 16:28:53 time.sleep(1) 16:28:53 - 16:28:53 + 16:28:53 def test_08_successfull_path_computation_100GE_service__spdr_x2(self): 16:28:53 # service-format set to other + service-rate set to 100 leads to 100GEs serviceType internally (switch) 16:28:53 self.path_computation_input_data["service-a-end"]["service-format"] = "other" 16:28:53 pre-commit: exit 1 (40.09 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> pre-commit run --all-files --show-diff-on-failure pid=2462 16:29:04 ************* Module test05_pce_tapi 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:380:0: C0301: Line too long (122/120) (line-too-long) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:381:0: C0301: Line too long (122/120) (line-too-long) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:459:0: C0301: Line too long (123/120) (line-too-long) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:463:0: C0301: Line too long (123/120) (line-too-long) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:595:0: C0301: Line too long (122/120) (line-too-long) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:602:0: C0301: Line too long (122/120) (line-too-long) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:679:0: C0301: Line too long (123/120) (line-too-long) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:683:0: C0301: Line too long (123/120) (line-too-long) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:763:0: C0301: Line too long (122/120) (line-too-long) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:770:0: C0301: Line too long (122/120) (line-too-long) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:813:0: C0301: Line too long (123/120) (line-too-long) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:817:0: C0301: Line too long (123/120) (line-too-long) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:347:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:434:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:496:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:518:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:559:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:655:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:717:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:738:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:849:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:876:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:903:16: R1723: Unnecessary "elif" after "break", remove the leading "el" from "elif" (no-else-break) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:913:16: R1723: Unnecessary "elif" after "break", remove the leading "el" from "elif" (no-else-break) 16:29:04 transportpce_tests/pce/test05_pce_tapi.py:15:0: W0611: Unused import os (unused-import) 16:29:04 ************* Module common.test_utils_generate_tapi_topo 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:321:0: C0325: Unnecessary parens after 'if' keyword (superfluous-parens) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:338:0: C0325: Unnecessary parens after 'if' keyword (superfluous-parens) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:772:0: C0325: Unnecessary parens after 'if' keyword (superfluous-parens) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:59:0: C0103: Function name "initSimulators" doesn't conform to snake_case naming style (invalid-name) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:62:4: W0621: Redefining name 'processes' from outer scope (line 50) (redefined-outer-name) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:61:10: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:62:4: W0612: Unused variable 'processes' (unused-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:72:4: W0612: Unused variable 'response' (unused-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:96:0: R0912: Too many branches (40/12) (too-many-branches) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:96:0: R0915: Too many statements (121/50) (too-many-statements) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:298:0: C0103: Function name "add_omsAttributes_to_ROADM2ROADM_links" doesn't conform to snake_case naming style (invalid-name) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:348:0: C0103: Function name "create_connectivity_service_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:354:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:355:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:357:10: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:357:52: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:373:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:375:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:377:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:382:0: C0103: Function name "get_service_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:383:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:384:10: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:385:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:386:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:387:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:387:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:388:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:389:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:382:30: W0613: Unused argument 'self' (unused-argument) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:392:0: C0103: Function name "create_connectivity_service2_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:402:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:403:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:405:10: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:405:52: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:418:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:420:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:422:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:04 transportpce_tests/common/test_utils_generate_tapi_topo.py:427:0: C0103: Function name "get_service2_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:428:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:429:10: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:430:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:431:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:432:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:432:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:433:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:434:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:427:31: W0613: Unused argument 'self' (unused-argument) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:437:0: C0103: Function name "create_connectivity_service3_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:447:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:448:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:450:10: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:450:52: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:463:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:465:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:467:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:472:0: C0103: Function name "get_service3_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:473:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:474:10: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:475:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:476:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:477:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:477:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:478:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:479:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:472:31: W0613: Unused argument 'self' (unused-argument) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:483:0: C0103: Function name "create_connectivity_service_ODU" doesn't conform to snake_case naming style (invalid-name) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:495:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:500:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:501:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:503:10: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:503:41: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:517:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:519:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:521:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:526:0: C0103: Function name "get_service_ODU" doesn't conform to snake_case naming style (invalid-name) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:527:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:528:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:529:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:530:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:530:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:531:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:532:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:526:20: W0613: Unused argument 'self' (unused-argument) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:536:0: C0103: Function name "create_connectivity_service3_ODU" doesn't conform to snake_case naming style (invalid-name) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:548:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:553:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:554:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:556:10: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:556:41: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:570:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:572:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:574:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:579:0: C0103: Function name "get_service3_ODU" doesn't conform to snake_case naming style (invalid-name) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:580:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:581:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:582:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:583:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:583:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:584:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:585:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:579:21: W0613: Unused argument 'self' (unused-argument) 16:29:05 transportpce_tests/common/test_utils_generate_tapi_topo.py:588:0: C0103: Function name "create_connectivity_service_DSR" doesn't conform to snake_case naming style (invalid-name) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:601:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:606:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:607:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:609:41: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:623:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:626:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:629:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:635:0: C0103: Function name "get_service_DSR" doesn't conform to snake_case naming style (invalid-name) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:636:74: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:637:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:638:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:639:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:639:70: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:640:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:641:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:635:20: W0613: Unused argument 'self' (unused-argument) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:653:4: E1120: No value for argument 'self' in function call (no-value-for-parameter) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:655:0: C0103: Function name "delete_connectivity_service_DSR" doesn't conform to snake_case naming style (invalid-name) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:656:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:659:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:662:0: C0103: Function name "delete_connectivity_service_ODU" doesn't conform to snake_case naming style (invalid-name) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:663:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:666:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:669:0: C0103: Function name "delete_connectivity_service3_ODU" doesn't conform to snake_case naming style (invalid-name) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:670:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:673:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:676:0: C0103: Function name "delete_connectivity_service_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:677:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:680:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:683:0: C0103: Function name "delete_connectivity_service3_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:684:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:687:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:690:0: C0103: Function name "delete_connectivity_service2_PhotonicMedia" doesn't conform to snake_case naming style (invalid-name) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:691:43: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:694:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:700:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:701:4: E0602: Undefined variable 'tpcetest' (undefined-variable) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:697:25: W0613: Unused argument 'self' (unused-argument) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:715:0: C0103: Function name "disconnect_spdrA_C" doesn't conform to snake_case naming style (invalid-name) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:723:0: C0103: Function name "disconnect_roadmA_C" doesn't conform to snake_case naming style (invalid-name) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:731:0: C0103: Function name "uninstall_Tapi_Feature" doesn't conform to snake_case naming style (invalid-name) 16:29:07 transportpce_tests/common/test_utils_generate_tapi_topo.py:15:0: W0611: Unused import os (unused-import) 16:29:07 16:29:07 ----------------------------------- 16:29:07 Your code has been rated at 9.57/10 16:29:07 16:29:09 pre-commit: FAIL ✖ in 42.96 seconds 16:29:09 pylint: exit 1 (26.68 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=3231 16:30:05 pylint: FAIL ✖ in 31.66 seconds 16:30:05 buildcontroller: OK ✔ in 1 minute 56.52 seconds 16:30:05 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 16:30:05 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 16:30:05 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 16:30:05 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 16:30:12 build_karaf_tests190: freeze> python -m pip freeze --all 16:30:12 build_karaf_tests221: freeze> python -m pip freeze --all 16:30:12 build_karaf_tests71: freeze> python -m pip freeze --all 16:30:12 build_karaf_tests121: freeze> python -m pip freeze --all 16:30:12 build_karaf_tests190: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.2,dict2xml==1.7.7,idna==3.11,iniconfig==2.1.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.0,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:30:12 build_karaf_tests190: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 16:30:12 build karaf in karafoc with ./karafoc.env 16:30:12 build_karaf_tests71: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.2,dict2xml==1.7.7,idna==3.11,iniconfig==2.1.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.0,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:30:12 build_karaf_tests71: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 16:30:12 build_karaf_tests221: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.2,dict2xml==1.7.7,idna==3.11,iniconfig==2.1.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.0,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:30:12 build_karaf_tests221: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 16:30:12 build karaf in karaf71 with ./karaf71.env 16:30:12 NOTE: Picked up JDK_JAVA_OPTIONS: 16:30:12 --add-opens=java.base/java.io=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.lang=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.net=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.nio=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.nio.file=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util.jar=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util.stream=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util.zip=ALL-UNNAMED 16:30:12 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 16:30:12 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 16:30:12 -Xlog:disable 16:30:12 build karaf in karaf221 with ./karaf221.env 16:30:12 build_karaf_tests121: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.2,dict2xml==1.7.7,idna==3.11,iniconfig==2.1.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.0,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:30:12 build_karaf_tests121: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 16:30:12 build karaf in karaf121 with ./karaf121.env 16:30:12 NOTE: Picked up JDK_JAVA_OPTIONS: 16:30:12 --add-opens=java.base/java.io=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.lang=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.net=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.nio=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.nio.file=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util.jar=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util.stream=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util.zip=ALL-UNNAMED 16:30:12 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 16:30:12 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 16:30:12 -Xlog:disable 16:30:12 NOTE: Picked up JDK_JAVA_OPTIONS: 16:30:12 --add-opens=java.base/java.io=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.lang=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.net=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.nio=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.nio.file=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util.jar=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util.stream=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util.zip=ALL-UNNAMED 16:30:12 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 16:30:12 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 16:30:12 -Xlog:disable 16:30:12 NOTE: Picked up JDK_JAVA_OPTIONS: 16:30:12 --add-opens=java.base/java.io=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.lang=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.net=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.nio=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.nio.file=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util.jar=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util.stream=ALL-UNNAMED 16:30:12 --add-opens=java.base/java.util.zip=ALL-UNNAMED 16:30:12 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 16:30:12 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 16:30:12 -Xlog:disable 16:31:05 build_karaf_tests71: OK ✔ in 1 minute 1.55 seconds 16:31:05 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 16:31:08 build_karaf_tests121: OK ✔ in 1 minute 3.94 seconds 16:31:08 build_karaf_tests221: OK ✔ in 1 minute 3.98 seconds 16:31:08 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 16:31:08 build_karaf_tests190: OK ✔ in 1 minute 4.48 seconds 16:31:08 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 16:31:14 buildlighty: freeze> python -m pip freeze --all 16:31:14 buildlighty: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.2,dict2xml==1.7.7,idna==3.11,iniconfig==2.1.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.0,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:31:14 buildlighty: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/lighty> ./build.sh 16:31:14 NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED 16:31:15 sims: freeze> python -m pip freeze --all 16:31:16 sims: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.2,dict2xml==1.7.7,idna==3.11,iniconfig==2.1.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.0,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:31:16 sims: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./install_lightynode.sh 16:31:16 Using lighynode version 20.1.0.5 16:31:16 Installing lightynode device to ./lightynode/lightynode-openroadm-device directory 16:32:17 sims: OK ✔ in 11.43 seconds 16:32:17 buildlighty: OK ✔ in 33.18 seconds 16:32:17 testsPCE: freeze> python -m pip freeze --all 16:32:18 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.1.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==11.3.0,pip==25.2,pluggy==1.6.0,psutil==7.1.0,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 16:32:18 testsPCE: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh pce 16:32:18 pytest -q transportpce_tests/pce/test01_pce.py 16:33:08 ....F....F....FFFF.F [100%] 16:33:47 =================================== FAILURES =================================== 16:33:47 _____________ TestTransportPCEPce.test_05_path_computation_xpdr_bi _____________ 16:33:47 16:33:47 self = 16:33:47 16:33:47 def test_05_path_computation_xpdr_bi(self): 16:33:47 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 16:33:47 'path-computation-request', 16:33:47 self.path_computation_input_data) 16:33:47 self.assertEqual(response['status_code'], requests.codes.ok) 16:33:47 > self.assertIn('Path is calculated', 16:33:47 response['output']['configuration-response-common']['response-message']) 16:33:47 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9)' 16:33:47 16:33:47 transportpce_tests/pce/test01_pce.py:143: AssertionError 16:33:47 ____________ TestTransportPCEPce.test_10_path_computation_xpdr_uni _____________ 16:33:47 16:33:47 self = 16:33:47 16:33:47 def test_10_path_computation_xpdr_uni(self): 16:33:47 self.path_computation_input_data["service-a-end"]["node-id"] = "XPONDER-1-2" 16:33:47 self.path_computation_input_data["service-a-end"]["clli"] = "ORANGE1" 16:33:47 self.path_computation_input_data["service-z-end"]["node-id"] = "XPONDER-3-2" 16:33:47 self.path_computation_input_data["service-z-end"]["clli"] = "ORANGE3" 16:33:47 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 16:33:47 'path-computation-request', 16:33:47 self.path_computation_input_data) 16:33:47 self.assertEqual(response['status_code'], requests.codes.ok) 16:33:47 > self.assertIn('Path is calculated', 16:33:47 response['output']['configuration-response-common']['response-message']) 16:33:47 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9)' 16:33:47 16:33:47 transportpce_tests/pce/test01_pce.py:190: AssertionError 16:33:47 ____________ TestTransportPCEPce.test_15_success1_path_computation _____________ 16:33:47 16:33:47 self = 16:33:47 16:33:47 def test_15_success1_path_computation(self): 16:33:47 self.path_computation_input_data["service-name"] = "service 1" 16:33:47 self.path_computation_input_data["service-a-end"] = {"service-format": "Ethernet", "service-rate": "100", 16:33:47 "clli": "ORANGE2", "node-id": "XPONDER-2-2"} 16:33:47 self.path_computation_input_data["service-z-end"] = {"service-format": "Ethernet", "service-rate": "100", 16:33:47 "clli": "ORANGE1", "node-id": "XPONDER-1-2"} 16:33:47 self.path_computation_input_data["hard-constraints"] = {"customer-code": ["Some customer-code"], 16:33:47 "co-routing": { 16:33:47 "service-identifier-list": [{ 16:33:47 "service-identifier": "Some existing-service"}] 16:33:47 }} 16:33:47 self.path_computation_input_data["soft-constraints"] = {"customer-code": ["Some customer-code"], 16:33:47 "co-routing": { 16:33:47 "service-identifier-list": [{ 16:33:47 "service-identifier": "Some existing-service"}] 16:33:47 }} 16:33:47 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 16:33:47 'path-computation-request', 16:33:47 self.path_computation_input_data) 16:33:47 self.assertEqual(response['status_code'], requests.codes.ok) 16:33:47 > self.assertIn('Path is calculated', 16:33:47 response['output']['configuration-response-common']['response-message']) 16:33:47 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9), No frequencies available' 16:33:47 16:33:47 transportpce_tests/pce/test01_pce.py:267: AssertionError 16:33:47 ____________ TestTransportPCEPce.test_16_success2_path_computation _____________ 16:33:47 16:33:47 self = 16:33:47 16:33:47 def test_16_success2_path_computation(self): 16:33:47 self.path_computation_input_data["service-a-end"]["node-id"] = "XPONDER-1-2" 16:33:47 self.path_computation_input_data["service-a-end"]["clli"] = "ORANGE1" 16:33:47 self.path_computation_input_data["service-z-end"]["node-id"] = "XPONDER-3-2" 16:33:47 self.path_computation_input_data["service-z-end"]["clli"] = "ORANGE3" 16:33:47 del self.path_computation_input_data["hard-constraints"] 16:33:47 del self.path_computation_input_data["soft-constraints"] 16:33:47 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 16:33:47 'path-computation-request', 16:33:47 self.path_computation_input_data) 16:33:47 self.assertEqual(response['status_code'], requests.codes.ok) 16:33:47 > self.assertIn('Path is calculated', 16:33:47 response['output']['configuration-response-common']['response-message']) 16:33:47 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9)' 16:33:47 16:33:47 transportpce_tests/pce/test01_pce.py:284: AssertionError 16:33:47 ____________ TestTransportPCEPce.test_17_success3_path_computation _____________ 16:33:47 16:33:47 self = 16:33:47 16:33:47 def test_17_success3_path_computation(self): 16:33:47 self.path_computation_input_data["hard-constraints"] = {"exclude": 16:33:47 {"node-id": ["OpenROADM-2-1", "OpenROADM-2-2"]}} 16:33:47 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 16:33:47 'path-computation-request', 16:33:47 self.path_computation_input_data) 16:33:47 self.assertEqual(response['status_code'], requests.codes.ok) 16:33:47 > self.assertIn('Path is calculated', 16:33:47 response['output']['configuration-response-common']['response-message']) 16:33:47 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9)' 16:33:47 16:33:47 transportpce_tests/pce/test01_pce.py:300: AssertionError 16:33:47 __ TestTransportPCEPce.test_18_path_computation_before_oms_attribute_deletion __ 16:33:47 16:33:47 self = 16:33:47 16:33:47 def test_18_path_computation_before_oms_attribute_deletion(self): 16:33:47 self.path_computation_input_data["service-a-end"]["node-id"] = "XPONDER-2-2" 16:33:47 self.path_computation_input_data["service-a-end"]["clli"] = "ORANGE2" 16:33:47 self.path_computation_input_data["service-z-end"]["node-id"] = "XPONDER-1-2" 16:33:47 self.path_computation_input_data["service-z-end"]["clli"] = "ORANGE1" 16:33:47 del self.path_computation_input_data["hard-constraints"] 16:33:47 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 16:33:47 'path-computation-request', 16:33:47 self.path_computation_input_data) 16:33:47 self.assertEqual(response['status_code'], requests.codes.ok) 16:33:47 > self.assertIn('Path is calculated', 16:33:47 response['output']['configuration-response-common']['response-message']) 16:33:47 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9), No frequencies available' 16:33:47 16:33:47 transportpce_tests/pce/test01_pce.py:319: AssertionError 16:33:47 __ TestTransportPCEPce.test_20_path_computation_after_oms_attribute_deletion ___ 16:33:47 16:33:47 self = 16:33:47 16:33:47 def test_20_path_computation_after_oms_attribute_deletion(self): 16:33:47 response = test_utils.transportpce_api_rpc_request('transportpce-pce', 16:33:47 'path-computation-request', 16:33:47 self.path_computation_input_data) 16:33:47 self.assertEqual(response['status_code'], requests.codes.ok) 16:33:47 > self.assertIn('Path is calculated', 16:33:47 response['output']['configuration-response-common']['response-message']) 16:33:47 E AssertionError: 'Path is calculated' not found in 'OSNR out of range (-9999.9 - -9999.9), No frequencies available' 16:33:47 16:33:47 transportpce_tests/pce/test01_pce.py:346: AssertionError 16:33:47 --------------------------- Captured stdout teardown --------------------------- 16:33:47 all processes killed 16:33:47 ODL log file stored 16:33:47 =========================== short test summary info ============================ 16:33:47 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_05_path_computation_xpdr_bi 16:33:47 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_10_path_computation_xpdr_uni 16:33:47 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_15_success1_path_computation 16:33:47 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_16_success2_path_computation 16:33:47 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_17_success3_path_computation 16:33:47 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_18_path_computation_before_oms_attribute_deletion 16:33:47 FAILED transportpce_tests/pce/test01_pce.py::TestTransportPCEPce::test_20_path_computation_after_oms_attribute_deletion 16:33:47 7 failed, 13 passed in 89.25s (0:01:29) 16:33:47 testsPCE: exit 1 (89.59 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh pce pid=5143 16:33:48 testsPCE: FAIL ✖ in 2 minutes 39.07 seconds 16:33:48 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 16:33:48 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 16:33:48 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 16:33:55 tests121: freeze> python -m pip freeze --all 16:33:55 tests_tapi: freeze> python -m pip freeze --all 16:33:55 tests190: freeze> python -m pip freeze --all 16:33:55 tests121: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.2,dict2xml==1.7.7,idna==3.11,iniconfig==2.1.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.0,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:33:55 tests121: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 1.2.1 16:33:55 using environment variables from ./karaf121.env 16:33:55 pytest -q transportpce_tests/1.2.1/test01_portmapping.py 16:33:55 tests_tapi: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.2,dict2xml==1.7.7,idna==3.11,iniconfig==2.1.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.0,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:33:55 tests_tapi: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh tapi 16:33:55 using environment variables from ./karaf221.env 16:33:55 pytest -q transportpce_tests/tapi/test01_abstracted_topology.py 16:33:55 tests190: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.2,dict2xml==1.7.7,idna==3.11,iniconfig==2.1.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.0,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:33:55 tests190: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh oc 16:33:55 using environment variables from ./karafoc.env 16:33:55 pytest -q transportpce_tests/oc/test01_portmapping.py 16:35:04 ........... [100%] 16:35:19 10 passed in 83.91s (0:01:23) 16:35:20 pytest -q transportpce_tests/oc/test02_topology.py 16:35:25 ............................ [100%] 16:36:04 21 passed in 128.86s (0:02:08) 16:36:04 pytest -q transportpce_tests/1.2.1/test02_topo_portmapping.py 16:36:05 ............................... [100%] 16:36:28 14 passed in 68.20s (0:01:08) 16:36:28 pytest -q transportpce_tests/oc/test03_renderer.py 16:36:30 ................. [100%] 16:37:10 6 passed in 65.32s (0:01:05) 16:37:10 pytest -q transportpce_tests/1.2.1/test03_topology.py 16:37:11 .................... [100%] 16:37:30 19 passed in 61.64s (0:01:01) 16:37:30 tests190: OK ✔ in 3 minutes 43.11 seconds 16:37:30 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 16:37:37 .tests71: freeze> python -m pip freeze --all 16:37:39 tests71: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.2,dict2xml==1.7.7,idna==3.11,iniconfig==2.1.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.0,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:37:39 tests71: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 7.1 16:37:39 using environment variables from ./karaf71.env 16:37:39 pytest -q transportpce_tests/7.1/test01_portmapping.py 16:37:57 .................................. [100%] 16:38:35 12 passed in 55.64s 16:38:35 pytest -q transportpce_tests/7.1/test02_otn_renderer.py 16:38:36 ................................................. [100%] 16:39:43 44 passed in 152.88s (0:02:32) 16:39:43 pytest -q transportpce_tests/1.2.1/test04_renderer_service_path_nominal.py 16:39:43 .................................................................... [100%] 16:41:09 24 passed in 85.25s (0:01:25) 16:41:09 pytest -q transportpce_tests/1.2.1/test05_olm.py 16:41:10 ... [100%] 16:41:16 62 passed in 160.31s (0:02:40) 16:41:16 pytest -q transportpce_tests/7.1/test03_renderer_or_modes.py 16:42:05 .......... [100%] 16:42:19 51 passed in 503.87s (0:08:23) 16:42:19 .pytest -q transportpce_tests/tapi/test02_full_topology.py 16:42:20 ........................................................................... [100%] 16:43:50 48 passed in 154.13s (0:02:34) 16:43:50 pytest -q transportpce_tests/7.1/test04_renderer_regen_mode.py 16:43:51 ......................F...F. [100%] 16:44:34 40 passed in 205.11s (0:03:25) 16:44:35 pytest -q transportpce_tests/1.2.1/test06_end2end.py 16:44:38 .F...F.......... [100%] 16:45:06 22 passed in 75.20s (0:01:15) 16:45:06 FFF..........FFFFFFF........................ [100%] 16:46:34 =================================== FAILURES =================================== 16:46:34 _ TestTransportPCEFullTopology.test_16_create_connectivity_service_PhotonicMedia _ 16:46:34 16:46:34 self = 16:46:34 16:46:34 def test_16_create_connectivity_service_PhotonicMedia(self): 16:46:34 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.sAOTS 16:46:34 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.sZOTS 16:46:34 response = test_utils.transportpce_api_rpc_request( 16:46:34 'tapi-connectivity', 'create-connectivity-service', self.cr_serv_input_data) 16:46:34 time.sleep(self.WAITING) 16:46:34 > self.assertEqual(response['status_code'], requests.codes.ok) 16:46:34 E AssertionError: 500 != 200 16:46:34 16:46:34 transportpce_tests/tapi/test02_full_topology.py:316: AssertionError 16:46:34 ________ TestTransportPCEFullTopology.test_17_get_service_PhotonicMedia ________ 16:46:34 16:46:34 self = 16:46:34 16:46:34 def test_17_get_service_PhotonicMedia(self): 16:46:34 response = test_utils.get_ordm_serv_list_attr_request("services", str(self.uuid_services.pm)) 16:46:34 > self.assertEqual(response['status_code'], requests.codes.ok) 16:46:34 E AssertionError: 409 != 200 16:46:34 16:46:34 transportpce_tests/tapi/test02_full_topology.py:346: AssertionError 16:46:34 _ TestTransportPCEFullTopology.test_18a_get_tapi_Pht_node_details_at_Pht_Service_creation _ 16:46:34 16:46:34 self = 16:46:34 16:46:34 def test_18a_get_tapi_Pht_node_details_at_Pht_Service_creation(self): 16:46:34 response = test_utils.get_tapi_topology_node( 16:46:34 test_utils.T0_FULL_MULTILAYER_TOPO_UUID, self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1OTS, "nonconfig") 16:46:34 time.sleep(2) 16:46:34 self.assertEqual(response['status_code'], requests.codes.ok) 16:46:34 input_dict_1 = {"spectrum-capability-pac": {"occupied-spectrum": [{"upper-frequency": "196125000000000", 16:46:34 "lower-frequency": "196075000000000"}], 16:46:34 "supportable-spectrum": [{"upper-frequency": "196125000000000", 16:46:34 "lower-frequency": "191325000000000"}]} 16:46:34 } 16:46:34 16:46:34 self.assertDictEqual(dict(input_dict_1, 16:46:34 **response['onep'][0]['tapi-photonic-media:photonic-media-node-edge-point-spec']), 16:46:34 response['onep'][0]['tapi-photonic-media:photonic-media-node-edge-point-spec']) 16:46:34 self.assertEqual(response['onep'][0]['name'][0]['value-name'], 'eNodeEdgePoint') 16:46:34 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+PHOTONIC_MEDIA_OTS+XPDR1-NETWORK1') 16:46:34 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 16:46:34 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 16:46:34 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '1') 16:46:34 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['capacity']['value'], '100.0') 16:46:34 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['number-of-cep-instances'], '1') 16:46:34 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['capacity']['value'], '100.0') 16:46:34 self.assertEqual(response['onep'][0]['available-capacity']['total-size']['value'], '100.0') 16:46:34 self.assertEqual(response['onep'][0]['tapi-connectivity:cep-list']['connection-end-point'][0] 16:46:34 ['client-node-edge-point'][0]['node-edge-point-uuid'], 'f32f5e9e-d167-31ba-a9e4-8f1efdb8786d') 16:46:34 self.assertEqual(response['onep'][0]['tapi-connectivity:cep-list']['connection-end-point'][0] 16:46:34 ['parent-node-edge-point']['node-edge-point-uuid'], '21efd6a4-2d81-3cdb-aabb-b983fb61904e') 16:46:34 16:46:34 response = test_utils.get_tapi_topology_node( 16:46:34 test_utils.T0_FULL_MULTILAYER_TOPO_UUID, self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1OTSi, "nonconfig") 16:46:34 time.sleep(2) 16:46:34 self.assertDictEqual(dict(input_dict_1, 16:46:34 **response['onep'][0]['tapi-photonic-media:photonic-media-node-edge-point-spec']), 16:46:34 response['onep'][0]['tapi-photonic-media:photonic-media-node-edge-point-spec']) 16:46:34 self.assertEqual(response['status_code'], requests.codes.ok) 16:46:34 self.assertEqual(response['onep'][0]['name'][0]['value-name'], 'PhotMedNodeEdgePoint') 16:46:34 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+OTSi_MEDIA_CHANNEL+XPDR1-NETWORK1') 16:46:34 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 16:46:34 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 16:46:34 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '1') 16:46:34 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['capacity']['value'], '100.0') 16:46:34 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['number-of-cep-instances'], '1') 16:46:34 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['capacity']['value'], '100.0') 16:46:34 self.assertEqual(response['onep'][0]['available-capacity']['total-size']['value'], '100.0') 16:46:34 > self.assertEqual(response['onep'][0]['tapi-connectivity:cep-list']['connection-end-point'][0] 16:46:34 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16:46:34 ['client-node-edge-point'][0]['node-edge-point-uuid'], '7d2a0549-63e3-3c7f-b4dc-5653e8a81dbe') 16:46:34 E KeyError: 'tapi-connectivity:cep-list' 16:46:34 16:46:34 transportpce_tests/tapi/test02_full_topology.py:397: KeyError 16:46:34 _ TestTransportPCEFullTopology.test_18b_get_tapi_OTN_node_details_at_Pht_Service_creation _ 16:46:34 16:46:34 self = 16:46:34 16:46:34 def test_18b_get_tapi_OTN_node_details_at_Pht_Service_creation(self): 16:46:34 response = test_utils.get_tapi_topology_node( 16:46:34 test_utils.T0_FULL_MULTILAYER_TOPO_UUID, self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1iODU, "nonconfig") 16:46:34 time.sleep(2) 16:46:34 self.assertEqual(response['onep'][0]['name'][0]['value-name'], 'iNodeEdgePoint_N') 16:46:34 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+iODU+XPDR1-NETWORK1') 16:46:34 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 16:46:34 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 16:46:34 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '1') 16:46:34 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['capacity']['value'], '100.0') 16:46:34 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['number-of-cep-instances'], '1') 16:46:34 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['capacity']['value'], '100.0') 16:46:34 self.assertEqual(response['onep'][0]['available-capacity']['total-size']['value'], '100.0') 16:46:34 16:46:34 response = test_utils.get_tapi_topology_node(test_utils.T0_FULL_MULTILAYER_TOPO_UUID, 16:46:34 self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1eODUC1, 16:46:34 "nonconfig") 16:46:34 time.sleep(2) 16:46:34 self.assertEqual(response['onep'][0]['name'][0]['value-name'], 'eNodeEdgePoint_N') 16:46:34 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+eODU+XPDR1-CLIENT1') 16:46:34 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 16:46:34 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 16:46:34 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '1') 16:46:34 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['capacity']['value'], '10.0') 16:46:34 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['number-of-cep-instances'], '1') 16:46:34 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['capacity']['value'], '10.0') 16:46:34 self.assertEqual(response['onep'][0]['available-capacity']['total-size']['value'], '10.0') 16:46:34 > self.assertEqual(response['onep'][0]['tapi-connectivity:cep-list']['connection-end-point'][0] 16:46:34 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16:46:34 ['parent-node-edge-point']['node-edge-point-uuid'], '72c6b97a-3944-3d88-9882-b7e688bb2772') 16:46:34 E KeyError: 'tapi-connectivity:cep-list' 16:46:34 16:46:34 transportpce_tests/tapi/test02_full_topology.py:447: KeyError 16:46:34 _____ TestTransportPCEFullTopology.test_19_create_connectivity_service_ODU _____ 16:46:34 16:46:34 self = 16:46:34 16:46:34 def test_19_create_connectivity_service_ODU(self): 16:46:34 # pylint: disable=line-too-long 16:46:34 self.cr_serv_input_data["layer-protocol-name"] = "ODU" 16:46:34 self.cr_serv_input_data["end-point"][0]["layer-protocol-name"] = "ODU" 16:46:34 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.sAeODU 16:46:34 self.cr_serv_input_data["end-point"][1]["layer-protocol-name"] = "ODU" 16:46:34 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.sZeODU 16:46:34 # self.cr_serv_input_data["connectivity-constraint"]["service-layer"] = "ODU" 16:46:34 self.cr_serv_input_data["connectivity-constraint"]["service-level"] = self.uuid_services.pm 16:46:34 16:46:34 response = test_utils.transportpce_api_rpc_request( 16:46:34 'tapi-connectivity', 'create-connectivity-service', self.cr_serv_input_data) 16:46:34 time.sleep(self.WAITING) 16:46:34 > self.assertEqual(response['status_code'], requests.codes.ok) 16:46:34 E AssertionError: 500 != 200 16:46:34 16:46:34 transportpce_tests/tapi/test02_full_topology.py:464: AssertionError 16:46:34 _ TestTransportPCEFullTopology.test_20_get_tapi_node_details_at_ODU_Service_creation _ 16:46:34 16:46:34 self = 16:46:34 16:46:34 def test_20_get_tapi_node_details_at_ODU_Service_creation(self): 16:46:34 # ODU service creation correspond to the creation of HO-ODU between 2 Network ports and is associated an 16:46:34 # iODU4 top connection which uses 100% of underlying OTU4 16:46:34 response = test_utils.get_tapi_topology_node(test_utils.T0_FULL_MULTILAYER_TOPO_UUID, 16:46:34 self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1eODUC1, 16:46:34 "nonconfig") 16:46:34 time.sleep(2) 16:46:34 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+eODU+XPDR1-CLIENT1') 16:46:34 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 16:46:34 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 16:46:34 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '1') 16:46:34 self.assertEqual(response['onep'][0]['available-payload-structure'][0]['capacity']['value'], '10.0') 16:46:34 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['number-of-cep-instances'], '1') 16:46:34 self.assertEqual(response['onep'][0]['supported-payload-structure'][0]['capacity']['value'], '10.0') 16:46:34 self.assertEqual(response['onep'][0]['available-capacity']['total-size']['value'], '10.0') 16:46:34 > self.assertEqual(response['onep'][0]['tapi-connectivity:cep-list']['connection-end-point'][0] 16:46:34 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16:46:34 ['client-node-edge-point'][0]['node-edge-point-uuid'], 'c6cd334c-51a1-3995-bed3-5cf2b7445c04') 16:46:34 E KeyError: 'tapi-connectivity:cep-list' 16:46:34 16:46:34 transportpce_tests/tapi/test02_full_topology.py:505: KeyError 16:46:34 _____________ TestTransportPCEFullTopology.test_21_get_service_ODU _____________ 16:46:34 16:46:34 self = 16:46:34 16:46:34 def test_21_get_service_ODU(self): 16:46:34 response = test_utils.get_ordm_serv_list_attr_request("services", str(self.uuid_services.odu)) 16:46:34 > self.assertEqual(response['status_code'], requests.codes.ok) 16:46:34 E AssertionError: 409 != 200 16:46:34 16:46:34 transportpce_tests/tapi/test02_full_topology.py:552: AssertionError 16:46:34 _____ TestTransportPCEFullTopology.test_22_create_connectivity_service_DSR _____ 16:46:34 16:46:34 self = 16:46:34 16:46:34 def test_22_create_connectivity_service_DSR(self): 16:46:34 # pylint: disable=line-too-long 16:46:34 self.cr_serv_input_data["layer-protocol-name"] = "DSR" 16:46:34 self.cr_serv_input_data["end-point"][0]["layer-protocol-name"] = "DSR" 16:46:34 self.cr_serv_input_data["end-point"][0]["service-interface-point"]["service-interface-point-uuid"] = self.sADSR 16:46:34 self.cr_serv_input_data["end-point"][1]["layer-protocol-name"] = "DSR" 16:46:34 self.cr_serv_input_data["end-point"][1]["service-interface-point"]["service-interface-point-uuid"] = self.sZDSR 16:46:34 # self.cr_serv_input_data["connectivity-constraint"]["service-layer"] = "DSR" 16:46:34 self.cr_serv_input_data["connectivity-constraint"]["requested-capacity"]["total-size"]["value"] = "10" 16:46:34 self.cr_serv_input_data["connectivity-constraint"]["service-level"] = self.uuid_services.odu 16:46:34 16:46:34 response = test_utils.transportpce_api_rpc_request( 16:46:34 'tapi-connectivity', 'create-connectivity-service', self.cr_serv_input_data) 16:46:34 time.sleep(self.WAITING) 16:46:34 > self.assertEqual(response['status_code'], requests.codes.ok) 16:46:34 E AssertionError: 500 != 200 16:46:34 16:46:34 transportpce_tests/tapi/test02_full_topology.py:574: AssertionError 16:46:34 _ TestTransportPCEFullTopology.test_23_get_tapi_node_details_at_DSR_Service_creation _ 16:46:34 16:46:34 self = 16:46:34 16:46:34 def test_23_get_tapi_node_details_at_DSR_Service_creation(self): 16:46:34 16:46:34 response = test_utils.get_tapi_topology_node(test_utils.T0_FULL_MULTILAYER_TOPO_UUID, 16:46:34 self.uuidSpdrSA1xpdr1, self.uuidOnepSpdrSA1xpdr1eODUC1, 16:46:34 "nonconfig") 16:46:34 time.sleep(2) 16:46:34 self.assertEqual(response['onep'][0]['name'][0]['value'], 'SPDR-SA1-XPDR1+eODU+XPDR1-CLIENT1') 16:46:34 self.assertEqual(response['onep'][0]['administrative-state'], 'UNLOCKED') 16:46:34 self.assertEqual(response['onep'][0]['operational-state'], 'ENABLED') 16:46:34 > self.assertEqual(response['onep'][0]['available-payload-structure'][0]['number-of-cep-instances'], '0') 16:46:34 E AssertionError: '1' != '0' 16:46:34 E - 1 16:46:34 E + 0 16:46:34 16:46:34 transportpce_tests/tapi/test02_full_topology.py:612: AssertionError 16:46:34 _____________ TestTransportPCEFullTopology.test_24_get_service_DSR _____________ 16:46:34 16:46:34 self = 16:46:34 16:46:34 def test_24_get_service_DSR(self): 16:46:34 response = test_utils.get_ordm_serv_list_attr_request("services", str(self.uuid_services.dsr)) 16:46:34 > self.assertEqual(response['status_code'], requests.codes.ok) 16:46:34 E AssertionError: 409 != 200 16:46:34 16:46:34 transportpce_tests/tapi/test02_full_topology.py:642: AssertionError 16:46:34 ______ TestTransportPCEFullTopology.test_25_get_connectivity_service_list ______ 16:46:34 16:46:34 self = 16:46:34 16:46:34 def test_25_get_connectivity_service_list(self): 16:46:34 response = test_utils.transportpce_api_rpc_request( 16:46:34 'tapi-connectivity', 'get-connectivity-service-list', None) 16:46:34 > self.assertEqual(response['status_code'], requests.codes.ok) 16:46:34 E AssertionError: 500 != 200 16:46:34 16:46:34 transportpce_tests/tapi/test02_full_topology.py:652: AssertionError 16:46:34 _____ TestTransportPCEFullTopology.test_26_delete_connectivity_service_DSR _____ 16:46:34 16:46:34 self = 16:46:34 16:46:34 def test_26_delete_connectivity_service_DSR(self): 16:46:34 self.del_serv_input_data["uuid"] = str(self.uuid_services.dsr) 16:46:34 response = test_utils.transportpce_api_rpc_request( 16:46:34 'tapi-connectivity', 'delete-connectivity-service', self.del_serv_input_data) 16:46:34 > self.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 16:46:34 E AssertionError: 500 not found in (200, 204) 16:46:34 16:46:34 transportpce_tests/tapi/test02_full_topology.py:681: AssertionError 16:46:34 _____ TestTransportPCEFullTopology.test_27_delete_connectivity_service_ODU _____ 16:46:34 16:46:34 self = 16:46:34 16:46:34 def test_27_delete_connectivity_service_ODU(self): 16:46:34 self.del_serv_input_data["uuid"] = str(self.uuid_services.odu) 16:46:34 response = test_utils.transportpce_api_rpc_request( 16:46:34 'tapi-connectivity', 'delete-connectivity-service', self.del_serv_input_data) 16:46:34 > self.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 16:46:34 E AssertionError: 500 not found in (200, 204) 16:46:34 16:46:34 transportpce_tests/tapi/test02_full_topology.py:688: AssertionError 16:46:34 _ TestTransportPCEFullTopology.test_28_delete_connectivity_service_PhotonicMedia _ 16:46:34 16:46:34 self = 16:46:34 16:46:34 def test_28_delete_connectivity_service_PhotonicMedia(self): 16:46:34 self.del_serv_input_data["uuid"] = str(self.uuid_services.pm) 16:46:34 response = test_utils.transportpce_api_rpc_request( 16:46:34 'tapi-connectivity', 'delete-connectivity-service', self.del_serv_input_data) 16:46:34 > self.assertIn(response["status_code"], (requests.codes.ok, requests.codes.no_content)) 16:46:34 E AssertionError: 500 not found in (200, 204) 16:46:34 16:46:34 transportpce_tests/tapi/test02_full_topology.py:695: AssertionError 16:46:34 =========================== short test summary info ============================ 16:46:34 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_16_create_connectivity_service_PhotonicMedia 16:46:34 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_17_get_service_PhotonicMedia 16:46:34 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_18a_get_tapi_Pht_node_details_at_Pht_Service_creation 16:46:34 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_18b_get_tapi_OTN_node_details_at_Pht_Service_creation 16:46:34 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_19_create_connectivity_service_ODU 16:46:34 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_20_get_tapi_node_details_at_ODU_Service_creation 16:46:34 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_21_get_service_ODU 16:46:34 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_22_create_connectivity_service_DSR 16:46:34 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_23_get_tapi_node_details_at_DSR_Service_creation 16:46:34 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_24_get_service_DSR 16:46:34 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_25_get_connectivity_service_list 16:46:34 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_26_delete_connectivity_service_DSR 16:46:34 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_27_delete_connectivity_service_ODU 16:46:34 FAILED transportpce_tests/tapi/test02_full_topology.py::TestTransportPCEFullTopology::test_28_delete_connectivity_service_PhotonicMedia 16:46:34 14 failed, 22 passed in 254.78s (0:04:14) 16:46:35 tests71: OK ✔ in 7 minutes 35.59 seconds 16:46:35 tests_tapi: exit 1 (759.36 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh tapi pid=5848 16:46:35 tests_tapi: FAIL ✖ in 12 minutes 47.42 seconds 16:46:35 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 16:46:42 tests221: freeze> python -m pip freeze --all 16:46:42 tests221: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.2,dict2xml==1.7.7,idna==3.11,iniconfig==2.1.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.0,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:42 tests221: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 2.2.1 16:46:42 using environment variables from ./karaf221.env 16:46:42 pytest -q transportpce_tests/2.2.1/test01_portmapping.py 16:46:48 ............................................... [100%] 16:48:00 35 passed in 78.23s (0:01:18) 16:48:01 pytest -q transportpce_tests/2.2.1/test02_topo_portmapping.py 16:48:20 ........... [100%] 16:48:46 6 passed in 45.48s 16:48:46 pytest -q transportpce_tests/2.2.1/test03_topology.py 16:49:06 ................................................ [100%] 16:51:04 44 passed in 137.00s (0:02:17) 16:51:04 pytest -q transportpce_tests/2.2.1/test04_otn_topology.py 16:51:16 ............. [100%] 16:52:05 12 passed in 60.72s (0:01:00) 16:52:05 pytest -q transportpce_tests/2.2.1/test05_flex_grid.py 16:52:32 .................. [100%] 16:54:01 16 passed in 115.60s (0:01:55) 16:54:01 pytest -q transportpce_tests/2.2.1/test06_renderer_service_path_nominal.py 16:54:31 ................................. [100%] 16:57:38 31 passed in 217.07s (0:03:37) 16:57:38 pytest -q transportpce_tests/2.2.1/test07_otn_renderer.py 16:58:15 .......................... [100%] 16:59:11 26 passed in 92.53s (0:01:32) 16:59:11 pytest -q transportpce_tests/2.2.1/test08_otn_sh_renderer.py 16:59:28 . [100%] 16:59:31 54 passed in 895.93s (0:14:55) 16:59:49 ...................... [100%] 17:00:52 22 passed in 101.35s (0:01:41) 17:00:52 pytest -q transportpce_tests/2.2.1/test09_olm.py 17:01:34 ........................................ [100%] 17:03:55 40 passed in 182.52s (0:03:02) 17:03:55 pytest -q transportpce_tests/2.2.1/test11_otn_end2end.py 17:04:38 ........................................................................ [ 74%] 17:10:15 ......................... [100%] 17:15:07 97 passed in 671.50s (0:11:11) 17:15:07 pytest -q transportpce_tests/2.2.1/test12_end2end.py 17:15:49 ...................................................... [100%] 17:22:37 54 passed in 449.64s (0:07:29) 17:22:37 pytest -q transportpce_tests/2.2.1/test14_otn_switch_end2end.py 17:23:35 ........................................................................ [ 71%] 17:28:43 ............................. [100%] 17:30:53 101 passed in 495.64s (0:08:15) 17:30:53 pytest -q transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py 17:31:51 ........................................................................ [ 67%] 17:37:39 ................................... [100%] 17:44:00 107 passed in 786.88s (0:13:06) 17:44:00 pytest -q transportpce_tests/2.2.1/test16_freq_end2end.py 17:44:48 ..............FFFFFFFFFFF.........FFFF....... [100%] 17:47:27 =================================== FAILURES =================================== 17:47:27 ___________ TestTransportPCEFreqEndtoend.test_15_get_other_service1 ____________ 17:47:27 17:47:27 self = 17:47:27 17:47:27 def test_15_get_other_service1(self): 17:47:27 response = test_utils.get_ordm_serv_list_attr_request( 17:47:27 "services", "service1-openroadm") 17:47:27 > self.assertEqual(response['status_code'], requests.codes.ok) 17:47:27 E AssertionError: 409 != 200 17:47:27 17:47:27 transportpce_tests/2.2.1/test16_freq_end2end.py:270: AssertionError 17:47:27 _____ TestTransportPCEFreqEndtoend.test_16_check_interface_roadma1_deg2_mc _____ 17:47:27 17:47:27 self = 17:47:27 17:47:27 def test_16_check_interface_roadma1_deg2_mc(self): 17:47:27 response = test_utils.check_node_attribute_request( 17:47:27 'ROADM-A1', 'interface', 'DEG2-TTP-TXRX-mc-282:287') 17:47:27 > self.assertEqual(response['status_code'], requests.codes.ok) 17:47:27 E AssertionError: 409 != 200 17:47:27 17:47:27 transportpce_tests/2.2.1/test16_freq_end2end.py:284: AssertionError 17:47:27 ____ TestTransportPCEFreqEndtoend.test_17_check_interface_roadm_a1_deg2_nmc ____ 17:47:27 17:47:27 self = 17:47:27 17:47:27 def test_17_check_interface_roadm_a1_deg2_nmc(self): 17:47:27 response = test_utils.check_node_attribute_request( 17:47:27 'ROADM-A1', 'interface', 'DEG2-TTP-TXRX-nmc-282:287') 17:47:27 > self.assertEqual(response['status_code'], requests.codes.ok) 17:47:27 E AssertionError: 409 != 200 17:47:27 17:47:27 transportpce_tests/2.2.1/test16_freq_end2end.py:307: AssertionError 17:47:27 ____ TestTransportPCEFreqEndtoend.test_18_check_interface_roadm_a1_srg3_nmc ____ 17:47:27 17:47:27 self = 17:47:27 17:47:27 def test_18_check_interface_roadm_a1_srg3_nmc(self): 17:47:27 response = test_utils.check_node_attribute_request( 17:47:27 'ROADM-A1', 'interface', 'SRG3-PP1-TXRX-nmc-282:287') 17:47:27 > self.assertEqual(response['status_code'], requests.codes.ok) 17:47:27 E AssertionError: 409 != 200 17:47:27 17:47:27 transportpce_tests/2.2.1/test16_freq_end2end.py:330: AssertionError 17:47:27 ____ TestTransportPCEFreqEndtoend.test_19_check_interface_roadm_c1_deg1_mc _____ 17:47:27 17:47:27 self = 17:47:27 17:47:27 def test_19_check_interface_roadm_c1_deg1_mc(self): 17:47:27 response = test_utils.check_node_attribute_request( 17:47:27 'ROADM-C1', 'interface', 'DEG1-TTP-TXRX-mc-282:287') 17:47:27 > self.assertEqual(response['status_code'], requests.codes.ok) 17:47:27 E AssertionError: 409 != 200 17:47:27 17:47:27 transportpce_tests/2.2.1/test16_freq_end2end.py:352: AssertionError 17:47:27 ____ TestTransportPCEFreqEndtoend.test_20_check_interface_roadm_c1_deg1_nmc ____ 17:47:27 17:47:27 self = 17:47:27 17:47:27 def test_20_check_interface_roadm_c1_deg1_nmc(self): 17:47:27 response = test_utils.check_node_attribute_request( 17:47:27 'ROADM-C1', 'interface', 'DEG1-TTP-TXRX-nmc-282:287') 17:47:27 > self.assertEqual(response['status_code'], requests.codes.ok) 17:47:27 E AssertionError: 409 != 200 17:47:27 17:47:27 transportpce_tests/2.2.1/test16_freq_end2end.py:375: AssertionError 17:47:27 ____ TestTransportPCEFreqEndtoend.test_21_check_interface_roadm_c1_srg1_nmc ____ 17:47:27 17:47:27 self = 17:47:27 17:47:27 def test_21_check_interface_roadm_c1_srg1_nmc(self): 17:47:27 response = test_utils.check_node_attribute_request( 17:47:27 'ROADM-C1', 'interface', 'SRG1-PP1-TXRX-nmc-282:287') 17:47:27 > self.assertEqual(response['status_code'], requests.codes.ok) 17:47:27 E AssertionError: 409 != 200 17:47:27 17:47:27 transportpce_tests/2.2.1/test16_freq_end2end.py:398: AssertionError 17:47:27 ____ TestTransportPCEFreqEndtoend.test_22_check_openroadm_topo_ROADM_A1_SRG ____ 17:47:27 17:47:27 self = 17:47:27 17:47:27 def test_22_check_openroadm_topo_ROADM_A1_SRG(self): 17:47:27 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-A1-SRG3', 'config') 17:47:27 self.assertEqual(response['status_code'], requests.codes.ok) 17:47:27 freq_map = base64.b64decode( 17:47:27 response['node']['org-openroadm-network-topology:srg-attributes']['avail-freq-maps'][0]['freq-map']) 17:47:27 freq_map_array = [int(x) for x in freq_map] 17:47:27 > self.assertEqual(freq_map_array[35], 129, "Bits 282 to 287 should not be available") 17:47:27 E AssertionError: 255 != 129 : Bits 282 to 287 should not be available 17:47:27 17:47:27 transportpce_tests/2.2.1/test16_freq_end2end.py:423: AssertionError 17:47:27 ____ TestTransportPCEFreqEndtoend.test_23_check_openroadm_topo_ROADM_A1_DEG ____ 17:47:27 17:47:27 self = 17:47:27 17:47:27 def test_23_check_openroadm_topo_ROADM_A1_DEG(self): 17:47:27 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-A1-DEG2', 'config') 17:47:27 self.assertEqual(response['status_code'], requests.codes.ok) 17:47:27 freq_map = base64.b64decode( 17:47:27 response['node']['org-openroadm-network-topology:degree-attributes']['avail-freq-maps'][0]['freq-map']) 17:47:27 freq_map_array = [int(x) for x in freq_map] 17:47:27 > self.assertEqual(freq_map_array[35], 129, "Bits 282 to 287 should not be available") 17:47:27 E AssertionError: 255 != 129 : Bits 282 to 287 should not be available 17:47:27 17:47:27 transportpce_tests/2.2.1/test16_freq_end2end.py:447: AssertionError 17:47:27 ___ TestTransportPCEFreqEndtoend.test_24_check_openroadm_topo_ROADM_C1_DEG1 ____ 17:47:27 17:47:27 self = 17:47:27 17:47:27 def test_24_check_openroadm_topo_ROADM_C1_DEG1(self): 17:47:27 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-C1-DEG1', 'config') 17:47:27 self.assertEqual(response['status_code'], requests.codes.ok) 17:47:27 freq_map = base64.b64decode( 17:47:27 response['node']['org-openroadm-network-topology:degree-attributes']['avail-freq-maps'][0]['freq-map']) 17:47:27 freq_map_array = [int(x) for x in freq_map] 17:47:27 > self.assertEqual(freq_map_array[35], 129, "Bits 282 to 287 should not be available") 17:47:27 E AssertionError: 255 != 129 : Bits 282 to 287 should not be available 17:47:27 17:47:27 transportpce_tests/2.2.1/test16_freq_end2end.py:471: AssertionError 17:47:27 ___ TestTransportPCEFreqEndtoend.test_25_check_openroadm_topo_ROADM_C1_SRG1 ____ 17:47:27 17:47:27 self = 17:47:27 17:47:27 def test_25_check_openroadm_topo_ROADM_C1_SRG1(self): 17:47:27 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-C1-SRG1', 'config') 17:47:27 self.assertEqual(response['status_code'], requests.codes.ok) 17:47:27 freq_map = base64.b64decode( 17:47:27 response['node']['org-openroadm-network-topology:srg-attributes']['avail-freq-maps'][0]['freq-map']) 17:47:27 freq_map_array = [int(x) for x in freq_map] 17:47:27 > self.assertEqual(freq_map_array[35], 129, "Bits 282 to 287 should not be available") 17:47:27 E AssertionError: 255 != 129 : Bits 282 to 287 should not be available 17:47:27 17:47:27 transportpce_tests/2.2.1/test16_freq_end2end.py:495: AssertionError 17:47:27 _____ TestTransportPCEFreqEndtoend.test_35_check_openroadm_topo_ROADMA_SRG _____ 17:47:27 17:47:27 self = 17:47:27 17:47:27 def test_35_check_openroadm_topo_ROADMA_SRG(self): 17:47:27 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-A1-SRG3', 'config') 17:47:27 self.assertEqual(response['status_code'], requests.codes.ok) 17:47:27 freq_map = base64.b64decode( 17:47:27 response['node']['org-openroadm-network-topology:srg-attributes']['avail-freq-maps'][0]['freq-map']) 17:47:27 freq_map_array = [int(x) for x in freq_map] 17:47:27 self.assertEqual(freq_map_array[35], 255, "Bits 282 to 287 should be available") 17:47:27 liste_tp = response['node']['ietf-network-topology:termination-point'] 17:47:27 for ele in liste_tp: 17:47:27 if ele['tp-id'] == 'SRG3-PP1-TXRX': 17:47:27 freq_map = base64.b64decode( 17:47:27 ele['org-openroadm-network-topology:pp-attributes']['avail-freq-maps'][0]['freq-map']) 17:47:27 freq_map_array = [int(x) for x in freq_map] 17:47:27 self.assertEqual(freq_map_array[35], 255, "Bits 282 to 287 should be available") 17:47:27 if ele['tp-id'] == 'SRG3-CP-TXRX': 17:47:27 freq_map = base64.b64decode( 17:47:27 > ele['org-openroadm-network-topology:cp-attributes']['avail-freq-maps'][0]['freq-map']) 17:47:27 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 17:47:27 E KeyError: 'org-openroadm-network-topology:cp-attributes' 17:47:27 17:47:27 transportpce_tests/2.2.1/test16_freq_end2end.py:603: KeyError 17:47:27 _____ TestTransportPCEFreqEndtoend.test_36_check_openroadm_topo_ROADMA_DEG _____ 17:47:27 17:47:27 self = 17:47:27 17:47:27 def test_36_check_openroadm_topo_ROADMA_DEG(self): 17:47:27 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-A1-DEG2', 'config') 17:47:27 self.assertEqual(response['status_code'], requests.codes.ok) 17:47:27 freq_map = base64.b64decode( 17:47:27 response['node']['org-openroadm-network-topology:degree-attributes']['avail-freq-maps'][0]['freq-map']) 17:47:27 freq_map_array = [int(x) for x in freq_map] 17:47:27 self.assertEqual(freq_map_array[35], 255, "Bits 282 to 287 should be available") 17:47:27 self.assertEqual(response['node']['ietf-network-topology:termination-point'][0]['tp-id'], 'DEG2-TTP-TXRX') 17:47:27 self.assertEqual(response['node']['ietf-network-topology:termination-point'][1]['tp-id'], 'DEG2-CTP-TXRX') 17:47:27 liste_tp = response['node']['ietf-network-topology:termination-point'] 17:47:27 for ele in liste_tp: 17:47:27 if ele['tp-id'] == 'DEG2-TTP-TXRX': 17:47:27 freq_map = base64.b64decode( 17:47:27 > ele['org-openroadm-network-topology:tx-ttp-attributes']['avail-freq-maps'][0]['freq-map']) 17:47:27 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 17:47:27 E KeyError: 'org-openroadm-network-topology:tx-ttp-attributes' 17:47:27 17:47:27 transportpce_tests/2.2.1/test16_freq_end2end.py:622: KeyError 17:47:27 ___ TestTransportPCEFreqEndtoend.test_37_check_openroadm_topo_ROADM_C1_DEG1 ____ 17:47:27 17:47:27 self = 17:47:27 17:47:27 def test_37_check_openroadm_topo_ROADM_C1_DEG1(self): 17:47:27 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-C1-DEG1', 'config') 17:47:27 self.assertEqual(response['status_code'], requests.codes.ok) 17:47:27 freq_map = base64.b64decode( 17:47:27 response['node']['org-openroadm-network-topology:degree-attributes']['avail-freq-maps'][0]['freq-map']) 17:47:27 freq_map_array = [int(x) for x in freq_map] 17:47:27 self.assertEqual(freq_map_array[35], 255, "Bits 282 to 287 should be available") 17:47:27 self.assertEqual(response['node']['ietf-network-topology:termination-point'][0]['tp-id'], 'DEG1-CTP-TXRX') 17:47:27 self.assertEqual(response['node']['ietf-network-topology:termination-point'][1]['tp-id'], 'DEG1-TTP-TXRX') 17:47:27 liste_tp = response['node']['ietf-network-topology:termination-point'] 17:47:27 for ele in liste_tp: 17:47:27 if ele['tp-id'] == 'DEG1-CTP-TXRX': 17:47:27 freq_map = base64.b64decode( 17:47:27 > ele['org-openroadm-network-topology:ctp-attributes']['avail-freq-maps'][0]['freq-map']) 17:47:27 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 17:47:27 E KeyError: 'org-openroadm-network-topology:ctp-attributes' 17:47:27 17:47:27 transportpce_tests/2.2.1/test16_freq_end2end.py:644: KeyError 17:47:27 ___ TestTransportPCEFreqEndtoend.test_38_check_openroadm_topo_ROADM_C1_SRG1 ____ 17:47:27 17:47:27 self = 17:47:27 17:47:27 def test_38_check_openroadm_topo_ROADM_C1_SRG1(self): 17:47:27 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-C1-SRG1', 'config') 17:47:27 self.assertEqual(response['status_code'], requests.codes.ok) 17:47:27 freq_map = base64.b64decode( 17:47:27 response['node']['org-openroadm-network-topology:srg-attributes']['avail-freq-maps'][0]['freq-map']) 17:47:27 freq_map_array = [int(x) for x in freq_map] 17:47:27 self.assertEqual(freq_map_array[35], 255, "Bits 282 to 287 should be available") 17:47:27 self.assertEqual(response['node']['ietf-network-topology:termination-point'][1]['tp-id'], 'SRG1-PP1-TXRX') 17:47:27 self.assertEqual(response['node']['ietf-network-topology:termination-point'][4]['tp-id'], 'SRG1-CP-TXRX') 17:47:27 liste_tp = response['node']['ietf-network-topology:termination-point'] 17:47:27 for ele in liste_tp: 17:47:27 if ele['tp-id'] == 'SRG1-PP1-TXRX': 17:47:27 freq_map = base64.b64decode( 17:47:27 > ele['org-openroadm-network-topology:pp-attributes']['avail-freq-maps'][0]['freq-map']) 17:47:27 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 17:47:27 E KeyError: 'org-openroadm-network-topology:pp-attributes' 17:47:27 17:47:27 transportpce_tests/2.2.1/test16_freq_end2end.py:668: KeyError 17:47:27 =========================== short test summary info ============================ 17:47:27 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_15_get_other_service1 17:47:27 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_16_check_interface_roadma1_deg2_mc 17:47:27 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_17_check_interface_roadm_a1_deg2_nmc 17:47:27 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_18_check_interface_roadm_a1_srg3_nmc 17:47:27 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_19_check_interface_roadm_c1_deg1_mc 17:47:27 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_20_check_interface_roadm_c1_deg1_nmc 17:47:27 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_21_check_interface_roadm_c1_srg1_nmc 17:47:27 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_22_check_openroadm_topo_ROADM_A1_SRG 17:47:27 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_23_check_openroadm_topo_ROADM_A1_DEG 17:47:27 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_24_check_openroadm_topo_ROADM_C1_DEG1 17:47:27 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_25_check_openroadm_topo_ROADM_C1_SRG1 17:47:27 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_35_check_openroadm_topo_ROADMA_SRG 17:47:27 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_36_check_openroadm_topo_ROADMA_DEG 17:47:27 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_37_check_openroadm_topo_ROADM_C1_DEG1 17:47:27 FAILED transportpce_tests/2.2.1/test16_freq_end2end.py::TestTransportPCEFreqEndtoend::test_38_check_openroadm_topo_ROADM_C1_SRG1 17:47:27 15 failed, 30 passed in 206.21s (0:03:26) 17:47:27 tests121: OK ✔ in 25 minutes 43.71 seconds 17:47:27 tests221: exit 1 (3644.81 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 2.2.1 pid=19953 17:47:27 tests221: FAIL ✖ in 1 hour 52.25 seconds 17:47:27 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 17:47:38 tests_hybrid: freeze> python -m pip freeze --all 17:47:38 tests_hybrid: bcrypt==5.0.0,certifi==2025.10.5,cffi==2.0.0,charset-normalizer==3.4.4,cryptography==46.0.2,dict2xml==1.7.7,idna==3.11,iniconfig==2.1.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.0,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 17:47:38 tests_hybrid: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh hybrid 17:47:38 using environment variables from ./karaf221.env 17:47:38 pytest -q transportpce_tests/hybrid/test01_device_change_notifications.py 17:48:23 ................................................... [100%] 17:50:11 51 passed in 152.37s (0:02:32) 17:50:11 pytest -q transportpce_tests/hybrid/test02_B100G_end2end.py 17:50:56 ........................................................................ [ 66%] 17:55:17 ..................................... [100%] 17:57:23 109 passed in 431.42s (0:07:11) 17:57:23 pytest -q transportpce_tests/hybrid/test03_autonomous_reroute.py 17:58:14 ..................................................... [100%] 18:01:47 53 passed in 263.85s (0:04:23) 18:01:47 buildcontroller: OK (116.52=setup[8.70]+cmd[107.82] seconds) 18:01:47 sims: OK (11.43=setup[8.13]+cmd[3.30] seconds) 18:01:47 build_karaf_tests121: OK (63.94=setup[8.65]+cmd[55.28] seconds) 18:01:47 testsPCE: FAIL code 1 (159.07=setup[69.48]+cmd[89.59] seconds) 18:01:47 tests121: OK (1543.71=setup[8.00]+cmd[1535.71] seconds) 18:01:47 build_karaf_tests221: OK (63.98=setup[8.62]+cmd[55.36] seconds) 18:01:47 tests_tapi: FAIL code 1 (767.42=setup[8.06]+cmd[759.36] seconds) 18:01:47 tests221: FAIL code 1 (3652.25=setup[7.44]+cmd[3644.81] seconds) 18:01:47 build_karaf_tests71: OK (61.55=setup[8.61]+cmd[52.95] seconds) 18:01:47 tests71: OK (455.59=setup[8.85]+cmd[446.74] seconds) 18:01:47 build_karaf_tests190: OK (64.48=setup[8.54]+cmd[55.94] seconds) 18:01:47 tests190: OK (223.11=setup[8.12]+cmd[214.99] seconds) 18:01:47 tests_hybrid: OK (860.46=setup[11.69]+cmd[848.77] seconds) 18:01:47 buildlighty: OK (33.18=setup[9.30]+cmd[23.88] seconds) 18:01:47 docs: OK (30.67=setup[28.07]+cmd[2.60] seconds) 18:01:47 docs-linkcheck: OK (30.25=setup[26.29]+cmd[3.96] seconds) 18:01:47 checkbashisms: OK (3.38=setup[2.02]+cmd[0.02,0.05,1.29] seconds) 18:01:47 pre-commit: FAIL code 1 (42.95=setup[2.85]+cmd[0.00,0.00,40.09] seconds) 18:01:47 pylint: FAIL code 1 (31.66=setup[4.98]+cmd[26.68] seconds) 18:01:47 evaluation failed :( (5620.27 seconds) 18:01:47 + tox_status=255 18:01:47 + echo '---> Completed tox runs' 18:01:47 ---> Completed tox runs 18:01:47 + for i in .tox/*/log 18:01:47 ++ echo .tox/build_karaf_tests121/log 18:01:47 ++ awk -F/ '{print $2}' 18:01:47 + tox_env=build_karaf_tests121 18:01:47 + cp -r .tox/build_karaf_tests121/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests121 18:01:47 + for i in .tox/*/log 18:01:47 ++ echo .tox/build_karaf_tests190/log 18:01:47 ++ awk -F/ '{print $2}' 18:01:47 + tox_env=build_karaf_tests190 18:01:47 + cp -r .tox/build_karaf_tests190/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests190 18:01:47 + for i in .tox/*/log 18:01:47 ++ echo .tox/build_karaf_tests221/log 18:01:47 ++ awk -F/ '{print $2}' 18:01:47 + tox_env=build_karaf_tests221 18:01:47 + cp -r .tox/build_karaf_tests221/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests221 18:01:47 + for i in .tox/*/log 18:01:47 ++ echo .tox/build_karaf_tests71/log 18:01:47 ++ awk -F/ '{print $2}' 18:01:47 + tox_env=build_karaf_tests71 18:01:47 + cp -r .tox/build_karaf_tests71/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests71 18:01:47 + for i in .tox/*/log 18:01:47 ++ echo .tox/buildcontroller/log 18:01:47 ++ awk -F/ '{print $2}' 18:01:47 + tox_env=buildcontroller 18:01:47 + cp -r .tox/buildcontroller/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/buildcontroller 18:01:47 + for i in .tox/*/log 18:01:47 ++ echo .tox/buildlighty/log 18:01:47 ++ awk -F/ '{print $2}' 18:01:47 + tox_env=buildlighty 18:01:47 + cp -r .tox/buildlighty/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/buildlighty 18:01:47 + for i in .tox/*/log 18:01:47 ++ echo .tox/checkbashisms/log 18:01:47 ++ awk -F/ '{print $2}' 18:01:47 + tox_env=checkbashisms 18:01:47 + cp -r .tox/checkbashisms/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/checkbashisms 18:01:47 + for i in .tox/*/log 18:01:47 ++ echo .tox/docs-linkcheck/log 18:01:47 ++ awk -F/ '{print $2}' 18:01:47 + tox_env=docs-linkcheck 18:01:47 + cp -r .tox/docs-linkcheck/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/docs-linkcheck 18:01:47 + for i in .tox/*/log 18:01:47 ++ echo .tox/docs/log 18:01:47 ++ awk -F/ '{print $2}' 18:01:47 + tox_env=docs 18:01:47 + cp -r .tox/docs/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/docs 18:01:47 + for i in .tox/*/log 18:01:47 ++ echo .tox/pre-commit/log 18:01:47 ++ awk -F/ '{print $2}' 18:01:47 + tox_env=pre-commit 18:01:47 + cp -r .tox/pre-commit/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/pre-commit 18:01:47 + for i in .tox/*/log 18:01:47 ++ echo .tox/pylint/log 18:01:47 ++ awk -F/ '{print $2}' 18:01:47 + tox_env=pylint 18:01:47 + cp -r .tox/pylint/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/pylint 18:01:47 + for i in .tox/*/log 18:01:47 ++ echo .tox/sims/log 18:01:47 ++ awk -F/ '{print $2}' 18:01:47 + tox_env=sims 18:01:47 + cp -r .tox/sims/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/sims 18:01:47 + for i in .tox/*/log 18:01:47 ++ echo .tox/tests121/log 18:01:47 ++ awk -F/ '{print $2}' 18:01:47 + tox_env=tests121 18:01:47 + cp -r .tox/tests121/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests121 18:01:47 + for i in .tox/*/log 18:01:47 ++ echo .tox/tests190/log 18:01:47 ++ awk -F/ '{print $2}' 18:01:47 + tox_env=tests190 18:01:47 + cp -r .tox/tests190/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests190 18:01:47 + for i in .tox/*/log 18:01:47 ++ echo .tox/tests221/log 18:01:47 ++ awk -F/ '{print $2}' 18:01:47 + tox_env=tests221 18:01:47 + cp -r .tox/tests221/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests221 18:01:48 + for i in .tox/*/log 18:01:48 ++ echo .tox/tests71/log 18:01:48 ++ awk -F/ '{print $2}' 18:01:48 + tox_env=tests71 18:01:48 + cp -r .tox/tests71/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests71 18:01:48 + for i in .tox/*/log 18:01:48 ++ echo .tox/testsPCE/log 18:01:48 ++ awk -F/ '{print $2}' 18:01:48 + tox_env=testsPCE 18:01:48 + cp -r .tox/testsPCE/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/testsPCE 18:01:48 + for i in .tox/*/log 18:01:48 ++ echo .tox/tests_hybrid/log 18:01:48 ++ awk -F/ '{print $2}' 18:01:48 + tox_env=tests_hybrid 18:01:48 + cp -r .tox/tests_hybrid/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests_hybrid 18:01:48 + for i in .tox/*/log 18:01:48 ++ echo .tox/tests_tapi/log 18:01:48 ++ awk -F/ '{print $2}' 18:01:48 + tox_env=tests_tapi 18:01:48 + cp -r .tox/tests_tapi/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests_tapi 18:01:48 + DOC_DIR=docs/_build/html 18:01:48 + [[ -d docs/_build/html ]] 18:01:48 + echo '---> Archiving generated docs' 18:01:48 ---> Archiving generated docs 18:01:48 + mv docs/_build/html /w/workspace/transportpce-tox-verify-transportpce-master/archives/docs 18:01:48 + echo '---> tox-run.sh ends' 18:01:48 ---> tox-run.sh ends 18:01:48 + test 255 -eq 0 18:01:48 + exit 255 18:01:48 ++ '[' 1 = 1 ']' 18:01:48 ++ '[' -x /usr/bin/clear_console ']' 18:01:48 ++ /usr/bin/clear_console -q 18:01:48 Build step 'Execute shell' marked build as failure 18:01:48 $ ssh-agent -k 18:01:48 unset SSH_AUTH_SOCK; 18:01:48 unset SSH_AGENT_PID; 18:01:48 echo Agent pid 1559 killed; 18:01:48 [ssh-agent] Stopped. 18:01:48 [PostBuildScript] - [INFO] Executing post build scripts. 18:01:48 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins14224515287459343558.sh 18:01:48 ---> sysstat.sh 18:01:49 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins17084355942218404481.sh 18:01:49 ---> package-listing.sh 18:01:49 ++ facter osfamily 18:01:49 ++ tr '[:upper:]' '[:lower:]' 18:01:49 + OS_FAMILY=debian 18:01:49 + workspace=/w/workspace/transportpce-tox-verify-transportpce-master 18:01:49 + START_PACKAGES=/tmp/packages_start.txt 18:01:49 + END_PACKAGES=/tmp/packages_end.txt 18:01:49 + DIFF_PACKAGES=/tmp/packages_diff.txt 18:01:49 + PACKAGES=/tmp/packages_start.txt 18:01:49 + '[' /w/workspace/transportpce-tox-verify-transportpce-master ']' 18:01:49 + PACKAGES=/tmp/packages_end.txt 18:01:49 + case "${OS_FAMILY}" in 18:01:49 + dpkg -l 18:01:49 + grep '^ii' 18:01:49 + '[' -f /tmp/packages_start.txt ']' 18:01:49 + '[' -f /tmp/packages_end.txt ']' 18:01:49 + diff /tmp/packages_start.txt /tmp/packages_end.txt 18:01:49 + '[' /w/workspace/transportpce-tox-verify-transportpce-master ']' 18:01:49 + mkdir -p /w/workspace/transportpce-tox-verify-transportpce-master/archives/ 18:01:49 + cp -f /tmp/packages_diff.txt /tmp/packages_end.txt /tmp/packages_start.txt /w/workspace/transportpce-tox-verify-transportpce-master/archives/ 18:01:49 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins6347780195373223142.sh 18:01:49 ---> capture-instance-metadata.sh 18:01:49 Setup pyenv: 18:01:49 system 18:01:49 3.8.20 18:01:49 3.9.20 18:01:49 3.10.15 18:01:49 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 18:01:49 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-eZ3k from file:/tmp/.os_lf_venv 18:01:49 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 18:01:49 lf-activate-venv(): INFO: Attempting to install with network-safe options... 18:01:52 lf-activate-venv(): INFO: Base packages installed successfully 18:01:52 lf-activate-venv(): INFO: Installing additional packages: lftools 18:02:06 lf-activate-venv(): INFO: Adding /tmp/venv-eZ3k/bin to PATH 18:02:06 INFO: Running in OpenStack, capturing instance metadata 18:02:07 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins7755866580372737185.sh 18:02:07 provisioning config files... 18:02:07 Could not find credentials [logs] for transportpce-tox-verify-transportpce-master #3648 18:02:07 copy managed file [jenkins-log-archives-settings] to file:/w/workspace/transportpce-tox-verify-transportpce-master@tmp/config8566909637482532945tmp 18:02:07 Regular expression run condition: Expression=[^.*logs-s3.*], Label=[odl-logs-s3-cloudfront-index] 18:02:07 Run condition [Regular expression match] enabling perform for step [Provide Configuration files] 18:02:07 provisioning config files... 18:02:07 copy managed file [jenkins-s3-log-ship] to file:/home/jenkins/.aws/credentials 18:02:07 [EnvInject] - Injecting environment variables from a build step. 18:02:07 [EnvInject] - Injecting as environment variables the properties content 18:02:07 SERVER_ID=logs 18:02:07 18:02:07 [EnvInject] - Variables injected successfully. 18:02:07 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins6770746799200551042.sh 18:02:07 ---> create-netrc.sh 18:02:07 WARN: Log server credential not found. 18:02:07 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins15263177896668370066.sh 18:02:07 ---> python-tools-install.sh 18:02:07 Setup pyenv: 18:02:07 system 18:02:07 3.8.20 18:02:07 3.9.20 18:02:07 3.10.15 18:02:07 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 18:02:07 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-eZ3k from file:/tmp/.os_lf_venv 18:02:07 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 18:02:07 lf-activate-venv(): INFO: Attempting to install with network-safe options... 18:02:10 lf-activate-venv(): INFO: Base packages installed successfully 18:02:10 lf-activate-venv(): INFO: Installing additional packages: lftools 18:02:20 lf-activate-venv(): INFO: Adding /tmp/venv-eZ3k/bin to PATH 18:02:20 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins17123429921870211730.sh 18:02:20 ---> sudo-logs.sh 18:02:20 Archiving 'sudo' log.. 18:02:21 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins17539950722257216185.sh 18:02:21 ---> job-cost.sh 18:02:21 Setup pyenv: 18:02:21 system 18:02:21 3.8.20 18:02:21 3.9.20 18:02:21 3.10.15 18:02:21 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 18:02:21 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-eZ3k from file:/tmp/.os_lf_venv 18:02:21 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 18:02:21 lf-activate-venv(): INFO: Attempting to install with network-safe options... 18:02:23 lf-activate-venv(): INFO: Base packages installed successfully 18:02:23 lf-activate-venv(): INFO: Installing additional packages: zipp==1.1.0 python-openstackclient urllib3~=1.26.15 18:02:32 lf-activate-venv(): INFO: Adding /tmp/venv-eZ3k/bin to PATH 18:02:32 INFO: No Stack... 18:02:33 INFO: Retrieving Pricing Info for: v3-standard-4 18:02:33 INFO: Archiving Costs 18:02:33 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins10047232909162314235.sh 18:02:33 ---> logs-deploy.sh 18:02:33 Setup pyenv: 18:02:33 system 18:02:33 3.8.20 18:02:33 3.9.20 18:02:33 3.10.15 18:02:33 * 3.11.10 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 18:02:34 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-eZ3k from file:/tmp/.os_lf_venv 18:02:34 lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) 18:02:34 lf-activate-venv(): INFO: Attempting to install with network-safe options... 18:02:35 lf-activate-venv(): INFO: Base packages installed successfully 18:02:35 lf-activate-venv(): INFO: Installing additional packages: lftools urllib3~=1.26.15 18:02:47 lf-activate-venv(): INFO: Adding /tmp/venv-eZ3k/bin to PATH 18:02:47 WARNING: Nexus logging server not set 18:02:47 INFO: S3 path logs/releng/vex-yul-odl-jenkins-1/transportpce-tox-verify-transportpce-master/3648/ 18:02:47 INFO: archiving logs to S3 18:02:49 ---> uname -a: 18:02:49 Linux prd-ubuntu2204-docker-4c-16g-3853 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux 18:02:49 18:02:49 18:02:49 ---> lscpu: 18:02:49 Architecture: x86_64 18:02:49 CPU op-mode(s): 32-bit, 64-bit 18:02:49 Address sizes: 40 bits physical, 48 bits virtual 18:02:49 Byte Order: Little Endian 18:02:49 CPU(s): 4 18:02:49 On-line CPU(s) list: 0-3 18:02:49 Vendor ID: AuthenticAMD 18:02:49 Model name: AMD EPYC-Rome Processor 18:02:49 CPU family: 23 18:02:49 Model: 49 18:02:49 Thread(s) per core: 1 18:02:49 Core(s) per socket: 1 18:02:49 Socket(s): 4 18:02:49 Stepping: 0 18:02:49 BogoMIPS: 5599.99 18:02:49 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 18:02:49 Virtualization: AMD-V 18:02:49 Hypervisor vendor: KVM 18:02:49 Virtualization type: full 18:02:49 L1d cache: 128 KiB (4 instances) 18:02:49 L1i cache: 128 KiB (4 instances) 18:02:49 L2 cache: 2 MiB (4 instances) 18:02:49 L3 cache: 64 MiB (4 instances) 18:02:49 NUMA node(s): 1 18:02:49 NUMA node0 CPU(s): 0-3 18:02:49 Vulnerability Gather data sampling: Not affected 18:02:49 Vulnerability Indirect target selection: Not affected 18:02:49 Vulnerability Itlb multihit: Not affected 18:02:49 Vulnerability L1tf: Not affected 18:02:49 Vulnerability Mds: Not affected 18:02:49 Vulnerability Meltdown: Not affected 18:02:49 Vulnerability Mmio stale data: Not affected 18:02:49 Vulnerability Reg file data sampling: Not affected 18:02:49 Vulnerability Retbleed: Mitigation; untrained return thunk; SMT disabled 18:02:49 Vulnerability Spec rstack overflow: Mitigation; SMT disabled 18:02:49 Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl and seccomp 18:02:49 Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization 18:02:49 Vulnerability Spectre v2: Mitigation; Retpolines; IBPB disabled; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI Not affected 18:02:49 Vulnerability Srbds: Not affected 18:02:49 Vulnerability Tsx async abort: Not affected 18:02:49 18:02:49 18:02:49 ---> nproc: 18:02:49 4 18:02:49 18:02:49 18:02:49 ---> df -h: 18:02:49 Filesystem Size Used Avail Use% Mounted on 18:02:49 tmpfs 1.6G 1.1M 1.6G 1% /run 18:02:49 /dev/vda1 78G 18G 61G 23% / 18:02:49 tmpfs 7.9G 0 7.9G 0% /dev/shm 18:02:49 tmpfs 5.0M 0 5.0M 0% /run/lock 18:02:49 /dev/vda15 105M 6.1M 99M 6% /boot/efi 18:02:49 tmpfs 1.6G 4.0K 1.6G 1% /run/user/1001 18:02:49 18:02:49 18:02:49 ---> free -m: 18:02:49 total used free shared buff/cache available 18:02:49 Mem: 15989 707 11181 3 4100 14939 18:02:49 Swap: 1023 0 1023 18:02:49 18:02:49 18:02:49 ---> ip addr: 18:02:49 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 18:02:49 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 18:02:49 inet 127.0.0.1/8 scope host lo 18:02:49 valid_lft forever preferred_lft forever 18:02:49 inet6 ::1/128 scope host 18:02:49 valid_lft forever preferred_lft forever 18:02:49 2: ens3: mtu 1458 qdisc mq state UP group default qlen 1000 18:02:49 link/ether fa:16:3e:0f:8b:1d brd ff:ff:ff:ff:ff:ff 18:02:49 altname enp0s3 18:02:49 inet 10.30.171.168/23 metric 100 brd 10.30.171.255 scope global dynamic ens3 18:02:49 valid_lft 80590sec preferred_lft 80590sec 18:02:49 inet6 fe80::f816:3eff:fe0f:8b1d/64 scope link 18:02:49 valid_lft forever preferred_lft forever 18:02:49 3: docker0: mtu 1458 qdisc noqueue state DOWN group default 18:02:49 link/ether 5e:47:59:81:5a:3e brd ff:ff:ff:ff:ff:ff 18:02:49 inet 10.250.0.254/24 brd 10.250.0.255 scope global docker0 18:02:49 valid_lft forever preferred_lft forever 18:02:49 18:02:49 18:02:49 ---> sar -b -r -n DEV: 18:02:49 Linux 5.15.0-153-generic (prd-ubuntu2204-docker-4c-16g-3853) 10/15/25 _x86_64_ (4 CPU) 18:02:49 18:02:49 16:26:01 LINUX RESTART (4 CPU) 18:02:49 18:02:49 16:30:00 tps rtps wtps dtps bread/s bwrtn/s bdscd/s 18:02:49 16:40:30 97.89 21.88 71.30 4.71 963.89 30917.88 31536.87 18:02:49 16:50:01 34.28 9.76 23.28 1.24 123.27 906.45 827.56 18:02:49 17:00:08 14.02 0.05 13.46 0.51 1.69 349.85 641.70 18:02:49 17:10:22 8.11 0.06 7.73 0.32 2.38 188.25 306.38 18:02:49 17:20:01 5.40 0.02 5.19 0.19 0.35 125.47 79.98 18:02:49 17:30:09 5.22 0.01 5.03 0.18 1.04 134.66 122.76 18:02:49 17:40:10 4.98 0.00 4.79 0.19 0.32 134.05 61.35 18:02:49 17:50:01 7.88 0.12 7.42 0.34 4.10 512.39 130.62 18:02:49 18:00:11 19.37 11.94 7.13 0.30 144.39 258.73 328.95 18:02:49 Average: 22.28 4.95 16.42 0.91 142.70 3887.65 3949.53 18:02:49 18:02:49 16:30:00 kbmemfree kbavail kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty 18:02:49 16:40:30 1832408 4991740 10936688 66.80 259432 2918264 11807744 67.78 2146124 11825908 224 18:02:49 16:50:01 4602140 7803168 8131936 49.67 265048 2956588 9036620 51.87 2248912 8989124 440 18:02:49 17:00:08 9630780 12871100 3066724 18.73 267356 2993560 3748388 21.52 2258200 3969304 324 18:02:49 17:10:22 7962572 11222492 4715396 28.80 268556 3011956 5404472 31.02 2262024 5630272 72 18:02:49 17:20:01 8152760 11425756 4512196 27.56 269332 3024256 5202332 29.86 2263880 5437756 220 18:02:49 17:30:09 6599992 9888960 6048156 36.94 269844 3039720 6705316 38.49 2265940 6983184 436 18:02:49 17:40:10 6423880 9729144 6207872 37.92 270344 3055520 6825536 39.18 2268960 7156220 556 18:02:49 17:50:01 7901324 11319100 4618856 28.21 273688 3163728 5333620 30.61 2277720 5674356 308 18:02:49 18:00:11 7095152 10610968 5326300 32.53 280100 3242392 5992976 34.40 2337744 6391264 592 18:02:49 Average: 6689001 9984714 5951569 36.35 269300 3045109 6673000 38.30 2258834 6895265 352 18:02:49 18:02:49 16:30:00 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil 18:02:49 16:40:30 lo 21.93 21.93 16.65 16.65 0.00 0.00 0.00 0.00 18:02:49 16:40:30 ens3 46.98 29.86 799.26 3.55 0.00 0.00 0.00 0.00 18:02:49 16:40:30 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 18:02:49 16:50:01 lo 39.48 39.48 16.81 16.81 0.00 0.00 0.00 0.00 18:02:49 16:50:01 ens3 1.95 2.03 0.43 1.42 0.00 0.00 0.00 0.00 18:02:49 16:50:01 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 18:02:49 17:00:08 lo 15.54 15.54 7.39 7.39 0.00 0.00 0.00 0.00 18:02:49 17:00:08 ens3 0.89 0.66 0.23 0.18 0.00 0.00 0.00 0.00 18:02:49 17:00:08 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 18:02:49 17:10:22 lo 19.23 19.23 9.21 9.21 0.00 0.00 0.00 0.00 18:02:49 17:10:22 ens3 0.74 0.71 0.18 0.15 0.00 0.00 0.00 0.00 18:02:49 17:10:22 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 18:02:49 17:20:01 lo 18.06 18.06 6.60 6.60 0.00 0.00 0.00 0.00 18:02:49 17:20:01 ens3 0.44 0.37 0.10 0.07 0.00 0.00 0.00 0.00 18:02:49 17:20:01 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 18:02:49 17:30:09 lo 25.39 25.39 11.19 11.19 0.00 0.00 0.00 0.00 18:02:49 17:30:09 ens3 0.85 0.60 0.25 0.18 0.00 0.00 0.00 0.00 18:02:49 17:30:09 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 18:02:49 17:40:10 lo 17.42 17.42 10.42 10.42 0.00 0.00 0.00 0.00 18:02:49 17:40:10 ens3 0.88 0.53 0.23 0.16 0.00 0.00 0.00 0.00 18:02:49 17:40:10 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 18:02:49 17:50:01 lo 11.06 11.06 6.69 6.69 0.00 0.00 0.00 0.00 18:02:49 17:50:01 ens3 0.87 0.78 0.25 0.23 0.00 0.00 0.00 0.00 18:02:49 17:50:01 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 18:02:49 18:00:11 lo 27.21 27.21 11.36 11.36 0.00 0.00 0.00 0.00 18:02:49 18:00:11 ens3 0.85 0.78 0.20 0.16 0.00 0.00 0.00 0.00 18:02:49 18:00:11 docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 18:02:49 Average: lo 21.64 21.64 10.72 10.72 0.00 0.00 0.00 0.00 18:02:49 Average: ens3 6.29 4.19 93.34 0.69 0.00 0.00 0.00 0.00 18:02:49 Average: docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 18:02:49 18:02:49 18:02:49 ---> sar -P ALL: 18:02:49 Linux 5.15.0-153-generic (prd-ubuntu2204-docker-4c-16g-3853) 10/15/25 _x86_64_ (4 CPU) 18:02:49 18:02:49 16:26:01 LINUX RESTART (4 CPU) 18:02:49 18:02:49 16:30:00 CPU %user %nice %system %iowait %steal %idle 18:02:49 16:40:30 all 61.16 0.00 3.02 0.87 0.13 34.81 18:02:49 16:40:30 0 60.61 0.00 3.00 0.69 0.12 35.59 18:02:49 16:40:30 1 61.51 0.00 2.94 0.56 0.13 34.85 18:02:49 16:40:30 2 59.53 0.00 3.12 0.78 0.12 36.45 18:02:49 16:40:30 3 63.00 0.00 3.03 1.47 0.13 32.38 18:02:49 16:50:01 all 45.07 0.00 1.85 0.09 0.12 52.87 18:02:49 16:50:01 0 46.23 0.00 1.73 0.11 0.12 51.82 18:02:49 16:50:01 1 44.87 0.00 1.80 0.10 0.12 53.12 18:02:49 16:50:01 2 44.13 0.00 1.86 0.08 0.11 53.82 18:02:49 16:50:01 3 45.07 0.00 2.01 0.08 0.11 52.73 18:02:49 17:00:08 all 20.08 0.00 0.89 0.05 0.08 78.90 18:02:49 17:00:08 0 20.62 0.00 0.85 0.11 0.08 78.34 18:02:49 17:00:08 1 19.58 0.00 0.89 0.04 0.09 79.40 18:02:49 17:00:08 2 20.51 0.00 0.97 0.04 0.08 78.40 18:02:49 17:00:08 3 19.62 0.00 0.84 0.01 0.08 79.45 18:02:49 17:10:22 all 13.53 0.00 0.66 0.05 0.07 85.70 18:02:49 17:10:22 0 12.70 0.00 0.66 0.02 0.06 86.57 18:02:49 17:10:22 1 13.97 0.00 0.65 0.06 0.07 85.25 18:02:49 17:10:22 2 13.93 0.00 0.75 0.03 0.07 85.21 18:02:49 17:10:22 3 13.51 0.00 0.58 0.10 0.07 85.75 18:02:49 17:20:01 all 8.27 0.00 0.50 0.03 0.07 91.14 18:02:49 17:20:01 0 8.26 0.00 0.45 0.02 0.07 91.21 18:02:49 17:20:01 1 8.31 0.00 0.58 0.02 0.07 91.02 18:02:49 17:20:01 2 8.05 0.00 0.49 0.01 0.07 91.38 18:02:49 17:20:01 3 8.45 0.00 0.47 0.08 0.07 90.93 18:02:49 17:30:09 all 10.76 0.00 0.61 0.02 0.08 88.52 18:02:49 17:30:09 0 11.15 0.00 0.59 0.01 0.08 88.18 18:02:49 17:30:09 1 10.43 0.00 0.62 0.06 0.09 88.81 18:02:49 17:30:09 2 10.62 0.00 0.68 0.01 0.08 88.61 18:02:49 17:30:09 3 10.86 0.00 0.55 0.01 0.08 88.50 18:02:49 17:40:10 all 10.57 0.00 0.60 0.02 0.09 88.72 18:02:49 17:40:10 0 10.25 0.00 0.62 0.04 0.08 89.01 18:02:49 17:40:10 1 10.59 0.00 0.50 0.02 0.09 88.80 18:02:49 17:40:10 2 10.98 0.00 0.65 0.01 0.09 88.27 18:02:49 17:40:10 3 10.47 0.00 0.64 0.02 0.08 88.79 18:02:49 17:50:01 all 14.20 0.00 0.76 0.39 0.07 84.59 18:02:49 17:50:01 0 13.90 0.00 0.73 0.11 0.07 85.19 18:02:49 17:50:01 1 14.14 0.00 0.70 1.11 0.07 83.98 18:02:49 17:50:01 2 14.68 0.00 0.91 0.19 0.08 84.14 18:02:49 17:50:01 3 14.07 0.00 0.68 0.15 0.06 85.04 18:02:49 18:00:11 all 15.99 0.07 0.72 0.15 0.07 82.99 18:02:49 18:00:11 0 16.23 0.00 0.67 0.04 0.07 82.98 18:02:49 18:00:11 1 15.81 0.25 0.77 0.25 0.08 82.85 18:02:49 18:00:11 2 16.05 0.01 0.69 0.20 0.07 82.98 18:02:49 18:00:11 3 15.86 0.03 0.76 0.11 0.07 83.17 18:02:49 Average: all 22.26 0.01 1.07 0.19 0.09 76.38 18:02:49 Average: 0 22.29 0.00 1.04 0.13 0.08 76.46 18:02:49 Average: 1 22.22 0.03 1.06 0.25 0.09 76.36 18:02:49 Average: 2 22.13 0.00 1.13 0.15 0.09 76.50 18:02:49 Average: 3 22.41 0.00 1.07 0.23 0.08 76.21 18:02:49 18:02:49 18:02:49