15:31:16 Triggered by Gerrit: https://git.opendaylight.org/gerrit/c/transportpce/+/110266 15:31:16 Running as SYSTEM 15:31:16 [EnvInject] - Loading node environment variables. 15:31:16 Building remotely on prd-centos8-builder-4c-16g-175 (centos8-builder-4c-16g) in workspace /w/workspace/transportpce-tox-verify-transportpce-master 15:31:17 [ssh-agent] Looking for ssh-agent implementation... 15:31:17 [ssh-agent] Exec ssh-agent (binary ssh-agent on a remote machine) 15:31:17 $ ssh-agent 15:31:17 SSH_AUTH_SOCK=/tmp/ssh-A4CcAiJXVQNn/agent.5559 15:31:17 SSH_AGENT_PID=5561 15:31:17 [ssh-agent] Started. 15:31:17 Running ssh-add (command line suppressed) 15:31:17 Identity added: /w/workspace/transportpce-tox-verify-transportpce-master@tmp/private_key_5099695477037979538.key (/w/workspace/transportpce-tox-verify-transportpce-master@tmp/private_key_5099695477037979538.key) 15:31:17 [ssh-agent] Using credentials jenkins (jenkins-ssh) 15:31:17 The recommended git tool is: NONE 15:31:20 using credential jenkins-ssh 15:31:20 Wiping out workspace first. 15:31:20 Cloning the remote Git repository 15:31:20 Cloning repository git://devvexx.opendaylight.org/mirror/transportpce 15:31:20 > git init /w/workspace/transportpce-tox-verify-transportpce-master # timeout=10 15:31:20 Fetching upstream changes from git://devvexx.opendaylight.org/mirror/transportpce 15:31:20 > git --version # timeout=10 15:31:20 > git --version # 'git version 2.43.0' 15:31:20 using GIT_SSH to set credentials jenkins-ssh 15:31:20 [INFO] Currently running in a labeled security context 15:31:20 [INFO] Currently SELinux is 'enforcing' on the host 15:31:20 > /usr/bin/chcon --type=ssh_home_t /w/workspace/transportpce-tox-verify-transportpce-master@tmp/jenkins-gitclient-ssh16139887945641122164.key 15:31:20 Verifying host key using known hosts file 15:31:20 You're using 'Known hosts file' strategy to verify ssh host keys, but your known_hosts file does not exist, please go to 'Manage Jenkins' -> 'Security' -> 'Git Host Key Verification Configuration' and configure host key verification. 15:31:20 > git fetch --tags --force --progress -- git://devvexx.opendaylight.org/mirror/transportpce +refs/heads/*:refs/remotes/origin/* # timeout=10 15:31:23 > git config remote.origin.url git://devvexx.opendaylight.org/mirror/transportpce # timeout=10 15:31:23 > git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10 15:31:24 > git config remote.origin.url git://devvexx.opendaylight.org/mirror/transportpce # timeout=10 15:31:24 Fetching upstream changes from git://devvexx.opendaylight.org/mirror/transportpce 15:31:24 using GIT_SSH to set credentials jenkins-ssh 15:31:24 [INFO] Currently running in a labeled security context 15:31:24 [INFO] Currently SELinux is 'enforcing' on the host 15:31:24 > /usr/bin/chcon --type=ssh_home_t /w/workspace/transportpce-tox-verify-transportpce-master@tmp/jenkins-gitclient-ssh193349685469244278.key 15:31:24 Verifying host key using known hosts file 15:31:24 You're using 'Known hosts file' strategy to verify ssh host keys, but your known_hosts file does not exist, please go to 'Manage Jenkins' -> 'Security' -> 'Git Host Key Verification Configuration' and configure host key verification. 15:31:24 > git fetch --tags --force --progress -- git://devvexx.opendaylight.org/mirror/transportpce refs/changes/66/110266/6 # timeout=10 15:31:24 > git rev-parse 31634068044299fbc4298df2a6e698024da71dff^{commit} # timeout=10 15:31:24 JENKINS-19022: warning: possible memory leak due to Git plugin usage; see: https://plugins.jenkins.io/git/#remove-git-plugin-buildsbybranch-builddata-script 15:31:24 Checking out Revision 31634068044299fbc4298df2a6e698024da71dff (refs/changes/66/110266/6) 15:31:24 > git config core.sparsecheckout # timeout=10 15:31:24 > git checkout -f 31634068044299fbc4298df2a6e698024da71dff # timeout=10 15:31:27 Commit message: "Refactor RendererServiceOperationsImpl notify" 15:31:27 > git rev-parse FETCH_HEAD^{commit} # timeout=10 15:31:27 > git rev-list --no-walk 154e86960b348bcd78c28a9c05e4fb626c4fab7d # timeout=10 15:31:27 > git remote # timeout=10 15:31:27 > git submodule init # timeout=10 15:31:28 > git submodule sync # timeout=10 15:31:28 > git config --get remote.origin.url # timeout=10 15:31:28 > git submodule init # timeout=10 15:31:28 > git config -f .gitmodules --get-regexp ^submodule\.(.+)\.url # timeout=10 15:31:28 ERROR: No submodules found. 15:31:28 provisioning config files... 15:31:28 copy managed file [npmrc] to file:/home/jenkins/.npmrc 15:31:28 copy managed file [pipconf] to file:/home/jenkins/.config/pip/pip.conf 15:31:28 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins8352693849347560.sh 15:31:28 ---> python-tools-install.sh 15:31:28 Setup pyenv: 15:31:28 system 15:31:28 * 3.8.13 (set by /opt/pyenv/version) 15:31:28 * 3.9.13 (set by /opt/pyenv/version) 15:31:28 * 3.10.6 (set by /opt/pyenv/version) 15:31:32 lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-EKjs 15:31:32 lf-activate-venv(): INFO: Save venv in file: /tmp/.os_lf_venv 15:31:36 lf-activate-venv(): INFO: Installing: lftools 15:32:11 lf-activate-venv(): INFO: Adding /tmp/venv-EKjs/bin to PATH 15:32:11 Generating Requirements File 15:32:40 ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts. 15:32:40 lftools 0.37.9 requires openstacksdk>=2.1.0, but you have openstacksdk 0.62.0 which is incompatible. 15:32:40 Python 3.10.6 15:32:40 pip 24.0 from /tmp/venv-EKjs/lib/python3.10/site-packages/pip (python 3.10) 15:32:41 appdirs==1.4.4 15:32:41 argcomplete==3.2.2 15:32:41 aspy.yaml==1.3.0 15:32:41 attrs==23.2.0 15:32:41 autopage==0.5.2 15:32:41 beautifulsoup4==4.12.3 15:32:41 boto3==1.34.50 15:32:41 botocore==1.34.50 15:32:41 bs4==0.0.2 15:32:41 cachetools==5.3.3 15:32:41 certifi==2024.2.2 15:32:41 cffi==1.16.0 15:32:41 cfgv==3.4.0 15:32:41 chardet==5.2.0 15:32:41 charset-normalizer==3.3.2 15:32:41 click==8.1.7 15:32:41 cliff==4.6.0 15:32:41 cmd2==2.4.3 15:32:41 cryptography==3.3.2 15:32:41 debtcollector==3.0.0 15:32:41 decorator==5.1.1 15:32:41 defusedxml==0.7.1 15:32:41 Deprecated==1.2.14 15:32:41 distlib==0.3.8 15:32:41 dnspython==2.6.1 15:32:41 docker==4.2.2 15:32:41 dogpile.cache==1.3.2 15:32:41 email_validator==2.1.1 15:32:41 filelock==3.13.1 15:32:41 future==1.0.0 15:32:41 gitdb==4.0.11 15:32:41 GitPython==3.1.42 15:32:41 google-auth==2.28.1 15:32:41 httplib2==0.22.0 15:32:41 identify==2.5.35 15:32:41 idna==3.6 15:32:41 importlib-resources==1.5.0 15:32:41 iso8601==2.1.0 15:32:41 Jinja2==3.1.3 15:32:41 jmespath==1.0.1 15:32:41 jsonpatch==1.33 15:32:41 jsonpointer==2.4 15:32:41 jsonschema==4.21.1 15:32:41 jsonschema-specifications==2023.12.1 15:32:41 keystoneauth1==5.6.0 15:32:41 kubernetes==29.0.0 15:32:41 lftools==0.37.9 15:32:41 lxml==5.1.0 15:32:41 MarkupSafe==2.1.5 15:32:41 msgpack==1.0.7 15:32:41 multi_key_dict==2.0.3 15:32:41 munch==4.0.0 15:32:41 netaddr==1.2.1 15:32:41 netifaces==0.11.0 15:32:41 niet==1.4.2 15:32:41 nodeenv==1.8.0 15:32:41 oauth2client==4.1.3 15:32:41 oauthlib==3.2.2 15:32:41 openstacksdk==0.62.0 15:32:41 os-client-config==2.1.0 15:32:41 os-service-types==1.7.0 15:32:41 osc-lib==3.0.1 15:32:41 oslo.config==9.4.0 15:32:41 oslo.context==5.4.0 15:32:41 oslo.i18n==6.3.0 15:32:41 oslo.log==5.5.0 15:32:41 oslo.serialization==5.4.0 15:32:41 oslo.utils==7.1.0 15:32:41 packaging==23.2 15:32:41 pbr==6.0.0 15:32:41 platformdirs==4.2.0 15:32:41 prettytable==3.10.0 15:32:41 pyasn1==0.5.1 15:32:41 pyasn1-modules==0.3.0 15:32:41 pycparser==2.21 15:32:41 pygerrit2==2.0.15 15:32:41 PyGithub==2.2.0 15:32:41 pyinotify==0.9.6 15:32:41 PyJWT==2.8.0 15:32:41 PyNaCl==1.5.0 15:32:41 pyparsing==2.4.7 15:32:41 pyperclip==1.8.2 15:32:41 pyrsistent==0.20.0 15:32:41 python-cinderclient==9.4.0 15:32:41 python-dateutil==2.8.2 15:32:41 python-heatclient==3.4.0 15:32:41 python-jenkins==1.8.2 15:32:41 python-keystoneclient==5.3.0 15:32:41 python-magnumclient==4.3.0 15:32:41 python-novaclient==18.4.0 15:32:41 python-openstackclient==6.0.1 15:32:41 python-swiftclient==4.4.0 15:32:41 PyYAML==6.0.1 15:32:41 referencing==0.33.0 15:32:41 requests==2.31.0 15:32:41 requests-oauthlib==1.3.1 15:32:41 requestsexceptions==1.4.0 15:32:41 rfc3986==2.0.0 15:32:41 rpds-py==0.18.0 15:32:41 rsa==4.9 15:32:41 ruamel.yaml==0.18.6 15:32:41 ruamel.yaml.clib==0.2.8 15:32:41 s3transfer==0.10.0 15:32:41 simplejson==3.19.2 15:32:41 six==1.16.0 15:32:41 smmap==5.0.1 15:32:41 soupsieve==2.5 15:32:41 stevedore==5.2.0 15:32:41 tabulate==0.9.0 15:32:41 toml==0.10.2 15:32:41 tomlkit==0.12.4 15:32:41 tqdm==4.66.2 15:32:41 typing_extensions==4.10.0 15:32:41 tzdata==2024.1 15:32:41 urllib3==1.26.18 15:32:41 virtualenv==20.25.1 15:32:41 wcwidth==0.2.13 15:32:41 websocket-client==1.7.0 15:32:41 wrapt==1.16.0 15:32:41 xdg==6.0.0 15:32:41 xmltodict==0.13.0 15:32:41 yq==3.2.3 15:32:41 [EnvInject] - Injecting environment variables from a build step. 15:32:41 [EnvInject] - Injecting as environment variables the properties content 15:32:41 PYTHON=python3 15:32:41 15:32:41 [EnvInject] - Variables injected successfully. 15:32:41 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins14003076215038904453.sh 15:32:41 ---> tox-install.sh 15:32:41 + source /home/jenkins/lf-env.sh 15:32:41 + lf-activate-venv --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 15:32:41 ++ mktemp -d /tmp/venv-XXXX 15:32:41 + lf_venv=/tmp/venv-R58v 15:32:41 + local venv_file=/tmp/.os_lf_venv 15:32:41 + local python=python3 15:32:41 + local options 15:32:41 + local set_path=true 15:32:41 + local install_args= 15:32:41 ++ getopt -o np:v: -l no-path,system-site-packages,python:,venv-file: -n lf-activate-venv -- --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 15:32:41 + options=' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 15:32:41 + eval set -- ' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 15:32:41 ++ set -- --venv-file /tmp/.toxenv -- tox virtualenv urllib3~=1.26.15 15:32:41 + true 15:32:41 + case $1 in 15:32:41 + venv_file=/tmp/.toxenv 15:32:41 + shift 2 15:32:41 + true 15:32:41 + case $1 in 15:32:41 + shift 15:32:41 + break 15:32:41 + case $python in 15:32:41 + local pkg_list= 15:32:41 + [[ -d /opt/pyenv ]] 15:32:41 + echo 'Setup pyenv:' 15:32:41 Setup pyenv: 15:32:41 + export PYENV_ROOT=/opt/pyenv 15:32:41 + PYENV_ROOT=/opt/pyenv 15:32:41 + export PATH=/opt/pyenv/bin:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin 15:32:41 + PATH=/opt/pyenv/bin:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin 15:32:41 + pyenv versions 15:32:41 system 15:32:41 3.8.13 15:32:41 3.9.13 15:32:41 * 3.10.6 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 15:32:41 + command -v pyenv 15:32:41 ++ pyenv init - --no-rehash 15:32:41 + eval 'PATH="$(bash --norc -ec '\''IFS=:; paths=($PATH); for i in ${!paths[@]}; do if [[ ${paths[i]} == "'\''/opt/pyenv/shims'\''" ]]; then unset '\''\'\'''\''paths[i]'\''\'\'''\''; fi; done; echo "${paths[*]}"'\'')" 15:32:41 export PATH="/opt/pyenv/shims:${PATH}" 15:32:41 export PYENV_SHELL=bash 15:32:41 source '\''/opt/pyenv/libexec/../completions/pyenv.bash'\'' 15:32:41 pyenv() { 15:32:41 local command 15:32:41 command="${1:-}" 15:32:41 if [ "$#" -gt 0 ]; then 15:32:41 shift 15:32:41 fi 15:32:41 15:32:41 case "$command" in 15:32:41 rehash|shell) 15:32:41 eval "$(pyenv "sh-$command" "$@")" 15:32:41 ;; 15:32:41 *) 15:32:41 command pyenv "$command" "$@" 15:32:41 ;; 15:32:41 esac 15:32:41 }' 15:32:41 +++ bash --norc -ec 'IFS=:; paths=($PATH); for i in ${!paths[@]}; do if [[ ${paths[i]} == "/opt/pyenv/shims" ]]; then unset '\''paths[i]'\''; fi; done; echo "${paths[*]}"' 15:32:41 ++ PATH=/opt/pyenv/bin:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin 15:32:41 ++ export PATH=/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin 15:32:41 ++ PATH=/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin 15:32:41 ++ export PYENV_SHELL=bash 15:32:41 ++ PYENV_SHELL=bash 15:32:41 ++ source /opt/pyenv/libexec/../completions/pyenv.bash 15:32:41 +++ complete -F _pyenv pyenv 15:32:41 ++ lf-pyver python3 15:32:41 ++ local py_version_xy=python3 15:32:41 ++ local py_version_xyz= 15:32:41 ++ pyenv versions 15:32:41 ++ local command 15:32:41 ++ command=versions 15:32:41 ++ '[' 1 -gt 0 ']' 15:32:41 ++ shift 15:32:41 ++ case "$command" in 15:32:41 ++ command pyenv versions 15:32:41 ++ pyenv versions 15:32:41 ++ grep -E '^[0-9.]*[0-9]$' 15:32:41 ++ sed 's/^[ *]* //' 15:32:41 ++ awk '{ print $1 }' 15:32:41 ++ [[ ! -s /tmp/.pyenv_versions ]] 15:32:41 +++ grep '^3' /tmp/.pyenv_versions 15:32:41 +++ sort -V 15:32:41 +++ tail -n 1 15:32:41 ++ py_version_xyz=3.10.6 15:32:41 ++ [[ -z 3.10.6 ]] 15:32:41 ++ echo 3.10.6 15:32:41 ++ return 0 15:32:41 + pyenv local 3.10.6 15:32:41 + local command 15:32:41 + command=local 15:32:41 + '[' 2 -gt 0 ']' 15:32:41 + shift 15:32:41 + case "$command" in 15:32:41 + command pyenv local 3.10.6 15:32:41 + pyenv local 3.10.6 15:32:41 + for arg in "$@" 15:32:41 + case $arg in 15:32:41 + pkg_list+='tox ' 15:32:41 + for arg in "$@" 15:32:41 + case $arg in 15:32:41 + pkg_list+='virtualenv ' 15:32:41 + for arg in "$@" 15:32:41 + case $arg in 15:32:41 + pkg_list+='urllib3~=1.26.15 ' 15:32:41 + [[ -f /tmp/.toxenv ]] 15:32:41 + [[ ! -f /tmp/.toxenv ]] 15:32:41 + [[ -n '' ]] 15:32:41 + python3 -m venv /tmp/venv-R58v 15:32:45 + echo 'lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-R58v' 15:32:45 lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-R58v 15:32:45 + echo /tmp/venv-R58v 15:32:45 + echo 'lf-activate-venv(): INFO: Save venv in file: /tmp/.toxenv' 15:32:45 lf-activate-venv(): INFO: Save venv in file: /tmp/.toxenv 15:32:45 + /tmp/venv-R58v/bin/python3 -m pip install --upgrade --quiet pip virtualenv 15:32:48 + [[ -z tox virtualenv urllib3~=1.26.15 ]] 15:32:48 + echo 'lf-activate-venv(): INFO: Installing: tox virtualenv urllib3~=1.26.15 ' 15:32:48 lf-activate-venv(): INFO: Installing: tox virtualenv urllib3~=1.26.15 15:32:48 + /tmp/venv-R58v/bin/python3 -m pip install --upgrade --quiet --upgrade-strategy eager tox virtualenv urllib3~=1.26.15 15:32:50 + type python3 15:32:50 + true 15:32:50 + echo 'lf-activate-venv(): INFO: Adding /tmp/venv-R58v/bin to PATH' 15:32:50 lf-activate-venv(): INFO: Adding /tmp/venv-R58v/bin to PATH 15:32:50 + PATH=/tmp/venv-R58v/bin:/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin 15:32:50 + return 0 15:32:50 + python3 --version 15:32:50 Python 3.10.6 15:32:50 + python3 -m pip --version 15:32:51 pip 24.0 from /tmp/venv-R58v/lib/python3.10/site-packages/pip (python 3.10) 15:32:51 + python3 -m pip freeze 15:32:51 cachetools==5.3.3 15:32:51 chardet==5.2.0 15:32:51 colorama==0.4.6 15:32:51 distlib==0.3.8 15:32:51 filelock==3.13.1 15:32:51 packaging==23.2 15:32:51 platformdirs==4.2.0 15:32:51 pluggy==1.4.0 15:32:51 pyproject-api==1.6.1 15:32:51 tomli==2.0.1 15:32:51 tox==4.13.0 15:32:51 urllib3==1.26.18 15:32:51 virtualenv==20.25.1 15:32:51 [transportpce-tox-verify-transportpce-master] $ /bin/sh -xe /tmp/jenkins11742102410208308924.sh 15:32:51 [EnvInject] - Injecting environment variables from a build step. 15:32:51 [EnvInject] - Injecting as environment variables the properties content 15:32:51 PARALLEL=True 15:32:51 15:32:51 [EnvInject] - Variables injected successfully. 15:32:51 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins10965209766049028266.sh 15:32:51 ---> tox-run.sh 15:32:51 + PATH=/home/jenkins/.local/bin:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin 15:32:51 + ARCHIVE_TOX_DIR=/w/workspace/transportpce-tox-verify-transportpce-master/archives/tox 15:32:51 + ARCHIVE_DOC_DIR=/w/workspace/transportpce-tox-verify-transportpce-master/archives/docs 15:32:51 + mkdir -p /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox 15:32:51 + cd /w/workspace/transportpce-tox-verify-transportpce-master/. 15:32:51 + source /home/jenkins/lf-env.sh 15:32:51 + lf-activate-venv --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 15:32:51 ++ mktemp -d /tmp/venv-XXXX 15:32:51 + lf_venv=/tmp/venv-Tnfc 15:32:51 + local venv_file=/tmp/.os_lf_venv 15:32:51 + local python=python3 15:32:51 + local options 15:32:51 + local set_path=true 15:32:51 + local install_args= 15:32:51 ++ getopt -o np:v: -l no-path,system-site-packages,python:,venv-file: -n lf-activate-venv -- --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 15:32:51 + options=' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 15:32:51 + eval set -- ' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' 15:32:51 ++ set -- --venv-file /tmp/.toxenv -- tox virtualenv urllib3~=1.26.15 15:32:51 + true 15:32:51 + case $1 in 15:32:51 + venv_file=/tmp/.toxenv 15:32:51 + shift 2 15:32:51 + true 15:32:51 + case $1 in 15:32:51 + shift 15:32:51 + break 15:32:51 + case $python in 15:32:51 + local pkg_list= 15:32:51 + [[ -d /opt/pyenv ]] 15:32:51 + echo 'Setup pyenv:' 15:32:51 Setup pyenv: 15:32:51 + export PYENV_ROOT=/opt/pyenv 15:32:51 + PYENV_ROOT=/opt/pyenv 15:32:51 + export PATH=/opt/pyenv/bin:/home/jenkins/.local/bin:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin 15:32:51 + PATH=/opt/pyenv/bin:/home/jenkins/.local/bin:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin 15:32:51 + pyenv versions 15:32:51 system 15:32:51 3.8.13 15:32:51 3.9.13 15:32:51 * 3.10.6 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 15:32:51 + command -v pyenv 15:32:51 ++ pyenv init - --no-rehash 15:32:51 + eval 'PATH="$(bash --norc -ec '\''IFS=:; paths=($PATH); for i in ${!paths[@]}; do if [[ ${paths[i]} == "'\''/opt/pyenv/shims'\''" ]]; then unset '\''\'\'''\''paths[i]'\''\'\'''\''; fi; done; echo "${paths[*]}"'\'')" 15:32:51 export PATH="/opt/pyenv/shims:${PATH}" 15:32:51 export PYENV_SHELL=bash 15:32:51 source '\''/opt/pyenv/libexec/../completions/pyenv.bash'\'' 15:32:51 pyenv() { 15:32:51 local command 15:32:51 command="${1:-}" 15:32:51 if [ "$#" -gt 0 ]; then 15:32:51 shift 15:32:51 fi 15:32:51 15:32:51 case "$command" in 15:32:51 rehash|shell) 15:32:51 eval "$(pyenv "sh-$command" "$@")" 15:32:51 ;; 15:32:51 *) 15:32:51 command pyenv "$command" "$@" 15:32:51 ;; 15:32:51 esac 15:32:51 }' 15:32:51 +++ bash --norc -ec 'IFS=:; paths=($PATH); for i in ${!paths[@]}; do if [[ ${paths[i]} == "/opt/pyenv/shims" ]]; then unset '\''paths[i]'\''; fi; done; echo "${paths[*]}"' 15:32:51 ++ PATH=/opt/pyenv/bin:/home/jenkins/.local/bin:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin 15:32:51 ++ export PATH=/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin 15:32:51 ++ PATH=/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin 15:32:51 ++ export PYENV_SHELL=bash 15:32:51 ++ PYENV_SHELL=bash 15:32:51 ++ source /opt/pyenv/libexec/../completions/pyenv.bash 15:32:51 +++ complete -F _pyenv pyenv 15:32:51 ++ lf-pyver python3 15:32:51 ++ local py_version_xy=python3 15:32:51 ++ local py_version_xyz= 15:32:51 ++ pyenv versions 15:32:51 ++ local command 15:32:51 ++ command=versions 15:32:51 ++ '[' 1 -gt 0 ']' 15:32:51 ++ shift 15:32:51 ++ case "$command" in 15:32:51 ++ command pyenv versions 15:32:51 ++ pyenv versions 15:32:51 ++ sed 's/^[ *]* //' 15:32:51 ++ grep -E '^[0-9.]*[0-9]$' 15:32:51 ++ awk '{ print $1 }' 15:32:51 ++ [[ ! -s /tmp/.pyenv_versions ]] 15:32:51 +++ grep '^3' /tmp/.pyenv_versions 15:32:51 +++ sort -V 15:32:51 +++ tail -n 1 15:32:51 ++ py_version_xyz=3.10.6 15:32:51 ++ [[ -z 3.10.6 ]] 15:32:51 ++ echo 3.10.6 15:32:51 ++ return 0 15:32:51 + pyenv local 3.10.6 15:32:51 + local command 15:32:51 + command=local 15:32:51 + '[' 2 -gt 0 ']' 15:32:51 + shift 15:32:51 + case "$command" in 15:32:51 + command pyenv local 3.10.6 15:32:51 + pyenv local 3.10.6 15:32:51 + for arg in "$@" 15:32:51 + case $arg in 15:32:51 + pkg_list+='tox ' 15:32:51 + for arg in "$@" 15:32:51 + case $arg in 15:32:51 + pkg_list+='virtualenv ' 15:32:51 + for arg in "$@" 15:32:51 + case $arg in 15:32:51 + pkg_list+='urllib3~=1.26.15 ' 15:32:51 + [[ -f /tmp/.toxenv ]] 15:32:51 ++ cat /tmp/.toxenv 15:32:51 + lf_venv=/tmp/venv-R58v 15:32:51 + echo 'lf-activate-venv(): INFO: Reuse venv:/tmp/venv-R58v from' file:/tmp/.toxenv 15:32:51 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-R58v from file:/tmp/.toxenv 15:32:51 + /tmp/venv-R58v/bin/python3 -m pip install --upgrade --quiet pip virtualenv 15:32:52 + [[ -z tox virtualenv urllib3~=1.26.15 ]] 15:32:52 + echo 'lf-activate-venv(): INFO: Installing: tox virtualenv urllib3~=1.26.15 ' 15:32:52 lf-activate-venv(): INFO: Installing: tox virtualenv urllib3~=1.26.15 15:32:52 + /tmp/venv-R58v/bin/python3 -m pip install --upgrade --quiet --upgrade-strategy eager tox virtualenv urllib3~=1.26.15 15:32:54 + type python3 15:32:54 + true 15:32:54 + echo 'lf-activate-venv(): INFO: Adding /tmp/venv-R58v/bin to PATH' 15:32:54 lf-activate-venv(): INFO: Adding /tmp/venv-R58v/bin to PATH 15:32:54 + PATH=/tmp/venv-R58v/bin:/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin 15:32:54 + return 0 15:32:54 + [[ -d /opt/pyenv ]] 15:32:54 + echo '---> Setting up pyenv' 15:32:54 ---> Setting up pyenv 15:32:54 + export PYENV_ROOT=/opt/pyenv 15:32:54 + PYENV_ROOT=/opt/pyenv 15:32:54 + export PATH=/opt/pyenv/bin:/tmp/venv-R58v/bin:/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin 15:32:54 + PATH=/opt/pyenv/bin:/tmp/venv-R58v/bin:/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin 15:32:54 ++ pwd 15:32:54 + PYTHONPATH=/w/workspace/transportpce-tox-verify-transportpce-master 15:32:54 + export PYTHONPATH 15:32:54 + export TOX_TESTENV_PASSENV=PYTHONPATH 15:32:54 + TOX_TESTENV_PASSENV=PYTHONPATH 15:32:54 + tox --version 15:32:54 4.13.0 from /tmp/venv-R58v/lib/python3.10/site-packages/tox/__init__.py 15:32:54 + PARALLEL=True 15:32:54 + TOX_OPTIONS_LIST= 15:32:54 + [[ -n '' ]] 15:32:54 + case ${PARALLEL,,} in 15:32:54 + TOX_OPTIONS_LIST=' --parallel auto --parallel-live' 15:32:54 + tox --parallel auto --parallel-live 15:32:54 + tee -a /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tox.log 15:32:56 docs-linkcheck: install_deps> python -I -m pip install -r docs/requirements.txt 15:32:56 docs: install_deps> python -I -m pip install -r docs/requirements.txt 15:32:56 buildcontroller: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 15:32:56 checkbashisms: freeze> python -m pip freeze --all 15:32:57 checkbashisms: pip==24.0,setuptools==69.1.0,wheel==0.42.0 15:32:57 checkbashisms: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> sh -c 'command checkbashisms>/dev/null || sudo yum install -y devscripts-checkbashisms || sudo yum install -y devscripts-minimal || sudo yum install -y devscripts || sudo yum install -y https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/31/Everything/x86_64/os/Packages/d/devscripts-checkbashisms-2.19.6-2.fc31.x86_64.rpm || (echo "checkbashisms command not found - please install it (e.g. sudo apt-get install devscripts | yum install devscripts-minimal )" >&2 && exit 1)' 15:32:57 /usr/bin/sh: checkbashisms: command not found 15:33:00 CentOS Stream 8 - AppStream 11 MB/s | 27 MB 00:02 15:33:03 buildcontroller: freeze> python -m pip freeze --all 15:33:03 buildcontroller: bcrypt==4.1.2,certifi==2024.2.2,cffi==1.16.0,charset-normalizer==3.3.2,cryptography==42.0.5,dict2xml==1.7.5,exceptiongroup==1.2.0,idna==3.6,iniconfig==2.0.0,lxml==5.1.0,netconf-client==3.0.0,packaging==23.2,paramiko==3.4.0,pip==24.0,pluggy==1.4.0,psutil==5.9.8,pycparser==2.21,PyNaCl==1.5.0,pytest==8.0.2,requests==2.31.0,setuptools==69.1.0,tomli==2.0.1,urllib3==2.2.1,wheel==0.42.0 15:33:03 buildcontroller: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_controller.sh 15:33:03 which: no mvn in (/w/workspace/transportpce-tox-verify-transportpce-master/.tox/buildcontroller/bin:/opt/pyenv/bin:/tmp/venv-R58v/bin:/opt/pyenv/shims:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin) 15:33:03 + JAVA_CMD=java 15:33:03 + '[' -n '' ']' 15:33:03 ++ java -version 15:33:03 ++ sed -n ';s/.* version "\(.*\)\.\(.*\)\..*".*$/\1/p;' 15:33:03 + JAVA_VER=11 15:33:03 + echo 11 15:33:03 + JAVAC_CMD=javac 15:33:03 + '[' -n '' ']' 15:33:03 11 15:33:03 ++ sed -n ';s/javac \(.*\)\.\(.*\)\..*.*$/\1/p;' 15:33:03 ++ javac -version 15:33:04 + JAVAC_VER=11 15:33:04 + echo 11 15:33:04 + '[' 11 -ge 17 -a 11 -ge 17 ']' 15:33:04 + echo 'install java 17' 15:33:04 + sudo yum install -y java-17-openjdk java-17-openjdk-devel 15:33:04 11 15:33:04 install java 17 15:33:04 Waiting for process with pid 6903 to finish. 15:33:07 CentOS Stream 8 - BaseOS 14 MB/s | 10 MB 00:00 15:33:09 CentOS Stream 8 - Extras 49 kB/s | 18 kB 00:00 15:33:09 CentOS Stream 8 - Extras common packages 82 kB/s | 6.9 kB 00:00 15:33:10 CentOS Stream 8 - PowerTools 12 MB/s | 4.9 MB 00:00 15:33:11 Docker CE Stable - x86_64 112 kB/s | 57 kB 00:00 15:33:12 Extra Packages for Enterprise Linux 8 - x86_64 19 MB/s | 16 MB 00:00 15:33:17 Node.js Packages for Enterprise Linux 8 - x86_6 2.6 MB/s | 710 kB 00:00 15:33:18 Puppet Repository el 8 - x86_64 44 MB/s | 19 MB 00:00 15:33:19 docs-linkcheck: freeze> python -m pip freeze --all 15:33:19 docs: freeze> python -m pip freeze --all 15:33:20 docs-linkcheck: alabaster==0.7.16,attrs==23.2.0,Babel==2.14.0,blockdiag==3.0.0,certifi==2024.2.2,charset-normalizer==3.3.2,contourpy==1.2.0,cycler==0.12.1,docutils==0.20.1,fonttools==4.49.0,funcparserlib==2.0.0a0,future==1.0.0,idna==3.6,imagesize==1.4.1,Jinja2==3.1.3,jsonschema==3.2.0,kiwisolver==1.4.5,lfdocs-conf==0.9.0,MarkupSafe==2.1.5,matplotlib==3.8.3,numpy==1.26.4,nwdiag==3.0.0,packaging==23.2,pillow==10.2.0,pip==24.0,Pygments==2.17.2,pyparsing==3.1.1,pyrsistent==0.20.0,python-dateutil==2.8.2,PyYAML==6.0.1,requests==2.31.0,requests-file==1.5.1,seqdiag==3.0.0,setuptools==69.1.0,six==1.16.0,snowballstemmer==2.2.0,Sphinx==7.2.6,sphinx-bootstrap-theme==0.8.1,sphinx-data-viewer==0.1.4,sphinx-rtd-theme==2.0.0,sphinx-tabs==3.4.5,sphinxcontrib-applehelp==1.0.8,sphinxcontrib-blockdiag==3.0.0,sphinxcontrib-devhelp==1.0.6,sphinxcontrib-htmlhelp==2.0.5,sphinxcontrib-jquery==4.1,sphinxcontrib-jsmath==1.0.1,sphinxcontrib-needs==0.7.9,sphinxcontrib-nwdiag==2.0.0,sphinxcontrib-plantuml==0.28,sphinxcontrib-qthelp==1.0.7,sphinxcontrib-seqdiag==3.0.0,sphinxcontrib-serializinghtml==1.1.10,sphinxcontrib-swaggerdoc==0.1.7,urllib3==2.2.1,webcolors==1.13,wheel==0.42.0 15:33:20 docs-linkcheck: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> sphinx-build -q -b linkcheck -d /w/workspace/transportpce-tox-verify-transportpce-master/.tox/docs-linkcheck/tmp/doctrees ../docs/ /w/workspace/transportpce-tox-verify-transportpce-master/docs/_build/linkcheck 15:33:20 docs: alabaster==0.7.16,attrs==23.2.0,Babel==2.14.0,blockdiag==3.0.0,certifi==2024.2.2,charset-normalizer==3.3.2,contourpy==1.2.0,cycler==0.12.1,docutils==0.20.1,fonttools==4.49.0,funcparserlib==2.0.0a0,future==1.0.0,idna==3.6,imagesize==1.4.1,Jinja2==3.1.3,jsonschema==3.2.0,kiwisolver==1.4.5,lfdocs-conf==0.9.0,MarkupSafe==2.1.5,matplotlib==3.8.3,numpy==1.26.4,nwdiag==3.0.0,packaging==23.2,pillow==10.2.0,pip==24.0,Pygments==2.17.2,pyparsing==3.1.1,pyrsistent==0.20.0,python-dateutil==2.8.2,PyYAML==6.0.1,requests==2.31.0,requests-file==1.5.1,seqdiag==3.0.0,setuptools==69.1.0,six==1.16.0,snowballstemmer==2.2.0,Sphinx==7.2.6,sphinx-bootstrap-theme==0.8.1,sphinx-data-viewer==0.1.4,sphinx-rtd-theme==2.0.0,sphinx-tabs==3.4.5,sphinxcontrib-applehelp==1.0.8,sphinxcontrib-blockdiag==3.0.0,sphinxcontrib-devhelp==1.0.6,sphinxcontrib-htmlhelp==2.0.5,sphinxcontrib-jquery==4.1,sphinxcontrib-jsmath==1.0.1,sphinxcontrib-needs==0.7.9,sphinxcontrib-nwdiag==2.0.0,sphinxcontrib-plantuml==0.28,sphinxcontrib-qthelp==1.0.7,sphinxcontrib-seqdiag==3.0.0,sphinxcontrib-serializinghtml==1.1.10,sphinxcontrib-swaggerdoc==0.1.7,urllib3==2.2.1,webcolors==1.13,wheel==0.42.0 15:33:20 docs: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> sphinx-build -q -W --keep-going -b html -n -d /w/workspace/transportpce-tox-verify-transportpce-master/.tox/docs/tmp/doctrees ../docs/ /w/workspace/transportpce-tox-verify-transportpce-master/docs/_build/html 15:33:22 docs: OK ✔ in 27.4 seconds 15:33:22 pre-commit: install_deps> python -I -m pip install pre-commit 15:33:22 Last metadata expiration check: 0:00:04 ago on Tue 27 Feb 2024 03:33:18 PM UTC. 15:33:23 docs-linkcheck: OK ✔ in 28.43 seconds 15:33:23 pylint: install_deps> python -I -m pip install 'pylint>=2.6.0' 15:33:25 pre-commit: freeze> python -m pip freeze --all 15:33:25 No match for argument: devscripts-checkbashisms 15:33:25 pre-commit: cfgv==3.4.0,distlib==0.3.8,filelock==3.13.1,identify==2.5.35,nodeenv==1.8.0,pip==24.0,platformdirs==4.2.0,pre-commit==3.6.2,PyYAML==6.0.1,setuptools==69.1.0,virtualenv==20.25.1,wheel==0.42.0 15:33:25 pre-commit: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> pre-commit run --all-files --show-diff-on-failure 15:33:25 Error: Unable to find a match: devscripts-checkbashisms 15:33:26 [INFO] Initializing environment for https://github.com/pre-commit/pre-commit-hooks. 15:33:26 Package java-17-openjdk-1:17.0.6.0.9-0.3.ea.el8.x86_64 is already installed. 15:33:26 Package java-17-openjdk-devel-1:17.0.6.0.9-0.3.ea.el8.x86_64 is already installed. 15:33:26 Dependencies resolved. 15:33:26 Nothing to do. 15:33:26 Complete! 15:33:26 ++ ls -tr1 /usr/lib/jvm/ 15:33:26 ++ tail -1 15:33:26 ++ grep java-17-openjdk-17 15:33:26 + last_installed_jdk17=java-17-openjdk-17.0.6.0.9-0.3.ea.el8.x86_64 15:33:26 + '[' -n java-17-openjdk-17.0.6.0.9-0.3.ea.el8.x86_64 ']' 15:33:26 + sudo alternatives --set java /usr/lib/jvm/java-17-openjdk-17.0.6.0.9-0.3.ea.el8.x86_64/bin/java 15:33:26 + sudo alternatives --set javac /usr/lib/jvm/java-17-openjdk-17.0.6.0.9-0.3.ea.el8.x86_64/bin/javac 15:33:26 + wget -nv https://dlcdn.apache.org/maven/maven-3/3.8.8/binaries/apache-maven-3.8.8-bin.tar.gz -P /tmp 15:33:26 pylint: freeze> python -m pip freeze --all 15:33:26 2024-02-27 15:33:26 URL:https://dlcdn.apache.org/maven/maven-3/3.8.8/binaries/apache-maven-3.8.8-bin.tar.gz [8296049/8296049] -> "/tmp/apache-maven-3.8.8-bin.tar.gz" [1] 15:33:26 + sudo mkdir -p /opt 15:33:26 + sudo tar xf /tmp/apache-maven-3.8.8-bin.tar.gz -C /opt 15:33:26 [INFO] Initializing environment for https://github.com/jorisroovers/gitlint. 15:33:26 + sudo ln -s /opt/apache-maven-3.8.8 /opt/maven 15:33:26 + sudo ln -s /opt/maven/bin/mvn /usr/bin/mvn 15:33:26 Last metadata expiration check: 0:00:08 ago on Tue 27 Feb 2024 03:33:18 PM UTC. 15:33:26 NOTE: Picked up JDK_JAVA_OPTIONS: 15:33:26 --add-opens=java.base/java.io=ALL-UNNAMED 15:33:26 --add-opens=java.base/java.lang=ALL-UNNAMED 15:33:26 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 15:33:26 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 15:33:26 --add-opens=java.base/java.net=ALL-UNNAMED 15:33:26 --add-opens=java.base/java.nio=ALL-UNNAMED 15:33:26 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 15:33:26 --add-opens=java.base/java.nio.file=ALL-UNNAMED 15:33:26 --add-opens=java.base/java.util=ALL-UNNAMED 15:33:26 --add-opens=java.base/java.util.jar=ALL-UNNAMED 15:33:26 --add-opens=java.base/java.util.stream=ALL-UNNAMED 15:33:26 --add-opens=java.base/java.util.zip=ALL-UNNAMED 15:33:26 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 15:33:26 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 15:33:26 -Xlog:disable 15:33:26 pylint: astroid==3.1.0,dill==0.3.8,isort==5.13.2,mccabe==0.7.0,pip==24.0,platformdirs==4.2.0,pylint==3.1.0,setuptools==69.1.0,tomli==2.0.1,tomlkit==0.12.4,typing_extensions==4.10.0,wheel==0.42.0 15:33:26 pylint: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> find transportpce_tests/ -name '*.py' -exec pylint --fail-under=10 --max-line-length=120 --disable=missing-docstring,import-error --disable=fixme --disable=duplicate-code '--module-rgx=([a-z0-9_]+$)|([0-9.]{1,30}$)' '--method-rgx=(([a-z_][a-zA-Z0-9_]{2,})|(_[a-z0-9_]*)|(__[a-zA-Z][a-zA-Z0-9_]+__))$' '--variable-rgx=[a-zA-Z_][a-zA-Z0-9_]{1,30}$' '{}' + 15:33:27 [INFO] Initializing environment for https://github.com/jorisroovers/gitlint:./gitlint-core[trusted-deps]. 15:33:28 No match for argument: devscripts-minimal 15:33:28 Error: Unable to find a match: devscripts-minimal 15:33:28 [INFO] Initializing environment for https://github.com/Lucas-C/pre-commit-hooks. 15:33:29 [INFO] Initializing environment for https://github.com/pre-commit/mirrors-autopep8. 15:33:29 Last metadata expiration check: 0:00:11 ago on Tue 27 Feb 2024 03:33:18 PM UTC. 15:33:29 [INFO] Installing environment for https://github.com/pre-commit/pre-commit-hooks. 15:33:29 [INFO] Once installed this environment will be reused. 15:33:29 [INFO] This may take a few minutes... 15:33:31 No match for argument: devscripts 15:33:31 Error: Unable to find a match: devscripts 15:33:33 Last metadata expiration check: 0:00:15 ago on Tue 27 Feb 2024 03:33:18 PM UTC. 15:33:35 [INFO] Installing environment for https://github.com/Lucas-C/pre-commit-hooks. 15:33:35 [INFO] Once installed this environment will be reused. 15:33:35 [INFO] This may take a few minutes... 15:33:35 devscripts-checkbashisms-2.19.6-2.fc31.x86_64.r 310 kB/s | 29 kB 00:00 15:33:35 Dependencies resolved. 15:33:35 ================================================================================ 15:33:35 Package Arch Version Repository Size 15:33:35 ================================================================================ 15:33:35 Installing: 15:33:35 devscripts-checkbashisms x86_64 2.19.6-2.fc31 @commandline 29 k 15:33:35 15:33:35 Transaction Summary 15:33:35 ================================================================================ 15:33:35 Install 1 Package 15:33:35 15:33:35 Total size: 29 k 15:33:35 Installed size: 52 k 15:33:35 Downloading Packages: 15:33:35 Running transaction check 15:33:36 Transaction check succeeded. 15:33:36 Running transaction test 15:33:36 Transaction test succeeded. 15:33:36 Running transaction 15:33:36 Preparing : 1/1 15:33:36 Installing : devscripts-checkbashisms-2.19.6-2.fc31.x86_64 1/1 15:33:36 Running scriptlet: devscripts-checkbashisms-2.19.6-2.fc31.x86_64 1/1 15:33:37 Verifying : devscripts-checkbashisms-2.19.6-2.fc31.x86_64 1/1 15:33:37 15:33:37 Installed: 15:33:37 devscripts-checkbashisms-2.19.6-2.fc31.x86_64 15:33:37 15:33:37 Complete! 15:33:38 checkbashisms: commands[1] /w/workspace/transportpce-tox-verify-transportpce-master/tests> find . -not -path '*/\.*' -name '*.sh' -exec checkbashisms -f '{}' + 15:33:38 script ./reflectwarn.sh does not appear to have a #! interpreter line; 15:33:38 you may get strange results 15:33:41 [INFO] Installing environment for https://github.com/pre-commit/mirrors-autopep8. 15:33:41 [INFO] Once installed this environment will be reused. 15:33:41 [INFO] This may take a few minutes... 15:33:44 trim trailing whitespace.................................................Passed 15:33:44 Tabs remover.............................................................Passed 15:33:45 autopep8.................................................................Passed 15:33:48 checkbashisms: OK ✔ in 43.9 seconds 15:33:48 pre-commit: commands[1] /w/workspace/transportpce-tox-verify-transportpce-master/tests> pre-commit run gitlint-ci --hook-stage manual 15:33:49 15:33:49 ------------------------------------ 15:33:49 Your code has been rated at 10.00/10 15:33:49 15:33:49 [INFO] Installing environment for https://github.com/jorisroovers/gitlint. 15:33:49 [INFO] Once installed this environment will be reused. 15:33:49 [INFO] This may take a few minutes... 15:33:56 gitlint..................................................................Passed 15:35:43 pylint: OK ✔ in 27.66 seconds 15:35:43 pre-commit: OK ✔ in 34.55 seconds 15:35:43 buildcontroller: OK ✔ in 2 minutes 46.97 seconds 15:35:43 sims221: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 15:35:43 build_karaf_tests121: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 15:35:43 sims121: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 15:35:43 testsPCE: install_deps> python -I -m pip install gnpy4tpce==2.4.7 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 15:35:50 sims221: freeze> python -m pip freeze --all 15:35:50 build_karaf_tests121: freeze> python -m pip freeze --all 15:35:50 sims221: bcrypt==4.1.2,certifi==2024.2.2,cffi==1.16.0,charset-normalizer==3.3.2,cryptography==42.0.5,dict2xml==1.7.5,exceptiongroup==1.2.0,idna==3.6,iniconfig==2.0.0,lxml==5.1.0,netconf-client==3.0.0,packaging==23.2,paramiko==3.4.0,pip==24.0,pluggy==1.4.0,psutil==5.9.8,pycparser==2.21,PyNaCl==1.5.0,pytest==8.0.2,requests==2.31.0,setuptools==69.1.0,tomli==2.0.1,urllib3==2.2.1,wheel==0.42.0 15:35:50 sims221: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./install_sims.sh 2.2.1 15:35:50 Installing lightynode device to ./lightynode/lightynode-openroadm-device directory 15:35:50 sims121: freeze> python -m pip freeze --all 15:35:50 build_karaf_tests121: bcrypt==4.1.2,certifi==2024.2.2,cffi==1.16.0,charset-normalizer==3.3.2,cryptography==42.0.5,dict2xml==1.7.5,exceptiongroup==1.2.0,idna==3.6,iniconfig==2.0.0,lxml==5.1.0,netconf-client==3.0.0,packaging==23.2,paramiko==3.4.0,pip==24.0,pluggy==1.4.0,psutil==5.9.8,pycparser==2.21,PyNaCl==1.5.0,pytest==8.0.2,requests==2.31.0,setuptools==69.1.0,tomli==2.0.1,urllib3==2.2.1,wheel==0.42.0 15:35:50 build_karaf_tests121: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 15:35:51 NOTE: Picked up JDK_JAVA_OPTIONS: 15:35:51 --add-opens=java.base/java.io=ALL-UNNAMED 15:35:51 --add-opens=java.base/java.lang=ALL-UNNAMED 15:35:51 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 15:35:51 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 15:35:51 --add-opens=java.base/java.net=ALL-UNNAMED 15:35:51 --add-opens=java.base/java.nio=ALL-UNNAMED 15:35:51 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 15:35:51 --add-opens=java.base/java.nio.file=ALL-UNNAMED 15:35:51 --add-opens=java.base/java.util=ALL-UNNAMED 15:35:51 --add-opens=java.base/java.util.jar=ALL-UNNAMED 15:35:51 --add-opens=java.base/java.util.stream=ALL-UNNAMED 15:35:51 --add-opens=java.base/java.util.zip=ALL-UNNAMED 15:35:51 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 15:35:51 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 15:35:51 -Xlog:disable 15:35:51 sims121: bcrypt==4.1.2,certifi==2024.2.2,cffi==1.16.0,charset-normalizer==3.3.2,cryptography==42.0.5,dict2xml==1.7.5,exceptiongroup==1.2.0,idna==3.6,iniconfig==2.0.0,lxml==5.1.0,netconf-client==3.0.0,packaging==23.2,paramiko==3.4.0,pip==24.0,pluggy==1.4.0,psutil==5.9.8,pycparser==2.21,PyNaCl==1.5.0,pytest==8.0.2,requests==2.31.0,setuptools==69.1.0,tomli==2.0.1,urllib3==2.2.1,wheel==0.42.0 15:35:51 sims121: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./install_sims.sh 1.2.1 15:35:51 Installing lightynode device to ./lightynode/lightynode-openroadm-device directory 15:35:53 replace ./lightynode/lighty-openroadm-device-18.1.0.8/lighty-openroadm-device-18.1.0.8.jar? [y]es, [n]o, [A]ll, [N]one, [r]ename: NULL 15:35:53 (EOF or read error, treating as "[N]one" ...) 15:35:53 replace ./lightynode/lighty-openroadm-device-18.1.0.8/lib/rfc8529-11.0.9.jar? [y]es, [n]o, [A]ll, [N]one, [r]ename: NULL 15:35:53 (EOF or read error, treating as "[N]one" ...) 15:35:53 mv: cannot stat './lightynode/lighty-openroadm-device-18.1.0.8': No such file or directory 15:35:54 sims121: OK ✔ in 12.03 seconds 15:35:54 sims221: OK ✔ in 12.07 seconds 15:35:54 build_karaf_tests221: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 15:35:54 sims71: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 15:36:06 sims71: freeze> python -m pip freeze --all 15:36:06 build_karaf_tests221: freeze> python -m pip freeze --all 15:36:06 sims71: bcrypt==4.1.2,certifi==2024.2.2,cffi==1.16.0,charset-normalizer==3.3.2,cryptography==42.0.5,dict2xml==1.7.5,exceptiongroup==1.2.0,idna==3.6,iniconfig==2.0.0,lxml==5.1.0,netconf-client==3.0.0,packaging==23.2,paramiko==3.4.0,pip==24.0,pluggy==1.4.0,psutil==5.9.8,pycparser==2.21,PyNaCl==1.5.0,pytest==8.0.2,requests==2.31.0,setuptools==69.1.0,tomli==2.0.1,urllib3==2.2.1,wheel==0.42.0 15:36:06 sims71: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./install_sims.sh 7.1 15:36:06 Removing ./lightynode/lightynode-openroadm-device directory 15:36:06 Installing lightynode device to ./lightynode/lightynode-openroadm-device directory 15:36:06 build_karaf_tests221: bcrypt==4.1.2,certifi==2024.2.2,cffi==1.16.0,charset-normalizer==3.3.2,cryptography==42.0.5,dict2xml==1.7.5,exceptiongroup==1.2.0,idna==3.6,iniconfig==2.0.0,lxml==5.1.0,netconf-client==3.0.0,packaging==23.2,paramiko==3.4.0,pip==24.0,pluggy==1.4.0,psutil==5.9.8,pycparser==2.21,PyNaCl==1.5.0,pytest==8.0.2,requests==2.31.0,setuptools==69.1.0,tomli==2.0.1,urllib3==2.2.1,wheel==0.42.0 15:36:06 build_karaf_tests221: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 15:36:06 NOTE: Picked up JDK_JAVA_OPTIONS: 15:36:06 --add-opens=java.base/java.io=ALL-UNNAMED 15:36:06 --add-opens=java.base/java.lang=ALL-UNNAMED 15:36:06 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 15:36:06 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 15:36:06 --add-opens=java.base/java.net=ALL-UNNAMED 15:36:06 --add-opens=java.base/java.nio=ALL-UNNAMED 15:36:06 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 15:36:06 --add-opens=java.base/java.nio.file=ALL-UNNAMED 15:36:06 --add-opens=java.base/java.util=ALL-UNNAMED 15:36:06 --add-opens=java.base/java.util.jar=ALL-UNNAMED 15:36:06 --add-opens=java.base/java.util.stream=ALL-UNNAMED 15:36:06 --add-opens=java.base/java.util.zip=ALL-UNNAMED 15:36:06 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 15:36:06 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 15:36:06 -Xlog:disable 15:36:10 sims71: OK ✔ in 16.36 seconds 15:36:10 build_karaf_tests71: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 15:36:31 build_karaf_tests121: OK ✔ in 49.83 seconds 15:36:31 build_karaf_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 15:36:32 build_karaf_tests71: freeze> python -m pip freeze --all 15:36:32 build_karaf_tests71: bcrypt==4.1.2,certifi==2024.2.2,cffi==1.16.0,charset-normalizer==3.3.2,cryptography==42.0.5,dict2xml==1.7.5,exceptiongroup==1.2.0,idna==3.6,iniconfig==2.0.0,lxml==5.1.0,netconf-client==3.0.0,packaging==23.2,paramiko==3.4.0,pip==24.0,pluggy==1.4.0,psutil==5.9.8,pycparser==2.21,PyNaCl==1.5.0,pytest==8.0.2,requests==2.31.0,setuptools==69.1.0,tomli==2.0.1,urllib3==2.2.1,wheel==0.42.0 15:36:32 build_karaf_tests71: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 15:36:32 NOTE: Picked up JDK_JAVA_OPTIONS: 15:36:32 --add-opens=java.base/java.io=ALL-UNNAMED 15:36:32 --add-opens=java.base/java.lang=ALL-UNNAMED 15:36:32 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 15:36:32 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 15:36:32 --add-opens=java.base/java.net=ALL-UNNAMED 15:36:32 --add-opens=java.base/java.nio=ALL-UNNAMED 15:36:32 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 15:36:32 --add-opens=java.base/java.nio.file=ALL-UNNAMED 15:36:32 --add-opens=java.base/java.util=ALL-UNNAMED 15:36:32 --add-opens=java.base/java.util.jar=ALL-UNNAMED 15:36:32 --add-opens=java.base/java.util.stream=ALL-UNNAMED 15:36:32 --add-opens=java.base/java.util.zip=ALL-UNNAMED 15:36:32 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 15:36:32 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 15:36:32 -Xlog:disable 15:36:40 build_karaf_tests_hybrid: freeze> python -m pip freeze --all 15:36:43 build_karaf_tests_hybrid: bcrypt==4.1.2,certifi==2024.2.2,cffi==1.16.0,charset-normalizer==3.3.2,cryptography==42.0.5,dict2xml==1.7.5,exceptiongroup==1.2.0,idna==3.6,iniconfig==2.0.0,lxml==5.1.0,netconf-client==3.0.0,packaging==23.2,paramiko==3.4.0,pip==24.0,pluggy==1.4.0,psutil==5.9.8,pycparser==2.21,PyNaCl==1.5.0,pytest==8.0.2,requests==2.31.0,setuptools==69.1.0,tomli==2.0.1,urllib3==2.2.1,wheel==0.42.0 15:36:43 build_karaf_tests_hybrid: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./build_karaf_for_tests.sh 15:36:43 NOTE: Picked up JDK_JAVA_OPTIONS: 15:36:43 --add-opens=java.base/java.io=ALL-UNNAMED 15:36:43 --add-opens=java.base/java.lang=ALL-UNNAMED 15:36:43 --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 15:36:43 --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 15:36:43 --add-opens=java.base/java.net=ALL-UNNAMED 15:36:43 --add-opens=java.base/java.nio=ALL-UNNAMED 15:36:43 --add-opens=java.base/java.nio.charset=ALL-UNNAMED 15:36:43 --add-opens=java.base/java.nio.file=ALL-UNNAMED 15:36:43 --add-opens=java.base/java.util=ALL-UNNAMED 15:36:43 --add-opens=java.base/java.util.jar=ALL-UNNAMED 15:36:43 --add-opens=java.base/java.util.stream=ALL-UNNAMED 15:36:43 --add-opens=java.base/java.util.zip=ALL-UNNAMED 15:36:43 --add-opens java.base/sun.nio.ch=ALL-UNNAMED 15:36:43 --add-opens java.base/sun.nio.fs=ALL-UNNAMED 15:36:43 -Xlog:disable 15:37:05 build_karaf_tests221: OK ✔ in 1 minute 11.07 seconds 15:37:05 tests_tapi: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 15:37:07 testsPCE: freeze> python -m pip freeze --all 15:37:08 testsPCE: bcrypt==4.1.2,certifi==2024.2.2,cffi==1.16.0,charset-normalizer==3.3.2,click==8.1.7,contourpy==1.2.0,cryptography==3.3.2,cycler==0.12.1,dict2xml==1.7.5,exceptiongroup==1.2.0,Flask==2.1.3,Flask-Injector==0.14.0,fonttools==4.49.0,gnpy4tpce==2.4.7,idna==3.6,iniconfig==2.0.0,injector==0.21.0,itsdangerous==2.1.2,Jinja2==3.1.3,kiwisolver==1.4.5,lxml==5.1.0,MarkupSafe==2.1.5,matplotlib==3.8.3,netconf-client==3.0.0,networkx==2.8.8,numpy==1.26.4,packaging==23.2,pandas==1.5.3,paramiko==3.4.0,pbr==5.11.1,pillow==10.2.0,pip==24.0,pluggy==1.4.0,psutil==5.9.8,pycparser==2.21,PyNaCl==1.5.0,pyparsing==3.1.1,pytest==8.0.2,python-dateutil==2.8.2,pytz==2024.1,requests==2.31.0,scipy==1.12.0,setuptools==50.3.2,six==1.16.0,tomli==2.0.1,urllib3==2.2.1,Werkzeug==2.0.3,wheel==0.42.0,xlrd==1.2.0 15:37:08 testsPCE: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh pce 15:37:08 which: no pytest-3 in (/w/workspace/transportpce-tox-verify-transportpce-master/.tox/testsPCE/bin:/opt/pyenv/bin:/tmp/venv-R58v/bin:/opt/pyenv/shims:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin) 15:37:08 pytest -q transportpce_tests/pce/test01_pce.py 15:37:12 tests_tapi: freeze> python -m pip freeze --all 15:37:12 tests_tapi: bcrypt==4.1.2,certifi==2024.2.2,cffi==1.16.0,charset-normalizer==3.3.2,cryptography==42.0.5,dict2xml==1.7.5,exceptiongroup==1.2.0,idna==3.6,iniconfig==2.0.0,lxml==5.1.0,netconf-client==3.0.0,packaging==23.2,paramiko==3.4.0,pip==24.0,pluggy==1.4.0,psutil==5.9.8,pycparser==2.21,PyNaCl==1.5.0,pytest==8.0.2,requests==2.31.0,setuptools==69.1.0,tomli==2.0.1,urllib3==2.2.1,wheel==0.42.0 15:37:12 tests_tapi: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh tapi 15:37:12 which: no pytest-3 in (/w/workspace/transportpce-tox-verify-transportpce-master/.tox/tests_tapi/bin:/opt/pyenv/bin:/tmp/venv-R58v/bin:/opt/pyenv/shims:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin) 15:37:12 using environment variables from ./karaf221.env 15:37:12 pytest -q transportpce_tests/tapi/test01_abstracted_topology.py 15:38:10 ............................................ [100%] 15:39:15 20 passed in 127.07s (0:02:07) 15:39:15 pytest -q transportpce_tests/pce/test02_pce_400G.py 15:39:16 ................... [100%] 15:40:02 9 passed in 46.09s 15:40:02 pytest -q transportpce_tests/pce/test03_gnpy.py 15:40:02 ............ [100%] 15:40:43 8 passed in 41.23s 15:40:43 pytest -q transportpce_tests/pce/test04_pce_bug_fix.py 15:40:45 ............ [100%] 15:40:50 50 passed in 218.08s (0:03:38) 15:40:50 pytest -q transportpce_tests/tapi/test02_full_topology.py 15:41:37 ... [100%] 15:41:44 3 passed in 60.49s (0:01:00) 15:41:44 build_karaf_tests71: OK ✔ in 1 minute 18.41 seconds 15:41:44 build_karaf_tests_hybrid: OK ✔ in 1 minute 9.03 seconds 15:41:44 testsPCE: OK ✔ in 6 minutes 2.88 seconds 15:41:44 tests121: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-transportpce-master/tests/test-requirements.txt 15:41:56 tests121: freeze> python -m pip freeze --all 15:41:57 tests121: bcrypt==4.1.2,certifi==2024.2.2,cffi==1.16.0,charset-normalizer==3.3.2,cryptography==42.0.5,dict2xml==1.7.5,exceptiongroup==1.2.0,idna==3.6,iniconfig==2.0.0,lxml==5.1.0,netconf-client==3.0.0,packaging==23.2,paramiko==3.4.0,pip==24.0,pluggy==1.4.0,psutil==5.9.8,pycparser==2.21,PyNaCl==1.5.0,pytest==8.0.2,requests==2.31.0,setuptools==69.1.0,tomli==2.0.1,urllib3==2.2.1,wheel==0.42.0 15:41:57 tests121: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 1.2.1 15:41:57 using environment variables from ./karaf121.env 15:41:57 which: no pytest-3 in (/w/workspace/transportpce-tox-verify-transportpce-master/.tox/tests121/bin:/opt/pyenv/bin:/tmp/venv-R58v/bin:/opt/pyenv/shims:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin) 15:41:57 pytest -q transportpce_tests/1.2.1/test01_portmapping.py 15:42:05 ............................... [100%] 15:45:41 30 passed in 290.48s (0:04:50) 15:45:41 pytest -q transportpce_tests/tapi/test03_tapi_device_change_notifications.py 15:45:46 ........FFFFFFF..F...F [100%] 15:54:40 =================================== FAILURES =================================== 15:54:40 _______ TransportPCEPortMappingTesting.test_10_xpdr_portmapping_NETWORK1 _______ 15:54:40 15:54:40 self = 15:54:40 15:54:40 def test_10_xpdr_portmapping_NETWORK1(self): 15:54:40 response = test_utils.get_portmapping_node_attr("XPDRA01", "mapping", "XPDR1-NETWORK1") 15:54:40 > self.assertEqual(response['status_code'], requests.codes.ok) 15:54:40 E AssertionError: 409 != 200 15:54:40 15:54:40 transportpce_tests/1.2.1/test01_portmapping.py:123: AssertionError 15:54:40 ----------------------------- Captured stdout call ----------------------------- 15:54:40 execution of test_10_xpdr_portmapping_NETWORK1 15:54:40 _______ TransportPCEPortMappingTesting.test_11_xpdr_portmapping_NETWORK2 _______ 15:54:40 15:54:40 self = 15:54:40 15:54:40 def test_11_xpdr_portmapping_NETWORK2(self): 15:54:40 response = test_utils.get_portmapping_node_attr("XPDRA01", "mapping", "XPDR1-NETWORK2") 15:54:40 > self.assertEqual(response['status_code'], requests.codes.ok) 15:54:40 E AssertionError: 409 != 200 15:54:40 15:54:40 transportpce_tests/1.2.1/test01_portmapping.py:134: AssertionError 15:54:40 ----------------------------- Captured stdout call ----------------------------- 15:54:40 execution of test_11_xpdr_portmapping_NETWORK2 15:54:40 _______ TransportPCEPortMappingTesting.test_12_xpdr_portmapping_CLIENT1 ________ 15:54:40 15:54:40 self = 15:54:40 15:54:40 def test_12_xpdr_portmapping_CLIENT1(self): 15:54:40 response = test_utils.get_portmapping_node_attr("XPDRA01", "mapping", "XPDR1-CLIENT1") 15:54:40 > self.assertEqual(response['status_code'], requests.codes.ok) 15:54:40 E AssertionError: 409 != 200 15:54:40 15:54:40 transportpce_tests/1.2.1/test01_portmapping.py:145: AssertionError 15:54:40 ----------------------------- Captured stdout call ----------------------------- 15:54:40 execution of test_12_xpdr_portmapping_CLIENT1 15:54:40 _______ TransportPCEPortMappingTesting.test_13_xpdr_portmapping_CLIENT2 ________ 15:54:40 15:54:40 self = 15:54:40 15:54:40 def test_13_xpdr_portmapping_CLIENT2(self): 15:54:40 response = test_utils.get_portmapping_node_attr("XPDRA01", "mapping", "XPDR1-CLIENT2") 15:54:40 > self.assertEqual(response['status_code'], requests.codes.ok) 15:54:40 E AssertionError: 409 != 200 15:54:40 15:54:40 transportpce_tests/1.2.1/test01_portmapping.py:157: AssertionError 15:54:40 ----------------------------- Captured stdout call ----------------------------- 15:54:40 execution of test_13_xpdr_portmapping_CLIENT2 15:54:40 _______ TransportPCEPortMappingTesting.test_14_xpdr_portmapping_CLIENT3 ________ 15:54:40 15:54:40 self = 15:54:40 15:54:40 def test_14_xpdr_portmapping_CLIENT3(self): 15:54:40 response = test_utils.get_portmapping_node_attr("XPDRA01", "mapping", "XPDR1-CLIENT3") 15:54:40 > self.assertEqual(response['status_code'], requests.codes.ok) 15:54:40 E AssertionError: 409 != 200 15:54:40 15:54:40 transportpce_tests/1.2.1/test01_portmapping.py:169: AssertionError 15:54:40 ----------------------------- Captured stdout call ----------------------------- 15:54:40 execution of test_14_xpdr_portmapping_CLIENT3 15:54:40 _______ TransportPCEPortMappingTesting.test_15_xpdr_portmapping_CLIENT4 ________ 15:54:40 15:54:40 self = 15:54:40 15:54:40 def test_15_xpdr_portmapping_CLIENT4(self): 15:54:40 response = test_utils.get_portmapping_node_attr("XPDRA01", "mapping", "XPDR1-CLIENT4") 15:54:40 > self.assertEqual(response['status_code'], requests.codes.ok) 15:54:40 E AssertionError: 409 != 200 15:54:40 15:54:40 transportpce_tests/1.2.1/test01_portmapping.py:181: AssertionError 15:54:40 ----------------------------- Captured stdout call ----------------------------- 15:54:40 execution of test_15_xpdr_portmapping_CLIENT4 15:54:40 _______ TransportPCEPortMappingTesting.test_18_xpdr_device_not_connected _______ 15:54:40 15:54:40 self = 15:54:40 15:54:40 def test_18_xpdr_device_not_connected(self): 15:54:40 response = test_utils.get_portmapping_node_attr("XPDRA01", "node-info", None) 15:54:40 > self.assertEqual(response['status_code'], requests.codes.conflict) 15:54:40 E AssertionError: 200 != 409 15:54:40 15:54:40 transportpce_tests/1.2.1/test01_portmapping.py:204: AssertionError 15:54:40 ----------------------------- Captured stdout call ----------------------------- 15:54:40 execution of test_18_xpdr_device_not_connected 15:54:40 _______ TransportPCEPortMappingTesting.test_21_rdm_device_not_connected ________ 15:54:40 15:54:40 self = 15:54:40 15:54:40 def test_21_rdm_device_not_connected(self): 15:54:40 response = test_utils.get_portmapping_node_attr("ROADMA01", "node-info", None) 15:54:40 > self.assertEqual(response['status_code'], requests.codes.conflict) 15:54:40 E AssertionError: 200 != 409 15:54:40 15:54:40 transportpce_tests/1.2.1/test01_portmapping.py:224: AssertionError 15:54:40 ----------------------------- Captured stdout call ----------------------------- 15:54:40 execution of test_21_rdm_device_not_connected 15:54:40 --------------------------- Captured stdout teardown --------------------------- 15:54:40 all processes killed 15:54:40 =========================== short test summary info ============================ 15:54:40 FAILED transportpce_tests/1.2.1/test01_portmapping.py::TransportPCEPortMappingTesting::test_10_xpdr_portmapping_NETWORK1 15:54:40 FAILED transportpce_tests/1.2.1/test01_portmapping.py::TransportPCEPortMappingTesting::test_11_xpdr_portmapping_NETWORK2 15:54:40 FAILED transportpce_tests/1.2.1/test01_portmapping.py::TransportPCEPortMappingTesting::test_12_xpdr_portmapping_CLIENT1 15:54:40 FAILED transportpce_tests/1.2.1/test01_portmapping.py::TransportPCEPortMappingTesting::test_13_xpdr_portmapping_CLIENT2 15:54:40 FAILED transportpce_tests/1.2.1/test01_portmapping.py::TransportPCEPortMappingTesting::test_14_xpdr_portmapping_CLIENT3 15:54:40 FAILED transportpce_tests/1.2.1/test01_portmapping.py::TransportPCEPortMappingTesting::test_15_xpdr_portmapping_CLIENT4 15:54:40 FAILED transportpce_tests/1.2.1/test01_portmapping.py::TransportPCEPortMappingTesting::test_18_xpdr_device_not_connected 15:54:40 FAILED transportpce_tests/1.2.1/test01_portmapping.py::TransportPCEPortMappingTesting::test_21_rdm_device_not_connected 15:54:40 8 failed, 13 passed in 749.89s (0:12:29) 15:54:40 tests121: exit 1 (750.17 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 1.2.1 pid=52429 15:56:02 ..FFFFFFFFF.FFFFFF.FFFFFF.FFFFFF.FFFFFF.FFFFFF.FFFFFF.FFFFFFFFF....F [100%] 16:13:32 =================================== FAILURES =================================== 16:13:32 ________________ TransportPCEFulltesting.test_01_connect_xpdrA _________________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_01_connect_xpdrA(self): 16:13:32 response = test_utils.mount_device("XPDR-A1", ('xpdra', self.NODE_VERSION_221)) 16:13:32 > self.assertEqual(response.status_code, requests.codes.created, test_utils.CODE_SHOULD_BE_201) 16:13:32 E AssertionError: 401 != 201 : Http status code should be 201 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:167: AssertionError 16:13:32 ---------------------------- Captured stdout setup ----------------------------- 16:13:32 starting OpenDaylight... 16:13:32 starting KARAF TransportPCE build... 16:13:32 Searching for pattern 'Transportpce controller started' in karaf.log... Pattern found! OpenDaylight started ! 16:13:32 installing tapi feature... 16:13:32 installing feature odl-transportpce-tapi 16:13:32 client: JAVA_HOME not set; results may vary 16:13:32 odl-transportpce-tapi │ 9.0.0.SNAPSHOT │ x │ Started │ odl-transportpce-tapi │ OpenDaylight :: transportpce :: tapi 16:13:32 Restarting OpenDaylight... 16:13:32 starting KARAF TransportPCE build... 16:13:32 Searching for pattern 'Transportpce controller started' in karaf.log... Pattern found! starting simulator xpdra in OpenROADM device version 2.2.1... 16:13:32 Searching for pattern 'Data tree change listeners registered' in xpdra-221.log... Pattern found! simulator for xpdra started 16:13:32 starting simulator roadma in OpenROADM device version 2.2.1... 16:13:32 Searching for pattern 'Data tree change listeners registered' in roadma-221.log... Pattern found! simulator for roadma started 16:13:32 starting simulator roadmc in OpenROADM device version 2.2.1... 16:13:32 Searching for pattern 'Data tree change listeners registered' in roadmc-221.log... Pattern found! simulator for roadmc started 16:13:32 starting simulator xpdrc in OpenROADM device version 2.2.1... 16:13:32 Searching for pattern 'Data tree change listeners registered' in xpdrc-221.log... Pattern found! simulator for xpdrc started 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_01_connect_xpdrA 16:13:32 Searching for pattern 'Triggering notification stream NETCONF for node XPDR-A1' in karaf.log... Pattern not found after 180 seconds! Node XPDR-A1 still not added to tpce topology... 16:13:32 ________ TransportPCEFulltesting.test_05_connect_xpdrA_N1_to_roadmA_PP1 ________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_05_connect_xpdrA_N1_to_roadmA_PP1(self): 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'transportpce-networkutils', 'init-xpdr-rdm-links', 16:13:32 {'links-input': {'xpdr-node': 'XPDR-A1', 'xpdr-num': '1', 'network-num': '1', 16:13:32 'rdm-node': 'ROADM-A1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP1-TXRX'}}) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 204 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:186: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_05_connect_xpdrA_N1_to_roadmA_PP1 16:13:32 ________ TransportPCEFulltesting.test_06_connect_roadmA_PP1_to_xpdrA_N1 ________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_06_connect_roadmA_PP1_to_xpdrA_N1(self): 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'transportpce-networkutils', 'init-rdm-xpdr-links', 16:13:32 {'links-input': {'xpdr-node': 'XPDR-A1', 'xpdr-num': '1', 'network-num': '1', 16:13:32 'rdm-node': 'ROADM-A1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP1-TXRX'}}) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 204 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:195: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_06_connect_roadmA_PP1_to_xpdrA_N1 16:13:32 ________ TransportPCEFulltesting.test_07_connect_xpdrC_N1_to_roadmC_PP1 ________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_07_connect_xpdrC_N1_to_roadmC_PP1(self): 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'transportpce-networkutils', 'init-xpdr-rdm-links', 16:13:32 {'links-input': {'xpdr-node': 'XPDR-C1', 'xpdr-num': '1', 'network-num': '1', 16:13:32 'rdm-node': 'ROADM-C1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP1-TXRX'}}) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 204 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:204: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_07_connect_xpdrC_N1_to_roadmC_PP1 16:13:32 ________ TransportPCEFulltesting.test_08_connect_roadmC_PP1_to_xpdrC_N1 ________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_08_connect_roadmC_PP1_to_xpdrC_N1(self): 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'transportpce-networkutils', 'init-rdm-xpdr-links', 16:13:32 {'links-input': {'xpdr-node': 'XPDR-C1', 'xpdr-num': '1', 'network-num': '1', 16:13:32 'rdm-node': 'ROADM-C1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP1-TXRX'}}) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 204 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:213: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_08_connect_roadmC_PP1_to_xpdrC_N1 16:13:32 _______ TransportPCEFulltesting.test_09_add_omsAttributes_ROADMA_ROADMC ________ 16:13:32 16:13:32 self = 16:13:32 conn = 16:13:32 method = 'PUT' 16:13:32 url = '/rests/data/ietf-network:networks/network=openroadm-topology/ietf-network-topology:link=ROADM-A1-DEG2-DEG2-TTP-TXRXtoROADM-C1-DEG1-DEG1-TTP-TXRX/org-openroadm-network-topology:OMS-attributes/span' 16:13:32 body = '{"span": {"auto-spanloss": "true", "spanloss-base": 11.4, "spanloss-current": 12, "engineered-spanloss": 12.2, "link-concatenation": [{"SRLG-Id": 0, "fiber-type": "smf", "SRLG-length": 100000, "pmd": 0.5}]}}' 16:13:32 headers = {'User-Agent': 'python-requests/2.31.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/json', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Content-Length': '207', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 16:13:32 retries = Retry(total=0, connect=None, read=False, redirect=None, status=None) 16:13:32 timeout = Timeout(connect=10, read=10, total=None), chunked = False 16:13:32 response_conn = 16:13:32 preload_content = False, decode_content = False, enforce_content_length = True 16:13:32 16:13:32 def _make_request( 16:13:32 self, 16:13:32 conn: BaseHTTPConnection, 16:13:32 method: str, 16:13:32 url: str, 16:13:32 body: _TYPE_BODY | None = None, 16:13:32 headers: typing.Mapping[str, str] | None = None, 16:13:32 retries: Retry | None = None, 16:13:32 timeout: _TYPE_TIMEOUT = _DEFAULT_TIMEOUT, 16:13:32 chunked: bool = False, 16:13:32 response_conn: BaseHTTPConnection | None = None, 16:13:32 preload_content: bool = True, 16:13:32 decode_content: bool = True, 16:13:32 enforce_content_length: bool = True, 16:13:32 ) -> BaseHTTPResponse: 16:13:32 """ 16:13:32 Perform a request on a given urllib connection object taken from our 16:13:32 pool. 16:13:32 16:13:32 :param conn: 16:13:32 a connection from one of our connection pools 16:13:32 16:13:32 :param method: 16:13:32 HTTP request method (such as GET, POST, PUT, etc.) 16:13:32 16:13:32 :param url: 16:13:32 The URL to perform the request on. 16:13:32 16:13:32 :param body: 16:13:32 Data to send in the request body, either :class:`str`, :class:`bytes`, 16:13:32 an iterable of :class:`str`/:class:`bytes`, or a file-like object. 16:13:32 16:13:32 :param headers: 16:13:32 Dictionary of custom headers to send, such as User-Agent, 16:13:32 If-None-Match, etc. If None, pool headers are used. If provided, 16:13:32 these headers completely replace any pool-specific headers. 16:13:32 16:13:32 :param retries: 16:13:32 Configure the number of retries to allow before raising a 16:13:32 :class:`~urllib3.exceptions.MaxRetryError` exception. 16:13:32 16:13:32 Pass ``None`` to retry until you receive a response. Pass a 16:13:32 :class:`~urllib3.util.retry.Retry` object for fine-grained control 16:13:32 over different types of retries. 16:13:32 Pass an integer number to retry connection errors that many times, 16:13:32 but no other types of errors. Pass zero to never retry. 16:13:32 16:13:32 If ``False``, then retries are disabled and any exception is raised 16:13:32 immediately. Also, instead of raising a MaxRetryError on redirects, 16:13:32 the redirect response will be returned. 16:13:32 16:13:32 :type retries: :class:`~urllib3.util.retry.Retry`, False, or an int. 16:13:32 16:13:32 :param timeout: 16:13:32 If specified, overrides the default timeout for this one 16:13:32 request. It may be a float (in seconds) or an instance of 16:13:32 :class:`urllib3.util.Timeout`. 16:13:32 16:13:32 :param chunked: 16:13:32 If True, urllib3 will send the body using chunked transfer 16:13:32 encoding. Otherwise, urllib3 will send the body using the standard 16:13:32 content-length form. Defaults to False. 16:13:32 16:13:32 :param response_conn: 16:13:32 Set this to ``None`` if you will handle releasing the connection or 16:13:32 set the connection to have the response release it. 16:13:32 16:13:32 :param preload_content: 16:13:32 If True, the response's body will be preloaded during construction. 16:13:32 16:13:32 :param decode_content: 16:13:32 If True, will attempt to decode the body based on the 16:13:32 'content-encoding' header. 16:13:32 16:13:32 :param enforce_content_length: 16:13:32 Enforce content length checking. Body returned by server must match 16:13:32 value of Content-Length header, if present. Otherwise, raise error. 16:13:32 """ 16:13:32 self.num_requests += 1 16:13:32 16:13:32 timeout_obj = self._get_timeout(timeout) 16:13:32 timeout_obj.start_connect() 16:13:32 conn.timeout = Timeout.resolve_default_timeout(timeout_obj.connect_timeout) 16:13:32 16:13:32 try: 16:13:32 # Trigger any extra validation we need to do. 16:13:32 try: 16:13:32 self._validate_conn(conn) 16:13:32 except (SocketTimeout, BaseSSLError) as e: 16:13:32 self._raise_timeout(err=e, url=url, timeout_value=conn.timeout) 16:13:32 raise 16:13:32 16:13:32 # _validate_conn() starts the connection to an HTTPS proxy 16:13:32 # so we need to wrap errors with 'ProxyError' here too. 16:13:32 except ( 16:13:32 OSError, 16:13:32 NewConnectionError, 16:13:32 TimeoutError, 16:13:32 BaseSSLError, 16:13:32 CertificateError, 16:13:32 SSLError, 16:13:32 ) as e: 16:13:32 new_e: Exception = e 16:13:32 if isinstance(e, (BaseSSLError, CertificateError)): 16:13:32 new_e = SSLError(e) 16:13:32 # If the connection didn't successfully connect to it's proxy 16:13:32 # then there 16:13:32 if isinstance( 16:13:32 new_e, (OSError, NewConnectionError, TimeoutError, SSLError) 16:13:32 ) and (conn and conn.proxy and not conn.has_connected_to_proxy): 16:13:32 new_e = _wrap_proxy_error(new_e, conn.proxy.scheme) 16:13:32 raise new_e 16:13:32 16:13:32 # conn.request() calls http.client.*.request, not the method in 16:13:32 # urllib3.request. It also calls makefile (recv) on the socket. 16:13:32 try: 16:13:32 conn.request( 16:13:32 method, 16:13:32 url, 16:13:32 body=body, 16:13:32 headers=headers, 16:13:32 chunked=chunked, 16:13:32 preload_content=preload_content, 16:13:32 decode_content=decode_content, 16:13:32 enforce_content_length=enforce_content_length, 16:13:32 ) 16:13:32 16:13:32 # We are swallowing BrokenPipeError (errno.EPIPE) since the server is 16:13:32 # legitimately able to close the connection after sending a valid response. 16:13:32 # With this behaviour, the received response is still readable. 16:13:32 except BrokenPipeError: 16:13:32 pass 16:13:32 except OSError as e: 16:13:32 # MacOS/Linux 16:13:32 # EPROTOTYPE and ECONNRESET are needed on macOS 16:13:32 # https://erickt.github.io/blog/2014/11/19/adventures-in-debugging-a-potential-osx-kernel-bug/ 16:13:32 # Condition changed later to emit ECONNRESET instead of only EPROTOTYPE. 16:13:32 if e.errno != errno.EPROTOTYPE and e.errno != errno.ECONNRESET: 16:13:32 raise 16:13:32 16:13:32 # Reset the timeout for the recv() on the socket 16:13:32 read_timeout = timeout_obj.read_timeout 16:13:32 16:13:32 if not conn.is_closed: 16:13:32 # In Python 3 socket.py will catch EAGAIN and return None when you 16:13:32 # try and read into the file pointer created by http.client, which 16:13:32 # instead raises a BadStatusLine exception. Instead of catching 16:13:32 # the exception and assuming all BadStatusLine exceptions are read 16:13:32 # timeouts, check for a zero timeout before making the request. 16:13:32 if read_timeout == 0: 16:13:32 raise ReadTimeoutError( 16:13:32 self, url, f"Read timed out. (read timeout={read_timeout})" 16:13:32 ) 16:13:32 conn.timeout = read_timeout 16:13:32 16:13:32 # Receive the response from the server 16:13:32 try: 16:13:32 > response = conn.getresponse() 16:13:32 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/connectionpool.py:537: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/connection.py:466: in getresponse 16:13:32 httplib_response = super().getresponse() 16:13:32 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:1374: in getresponse 16:13:32 response.begin() 16:13:32 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:318: in begin 16:13:32 version, status, reason = self._read_status() 16:13:32 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:279: in _read_status 16:13:32 line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1") 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 16:13:32 self = 16:13:32 b = 16:13:32 16:13:32 def readinto(self, b): 16:13:32 """Read up to len(b) bytes into the writable buffer *b* and return 16:13:32 the number of bytes read. If the socket is non-blocking and no bytes 16:13:32 are available, None is returned. 16:13:32 16:13:32 If *b* is non-empty, a 0 return value indicates that the connection 16:13:32 was shutdown at the other end. 16:13:32 """ 16:13:32 self._checkClosed() 16:13:32 self._checkReadable() 16:13:32 if self._timeout_occurred: 16:13:32 raise OSError("cannot read from timed out object") 16:13:32 while True: 16:13:32 try: 16:13:32 > return self._sock.recv_into(b) 16:13:32 E TimeoutError: timed out 16:13:32 16:13:32 /opt/pyenv/versions/3.10.6/lib/python3.10/socket.py:705: TimeoutError 16:13:32 16:13:32 The above exception was the direct cause of the following exception: 16:13:32 16:13:32 self = 16:13:32 request = , stream = False 16:13:32 timeout = Timeout(connect=10, read=10, total=None), verify = True, cert = None 16:13:32 proxies = OrderedDict() 16:13:32 16:13:32 def send( 16:13:32 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 16:13:32 ): 16:13:32 """Sends PreparedRequest object. Returns Response object. 16:13:32 16:13:32 :param request: The :class:`PreparedRequest ` being sent. 16:13:32 :param stream: (optional) Whether to stream the request content. 16:13:32 :param timeout: (optional) How long to wait for the server to send 16:13:32 data before giving up, as a float, or a :ref:`(connect timeout, 16:13:32 read timeout) ` tuple. 16:13:32 :type timeout: float or tuple or urllib3 Timeout object 16:13:32 :param verify: (optional) Either a boolean, in which case it controls whether 16:13:32 we verify the server's TLS certificate, or a string, in which case it 16:13:32 must be a path to a CA bundle to use 16:13:32 :param cert: (optional) Any user-provided SSL certificate to be trusted. 16:13:32 :param proxies: (optional) The proxies dictionary to apply to the request. 16:13:32 :rtype: requests.Response 16:13:32 """ 16:13:32 16:13:32 try: 16:13:32 conn = self.get_connection(request.url, proxies) 16:13:32 except LocationValueError as e: 16:13:32 raise InvalidURL(e, request=request) 16:13:32 16:13:32 self.cert_verify(conn, request.url, verify, cert) 16:13:32 url = self.request_url(request, proxies) 16:13:32 self.add_headers( 16:13:32 request, 16:13:32 stream=stream, 16:13:32 timeout=timeout, 16:13:32 verify=verify, 16:13:32 cert=cert, 16:13:32 proxies=proxies, 16:13:32 ) 16:13:32 16:13:32 chunked = not (request.body is None or "Content-Length" in request.headers) 16:13:32 16:13:32 if isinstance(timeout, tuple): 16:13:32 try: 16:13:32 connect, read = timeout 16:13:32 timeout = TimeoutSauce(connect=connect, read=read) 16:13:32 except ValueError: 16:13:32 raise ValueError( 16:13:32 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 16:13:32 f"or a single float to set both timeouts to the same value." 16:13:32 ) 16:13:32 elif isinstance(timeout, TimeoutSauce): 16:13:32 pass 16:13:32 else: 16:13:32 timeout = TimeoutSauce(connect=timeout, read=timeout) 16:13:32 16:13:32 try: 16:13:32 > resp = conn.urlopen( 16:13:32 method=request.method, 16:13:32 url=url, 16:13:32 body=request.body, 16:13:32 headers=request.headers, 16:13:32 redirect=False, 16:13:32 assert_same_host=False, 16:13:32 preload_content=False, 16:13:32 decode_content=False, 16:13:32 retries=self.max_retries, 16:13:32 timeout=timeout, 16:13:32 chunked=chunked, 16:13:32 ) 16:13:32 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/requests/adapters.py:486: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/connectionpool.py:847: in urlopen 16:13:32 retries = retries.increment( 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/util/retry.py:470: in increment 16:13:32 raise reraise(type(error), error, _stacktrace) 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/util/util.py:39: in reraise 16:13:32 raise value 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/connectionpool.py:793: in urlopen 16:13:32 response = self._make_request( 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/connectionpool.py:539: in _make_request 16:13:32 self._raise_timeout(err=e, url=url, timeout_value=read_timeout) 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 16:13:32 self = 16:13:32 err = TimeoutError('timed out') 16:13:32 url = '/rests/data/ietf-network:networks/network=openroadm-topology/ietf-network-topology:link=ROADM-A1-DEG2-DEG2-TTP-TXRXtoROADM-C1-DEG1-DEG1-TTP-TXRX/org-openroadm-network-topology:OMS-attributes/span' 16:13:32 timeout_value = 10 16:13:32 16:13:32 def _raise_timeout( 16:13:32 self, 16:13:32 err: BaseSSLError | OSError | SocketTimeout, 16:13:32 url: str, 16:13:32 timeout_value: _TYPE_TIMEOUT | None, 16:13:32 ) -> None: 16:13:32 """Is the error actually a timeout? Will raise a ReadTimeout or pass""" 16:13:32 16:13:32 if isinstance(err, SocketTimeout): 16:13:32 > raise ReadTimeoutError( 16:13:32 self, url, f"Read timed out. (read timeout={timeout_value})" 16:13:32 ) from err 16:13:32 E urllib3.exceptions.ReadTimeoutError: HTTPConnectionPool(host='localhost', port=8183): Read timed out. (read timeout=10) 16:13:32 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/connectionpool.py:370: ReadTimeoutError 16:13:32 16:13:32 During handling of the above exception, another exception occurred: 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_09_add_omsAttributes_ROADMA_ROADMC(self): 16:13:32 # Config ROADMA-ROADMC oms-attributes 16:13:32 data = {"span": { 16:13:32 "auto-spanloss": "true", 16:13:32 "spanloss-base": 11.4, 16:13:32 "spanloss-current": 12, 16:13:32 "engineered-spanloss": 12.2, 16:13:32 "link-concatenation": [{ 16:13:32 "SRLG-Id": 0, 16:13:32 "fiber-type": "smf", 16:13:32 "SRLG-length": 100000, 16:13:32 "pmd": 0.5}]}} 16:13:32 > response = test_utils.add_oms_attr_request( 16:13:32 "ROADM-A1-DEG2-DEG2-TTP-TXRXtoROADM-C1-DEG1-DEG1-TTP-TXRX", data) 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:229: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/common/test_utils.py:551: in add_oms_attr_request 16:13:32 response = put_request(url2.format('{}', network, link), oms_attr) 16:13:32 transportpce_tests/common/test_utils.py:123: in put_request 16:13:32 return requests.request( 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/requests/api.py:59: in request 16:13:32 return session.request(method=method, url=url, **kwargs) 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/requests/sessions.py:589: in request 16:13:32 resp = self.send(prep, **send_kwargs) 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/requests/sessions.py:703: in send 16:13:32 r = adapter.send(request, **kwargs) 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 16:13:32 self = 16:13:32 request = , stream = False 16:13:32 timeout = Timeout(connect=10, read=10, total=None), verify = True, cert = None 16:13:32 proxies = OrderedDict() 16:13:32 16:13:32 def send( 16:13:32 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 16:13:32 ): 16:13:32 """Sends PreparedRequest object. Returns Response object. 16:13:32 16:13:32 :param request: The :class:`PreparedRequest ` being sent. 16:13:32 :param stream: (optional) Whether to stream the request content. 16:13:32 :param timeout: (optional) How long to wait for the server to send 16:13:32 data before giving up, as a float, or a :ref:`(connect timeout, 16:13:32 read timeout) ` tuple. 16:13:32 :type timeout: float or tuple or urllib3 Timeout object 16:13:32 :param verify: (optional) Either a boolean, in which case it controls whether 16:13:32 we verify the server's TLS certificate, or a string, in which case it 16:13:32 must be a path to a CA bundle to use 16:13:32 :param cert: (optional) Any user-provided SSL certificate to be trusted. 16:13:32 :param proxies: (optional) The proxies dictionary to apply to the request. 16:13:32 :rtype: requests.Response 16:13:32 """ 16:13:32 16:13:32 try: 16:13:32 conn = self.get_connection(request.url, proxies) 16:13:32 except LocationValueError as e: 16:13:32 raise InvalidURL(e, request=request) 16:13:32 16:13:32 self.cert_verify(conn, request.url, verify, cert) 16:13:32 url = self.request_url(request, proxies) 16:13:32 self.add_headers( 16:13:32 request, 16:13:32 stream=stream, 16:13:32 timeout=timeout, 16:13:32 verify=verify, 16:13:32 cert=cert, 16:13:32 proxies=proxies, 16:13:32 ) 16:13:32 16:13:32 chunked = not (request.body is None or "Content-Length" in request.headers) 16:13:32 16:13:32 if isinstance(timeout, tuple): 16:13:32 try: 16:13:32 connect, read = timeout 16:13:32 timeout = TimeoutSauce(connect=connect, read=read) 16:13:32 except ValueError: 16:13:32 raise ValueError( 16:13:32 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 16:13:32 f"or a single float to set both timeouts to the same value." 16:13:32 ) 16:13:32 elif isinstance(timeout, TimeoutSauce): 16:13:32 pass 16:13:32 else: 16:13:32 timeout = TimeoutSauce(connect=timeout, read=timeout) 16:13:32 16:13:32 try: 16:13:32 resp = conn.urlopen( 16:13:32 method=request.method, 16:13:32 url=url, 16:13:32 body=request.body, 16:13:32 headers=request.headers, 16:13:32 redirect=False, 16:13:32 assert_same_host=False, 16:13:32 preload_content=False, 16:13:32 decode_content=False, 16:13:32 retries=self.max_retries, 16:13:32 timeout=timeout, 16:13:32 chunked=chunked, 16:13:32 ) 16:13:32 16:13:32 except (ProtocolError, OSError) as err: 16:13:32 raise ConnectionError(err, request=request) 16:13:32 16:13:32 except MaxRetryError as e: 16:13:32 if isinstance(e.reason, ConnectTimeoutError): 16:13:32 # TODO: Remove this in 3.0.0: see #2811 16:13:32 if not isinstance(e.reason, NewConnectionError): 16:13:32 raise ConnectTimeout(e, request=request) 16:13:32 16:13:32 if isinstance(e.reason, ResponseError): 16:13:32 raise RetryError(e, request=request) 16:13:32 16:13:32 if isinstance(e.reason, _ProxyError): 16:13:32 raise ProxyError(e, request=request) 16:13:32 16:13:32 if isinstance(e.reason, _SSLError): 16:13:32 # This branch is for urllib3 v1.22 and later. 16:13:32 raise SSLError(e, request=request) 16:13:32 16:13:32 raise ConnectionError(e, request=request) 16:13:32 16:13:32 except ClosedPoolError as e: 16:13:32 raise ConnectionError(e, request=request) 16:13:32 16:13:32 except _ProxyError as e: 16:13:32 raise ProxyError(e) 16:13:32 16:13:32 except (_SSLError, _HTTPError) as e: 16:13:32 if isinstance(e, _SSLError): 16:13:32 # This branch is for urllib3 versions earlier than v1.22 16:13:32 raise SSLError(e, request=request) 16:13:32 elif isinstance(e, ReadTimeoutError): 16:13:32 > raise ReadTimeout(e, request=request) 16:13:32 E requests.exceptions.ReadTimeout: HTTPConnectionPool(host='localhost', port=8183): Read timed out. (read timeout=10) 16:13:32 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/requests/adapters.py:532: ReadTimeout 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_09_add_omsAttributes_ROADMA_ROADMC 16:13:32 _______ TransportPCEFulltesting.test_10_add_omsAttributes_ROADMC_ROADMA ________ 16:13:32 16:13:32 self = 16:13:32 conn = 16:13:32 method = 'PUT' 16:13:32 url = '/rests/data/ietf-network:networks/network=openroadm-topology/ietf-network-topology:link=ROADM-C1-DEG1-DEG1-TTP-TXRXtoROADM-A1-DEG2-DEG2-TTP-TXRX/org-openroadm-network-topology:OMS-attributes/span' 16:13:32 body = '{"span": {"auto-spanloss": "true", "spanloss-base": 11.4, "spanloss-current": 12, "engineered-spanloss": 12.2, "link-concatenation": [{"SRLG-Id": 0, "fiber-type": "smf", "SRLG-length": 100000, "pmd": 0.5}]}}' 16:13:32 headers = {'User-Agent': 'python-requests/2.31.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/json', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Content-Length': '207', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 16:13:32 retries = Retry(total=0, connect=None, read=False, redirect=None, status=None) 16:13:32 timeout = Timeout(connect=10, read=10, total=None), chunked = False 16:13:32 response_conn = 16:13:32 preload_content = False, decode_content = False, enforce_content_length = True 16:13:32 16:13:32 def _make_request( 16:13:32 self, 16:13:32 conn: BaseHTTPConnection, 16:13:32 method: str, 16:13:32 url: str, 16:13:32 body: _TYPE_BODY | None = None, 16:13:32 headers: typing.Mapping[str, str] | None = None, 16:13:32 retries: Retry | None = None, 16:13:32 timeout: _TYPE_TIMEOUT = _DEFAULT_TIMEOUT, 16:13:32 chunked: bool = False, 16:13:32 response_conn: BaseHTTPConnection | None = None, 16:13:32 preload_content: bool = True, 16:13:32 decode_content: bool = True, 16:13:32 enforce_content_length: bool = True, 16:13:32 ) -> BaseHTTPResponse: 16:13:32 """ 16:13:32 Perform a request on a given urllib connection object taken from our 16:13:32 pool. 16:13:32 16:13:32 :param conn: 16:13:32 a connection from one of our connection pools 16:13:32 16:13:32 :param method: 16:13:32 HTTP request method (such as GET, POST, PUT, etc.) 16:13:32 16:13:32 :param url: 16:13:32 The URL to perform the request on. 16:13:32 16:13:32 :param body: 16:13:32 Data to send in the request body, either :class:`str`, :class:`bytes`, 16:13:32 an iterable of :class:`str`/:class:`bytes`, or a file-like object. 16:13:32 16:13:32 :param headers: 16:13:32 Dictionary of custom headers to send, such as User-Agent, 16:13:32 If-None-Match, etc. If None, pool headers are used. If provided, 16:13:32 these headers completely replace any pool-specific headers. 16:13:32 16:13:32 :param retries: 16:13:32 Configure the number of retries to allow before raising a 16:13:32 :class:`~urllib3.exceptions.MaxRetryError` exception. 16:13:32 16:13:32 Pass ``None`` to retry until you receive a response. Pass a 16:13:32 :class:`~urllib3.util.retry.Retry` object for fine-grained control 16:13:32 over different types of retries. 16:13:32 Pass an integer number to retry connection errors that many times, 16:13:32 but no other types of errors. Pass zero to never retry. 16:13:32 16:13:32 If ``False``, then retries are disabled and any exception is raised 16:13:32 immediately. Also, instead of raising a MaxRetryError on redirects, 16:13:32 the redirect response will be returned. 16:13:32 16:13:32 :type retries: :class:`~urllib3.util.retry.Retry`, False, or an int. 16:13:32 16:13:32 :param timeout: 16:13:32 If specified, overrides the default timeout for this one 16:13:32 request. It may be a float (in seconds) or an instance of 16:13:32 :class:`urllib3.util.Timeout`. 16:13:32 16:13:32 :param chunked: 16:13:32 If True, urllib3 will send the body using chunked transfer 16:13:32 encoding. Otherwise, urllib3 will send the body using the standard 16:13:32 content-length form. Defaults to False. 16:13:32 16:13:32 :param response_conn: 16:13:32 Set this to ``None`` if you will handle releasing the connection or 16:13:32 set the connection to have the response release it. 16:13:32 16:13:32 :param preload_content: 16:13:32 If True, the response's body will be preloaded during construction. 16:13:32 16:13:32 :param decode_content: 16:13:32 If True, will attempt to decode the body based on the 16:13:32 'content-encoding' header. 16:13:32 16:13:32 :param enforce_content_length: 16:13:32 Enforce content length checking. Body returned by server must match 16:13:32 value of Content-Length header, if present. Otherwise, raise error. 16:13:32 """ 16:13:32 self.num_requests += 1 16:13:32 16:13:32 timeout_obj = self._get_timeout(timeout) 16:13:32 timeout_obj.start_connect() 16:13:32 conn.timeout = Timeout.resolve_default_timeout(timeout_obj.connect_timeout) 16:13:32 16:13:32 try: 16:13:32 # Trigger any extra validation we need to do. 16:13:32 try: 16:13:32 self._validate_conn(conn) 16:13:32 except (SocketTimeout, BaseSSLError) as e: 16:13:32 self._raise_timeout(err=e, url=url, timeout_value=conn.timeout) 16:13:32 raise 16:13:32 16:13:32 # _validate_conn() starts the connection to an HTTPS proxy 16:13:32 # so we need to wrap errors with 'ProxyError' here too. 16:13:32 except ( 16:13:32 OSError, 16:13:32 NewConnectionError, 16:13:32 TimeoutError, 16:13:32 BaseSSLError, 16:13:32 CertificateError, 16:13:32 SSLError, 16:13:32 ) as e: 16:13:32 new_e: Exception = e 16:13:32 if isinstance(e, (BaseSSLError, CertificateError)): 16:13:32 new_e = SSLError(e) 16:13:32 # If the connection didn't successfully connect to it's proxy 16:13:32 # then there 16:13:32 if isinstance( 16:13:32 new_e, (OSError, NewConnectionError, TimeoutError, SSLError) 16:13:32 ) and (conn and conn.proxy and not conn.has_connected_to_proxy): 16:13:32 new_e = _wrap_proxy_error(new_e, conn.proxy.scheme) 16:13:32 raise new_e 16:13:32 16:13:32 # conn.request() calls http.client.*.request, not the method in 16:13:32 # urllib3.request. It also calls makefile (recv) on the socket. 16:13:32 try: 16:13:32 conn.request( 16:13:32 method, 16:13:32 url, 16:13:32 body=body, 16:13:32 headers=headers, 16:13:32 chunked=chunked, 16:13:32 preload_content=preload_content, 16:13:32 decode_content=decode_content, 16:13:32 enforce_content_length=enforce_content_length, 16:13:32 ) 16:13:32 16:13:32 # We are swallowing BrokenPipeError (errno.EPIPE) since the server is 16:13:32 # legitimately able to close the connection after sending a valid response. 16:13:32 # With this behaviour, the received response is still readable. 16:13:32 except BrokenPipeError: 16:13:32 pass 16:13:32 except OSError as e: 16:13:32 # MacOS/Linux 16:13:32 # EPROTOTYPE and ECONNRESET are needed on macOS 16:13:32 # https://erickt.github.io/blog/2014/11/19/adventures-in-debugging-a-potential-osx-kernel-bug/ 16:13:32 # Condition changed later to emit ECONNRESET instead of only EPROTOTYPE. 16:13:32 if e.errno != errno.EPROTOTYPE and e.errno != errno.ECONNRESET: 16:13:32 raise 16:13:32 16:13:32 # Reset the timeout for the recv() on the socket 16:13:32 read_timeout = timeout_obj.read_timeout 16:13:32 16:13:32 if not conn.is_closed: 16:13:32 # In Python 3 socket.py will catch EAGAIN and return None when you 16:13:32 # try and read into the file pointer created by http.client, which 16:13:32 # instead raises a BadStatusLine exception. Instead of catching 16:13:32 # the exception and assuming all BadStatusLine exceptions are read 16:13:32 # timeouts, check for a zero timeout before making the request. 16:13:32 if read_timeout == 0: 16:13:32 raise ReadTimeoutError( 16:13:32 self, url, f"Read timed out. (read timeout={read_timeout})" 16:13:32 ) 16:13:32 conn.timeout = read_timeout 16:13:32 16:13:32 # Receive the response from the server 16:13:32 try: 16:13:32 > response = conn.getresponse() 16:13:32 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/connectionpool.py:537: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/connection.py:466: in getresponse 16:13:32 httplib_response = super().getresponse() 16:13:32 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:1374: in getresponse 16:13:32 response.begin() 16:13:32 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:318: in begin 16:13:32 version, status, reason = self._read_status() 16:13:32 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:279: in _read_status 16:13:32 line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1") 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 16:13:32 self = 16:13:32 b = 16:13:32 16:13:32 def readinto(self, b): 16:13:32 """Read up to len(b) bytes into the writable buffer *b* and return 16:13:32 the number of bytes read. If the socket is non-blocking and no bytes 16:13:32 are available, None is returned. 16:13:32 16:13:32 If *b* is non-empty, a 0 return value indicates that the connection 16:13:32 was shutdown at the other end. 16:13:32 """ 16:13:32 self._checkClosed() 16:13:32 self._checkReadable() 16:13:32 if self._timeout_occurred: 16:13:32 raise OSError("cannot read from timed out object") 16:13:32 while True: 16:13:32 try: 16:13:32 > return self._sock.recv_into(b) 16:13:32 E TimeoutError: timed out 16:13:32 16:13:32 /opt/pyenv/versions/3.10.6/lib/python3.10/socket.py:705: TimeoutError 16:13:32 16:13:32 The above exception was the direct cause of the following exception: 16:13:32 16:13:32 self = 16:13:32 request = , stream = False 16:13:32 timeout = Timeout(connect=10, read=10, total=None), verify = True, cert = None 16:13:32 proxies = OrderedDict() 16:13:32 16:13:32 def send( 16:13:32 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 16:13:32 ): 16:13:32 """Sends PreparedRequest object. Returns Response object. 16:13:32 16:13:32 :param request: The :class:`PreparedRequest ` being sent. 16:13:32 :param stream: (optional) Whether to stream the request content. 16:13:32 :param timeout: (optional) How long to wait for the server to send 16:13:32 data before giving up, as a float, or a :ref:`(connect timeout, 16:13:32 read timeout) ` tuple. 16:13:32 :type timeout: float or tuple or urllib3 Timeout object 16:13:32 :param verify: (optional) Either a boolean, in which case it controls whether 16:13:32 we verify the server's TLS certificate, or a string, in which case it 16:13:32 must be a path to a CA bundle to use 16:13:32 :param cert: (optional) Any user-provided SSL certificate to be trusted. 16:13:32 :param proxies: (optional) The proxies dictionary to apply to the request. 16:13:32 :rtype: requests.Response 16:13:32 """ 16:13:32 16:13:32 try: 16:13:32 conn = self.get_connection(request.url, proxies) 16:13:32 except LocationValueError as e: 16:13:32 raise InvalidURL(e, request=request) 16:13:32 16:13:32 self.cert_verify(conn, request.url, verify, cert) 16:13:32 url = self.request_url(request, proxies) 16:13:32 self.add_headers( 16:13:32 request, 16:13:32 stream=stream, 16:13:32 timeout=timeout, 16:13:32 verify=verify, 16:13:32 cert=cert, 16:13:32 proxies=proxies, 16:13:32 ) 16:13:32 16:13:32 chunked = not (request.body is None or "Content-Length" in request.headers) 16:13:32 16:13:32 if isinstance(timeout, tuple): 16:13:32 try: 16:13:32 connect, read = timeout 16:13:32 timeout = TimeoutSauce(connect=connect, read=read) 16:13:32 except ValueError: 16:13:32 raise ValueError( 16:13:32 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 16:13:32 f"or a single float to set both timeouts to the same value." 16:13:32 ) 16:13:32 elif isinstance(timeout, TimeoutSauce): 16:13:32 pass 16:13:32 else: 16:13:32 timeout = TimeoutSauce(connect=timeout, read=timeout) 16:13:32 16:13:32 try: 16:13:32 > resp = conn.urlopen( 16:13:32 method=request.method, 16:13:32 url=url, 16:13:32 body=request.body, 16:13:32 headers=request.headers, 16:13:32 redirect=False, 16:13:32 assert_same_host=False, 16:13:32 preload_content=False, 16:13:32 decode_content=False, 16:13:32 retries=self.max_retries, 16:13:32 timeout=timeout, 16:13:32 chunked=chunked, 16:13:32 ) 16:13:32 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/requests/adapters.py:486: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/connectionpool.py:847: in urlopen 16:13:32 retries = retries.increment( 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/util/retry.py:470: in increment 16:13:32 raise reraise(type(error), error, _stacktrace) 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/util/util.py:39: in reraise 16:13:32 raise value 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/connectionpool.py:793: in urlopen 16:13:32 response = self._make_request( 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/connectionpool.py:539: in _make_request 16:13:32 self._raise_timeout(err=e, url=url, timeout_value=read_timeout) 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 16:13:32 self = 16:13:32 err = TimeoutError('timed out') 16:13:32 url = '/rests/data/ietf-network:networks/network=openroadm-topology/ietf-network-topology:link=ROADM-C1-DEG1-DEG1-TTP-TXRXtoROADM-A1-DEG2-DEG2-TTP-TXRX/org-openroadm-network-topology:OMS-attributes/span' 16:13:32 timeout_value = 10 16:13:32 16:13:32 def _raise_timeout( 16:13:32 self, 16:13:32 err: BaseSSLError | OSError | SocketTimeout, 16:13:32 url: str, 16:13:32 timeout_value: _TYPE_TIMEOUT | None, 16:13:32 ) -> None: 16:13:32 """Is the error actually a timeout? Will raise a ReadTimeout or pass""" 16:13:32 16:13:32 if isinstance(err, SocketTimeout): 16:13:32 > raise ReadTimeoutError( 16:13:32 self, url, f"Read timed out. (read timeout={timeout_value})" 16:13:32 ) from err 16:13:32 E urllib3.exceptions.ReadTimeoutError: HTTPConnectionPool(host='localhost', port=8183): Read timed out. (read timeout=10) 16:13:32 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/urllib3/connectionpool.py:370: ReadTimeoutError 16:13:32 16:13:32 During handling of the above exception, another exception occurred: 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_10_add_omsAttributes_ROADMC_ROADMA(self): 16:13:32 # Config ROADMC-ROADMA oms-attributes 16:13:32 data = {"span": { 16:13:32 "auto-spanloss": "true", 16:13:32 "spanloss-base": 11.4, 16:13:32 "spanloss-current": 12, 16:13:32 "engineered-spanloss": 12.2, 16:13:32 "link-concatenation": [{ 16:13:32 "SRLG-Id": 0, 16:13:32 "fiber-type": "smf", 16:13:32 "SRLG-length": 100000, 16:13:32 "pmd": 0.5}]}} 16:13:32 > response = test_utils.add_oms_attr_request( 16:13:32 "ROADM-C1-DEG1-DEG1-TTP-TXRXtoROADM-A1-DEG2-DEG2-TTP-TXRX", data) 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:245: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/common/test_utils.py:551: in add_oms_attr_request 16:13:32 response = put_request(url2.format('{}', network, link), oms_attr) 16:13:32 transportpce_tests/common/test_utils.py:123: in put_request 16:13:32 return requests.request( 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/requests/api.py:59: in request 16:13:32 return session.request(method=method, url=url, **kwargs) 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/requests/sessions.py:589: in request 16:13:32 resp = self.send(prep, **send_kwargs) 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/requests/sessions.py:703: in send 16:13:32 r = adapter.send(request, **kwargs) 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 16:13:32 self = 16:13:32 request = , stream = False 16:13:32 timeout = Timeout(connect=10, read=10, total=None), verify = True, cert = None 16:13:32 proxies = OrderedDict() 16:13:32 16:13:32 def send( 16:13:32 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 16:13:32 ): 16:13:32 """Sends PreparedRequest object. Returns Response object. 16:13:32 16:13:32 :param request: The :class:`PreparedRequest ` being sent. 16:13:32 :param stream: (optional) Whether to stream the request content. 16:13:32 :param timeout: (optional) How long to wait for the server to send 16:13:32 data before giving up, as a float, or a :ref:`(connect timeout, 16:13:32 read timeout) ` tuple. 16:13:32 :type timeout: float or tuple or urllib3 Timeout object 16:13:32 :param verify: (optional) Either a boolean, in which case it controls whether 16:13:32 we verify the server's TLS certificate, or a string, in which case it 16:13:32 must be a path to a CA bundle to use 16:13:32 :param cert: (optional) Any user-provided SSL certificate to be trusted. 16:13:32 :param proxies: (optional) The proxies dictionary to apply to the request. 16:13:32 :rtype: requests.Response 16:13:32 """ 16:13:32 16:13:32 try: 16:13:32 conn = self.get_connection(request.url, proxies) 16:13:32 except LocationValueError as e: 16:13:32 raise InvalidURL(e, request=request) 16:13:32 16:13:32 self.cert_verify(conn, request.url, verify, cert) 16:13:32 url = self.request_url(request, proxies) 16:13:32 self.add_headers( 16:13:32 request, 16:13:32 stream=stream, 16:13:32 timeout=timeout, 16:13:32 verify=verify, 16:13:32 cert=cert, 16:13:32 proxies=proxies, 16:13:32 ) 16:13:32 16:13:32 chunked = not (request.body is None or "Content-Length" in request.headers) 16:13:32 16:13:32 if isinstance(timeout, tuple): 16:13:32 try: 16:13:32 connect, read = timeout 16:13:32 timeout = TimeoutSauce(connect=connect, read=read) 16:13:32 except ValueError: 16:13:32 raise ValueError( 16:13:32 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 16:13:32 f"or a single float to set both timeouts to the same value." 16:13:32 ) 16:13:32 elif isinstance(timeout, TimeoutSauce): 16:13:32 pass 16:13:32 else: 16:13:32 timeout = TimeoutSauce(connect=timeout, read=timeout) 16:13:32 16:13:32 try: 16:13:32 resp = conn.urlopen( 16:13:32 method=request.method, 16:13:32 url=url, 16:13:32 body=request.body, 16:13:32 headers=request.headers, 16:13:32 redirect=False, 16:13:32 assert_same_host=False, 16:13:32 preload_content=False, 16:13:32 decode_content=False, 16:13:32 retries=self.max_retries, 16:13:32 timeout=timeout, 16:13:32 chunked=chunked, 16:13:32 ) 16:13:32 16:13:32 except (ProtocolError, OSError) as err: 16:13:32 raise ConnectionError(err, request=request) 16:13:32 16:13:32 except MaxRetryError as e: 16:13:32 if isinstance(e.reason, ConnectTimeoutError): 16:13:32 # TODO: Remove this in 3.0.0: see #2811 16:13:32 if not isinstance(e.reason, NewConnectionError): 16:13:32 raise ConnectTimeout(e, request=request) 16:13:32 16:13:32 if isinstance(e.reason, ResponseError): 16:13:32 raise RetryError(e, request=request) 16:13:32 16:13:32 if isinstance(e.reason, _ProxyError): 16:13:32 raise ProxyError(e, request=request) 16:13:32 16:13:32 if isinstance(e.reason, _SSLError): 16:13:32 # This branch is for urllib3 v1.22 and later. 16:13:32 raise SSLError(e, request=request) 16:13:32 16:13:32 raise ConnectionError(e, request=request) 16:13:32 16:13:32 except ClosedPoolError as e: 16:13:32 raise ConnectionError(e, request=request) 16:13:32 16:13:32 except _ProxyError as e: 16:13:32 raise ProxyError(e) 16:13:32 16:13:32 except (_SSLError, _HTTPError) as e: 16:13:32 if isinstance(e, _SSLError): 16:13:32 # This branch is for urllib3 versions earlier than v1.22 16:13:32 raise SSLError(e, request=request) 16:13:32 elif isinstance(e, ReadTimeoutError): 16:13:32 > raise ReadTimeout(e, request=request) 16:13:32 E requests.exceptions.ReadTimeout: HTTPConnectionPool(host='localhost', port=8183): Read timed out. (read timeout=10) 16:13:32 16:13:32 ../.tox/tests_tapi/lib/python3.10/site-packages/requests/adapters.py:532: ReadTimeout 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_10_add_omsAttributes_ROADMC_ROADMA 16:13:32 _____ TransportPCEFulltesting.test_11_create_connectivity_service_Ethernet _____ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_11_create_connectivity_service_Ethernet(self): 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-connectivity', 'create-connectivity-service', self.cr_serv_input_data) 16:13:32 time.sleep(self.WAITING) 16:13:32 > self.uuid_services.eth = response['output']['service']['uuid'] 16:13:32 E KeyError: 'service' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:254: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_11_create_connectivity_service_Ethernet 16:13:32 _____________ TransportPCEFulltesting.test_12_get_service_Ethernet _____________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_12_get_service_Ethernet(self): 16:13:32 response = test_utils.get_ordm_serv_list_attr_request("services", str(self.uuid_services.eth)) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 409 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:282: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_12_get_service_Ethernet 16:13:32 ______ TransportPCEFulltesting.test_13_get_connectivity_service_Ethernet _______ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_13_get_connectivity_service_Ethernet(self): 16:13:32 self.tapi_serv_details["uuid"] = str(self.uuid_services.eth) 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-connectivity', 'get-connectivity-service-details', self.tapi_serv_details) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 500 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:293: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_13_get_connectivity_service_Ethernet 16:13:32 ___________ TransportPCEFulltesting.test_15_check_update_portmapping ___________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_15_check_update_portmapping(self): 16:13:32 response = test_utils.get_portmapping_node_attr("XPDR-C1", None, None) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 409 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:311: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_15_check_update_portmapping 16:13:32 _________ TransportPCEFulltesting.test_16_check_update_openroadm_topo __________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_16_check_update_openroadm_topo(self): 16:13:32 response = test_utils.get_ietf_network_request('openroadm-topology', 'config') 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 > node_list = response['network'][0]['node'] 16:13:32 E KeyError: 'node' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:329: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_16_check_update_openroadm_topo 16:13:32 ____________ TransportPCEFulltesting.test_17_check_update_tapi_neps ____________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_17_check_update_tapi_neps(self): 16:13:32 self.node_details["topology-id"] = test_utils.T0_FULL_MULTILAYER_TOPO_UUID 16:13:32 # self.node_details["node-id"] = "XPDR-C1-XPDR1+OTSi" 16:13:32 self.node_details["node-id"] = "1770bea4-b1da-3b20-abce-7d182c0ec0df" 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-topology', 'get-node-details', self.node_details) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 500 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:366: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_17_check_update_tapi_neps 16:13:32 ___________ TransportPCEFulltesting.test_18_check_update_tapi_links ____________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_18_check_update_tapi_links(self): 16:13:32 self.tapi_topo["topology-id"] = test_utils.T0_FULL_MULTILAYER_TOPO_UUID 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-topology', 'get-topology-details', self.tapi_topo) 16:13:32 time.sleep(2) 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 > link_list = response['output']['topology']['link'] 16:13:32 E KeyError: 'link' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:407: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_18_check_update_tapi_links 16:13:32 ________ TransportPCEFulltesting.test_19_check_update_service_Ethernet _________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_19_check_update_service_Ethernet(self): 16:13:32 response = test_utils.get_ordm_serv_list_attr_request("services", str(self.uuid_services.eth)) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 409 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:423: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_19_check_update_service_Ethernet 16:13:32 __ TransportPCEFulltesting.test_20_check_update_connectivity_service_Ethernet __ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_20_check_update_connectivity_service_Ethernet(self): 16:13:32 self.tapi_serv_details["uuid"] = str(self.uuid_services.eth) 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-connectivity', 'get-connectivity-service-details', self.tapi_serv_details) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 500 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:431: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_20_check_update_connectivity_service_Ethernet 16:13:32 _________ TransportPCEFulltesting.test_22_check_update_portmapping_ok __________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_22_check_update_portmapping_ok(self): 16:13:32 response = test_utils.get_portmapping_node_attr("XPDR-C1", None, None) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 409 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:448: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_22_check_update_portmapping_ok 16:13:32 ________ TransportPCEFulltesting.test_23_check_update_openroadm_topo_ok ________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_23_check_update_openroadm_topo_ok(self): 16:13:32 response = test_utils.get_ietf_network_request('openroadm-topology', 'config') 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 > node_list = response['network'][0]['node'] 16:13:32 E KeyError: 'node' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:460: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_23_check_update_openroadm_topo_ok 16:13:32 __________ TransportPCEFulltesting.test_24_check_update_tapi_neps_ok ___________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_24_check_update_tapi_neps_ok(self): 16:13:32 self.node_details["topology-id"] = test_utils.T0_FULL_MULTILAYER_TOPO_UUID 16:13:32 # self.node_details["node-id"] = "XPDR-C1-XPDR1+OTSi" 16:13:32 self.node_details["node-id"] = "1770bea4-b1da-3b20-abce-7d182c0ec0df" 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-topology', 'get-node-details', self.node_details) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 500 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:481: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_24_check_update_tapi_neps_ok 16:13:32 __________ TransportPCEFulltesting.test_25_check_update_tapi_links_ok __________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_25_check_update_tapi_links_ok(self): 16:13:32 self.tapi_topo["topology-id"] = test_utils.T0_FULL_MULTILAYER_TOPO_UUID 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-topology', 'get-topology-details', self.tapi_topo) 16:13:32 time.sleep(2) 16:13:32 > link_list = response['output']['topology']['link'] 16:13:32 E KeyError: 'link' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:506: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_25_check_update_tapi_links_ok 16:13:32 ___________ TransportPCEFulltesting.test_26_check_update_service1_ok ___________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_26_check_update_service1_ok(self): 16:13:32 > self.test_12_get_service_Ethernet() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:513: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:282: in test_12_get_service_Ethernet 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 409 != 200 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_26_check_update_service1_ok 16:13:32 _ TransportPCEFulltesting.test_27_check_update_connectivity_service_Ethernet_ok _ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_27_check_update_connectivity_service_Ethernet_ok(self): 16:13:32 > self.test_13_get_connectivity_service_Ethernet() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:516: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:293: in test_13_get_connectivity_service_Ethernet 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 500 != 200 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_27_check_update_connectivity_service_Ethernet_ok 16:13:32 ___________ TransportPCEFulltesting.test_29_check_update_portmapping ___________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_29_check_update_portmapping(self): 16:13:32 response = test_utils.get_portmapping_node_attr("ROADM-A1", None, None) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 409 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:532: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_29_check_update_portmapping 16:13:32 _________ TransportPCEFulltesting.test_30_check_update_openroadm_topo __________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_30_check_update_openroadm_topo(self): 16:13:32 response = test_utils.get_ietf_network_request('openroadm-topology', 'config') 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 > node_list = response['network'][0]['node'] 16:13:32 E KeyError: 'node' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:550: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_30_check_update_openroadm_topo 16:13:32 ____________ TransportPCEFulltesting.test_31_check_update_tapi_neps ____________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_31_check_update_tapi_neps(self): 16:13:32 self.node_details["topology-id"] = test_utils.T0_FULL_MULTILAYER_TOPO_UUID 16:13:32 # self.node_details["node-id"] = "ROADM-A1+PHOTONIC_MEDIA" 16:13:32 self.node_details["node-id"] = "3b726367-6f2d-3e3f-9033-d99b61459075" 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-topology', 'get-node-details', self.node_details) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 500 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:587: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_31_check_update_tapi_neps 16:13:32 ___________ TransportPCEFulltesting.test_32_check_update_tapi_links ____________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_32_check_update_tapi_links(self): 16:13:32 self.tapi_topo["topology-id"] = test_utils.T0_FULL_MULTILAYER_TOPO_UUID 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-topology', 'get-topology-details', self.tapi_topo) 16:13:32 time.sleep(2) 16:13:32 > link_list = response['output']['topology']['link'] 16:13:32 E KeyError: 'link' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:610: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_32_check_update_tapi_links 16:13:32 ________ TransportPCEFulltesting.test_33_check_update_service_Ethernet _________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_33_check_update_service_Ethernet(self): 16:13:32 > self.test_19_check_update_service_Ethernet() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:625: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:423: in test_19_check_update_service_Ethernet 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 409 != 200 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_33_check_update_service_Ethernet 16:13:32 __ TransportPCEFulltesting.test_34_check_update_connectivity_service_Ethernet __ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_34_check_update_connectivity_service_Ethernet(self): 16:13:32 > self.test_20_check_update_connectivity_service_Ethernet() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:628: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:431: in test_20_check_update_connectivity_service_Ethernet 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 500 != 200 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_34_check_update_connectivity_service_Ethernet 16:13:32 _________ TransportPCEFulltesting.test_36_check_update_portmapping_ok __________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_36_check_update_portmapping_ok(self): 16:13:32 response = test_utils.get_portmapping_node_attr("ROADM-A1", None, None) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 409 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:644: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_36_check_update_portmapping_ok 16:13:32 ________ TransportPCEFulltesting.test_37_check_update_openroadm_topo_ok ________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_37_check_update_openroadm_topo_ok(self): 16:13:32 > self.test_23_check_update_openroadm_topo_ok() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:654: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_23_check_update_openroadm_topo_ok(self): 16:13:32 response = test_utils.get_ietf_network_request('openroadm-topology', 'config') 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 > node_list = response['network'][0]['node'] 16:13:32 E KeyError: 'node' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:460: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_37_check_update_openroadm_topo_ok 16:13:32 __________ TransportPCEFulltesting.test_38_check_update_tapi_neps_ok ___________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_38_check_update_tapi_neps_ok(self): 16:13:32 self.node_details["topology-id"] = test_utils.T0_FULL_MULTILAYER_TOPO_UUID 16:13:32 # self.node_details["node-id"] = "ROADM-A1+PHOTONIC_MEDIA" 16:13:32 self.node_details["node-id"] = "3b726367-6f2d-3e3f-9033-d99b61459075" 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-topology', 'get-node-details', self.node_details) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 500 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:662: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_38_check_update_tapi_neps_ok 16:13:32 __________ TransportPCEFulltesting.test_39_check_update_tapi_links_ok __________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_39_check_update_tapi_links_ok(self): 16:13:32 > self.test_25_check_update_tapi_links_ok() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:673: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_25_check_update_tapi_links_ok(self): 16:13:32 self.tapi_topo["topology-id"] = test_utils.T0_FULL_MULTILAYER_TOPO_UUID 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-topology', 'get-topology-details', self.tapi_topo) 16:13:32 time.sleep(2) 16:13:32 > link_list = response['output']['topology']['link'] 16:13:32 E KeyError: 'link' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:506: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_39_check_update_tapi_links_ok 16:13:32 ___________ TransportPCEFulltesting.test_40_check_update_service1_ok ___________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_40_check_update_service1_ok(self): 16:13:32 > self.test_12_get_service_Ethernet() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:676: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:282: in test_12_get_service_Ethernet 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 409 != 200 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_40_check_update_service1_ok 16:13:32 _ TransportPCEFulltesting.test_41_check_update_connectivity_service_Ethernet_ok _ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_41_check_update_connectivity_service_Ethernet_ok(self): 16:13:32 > self.test_13_get_connectivity_service_Ethernet() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:679: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:293: in test_13_get_connectivity_service_Ethernet 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 500 != 200 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_41_check_update_connectivity_service_Ethernet_ok 16:13:32 ___________ TransportPCEFulltesting.test_43_check_update_portmapping ___________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_43_check_update_portmapping(self): 16:13:32 response = test_utils.get_portmapping_node_attr("ROADM-A1", None, None) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 409 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:695: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_43_check_update_portmapping 16:13:32 _________ TransportPCEFulltesting.test_44_check_update_openroadm_topo __________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_44_check_update_openroadm_topo(self): 16:13:32 response = test_utils.get_ietf_network_request('openroadm-topology', 'config') 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 > node_list = response['network'][0]['node'] 16:13:32 E KeyError: 'node' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:713: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_44_check_update_openroadm_topo 16:13:32 ____________ TransportPCEFulltesting.test_45_check_update_tapi_neps ____________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_45_check_update_tapi_neps(self): 16:13:32 self.node_details["topology-id"] = test_utils.T0_FULL_MULTILAYER_TOPO_UUID 16:13:32 # self.node_details["node-id"] = "ROADM-A1+PHOTONIC_MEDIA" 16:13:32 self.node_details["node-id"] = "3b726367-6f2d-3e3f-9033-d99b61459075" 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-topology', 'get-node-details', self.node_details) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 500 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:750: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_45_check_update_tapi_neps 16:13:32 ___________ TransportPCEFulltesting.test_46_check_update_tapi_links ____________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_46_check_update_tapi_links(self): 16:13:32 self.tapi_topo["topology-id"] = test_utils.T0_FULL_MULTILAYER_TOPO_UUID 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-topology', 'get-topology-details', self.tapi_topo) 16:13:32 time.sleep(2) 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 > link_list = response['output']['topology']['link'] 16:13:32 E KeyError: 'link' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:774: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_46_check_update_tapi_links 16:13:32 ________ TransportPCEFulltesting.test_47_check_update_service_Ethernet _________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_47_check_update_service_Ethernet(self): 16:13:32 > self.test_19_check_update_service_Ethernet() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:789: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:423: in test_19_check_update_service_Ethernet 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 409 != 200 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_47_check_update_service_Ethernet 16:13:32 __ TransportPCEFulltesting.test_48_check_update_connectivity_service_Ethernet __ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_48_check_update_connectivity_service_Ethernet(self): 16:13:32 > self.test_20_check_update_connectivity_service_Ethernet() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:792: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:431: in test_20_check_update_connectivity_service_Ethernet 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 500 != 200 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_48_check_update_connectivity_service_Ethernet 16:13:32 _________ TransportPCEFulltesting.test_50_check_update_portmapping_ok __________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_50_check_update_portmapping_ok(self): 16:13:32 > self.test_36_check_update_portmapping_ok() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:807: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:644: in test_36_check_update_portmapping_ok 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 409 != 200 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_50_check_update_portmapping_ok 16:13:32 ________ TransportPCEFulltesting.test_51_check_update_openroadm_topo_ok ________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_51_check_update_openroadm_topo_ok(self): 16:13:32 > self.test_23_check_update_openroadm_topo_ok() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:810: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_23_check_update_openroadm_topo_ok(self): 16:13:32 response = test_utils.get_ietf_network_request('openroadm-topology', 'config') 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 > node_list = response['network'][0]['node'] 16:13:32 E KeyError: 'node' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:460: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_51_check_update_openroadm_topo_ok 16:13:32 __________ TransportPCEFulltesting.test_52_check_update_tapi_neps_ok ___________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_52_check_update_tapi_neps_ok(self): 16:13:32 > self.test_38_check_update_tapi_neps_ok() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:813: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:662: in test_38_check_update_tapi_neps_ok 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 500 != 200 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_52_check_update_tapi_neps_ok 16:13:32 __________ TransportPCEFulltesting.test_53_check_update_tapi_links_ok __________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_53_check_update_tapi_links_ok(self): 16:13:32 > self.test_25_check_update_tapi_links_ok() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:816: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_25_check_update_tapi_links_ok(self): 16:13:32 self.tapi_topo["topology-id"] = test_utils.T0_FULL_MULTILAYER_TOPO_UUID 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-topology', 'get-topology-details', self.tapi_topo) 16:13:32 time.sleep(2) 16:13:32 > link_list = response['output']['topology']['link'] 16:13:32 E KeyError: 'link' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:506: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_53_check_update_tapi_links_ok 16:13:32 ___________ TransportPCEFulltesting.test_54_check_update_service1_ok ___________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_54_check_update_service1_ok(self): 16:13:32 > self.test_12_get_service_Ethernet() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:819: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:282: in test_12_get_service_Ethernet 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 409 != 200 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_54_check_update_service1_ok 16:13:32 _ TransportPCEFulltesting.test_55_check_update_connectivity_service_Ethernet_ok _ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_55_check_update_connectivity_service_Ethernet_ok(self): 16:13:32 > self.test_13_get_connectivity_service_Ethernet() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:822: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:293: in test_13_get_connectivity_service_Ethernet 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 500 != 200 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_55_check_update_connectivity_service_Ethernet_ok 16:13:32 ___________ TransportPCEFulltesting.test_57_check_update_portmapping ___________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_57_check_update_portmapping(self): 16:13:32 response = test_utils.get_portmapping_node_attr("ROADM-A1", None, None) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 409 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:838: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_57_check_update_portmapping 16:13:32 _________ TransportPCEFulltesting.test_58_check_update_openroadm_topo __________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_58_check_update_openroadm_topo(self): 16:13:32 response = test_utils.get_ietf_network_request('openroadm-topology', 'config') 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 > node_list = response['network'][0]['node'] 16:13:32 E KeyError: 'node' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:856: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_58_check_update_openroadm_topo 16:13:32 ____________ TransportPCEFulltesting.test_59_check_update_tapi_neps ____________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_59_check_update_tapi_neps(self): 16:13:32 self.node_details["topology-id"] = test_utils.T0_FULL_MULTILAYER_TOPO_UUID 16:13:32 # self.node_details["node-id"] = uuid.UUID(bytes="ROADM-A1+PHOTONIC_MEDIA".bytes) 16:13:32 self.node_details["node-id"] = "3b726367-6f2d-3e3f-9033-d99b61459075" 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-topology', 'get-node-details', self.node_details) 16:13:32 > self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 500 != 200 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:886: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_59_check_update_tapi_neps 16:13:32 ___________ TransportPCEFulltesting.test_60_check_update_tapi_links ____________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_60_check_update_tapi_links(self): 16:13:32 self.tapi_topo["topology-id"] = test_utils.T0_FULL_MULTILAYER_TOPO_UUID 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-topology', 'get-topology-details', self.tapi_topo) 16:13:32 time.sleep(2) 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 > link_list = response['output']['topology']['link'] 16:13:32 E KeyError: 'link' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:910: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_60_check_update_tapi_links 16:13:32 ___________ TransportPCEFulltesting.test_61_check_update_service1_ok ___________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_61_check_update_service1_ok(self): 16:13:32 > self.test_12_get_service_Ethernet() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:925: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:282: in test_12_get_service_Ethernet 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 409 != 200 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_61_check_update_service1_ok 16:13:32 _ TransportPCEFulltesting.test_62_check_update_connectivity_service_Ethernet_ok _ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_62_check_update_connectivity_service_Ethernet_ok(self): 16:13:32 > self.test_13_get_connectivity_service_Ethernet() 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:928: 16:13:32 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:293: in test_13_get_connectivity_service_Ethernet 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 E AssertionError: 500 != 200 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_62_check_update_connectivity_service_Ethernet_ok 16:13:32 _____ TransportPCEFulltesting.test_63_delete_connectivity_service_Ethernet _____ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_63_delete_connectivity_service_Ethernet(self): 16:13:32 self.del_serv_input_data["uuid"] = str(self.uuid_services.eth) 16:13:32 response = test_utils.transportpce_api_rpc_request( 16:13:32 'tapi-connectivity', 'delete-connectivity-service', self.del_serv_input_data) 16:13:32 > self.assertIn(response['status_code'], (requests.codes.ok, requests.codes.no_content)) 16:13:32 E AssertionError: 500 not found in (200, 204) 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:934: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_63_delete_connectivity_service_Ethernet 16:13:32 ________ TransportPCEFulltesting.test_64_disconnect_xponders_from_roadm ________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_64_disconnect_xponders_from_roadm(self): 16:13:32 response = test_utils.get_ietf_network_request('openroadm-topology', 'config') 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 > links = response['network'][0]['ietf-network-topology:link'] 16:13:32 E KeyError: 'ietf-network-topology:link' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:940: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_64_disconnect_xponders_from_roadm 16:13:32 _______________ TransportPCEFulltesting.test_65_disconnect_XPDRA _______________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_65_disconnect_XPDRA(self): 16:13:32 response = test_utils.unmount_device("XPDR-A1") 16:13:32 > self.assertIn(response.status_code, (requests.codes.ok, requests.codes.no_content)) 16:13:32 E AssertionError: 409 not found in (200, 204) 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:949: AssertionError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_65_disconnect_XPDRA 16:13:32 Searching for pattern 'onDeviceDisConnected:\ XPDR\-A1' in karaf.log... Pattern not found after 180 seconds! Node XPDR-A1 still not deleted from tpce topology... 16:13:32 ___________ TransportPCEFulltesting.test_70_clean_openroadm_topology ___________ 16:13:32 16:13:32 self = 16:13:32 16:13:32 def test_70_clean_openroadm_topology(self): 16:13:32 response = test_utils.get_ietf_network_request('openroadm-topology', 'config') 16:13:32 self.assertEqual(response['status_code'], requests.codes.ok) 16:13:32 > links = response['network'][0]['ietf-network-topology:link'] 16:13:32 E KeyError: 'ietf-network-topology:link' 16:13:32 16:13:32 transportpce_tests/tapi/test03_tapi_device_change_notifications.py:978: KeyError 16:13:32 ----------------------------- Captured stdout call ----------------------------- 16:13:32 execution of test_70_clean_openroadm_topology 16:13:32 --------------------------- Captured stdout teardown --------------------------- 16:13:32 all processes killed 16:13:32 =========================== short test summary info ============================ 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_01_connect_xpdrA 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_05_connect_xpdrA_N1_to_roadmA_PP1 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_06_connect_roadmA_PP1_to_xpdrA_N1 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_07_connect_xpdrC_N1_to_roadmC_PP1 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_08_connect_roadmC_PP1_to_xpdrC_N1 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_09_add_omsAttributes_ROADMA_ROADMC 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_10_add_omsAttributes_ROADMC_ROADMA 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_11_create_connectivity_service_Ethernet 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_12_get_service_Ethernet 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_13_get_connectivity_service_Ethernet 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_15_check_update_portmapping 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_16_check_update_openroadm_topo 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_17_check_update_tapi_neps 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_18_check_update_tapi_links 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_19_check_update_service_Ethernet 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_20_check_update_connectivity_service_Ethernet 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_22_check_update_portmapping_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_23_check_update_openroadm_topo_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_24_check_update_tapi_neps_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_25_check_update_tapi_links_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_26_check_update_service1_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_27_check_update_connectivity_service_Ethernet_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_29_check_update_portmapping 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_30_check_update_openroadm_topo 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_31_check_update_tapi_neps 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_32_check_update_tapi_links 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_33_check_update_service_Ethernet 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_34_check_update_connectivity_service_Ethernet 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_36_check_update_portmapping_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_37_check_update_openroadm_topo_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_38_check_update_tapi_neps_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_39_check_update_tapi_links_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_40_check_update_service1_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_41_check_update_connectivity_service_Ethernet_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_43_check_update_portmapping 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_44_check_update_openroadm_topo 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_45_check_update_tapi_neps 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_46_check_update_tapi_links 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_47_check_update_service_Ethernet 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_48_check_update_connectivity_service_Ethernet 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_50_check_update_portmapping_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_51_check_update_openroadm_topo_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_52_check_update_tapi_neps_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_53_check_update_tapi_links_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_54_check_update_service1_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_55_check_update_connectivity_service_Ethernet_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_57_check_update_portmapping 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_58_check_update_openroadm_topo 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_59_check_update_tapi_neps 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_60_check_update_tapi_links 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_61_check_update_service1_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_62_check_update_connectivity_service_Ethernet_ok 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_63_delete_connectivity_service_Ethernet 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_64_disconnect_xponders_from_roadm 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_65_disconnect_XPDRA 16:13:32 FAILED transportpce_tests/tapi/test03_tapi_device_change_notifications.py::TransportPCEFulltesting::test_70_clean_openroadm_topology 16:13:32 56 failed, 14 passed in 1670.65s (0:27:50) 16:13:32 tests121: FAIL ✖ in 12 minutes 42.64 seconds 16:13:32 tests_tapi: exit 1 (2179.94 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh tapi pid=47238 16:13:32 tests_tapi: FAIL ✖ in 36 minutes 27.52 seconds 16:13:32 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:13:39 tests71: freeze> python -m pip freeze --all 16:13:40 tests71: bcrypt==4.1.2,certifi==2024.2.2,cffi==1.16.0,charset-normalizer==3.3.2,cryptography==42.0.5,dict2xml==1.7.5,exceptiongroup==1.2.0,idna==3.6,iniconfig==2.0.0,lxml==5.1.0,netconf-client==3.0.0,packaging==23.2,paramiko==3.4.0,pip==24.0,pluggy==1.4.0,psutil==5.9.8,pycparser==2.21,PyNaCl==1.5.0,pytest==8.0.2,requests==2.31.0,setuptools==69.1.0,tomli==2.0.1,urllib3==2.2.1,wheel==0.42.0 16:13:40 tests71: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./install_honeynode.sh 7.1 16:13:40 Installing honeynode for 7.1 devices to ./honeynode/7.1/honeynode-simulator directory 16:13:43 tests71: commands[1] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 7.1 16:13:43 using environment variables from ./karaf71.env 16:13:43 which: no pytest-3 in (/w/workspace/transportpce-tox-verify-transportpce-master/.tox/tests71/bin:/opt/pyenv/bin:/tmp/venv-R58v/bin:/opt/pyenv/shims:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin) 16:13:43 pytest -q transportpce_tests/7.1/test01_portmapping.py 16:14:20 ............ [100%] 16:14:33 12 passed in 52.53s 16:14:33 pytest -q transportpce_tests/7.1/test02_otn_renderer.py 16:15:08 .............................................................. [100%] 16:17:27 62 passed in 173.48s (0:02:53) 16:17:27 pytest -q transportpce_tests/7.1/test03_renderer_or_modes.py 16:18:15 ................................................ [100%] 16:20:06 48 passed in 158.91s (0:02:38) 16:20:06 pytest -q transportpce_tests/7.1/test04_renderer_regen_mode.py 16:20:41 ...................... [100%] 16:21:32 22 passed in 86.26s (0:01:26) 16:21:33 tests71: OK ✔ in 8 minutes 0.55 seconds 16:21:33 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:21:39 tests221: freeze> python -m pip freeze --all 16:21:39 tests221: bcrypt==4.1.2,certifi==2024.2.2,cffi==1.16.0,charset-normalizer==3.3.2,cryptography==42.0.5,dict2xml==1.7.5,exceptiongroup==1.2.0,idna==3.6,iniconfig==2.0.0,lxml==5.1.0,netconf-client==3.0.0,packaging==23.2,paramiko==3.4.0,pip==24.0,pluggy==1.4.0,psutil==5.9.8,pycparser==2.21,PyNaCl==1.5.0,pytest==8.0.2,requests==2.31.0,setuptools==69.1.0,tomli==2.0.1,urllib3==2.2.1,wheel==0.42.0 16:21:39 tests221: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh 2.2.1 16:21:39 using environment variables from ./karaf221.env 16:21:39 which: no pytest-3 in (/w/workspace/transportpce-tox-verify-transportpce-master/.tox/tests221/bin:/opt/pyenv/bin:/tmp/venv-R58v/bin:/opt/pyenv/shims:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin) 16:21:39 pytest -q transportpce_tests/2.2.1/test01_portmapping.py 16:22:14 ................................... [100%] 16:22:54 35 passed in 74.90s (0:01:14) 16:22:54 pytest -q transportpce_tests/2.2.1/test02_topo_portmapping.py 16:23:25 ...... [100%] 16:23:39 6 passed in 44.77s 16:23:39 pytest -q transportpce_tests/2.2.1/test03_topology.py 16:24:17 ............................................ [100%] 16:25:53 44 passed in 133.82s (0:02:13) 16:25:53 pytest -q transportpce_tests/2.2.1/test04_otn_topology.py 16:26:30 ............ [100%] 16:26:54 12 passed in 60.33s (0:01:00) 16:26:54 pytest -q transportpce_tests/2.2.1/test05_flex_grid.py 16:27:20 ................ [100%] 16:28:50 16 passed in 115.52s (0:01:55) 16:28:50 pytest -q transportpce_tests/2.2.1/test06_renderer_service_path_nominal.py 16:29:18 ............................... [100%] 16:29:26 31 passed in 35.95s 16:29:26 pytest -q transportpce_tests/2.2.1/test07_otn_renderer.py 16:30:02 .......................... [100%] 16:30:58 26 passed in 92.39s (0:01:32) 16:30:59 pytest -q transportpce_tests/2.2.1/test08_otn_sh_renderer.py 16:31:35 ...................... [100%] 16:32:40 22 passed in 101.00s (0:01:40) 16:32:40 pytest -q transportpce_tests/2.2.1/test09_olm.py 16:33:17 ........................................ [100%] 16:35:43 40 passed in 182.88s (0:03:02) 16:35:43 pytest -q transportpce_tests/2.2.1/test11_otn_end2end.py 16:36:21 ........................................................................ [ 74%] 16:41:59 ......................... [100%] 16:43:51 97 passed in 488.11s (0:08:08) 16:43:51 pytest -q transportpce_tests/2.2.1/test12_end2end.py 16:44:27 ...................................................... [100%] 16:51:16 54 passed in 444.32s (0:07:24) 16:51:16 pytest -q transportpce_tests/2.2.1/test14_otn_switch_end2end.py 16:52:02 ........................................................................ [ 71%] 16:57:14 ............................. [100%] 16:59:24 101 passed in 487.75s (0:08:07) 16:59:24 pytest -q transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py 17:00:12 ........................................................................ [ 67%] 17:06:01 ................................... [100%] 17:09:23 107 passed in 598.68s (0:09:58) 17:09:23 tests221: OK ✔ in 47 minutes 50.34 seconds 17:09:23 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:09:29 tests_hybrid: freeze> python -m pip freeze --all 17:09:30 tests_hybrid: bcrypt==4.1.2,certifi==2024.2.2,cffi==1.16.0,charset-normalizer==3.3.2,cryptography==42.0.5,dict2xml==1.7.5,exceptiongroup==1.2.0,idna==3.6,iniconfig==2.0.0,lxml==5.1.0,netconf-client==3.0.0,packaging==23.2,paramiko==3.4.0,pip==24.0,pluggy==1.4.0,psutil==5.9.8,pycparser==2.21,PyNaCl==1.5.0,pytest==8.0.2,requests==2.31.0,setuptools==69.1.0,tomli==2.0.1,urllib3==2.2.1,wheel==0.42.0 17:09:30 tests_hybrid: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./install_honeynode.sh 17:09:30 Installing honeynode for 1.2.1 devices to ./honeynode/1.2.1/honeynode-simulator directory 17:09:32 Installing honeynode for 2.2.1 devices to ./honeynode/2.2.1/honeynode-simulator directory 17:09:33 Removing ./honeynode/7.1/honeynode-simulator directory 17:09:33 Installing honeynode for 7.1 devices to ./honeynode/7.1/honeynode-simulator directory 17:09:34 tests_hybrid: commands[1] /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh hybrid 17:09:34 using environment variables from ./karaf121.env 17:09:34 which: no pytest-3 in (/w/workspace/transportpce-tox-verify-transportpce-master/.tox/tests_hybrid/bin:/opt/pyenv/bin:/tmp/venv-R58v/bin:/opt/pyenv/shims:/home/jenkins/.local/bin:/home/jenkins/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/puppetlabs/bin) 17:09:34 pytest -q transportpce_tests/hybrid/test01_device_change_notifications.py 17:10:49 ................................................... [100%] 17:12:39 51 passed in 184.59s (0:03:04) 17:12:39 pytest -q transportpce_tests/hybrid/test02_B100G_end2end.py 17:13:58 .......................F.FFF.FFFFFFFFFFF.FFFFFF.....FF.FFFFFFFFFFFFF.FF. [ 66%] 17:17:23 ..FFFFFF.FFFF.FFFF.FFFFFFFF.....F.... [100%] 17:31:55 =================================== FAILURES =================================== 17:31:55 _______________ TransportPCEtesting.test_024_get_ODUC4_service1 ________________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_024_get_ODUC4_service1(self): 17:31:55 response = test_utils.get_ordm_serv_list_attr_request( 17:31:55 "services", "service1-ODUC4") 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 self.assertEqual(response['services'][0]['service-name'], 'service1-ODUC4') 17:31:55 > self.assertEqual(response['services'][0]['administrative-state'], 'inService') 17:31:55 E AssertionError: 'outOfService' != 'inService' 17:31:55 E - outOfService 17:31:55 E + inService 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:458: AssertionError 17:31:55 __________ TransportPCEtesting.test_026_check_interface_ODUC4_xpdrc2 ___________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_026_check_interface_ODUC4_xpdrc2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-C2', 'interface', 'XPDR2-NETWORK1-ODUC4') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:497: AssertionError 17:31:55 ______________ TransportPCEtesting.test_027_check_otn_topo_links _______________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_027_check_otn_topo_links(self): 17:31:55 response = test_utils.get_ietf_network_request('otn-topology', 'config') 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 > self.assertEqual(len(response['network'][0]['ietf-network-topology:link']), 4) 17:31:55 E AssertionError: 2 != 4 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:523: AssertionError 17:31:55 ________________ TransportPCEtesting.test_028_check_otn_topo_tp ________________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_028_check_otn_topo_tp(self): 17:31:55 response = test_utils.get_ietf_network_request('otn-topology', 'config') 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 for node in response['network'][0]['node']: 17:31:55 if node['node-id'] in ('XPDR-A2-XPDR2', 'XPDR-C2-XPDR2'): 17:31:55 tpList = node['ietf-network-topology:termination-point'] 17:31:55 for tp in tpList: 17:31:55 if tp['tp-id'] == 'XPDR2-NETWORK1': 17:31:55 > xpdrTpPortConAt = tp['org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes'] 17:31:55 E KeyError: 'org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes' 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:556: KeyError 17:31:55 _______________ TransportPCEtesting.test_030_get_100GE_service_1 _______________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_030_get_100GE_service_1(self): 17:31:55 response = test_utils.get_ordm_serv_list_attr_request( 17:31:55 "services", "service-100GE") 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:588: AssertionError 17:31:55 _______ TransportPCEtesting.test_031_check_interface_100GE_CLIENT_xpdra2 _______ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_031_check_interface_100GE_CLIENT_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR2-CLIENT1-ETHERNET-100G') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:597: AssertionError 17:31:55 _______ TransportPCEtesting.test_032_check_interface_ODU4_CLIENT_xpdra2 ________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_032_check_interface_ODU4_CLIENT_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR2-CLIENT1-ODU4:service-100GE') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:614: AssertionError 17:31:55 _______ TransportPCEtesting.test_033_check_interface_ODU4_NETWORK_xpdra2 _______ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_033_check_interface_ODU4_NETWORK_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR2-NETWORK1-ODU4:service-100GE') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:638: AssertionError 17:31:55 __________ TransportPCEtesting.test_034_check_ODU4_connection_xpdra2 ___________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_034_check_ODU4_connection_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'odu-connection', 'XPDR2-CLIENT1-ODU4-x-XPDR2-NETWORK1-ODU4') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:668: AssertionError 17:31:55 _______ TransportPCEtesting.test_035_check_interface_100GE_CLIENT_xpdrc2 _______ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_035_check_interface_100GE_CLIENT_xpdrc2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-C2', 'interface', 'XPDR2-CLIENT1-ETHERNET-100G') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:685: AssertionError 17:31:55 _______ TransportPCEtesting.test_036_check_interface_ODU4_CLIENT_xpdrc2 ________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_036_check_interface_ODU4_CLIENT_xpdrc2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-C2', 'interface', 'XPDR2-CLIENT1-ODU4:service-100GE') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:702: AssertionError 17:31:55 _______ TransportPCEtesting.test_037_check_interface_ODU4_NETWORK_xpdrc2 _______ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_037_check_interface_ODU4_NETWORK_xpdrc2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-C2', 'interface', 'XPDR2-NETWORK1-ODU4:service-100GE') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:726: AssertionError 17:31:55 __________ TransportPCEtesting.test_038_check_ODU4_connection_xpdrc2 ___________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_038_check_ODU4_connection_xpdrc2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-C2', 'odu-connection', 'XPDR2-CLIENT1-ODU4-x-XPDR2-NETWORK1-ODU4') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:762: AssertionError 17:31:55 ______________ TransportPCEtesting.test_039_check_otn_topo_links _______________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_039_check_otn_topo_links(self): 17:31:55 response = test_utils.get_ietf_network_request('otn-topology', 'config') 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 > self.assertEqual(len(response['network'][0]['ietf-network-topology:link']), 4) 17:31:55 E AssertionError: 2 != 4 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:779: AssertionError 17:31:55 ________________ TransportPCEtesting.test_040_check_otn_topo_tp ________________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_040_check_otn_topo_tp(self): 17:31:55 response = test_utils.get_ietf_network_request('otn-topology', 'config') 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 for node in response['network'][0]['node']: 17:31:55 if node['node-id'] in ('XPDR-A2-XPDR2', 'XPDR-C2-XPDR2'): 17:31:55 tpList = node['ietf-network-topology:termination-point'] 17:31:55 for tp in tpList: 17:31:55 if tp['tp-id'] == 'XPDR2-NETWORK1': 17:31:55 > xpdrTpPortConAt = tp['org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes'] 17:31:55 E KeyError: 'org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes' 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:797: KeyError 17:31:55 _______________ TransportPCEtesting.test_042_get_100GE_service_2 _______________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_042_get_100GE_service_2(self): 17:31:55 response = test_utils.get_ordm_serv_list_attr_request("services", "service-100GE2") 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:829: AssertionError 17:31:55 _______________ TransportPCEtesting.test_043_check_service_list ________________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_043_check_service_list(self): 17:31:55 response = test_utils.get_ordm_serv_list_request() 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 > self.assertEqual(len(response['service-list']['services']), 4) 17:31:55 E AssertionError: 2 != 4 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:839: AssertionError 17:31:55 ______________ TransportPCEtesting.test_044_check_otn_topo_links _______________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_044_check_otn_topo_links(self): 17:31:55 response = test_utils.get_ietf_network_request('otn-topology', 'config') 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 > self.assertEqual(len(response['network'][0]['ietf-network-topology:link']), 4) 17:31:55 E AssertionError: 2 != 4 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:844: AssertionError 17:31:55 ________________ TransportPCEtesting.test_045_check_otn_topo_tp ________________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_045_check_otn_topo_tp(self): 17:31:55 response = test_utils.get_ietf_network_request('otn-topology', 'config') 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 for node in response['network'][0]['node']: 17:31:55 if node['node-id'] in ('XPDR-A2-XPDR2', 'XPDR-C2-XPDR2'): 17:31:55 tpList = node['ietf-network-topology:termination-point'] 17:31:55 for tp in tpList: 17:31:55 if tp['tp-id'] == 'XPDR2-NETWORK1': 17:31:55 > xpdrTpPortConAt = tp['org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes'] 17:31:55 E KeyError: 'org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes' 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:862: KeyError 17:31:55 _____________ TransportPCEtesting.test_046_delete_100GE_service_2 ______________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_046_delete_100GE_service_2(self): 17:31:55 self.del_serv_input_data["service-delete-req-info"]["service-name"] = "service-100GE2" 17:31:55 response = test_utils.transportpce_api_rpc_request( 17:31:55 'org-openroadm-service', 'service-delete', 17:31:55 self.del_serv_input_data) 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 > self.assertIn('Renderer service delete in progress', 17:31:55 response['output']['configuration-response-common']['response-message']) 17:31:55 E AssertionError: 'Renderer service delete in progress' not found in "Service 'service-100GE2' does not exist in datastore" 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:878: AssertionError 17:31:55 _____________ TransportPCEtesting.test_047_delete_100GE_service_1 ______________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_047_delete_100GE_service_1(self): 17:31:55 self.del_serv_input_data["service-delete-req-info"]["service-name"] = "service-100GE" 17:31:55 response = test_utils.transportpce_api_rpc_request( 17:31:55 'org-openroadm-service', 'service-delete', 17:31:55 self.del_serv_input_data) 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 > self.assertIn('Renderer service delete in progress', 17:31:55 response['output']['configuration-response-common']['response-message']) 17:31:55 E AssertionError: 'Renderer service delete in progress' not found in "Service 'service-100GE' does not exist in datastore" 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:888: AssertionError 17:31:55 ______________ TransportPCEtesting.test_053_check_otn_topo_links _______________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_053_check_otn_topo_links(self): 17:31:55 response = test_utils.get_ietf_network_request('otn-topology', 'config') 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 > self.assertEqual(len(response['network'][0]['ietf-network-topology:link']), 4) 17:31:55 E AssertionError: 2 != 4 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:920: AssertionError 17:31:55 ________________ TransportPCEtesting.test_054_check_otn_topo_tp ________________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_054_check_otn_topo_tp(self): 17:31:55 response = test_utils.get_ietf_network_request('otn-topology', 'config') 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 for node in response['network'][0]['node']: 17:31:55 if node['node-id'] in ('XPDR-A2-XPDR2', 'XPDR-C2-XPDR2'): 17:31:55 tpList = node['ietf-network-topology:termination-point'] 17:31:55 for tp in tpList: 17:31:55 if tp['tp-id'] == 'XPDR2-NETWORK1': 17:31:55 > xpdrTpPortConAt = tp['org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes'] 17:31:55 E KeyError: 'org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes' 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:938: KeyError 17:31:55 _______________ TransportPCEtesting.test_056_get_100GE_service_3 _______________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_056_get_100GE_service_3(self): 17:31:55 response = test_utils.get_ordm_serv_list_attr_request("services", "service-100GE3") 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:965: AssertionError 17:31:55 _______________ TransportPCEtesting.test_057_check_service_list ________________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_057_check_service_list(self): 17:31:55 response = test_utils.get_ordm_serv_list_request() 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 > self.assertEqual(len(response['service-list']['services']), 3) 17:31:55 E AssertionError: 2 != 3 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:975: AssertionError 17:31:55 _______ TransportPCEtesting.test_058_check_interface_100GE_CLIENT_xpdra2 _______ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_058_check_interface_100GE_CLIENT_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR2-CLIENT1-ETHERNET-100G') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:980: AssertionError 17:31:55 _______ TransportPCEtesting.test_059_check_interface_ODU4_CLIENT_xpdra2 ________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_059_check_interface_ODU4_CLIENT_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR2-CLIENT1-ODU4:service-100GE3') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:997: AssertionError 17:31:55 _______ TransportPCEtesting.test_060_check_interface_ODU4_NETWORK_xpdra2 _______ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_060_check_interface_ODU4_NETWORK_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR2-NETWORK1-ODU4:service-100GE3') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1021: AssertionError 17:31:55 __________ TransportPCEtesting.test_061_check_ODU4_connection_xpdra2 ___________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_061_check_ODU4_connection_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'odu-connection', 'XPDR2-CLIENT1-ODU4-x-XPDR2-NETWORK1-ODU4') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1051: AssertionError 17:31:55 _______ TransportPCEtesting.test_062_check_interface_100GE_CLIENT_xpdrc2 _______ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_062_check_interface_100GE_CLIENT_xpdrc2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-C2', 'interface', 'XPDR2-CLIENT2-ETHERNET-100G') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1068: AssertionError 17:31:55 _______ TransportPCEtesting.test_063_check_interface_ODU4_CLIENT_xpdrc2 ________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_063_check_interface_ODU4_CLIENT_xpdrc2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-C2', 'interface', 'XPDR2-CLIENT2-ODU4:service-100GE3') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1085: AssertionError 17:31:55 _______ TransportPCEtesting.test_064_check_interface_ODU4_NETWORK_xpdrc2 _______ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_064_check_interface_ODU4_NETWORK_xpdrc2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-C2', 'interface', 'XPDR2-NETWORK1-ODU4:service-100GE3') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1109: AssertionError 17:31:55 __________ TransportPCEtesting.test_065_check_ODU4_connection_xpdrc2 ___________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_065_check_ODU4_connection_xpdrc2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-C2', 'odu-connection', 'XPDR2-CLIENT2-ODU4-x-XPDR2-NETWORK1-ODU4') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1145: AssertionError 17:31:55 ______________ TransportPCEtesting.test_066_check_otn_topo_links _______________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_066_check_otn_topo_links(self): 17:31:55 response = test_utils.get_ietf_network_request('otn-topology', 'config') 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 > self.assertEqual(len(response['network'][0]['ietf-network-topology:link']), 4) 17:31:55 E AssertionError: 2 != 4 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1162: AssertionError 17:31:55 ________________ TransportPCEtesting.test_067_check_otn_topo_tp ________________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_067_check_otn_topo_tp(self): 17:31:55 response = test_utils.get_ietf_network_request('otn-topology', 'config') 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 for node in response['network'][0]['node']: 17:31:55 if node['node-id'] in ('XPDR-A2-XPDR2', 'XPDR-C2-XPDR2'): 17:31:55 tpList = node['ietf-network-topology:termination-point'] 17:31:55 for tp in tpList: 17:31:55 if tp['tp-id'] == 'XPDR2-NETWORK1': 17:31:55 > xpdrTpPortConAt = tp['org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes'] 17:31:55 E KeyError: 'org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes' 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1180: KeyError 17:31:55 _____________ TransportPCEtesting.test_068_delete_100GE_service_3 ______________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_068_delete_100GE_service_3(self): 17:31:55 self.del_serv_input_data["service-delete-req-info"]["service-name"] = "service-100GE3" 17:31:55 response = test_utils.transportpce_api_rpc_request( 17:31:55 'org-openroadm-service', 'service-delete', 17:31:55 self.del_serv_input_data) 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 > self.assertIn('Renderer service delete in progress', 17:31:55 response['output']['configuration-response-common']['response-message']) 17:31:55 E AssertionError: 'Renderer service delete in progress' not found in "Service 'service-100GE3' does not exist in datastore" 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1193: AssertionError 17:31:55 _______________ TransportPCEtesting.test_070_check_service_list ________________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_070_check_service_list(self): 17:31:55 response = test_utils.get_ordm_serv_list_request() 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 > self.assertEqual(len(response['service-list']['services']), 1) 17:31:55 E AssertionError: 2 != 1 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1210: AssertionError 17:31:55 _________ TransportPCEtesting.test_071_check_no_interface_ODU4_xpdra2 __________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_071_check_no_interface_ODU4_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR2-NETWORK1-ODUC4') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.conflict) 17:31:55 E AssertionError: 200 != 409 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1215: AssertionError 17:31:55 _________________ TransportPCEtesting.test_075_get_no_service __________________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_075_get_no_service(self): 17:31:55 response = test_utils.get_ordm_serv_list_request() 17:31:55 > self.assertEqual(response['status_code'], requests.codes.conflict) 17:31:55 E AssertionError: 200 != 409 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1243: AssertionError 17:31:55 _________ TransportPCEtesting.test_076_check_no_interface_OTUC4_xpdra2 _________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_076_check_no_interface_OTUC4_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR2-NETWORK1-OTUC4') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.conflict) 17:31:55 E AssertionError: 200 != 409 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1262: AssertionError 17:31:55 _________ TransportPCEtesting.test_077_check_no_interface_OTSI_xpdra2 __________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_077_check_no_interface_OTSI_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR2-NETWORK1-755:768') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.conflict) 17:31:55 E AssertionError: 200 != 409 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1267: AssertionError 17:31:55 _________ TransportPCEtesting.test_078_check_no_interface_OTSIG_xpdra2 _________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_078_check_no_interface_OTSIG_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR2-NETWORK1-OTSIGROUP-400G') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.conflict) 17:31:55 E AssertionError: 200 != 409 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1272: AssertionError 17:31:55 ______________ TransportPCEtesting.test_079_getLinks_OtnTopology _______________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_079_getLinks_OtnTopology(self): 17:31:55 response = test_utils.get_ietf_network_request('otn-topology', 'config') 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 > self.assertNotIn('ietf-network-topology:link', response['network'][0]) 17:31:55 E AssertionError: 'ietf-network-topology:link' unexpectedly found in {'network-id': 'otn-topology', 'network-types': {'org-openroadm-common-network:openroadm-common-network': {}}, 'node': [{'node-id': 'XPDR-C2-XPDR3', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:node-type': 'TPDR', 'org-openroadm-common-network:administrative-state': 'inService', 'ietf-network-topology:termination-point': [{'tp-id': 'XPDR3-CLIENT1', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-OCH-OTU4-ODU4'}, {'if-cap-type': 'org-openroadm-port-types:if-100GE'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-CLIENT', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:associated-connection-map-tp': ['XPDR3-NETWORK1'], 'org-openroadm-common-network:administrative-state': 'inService'}, {'tp-id': 'XPDR3-NETWORK1', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:associated-connection-map-tp': ['XPDR3-CLIENT1'], 'supporting-termination-point': [{'network-ref': 'openroadm-topology', 'node-ref': 'XPDR-C2-XPDR3', 'tp-ref': 'XPDR3-NETWORK1'}], 'org-openroadm-common-network:administrative-state': 'inService', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-otsi-otsigroup'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-NETWORK'}], 'supporting-node': [{'network-ref': 'openroadm-network', 'node-ref': 'XPDR-C2'}, {'network-ref': 'clli-network', 'node-ref': 'NodeC'}, {'network-ref': 'openroadm-topology', 'node-ref': 'XPDR-C2-XPDR3'}], 'org-openroadm-otn-network-topology:xpdr-attributes': {'xpdr-number': 3}}, {'node-id': 'XPDR-A2-XPDR2', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:node-type': 'MUXPDR', 'org-openroadm-common-network:administrative-state': 'inService', 'org-openroadm-otn-network-topology:switching-pools': {'odu-switching-pools': [{'switching-pool-number': 1, 'switching-pool-type': 'non-blocking', 'non-blocking-list': [{'nbl-number': 2, 'interconnect-bandwidth-unit': 1000000000, 'available-interconnect-bandwidth': 10, 'tp-list': ['XPDR2-CLIENT2', 'XPDR2-NETWORK1']}, {'nbl-number': 1, 'interconnect-bandwidth-unit': 1000000000, 'available-interconnect-bandwidth': 10, 'tp-list': ['XPDR2-CLIENT1', 'XPDR2-NETWORK1']}]}]}, 'ietf-network-topology:termination-point': [{'tp-id': 'XPDR2-CLIENT1', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-100GE-ODU4'}, {'if-cap-type': 'org-openroadm-port-types:if-OCH-OTU4-ODU4'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-CLIENT', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes': {'rate': 'org-openroadm-otn-common-types:ODU4'}, 'org-openroadm-common-network:administrative-state': 'inService'}, {'tp-id': 'XPDR2-NETWORK1', 'org-openroadm-common-network:operational-state': 'inService', 'supporting-termination-point': [{'network-ref': 'openroadm-topology', 'node-ref': 'XPDR-A2-XPDR2', 'tp-ref': 'XPDR2-NETWORK1'}], 'org-openroadm-common-network:administrative-state': 'inService', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-otsi-otsigroup'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-NETWORK'}, {'tp-id': 'XPDR2-CLIENT2', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-100GE-ODU4'}, {'if-cap-type': 'org-openroadm-port-types:if-OCH-OTU4-ODU4'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-CLIENT', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes': {'rate': 'org-openroadm-otn-common-types:ODU4'}, 'org-openroadm-common-network:administrative-state': 'inService'}], 'supporting-node': [{'network-ref': 'openroadm-topology', 'node-ref': 'XPDR-A2-XPDR2'}, {'network-ref': 'clli-network', 'node-ref': 'NodeA'}, {'network-ref': 'openroadm-network', 'node-ref': 'XPDR-A2'}], 'org-openroadm-otn-network-topology:xpdr-attributes': {'xpdr-number': 2}}, {'node-id': 'XPDR-C2-XPDR2', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:node-type': 'MUXPDR', 'org-openroadm-common-network:administrative-state': 'inService', 'org-openroadm-otn-network-topology:switching-pools': {'odu-switching-pools': [{'switching-pool-number': 1, 'switching-pool-type': 'non-blocking', 'non-blocking-list': [{'nbl-number': 2, 'interconnect-bandwidth-unit': 1000000000, 'available-interconnect-bandwidth': 10, 'tp-list': ['XPDR2-CLIENT2', 'XPDR2-NETWORK1']}, {'nbl-number': 1, 'interconnect-bandwidth-unit': 1000000000, 'available-interconnect-bandwidth': 10, 'tp-list': ['XPDR2-CLIENT1', 'XPDR2-NETWORK1']}]}]}, 'ietf-network-topology:termination-point': [{'tp-id': 'XPDR2-CLIENT1', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-100GE-ODU4'}, {'if-cap-type': 'org-openroadm-port-types:if-OCH-OTU4-ODU4'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-CLIENT', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes': {'rate': 'org-openroadm-otn-common-types:ODU4'}, 'org-openroadm-common-network:administrative-state': 'inService'}, {'tp-id': 'XPDR2-NETWORK1', 'org-openroadm-common-network:operational-state': 'inService', 'supporting-termination-point': [{'network-ref': 'openroadm-topology', 'node-ref': 'XPDR-C2-XPDR2', 'tp-ref': 'XPDR2-NETWORK1'}], 'org-openroadm-common-network:administrative-state': 'inService', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-otsi-otsigroup'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-NETWORK'}, {'tp-id': 'XPDR2-CLIENT2', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-100GE-ODU4'}, {'if-cap-type': 'org-openroadm-port-types:if-OCH-OTU4-ODU4'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-CLIENT', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes': {'rate': 'org-openroadm-otn-common-types:ODU4'}, 'org-openroadm-common-network:administrative-state': 'inService'}], 'supporting-node': [{'network-ref': 'openroadm-network', 'node-ref': 'XPDR-C2'}, {'network-ref': 'openroadm-topology', 'node-ref': 'XPDR-C2-XPDR2'}, {'network-ref': 'clli-network', 'node-ref': 'NodeC'}], 'org-openroadm-otn-network-topology:xpdr-attributes': {'xpdr-number': 2}}, {'node-id': 'XPDR-A2-XPDR1', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:node-type': 'TPDR', 'org-openroadm-common-network:administrative-state': 'inService', 'ietf-network-topology:termination-point': [{'tp-id': 'XPDR1-CLIENT1', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-400GE'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-CLIENT', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:associated-connection-map-tp': ['XPDR1-NETWORK1'], 'org-openroadm-common-network:administrative-state': 'inService'}, {'tp-id': 'XPDR1-NETWORK1', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:associated-connection-map-tp': ['XPDR1-CLIENT1'], 'supporting-termination-point': [{'network-ref': 'openroadm-topology', 'node-ref': 'XPDR-A2-XPDR1', 'tp-ref': 'XPDR1-NETWORK1'}], 'org-openroadm-common-network:administrative-state': 'inService', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-otsi-otsigroup'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-NETWORK'}], 'supporting-node': [{'network-ref': 'clli-network', 'node-ref': 'NodeA'}, {'network-ref': 'openroadm-network', 'node-ref': 'XPDR-A2'}, {'network-ref': 'openroadm-topology', 'node-ref': 'XPDR-A2-XPDR1'}], 'org-openroadm-otn-network-topology:xpdr-attributes': {'xpdr-number': 1}}, {'node-id': 'XPDR-C2-XPDR1', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:node-type': 'TPDR', 'org-openroadm-common-network:administrative-state': 'inService', 'ietf-network-topology:termination-point': [{'tp-id': 'XPDR1-CLIENT1', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-400GE'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-CLIENT', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:associated-connection-map-tp': ['XPDR1-NETWORK1'], 'org-openroadm-common-network:administrative-state': 'inService'}, {'tp-id': 'XPDR1-NETWORK1', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:associated-connection-map-tp': ['XPDR1-CLIENT1'], 'supporting-termination-point': [{'network-ref': 'openroadm-topology', 'node-ref': 'XPDR-C2-XPDR1', 'tp-ref': 'XPDR1-NETWORK1'}], 'org-openroadm-common-network:administrative-state': 'inService', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-otsi-otsigroup'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-NETWORK'}], 'supporting-node': [{'network-ref': 'openroadm-network', 'node-ref': 'XPDR-C2'}, {'network-ref': 'clli-network', 'node-ref': 'NodeC'}, {'network-ref': 'openroadm-topology', 'node-ref': 'XPDR-C2-XPDR1'}], 'org-openroadm-otn-network-topology:xpdr-attributes': {'xpdr-number': 1}}, {'node-id': 'XPDR-A2-XPDR4', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:node-type': 'TPDR', 'org-openroadm-common-network:administrative-state': 'inService', 'ietf-network-topology:termination-point': [{'tp-id': 'XPDR4-NETWORK1', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:associated-connection-map-tp': ['XPDR4-NETWORK2'], 'supporting-termination-point': [{'network-ref': 'openroadm-topology', 'node-ref': 'XPDR-A2-XPDR4', 'tp-ref': 'XPDR4-NETWORK1'}], 'org-openroadm-common-network:administrative-state': 'inService', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-otsi-otsigroup'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-NETWORK'}, {'tp-id': 'XPDR4-NETWORK2', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:associated-connection-map-tp': ['XPDR4-NETWORK1'], 'supporting-termination-point': [{'network-ref': 'openroadm-topology', 'node-ref': 'XPDR-A2-XPDR4', 'tp-ref': 'XPDR4-NETWORK2'}], 'org-openroadm-common-network:administrative-state': 'inService', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-otsi-otsigroup'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-NETWORK'}], 'supporting-node': [{'network-ref': 'clli-network', 'node-ref': 'NodeA'}, {'network-ref': 'openroadm-network', 'node-ref': 'XPDR-A2'}, {'network-ref': 'openroadm-topology', 'node-ref': 'XPDR-A2-XPDR4'}], 'org-openroadm-otn-network-topology:xpdr-attributes': {'xpdr-number': 4}}, {'node-id': 'XPDR-A2-XPDR3', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:node-type': 'TPDR', 'org-openroadm-common-network:administrative-state': 'inService', 'ietf-network-topology:termination-point': [{'tp-id': 'XPDR3-CLIENT1', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-OCH-OTU4-ODU4'}, {'if-cap-type': 'org-openroadm-port-types:if-100GE'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-CLIENT', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:associated-connection-map-tp': ['XPDR3-NETWORK1'], 'org-openroadm-common-network:administrative-state': 'inService'}, {'tp-id': 'XPDR3-NETWORK1', 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:associated-connection-map-tp': ['XPDR3-CLIENT1'], 'supporting-termination-point': [{'network-ref': 'openroadm-topology', 'node-ref': 'XPDR-A2-XPDR3', 'tp-ref': 'XPDR3-NETWORK1'}], 'org-openroadm-common-network:administrative-state': 'inService', 'org-openroadm-otn-network-topology:tp-supported-interfaces': {'supported-interface-capability': [{'if-cap-type': 'org-openroadm-port-types:if-otsi-otsigroup'}]}, 'org-openroadm-common-network:tp-type': 'XPONDER-NETWORK'}], 'supporting-node': [{'network-ref': 'openroadm-topology', 'node-ref': 'XPDR-A2-XPDR3'}, {'network-ref': 'clli-network', 'node-ref': 'NodeA'}, {'network-ref': 'openroadm-network', 'node-ref': 'XPDR-A2'}], 'org-openroadm-otn-network-topology:xpdr-attributes': {'xpdr-number': 3}}], 'ietf-network-topology:link': [{'link-id': 'OTUC4-XPDR-A2-XPDR2-XPDR2-NETWORK1toXPDR-C2-XPDR2-XPDR2-NETWORK1', 'source': {'source-node': 'XPDR-A2-XPDR2', 'source-tp': 'XPDR2-NETWORK1'}, 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:link-type': 'OTN-LINK', 'transportpce-networkutils:otn-link-type': 'OTUC4', 'org-openroadm-common-network:administrative-state': 'inService', 'org-openroadm-otn-network-topology:used-bandwidth': 0, 'destination': {'dest-tp': 'XPDR2-NETWORK1', 'dest-node': 'XPDR-C2-XPDR2'}, 'org-openroadm-common-network:opposite-link': 'OTUC4-XPDR-C2-XPDR2-XPDR2-NETWORK1toXPDR-A2-XPDR2-XPDR2-NETWORK1', 'org-openroadm-otn-network-topology:available-bandwidth': 400000}, {'link-id': 'OTUC4-XPDR-C2-XPDR2-XPDR2-NETWORK1toXPDR-A2-XPDR2-XPDR2-NETWORK1', 'source': {'source-node': 'XPDR-C2-XPDR2', 'source-tp': 'XPDR2-NETWORK1'}, 'org-openroadm-common-network:operational-state': 'inService', 'org-openroadm-common-network:link-type': 'OTN-LINK', 'transportpce-networkutils:otn-link-type': 'OTUC4', 'org-openroadm-common-network:administrative-state': 'inService', 'org-openroadm-otn-network-topology:used-bandwidth': 0, 'destination': {'dest-tp': 'XPDR2-NETWORK1', 'dest-node': 'XPDR-A2-XPDR2'}, 'org-openroadm-common-network:opposite-link': 'OTUC4-XPDR-A2-XPDR2-XPDR2-NETWORK1toXPDR-C2-XPDR2-XPDR2-NETWORK1', 'org-openroadm-otn-network-topology:available-bandwidth': 400000}]} 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1277: AssertionError 17:31:55 ___________ TransportPCEtesting.test_080_check_openroadm_topo_xpdra2 ___________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_080_check_openroadm_topo_xpdra2(self): 17:31:55 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'XPDR-A2-XPDR2', 'config') 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 tp = response['node']['ietf-network-topology:termination-point'][0] 17:31:55 self.assertEqual('XPDR2-NETWORK1', tp['tp-id']) 17:31:55 > self.assertNotIn('wavelength', dict.keys( 17:31:55 tp['org-openroadm-network-topology:xpdr-network-attributes'])) 17:31:55 E AssertionError: 'wavelength' unexpectedly found in dict_keys(['wavelength', 'tail-equipment-id']) 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1284: AssertionError 17:31:55 ________ TransportPCEtesting.test_082_connect_xpdra2_1_N1_to_roadma_PP2 ________ 17:31:55 17:31:55 self = 17:31:55 conn = 17:31:55 method = 'POST' 17:31:55 url = '/rests/operations/transportpce-networkutils:init-xpdr-rdm-links' 17:31:55 body = '{"input": {"links-input": {"xpdr-node": "XPDR-A2", "xpdr-num": "1", "network-num": "1", "rdm-node": "ROADM-A1", "srg-num": "1", "termination-point-num": "SRG1-PP1-TXRX"}}}' 17:31:55 headers = {'User-Agent': 'python-requests/2.31.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/json', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Content-Length': '171', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 17:31:55 retries = Retry(total=0, connect=None, read=False, redirect=None, status=None) 17:31:55 timeout = Timeout(connect=10, read=10, total=None), chunked = False 17:31:55 response_conn = 17:31:55 preload_content = False, decode_content = False, enforce_content_length = True 17:31:55 17:31:55 def _make_request( 17:31:55 self, 17:31:55 conn: BaseHTTPConnection, 17:31:55 method: str, 17:31:55 url: str, 17:31:55 body: _TYPE_BODY | None = None, 17:31:55 headers: typing.Mapping[str, str] | None = None, 17:31:55 retries: Retry | None = None, 17:31:55 timeout: _TYPE_TIMEOUT = _DEFAULT_TIMEOUT, 17:31:55 chunked: bool = False, 17:31:55 response_conn: BaseHTTPConnection | None = None, 17:31:55 preload_content: bool = True, 17:31:55 decode_content: bool = True, 17:31:55 enforce_content_length: bool = True, 17:31:55 ) -> BaseHTTPResponse: 17:31:55 """ 17:31:55 Perform a request on a given urllib connection object taken from our 17:31:55 pool. 17:31:55 17:31:55 :param conn: 17:31:55 a connection from one of our connection pools 17:31:55 17:31:55 :param method: 17:31:55 HTTP request method (such as GET, POST, PUT, etc.) 17:31:55 17:31:55 :param url: 17:31:55 The URL to perform the request on. 17:31:55 17:31:55 :param body: 17:31:55 Data to send in the request body, either :class:`str`, :class:`bytes`, 17:31:55 an iterable of :class:`str`/:class:`bytes`, or a file-like object. 17:31:55 17:31:55 :param headers: 17:31:55 Dictionary of custom headers to send, such as User-Agent, 17:31:55 If-None-Match, etc. If None, pool headers are used. If provided, 17:31:55 these headers completely replace any pool-specific headers. 17:31:55 17:31:55 :param retries: 17:31:55 Configure the number of retries to allow before raising a 17:31:55 :class:`~urllib3.exceptions.MaxRetryError` exception. 17:31:55 17:31:55 Pass ``None`` to retry until you receive a response. Pass a 17:31:55 :class:`~urllib3.util.retry.Retry` object for fine-grained control 17:31:55 over different types of retries. 17:31:55 Pass an integer number to retry connection errors that many times, 17:31:55 but no other types of errors. Pass zero to never retry. 17:31:55 17:31:55 If ``False``, then retries are disabled and any exception is raised 17:31:55 immediately. Also, instead of raising a MaxRetryError on redirects, 17:31:55 the redirect response will be returned. 17:31:55 17:31:55 :type retries: :class:`~urllib3.util.retry.Retry`, False, or an int. 17:31:55 17:31:55 :param timeout: 17:31:55 If specified, overrides the default timeout for this one 17:31:55 request. It may be a float (in seconds) or an instance of 17:31:55 :class:`urllib3.util.Timeout`. 17:31:55 17:31:55 :param chunked: 17:31:55 If True, urllib3 will send the body using chunked transfer 17:31:55 encoding. Otherwise, urllib3 will send the body using the standard 17:31:55 content-length form. Defaults to False. 17:31:55 17:31:55 :param response_conn: 17:31:55 Set this to ``None`` if you will handle releasing the connection or 17:31:55 set the connection to have the response release it. 17:31:55 17:31:55 :param preload_content: 17:31:55 If True, the response's body will be preloaded during construction. 17:31:55 17:31:55 :param decode_content: 17:31:55 If True, will attempt to decode the body based on the 17:31:55 'content-encoding' header. 17:31:55 17:31:55 :param enforce_content_length: 17:31:55 Enforce content length checking. Body returned by server must match 17:31:55 value of Content-Length header, if present. Otherwise, raise error. 17:31:55 """ 17:31:55 self.num_requests += 1 17:31:55 17:31:55 timeout_obj = self._get_timeout(timeout) 17:31:55 timeout_obj.start_connect() 17:31:55 conn.timeout = Timeout.resolve_default_timeout(timeout_obj.connect_timeout) 17:31:55 17:31:55 try: 17:31:55 # Trigger any extra validation we need to do. 17:31:55 try: 17:31:55 self._validate_conn(conn) 17:31:55 except (SocketTimeout, BaseSSLError) as e: 17:31:55 self._raise_timeout(err=e, url=url, timeout_value=conn.timeout) 17:31:55 raise 17:31:55 17:31:55 # _validate_conn() starts the connection to an HTTPS proxy 17:31:55 # so we need to wrap errors with 'ProxyError' here too. 17:31:55 except ( 17:31:55 OSError, 17:31:55 NewConnectionError, 17:31:55 TimeoutError, 17:31:55 BaseSSLError, 17:31:55 CertificateError, 17:31:55 SSLError, 17:31:55 ) as e: 17:31:55 new_e: Exception = e 17:31:55 if isinstance(e, (BaseSSLError, CertificateError)): 17:31:55 new_e = SSLError(e) 17:31:55 # If the connection didn't successfully connect to it's proxy 17:31:55 # then there 17:31:55 if isinstance( 17:31:55 new_e, (OSError, NewConnectionError, TimeoutError, SSLError) 17:31:55 ) and (conn and conn.proxy and not conn.has_connected_to_proxy): 17:31:55 new_e = _wrap_proxy_error(new_e, conn.proxy.scheme) 17:31:55 raise new_e 17:31:55 17:31:55 # conn.request() calls http.client.*.request, not the method in 17:31:55 # urllib3.request. It also calls makefile (recv) on the socket. 17:31:55 try: 17:31:55 conn.request( 17:31:55 method, 17:31:55 url, 17:31:55 body=body, 17:31:55 headers=headers, 17:31:55 chunked=chunked, 17:31:55 preload_content=preload_content, 17:31:55 decode_content=decode_content, 17:31:55 enforce_content_length=enforce_content_length, 17:31:55 ) 17:31:55 17:31:55 # We are swallowing BrokenPipeError (errno.EPIPE) since the server is 17:31:55 # legitimately able to close the connection after sending a valid response. 17:31:55 # With this behaviour, the received response is still readable. 17:31:55 except BrokenPipeError: 17:31:55 pass 17:31:55 except OSError as e: 17:31:55 # MacOS/Linux 17:31:55 # EPROTOTYPE and ECONNRESET are needed on macOS 17:31:55 # https://erickt.github.io/blog/2014/11/19/adventures-in-debugging-a-potential-osx-kernel-bug/ 17:31:55 # Condition changed later to emit ECONNRESET instead of only EPROTOTYPE. 17:31:55 if e.errno != errno.EPROTOTYPE and e.errno != errno.ECONNRESET: 17:31:55 raise 17:31:55 17:31:55 # Reset the timeout for the recv() on the socket 17:31:55 read_timeout = timeout_obj.read_timeout 17:31:55 17:31:55 if not conn.is_closed: 17:31:55 # In Python 3 socket.py will catch EAGAIN and return None when you 17:31:55 # try and read into the file pointer created by http.client, which 17:31:55 # instead raises a BadStatusLine exception. Instead of catching 17:31:55 # the exception and assuming all BadStatusLine exceptions are read 17:31:55 # timeouts, check for a zero timeout before making the request. 17:31:55 if read_timeout == 0: 17:31:55 raise ReadTimeoutError( 17:31:55 self, url, f"Read timed out. (read timeout={read_timeout})" 17:31:55 ) 17:31:55 conn.timeout = read_timeout 17:31:55 17:31:55 # Receive the response from the server 17:31:55 try: 17:31:55 > response = conn.getresponse() 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:537: 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connection.py:466: in getresponse 17:31:55 httplib_response = super().getresponse() 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:1374: in getresponse 17:31:55 response.begin() 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:318: in begin 17:31:55 version, status, reason = self._read_status() 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:279: in _read_status 17:31:55 line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1") 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 17:31:55 self = 17:31:55 b = 17:31:55 17:31:55 def readinto(self, b): 17:31:55 """Read up to len(b) bytes into the writable buffer *b* and return 17:31:55 the number of bytes read. If the socket is non-blocking and no bytes 17:31:55 are available, None is returned. 17:31:55 17:31:55 If *b* is non-empty, a 0 return value indicates that the connection 17:31:55 was shutdown at the other end. 17:31:55 """ 17:31:55 self._checkClosed() 17:31:55 self._checkReadable() 17:31:55 if self._timeout_occurred: 17:31:55 raise OSError("cannot read from timed out object") 17:31:55 while True: 17:31:55 try: 17:31:55 > return self._sock.recv_into(b) 17:31:55 E TimeoutError: timed out 17:31:55 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/socket.py:705: TimeoutError 17:31:55 17:31:55 The above exception was the direct cause of the following exception: 17:31:55 17:31:55 self = 17:31:55 request = , stream = False 17:31:55 timeout = Timeout(connect=10, read=10, total=None), verify = True, cert = None 17:31:55 proxies = OrderedDict() 17:31:55 17:31:55 def send( 17:31:55 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 17:31:55 ): 17:31:55 """Sends PreparedRequest object. Returns Response object. 17:31:55 17:31:55 :param request: The :class:`PreparedRequest ` being sent. 17:31:55 :param stream: (optional) Whether to stream the request content. 17:31:55 :param timeout: (optional) How long to wait for the server to send 17:31:55 data before giving up, as a float, or a :ref:`(connect timeout, 17:31:55 read timeout) ` tuple. 17:31:55 :type timeout: float or tuple or urllib3 Timeout object 17:31:55 :param verify: (optional) Either a boolean, in which case it controls whether 17:31:55 we verify the server's TLS certificate, or a string, in which case it 17:31:55 must be a path to a CA bundle to use 17:31:55 :param cert: (optional) Any user-provided SSL certificate to be trusted. 17:31:55 :param proxies: (optional) The proxies dictionary to apply to the request. 17:31:55 :rtype: requests.Response 17:31:55 """ 17:31:55 17:31:55 try: 17:31:55 conn = self.get_connection(request.url, proxies) 17:31:55 except LocationValueError as e: 17:31:55 raise InvalidURL(e, request=request) 17:31:55 17:31:55 self.cert_verify(conn, request.url, verify, cert) 17:31:55 url = self.request_url(request, proxies) 17:31:55 self.add_headers( 17:31:55 request, 17:31:55 stream=stream, 17:31:55 timeout=timeout, 17:31:55 verify=verify, 17:31:55 cert=cert, 17:31:55 proxies=proxies, 17:31:55 ) 17:31:55 17:31:55 chunked = not (request.body is None or "Content-Length" in request.headers) 17:31:55 17:31:55 if isinstance(timeout, tuple): 17:31:55 try: 17:31:55 connect, read = timeout 17:31:55 timeout = TimeoutSauce(connect=connect, read=read) 17:31:55 except ValueError: 17:31:55 raise ValueError( 17:31:55 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 17:31:55 f"or a single float to set both timeouts to the same value." 17:31:55 ) 17:31:55 elif isinstance(timeout, TimeoutSauce): 17:31:55 pass 17:31:55 else: 17:31:55 timeout = TimeoutSauce(connect=timeout, read=timeout) 17:31:55 17:31:55 try: 17:31:55 > resp = conn.urlopen( 17:31:55 method=request.method, 17:31:55 url=url, 17:31:55 body=request.body, 17:31:55 headers=request.headers, 17:31:55 redirect=False, 17:31:55 assert_same_host=False, 17:31:55 preload_content=False, 17:31:55 decode_content=False, 17:31:55 retries=self.max_retries, 17:31:55 timeout=timeout, 17:31:55 chunked=chunked, 17:31:55 ) 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/adapters.py:486: 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:847: in urlopen 17:31:55 retries = retries.increment( 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/util/retry.py:470: in increment 17:31:55 raise reraise(type(error), error, _stacktrace) 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/util/util.py:39: in reraise 17:31:55 raise value 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:793: in urlopen 17:31:55 response = self._make_request( 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:539: in _make_request 17:31:55 self._raise_timeout(err=e, url=url, timeout_value=read_timeout) 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 17:31:55 self = 17:31:55 err = TimeoutError('timed out') 17:31:55 url = '/rests/operations/transportpce-networkutils:init-xpdr-rdm-links' 17:31:55 timeout_value = 10 17:31:55 17:31:55 def _raise_timeout( 17:31:55 self, 17:31:55 err: BaseSSLError | OSError | SocketTimeout, 17:31:55 url: str, 17:31:55 timeout_value: _TYPE_TIMEOUT | None, 17:31:55 ) -> None: 17:31:55 """Is the error actually a timeout? Will raise a ReadTimeout or pass""" 17:31:55 17:31:55 if isinstance(err, SocketTimeout): 17:31:55 > raise ReadTimeoutError( 17:31:55 self, url, f"Read timed out. (read timeout={timeout_value})" 17:31:55 ) from err 17:31:55 E urllib3.exceptions.ReadTimeoutError: HTTPConnectionPool(host='localhost', port=8182): Read timed out. (read timeout=10) 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:370: ReadTimeoutError 17:31:55 17:31:55 During handling of the above exception, another exception occurred: 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_082_connect_xpdra2_1_N1_to_roadma_PP2(self): 17:31:55 > response = test_utils.transportpce_api_rpc_request( 17:31:55 'transportpce-networkutils', 'init-xpdr-rdm-links', 17:31:55 {'links-input': {'xpdr-node': 'XPDR-A2', 'xpdr-num': '1', 'network-num': '1', 17:31:55 'rdm-node': 'ROADM-A1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP1-TXRX'}}) 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1294: 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 transportpce_tests/common/test_utils.py:677: in transportpce_api_rpc_request 17:31:55 response = post_request(url, data) 17:31:55 transportpce_tests/common/test_utils.py:141: in post_request 17:31:55 return requests.request( 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/api.py:59: in request 17:31:55 return session.request(method=method, url=url, **kwargs) 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/sessions.py:589: in request 17:31:55 resp = self.send(prep, **send_kwargs) 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/sessions.py:703: in send 17:31:55 r = adapter.send(request, **kwargs) 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 17:31:55 self = 17:31:55 request = , stream = False 17:31:55 timeout = Timeout(connect=10, read=10, total=None), verify = True, cert = None 17:31:55 proxies = OrderedDict() 17:31:55 17:31:55 def send( 17:31:55 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 17:31:55 ): 17:31:55 """Sends PreparedRequest object. Returns Response object. 17:31:55 17:31:55 :param request: The :class:`PreparedRequest ` being sent. 17:31:55 :param stream: (optional) Whether to stream the request content. 17:31:55 :param timeout: (optional) How long to wait for the server to send 17:31:55 data before giving up, as a float, or a :ref:`(connect timeout, 17:31:55 read timeout) ` tuple. 17:31:55 :type timeout: float or tuple or urllib3 Timeout object 17:31:55 :param verify: (optional) Either a boolean, in which case it controls whether 17:31:55 we verify the server's TLS certificate, or a string, in which case it 17:31:55 must be a path to a CA bundle to use 17:31:55 :param cert: (optional) Any user-provided SSL certificate to be trusted. 17:31:55 :param proxies: (optional) The proxies dictionary to apply to the request. 17:31:55 :rtype: requests.Response 17:31:55 """ 17:31:55 17:31:55 try: 17:31:55 conn = self.get_connection(request.url, proxies) 17:31:55 except LocationValueError as e: 17:31:55 raise InvalidURL(e, request=request) 17:31:55 17:31:55 self.cert_verify(conn, request.url, verify, cert) 17:31:55 url = self.request_url(request, proxies) 17:31:55 self.add_headers( 17:31:55 request, 17:31:55 stream=stream, 17:31:55 timeout=timeout, 17:31:55 verify=verify, 17:31:55 cert=cert, 17:31:55 proxies=proxies, 17:31:55 ) 17:31:55 17:31:55 chunked = not (request.body is None or "Content-Length" in request.headers) 17:31:55 17:31:55 if isinstance(timeout, tuple): 17:31:55 try: 17:31:55 connect, read = timeout 17:31:55 timeout = TimeoutSauce(connect=connect, read=read) 17:31:55 except ValueError: 17:31:55 raise ValueError( 17:31:55 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 17:31:55 f"or a single float to set both timeouts to the same value." 17:31:55 ) 17:31:55 elif isinstance(timeout, TimeoutSauce): 17:31:55 pass 17:31:55 else: 17:31:55 timeout = TimeoutSauce(connect=timeout, read=timeout) 17:31:55 17:31:55 try: 17:31:55 resp = conn.urlopen( 17:31:55 method=request.method, 17:31:55 url=url, 17:31:55 body=request.body, 17:31:55 headers=request.headers, 17:31:55 redirect=False, 17:31:55 assert_same_host=False, 17:31:55 preload_content=False, 17:31:55 decode_content=False, 17:31:55 retries=self.max_retries, 17:31:55 timeout=timeout, 17:31:55 chunked=chunked, 17:31:55 ) 17:31:55 17:31:55 except (ProtocolError, OSError) as err: 17:31:55 raise ConnectionError(err, request=request) 17:31:55 17:31:55 except MaxRetryError as e: 17:31:55 if isinstance(e.reason, ConnectTimeoutError): 17:31:55 # TODO: Remove this in 3.0.0: see #2811 17:31:55 if not isinstance(e.reason, NewConnectionError): 17:31:55 raise ConnectTimeout(e, request=request) 17:31:55 17:31:55 if isinstance(e.reason, ResponseError): 17:31:55 raise RetryError(e, request=request) 17:31:55 17:31:55 if isinstance(e.reason, _ProxyError): 17:31:55 raise ProxyError(e, request=request) 17:31:55 17:31:55 if isinstance(e.reason, _SSLError): 17:31:55 # This branch is for urllib3 v1.22 and later. 17:31:55 raise SSLError(e, request=request) 17:31:55 17:31:55 raise ConnectionError(e, request=request) 17:31:55 17:31:55 except ClosedPoolError as e: 17:31:55 raise ConnectionError(e, request=request) 17:31:55 17:31:55 except _ProxyError as e: 17:31:55 raise ProxyError(e) 17:31:55 17:31:55 except (_SSLError, _HTTPError) as e: 17:31:55 if isinstance(e, _SSLError): 17:31:55 # This branch is for urllib3 versions earlier than v1.22 17:31:55 raise SSLError(e, request=request) 17:31:55 elif isinstance(e, ReadTimeoutError): 17:31:55 > raise ReadTimeout(e, request=request) 17:31:55 E requests.exceptions.ReadTimeout: HTTPConnectionPool(host='localhost', port=8182): Read timed out. (read timeout=10) 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/adapters.py:532: ReadTimeout 17:31:55 ________ TransportPCEtesting.test_083_connect_roadma_PP2_to_xpdra2_1_N1 ________ 17:31:55 17:31:55 self = 17:31:55 conn = 17:31:55 method = 'POST' 17:31:55 url = '/rests/operations/transportpce-networkutils:init-rdm-xpdr-links' 17:31:55 body = '{"input": {"links-input": {"xpdr-node": "XPDR-A2", "xpdr-num": "1", "network-num": "1", "rdm-node": "ROADM-A1", "srg-num": "1", "termination-point-num": "SRG1-PP1-TXRX"}}}' 17:31:55 headers = {'User-Agent': 'python-requests/2.31.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/json', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Content-Length': '171', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 17:31:55 retries = Retry(total=0, connect=None, read=False, redirect=None, status=None) 17:31:55 timeout = Timeout(connect=10, read=10, total=None), chunked = False 17:31:55 response_conn = 17:31:55 preload_content = False, decode_content = False, enforce_content_length = True 17:31:55 17:31:55 def _make_request( 17:31:55 self, 17:31:55 conn: BaseHTTPConnection, 17:31:55 method: str, 17:31:55 url: str, 17:31:55 body: _TYPE_BODY | None = None, 17:31:55 headers: typing.Mapping[str, str] | None = None, 17:31:55 retries: Retry | None = None, 17:31:55 timeout: _TYPE_TIMEOUT = _DEFAULT_TIMEOUT, 17:31:55 chunked: bool = False, 17:31:55 response_conn: BaseHTTPConnection | None = None, 17:31:55 preload_content: bool = True, 17:31:55 decode_content: bool = True, 17:31:55 enforce_content_length: bool = True, 17:31:55 ) -> BaseHTTPResponse: 17:31:55 """ 17:31:55 Perform a request on a given urllib connection object taken from our 17:31:55 pool. 17:31:55 17:31:55 :param conn: 17:31:55 a connection from one of our connection pools 17:31:55 17:31:55 :param method: 17:31:55 HTTP request method (such as GET, POST, PUT, etc.) 17:31:55 17:31:55 :param url: 17:31:55 The URL to perform the request on. 17:31:55 17:31:55 :param body: 17:31:55 Data to send in the request body, either :class:`str`, :class:`bytes`, 17:31:55 an iterable of :class:`str`/:class:`bytes`, or a file-like object. 17:31:55 17:31:55 :param headers: 17:31:55 Dictionary of custom headers to send, such as User-Agent, 17:31:55 If-None-Match, etc. If None, pool headers are used. If provided, 17:31:55 these headers completely replace any pool-specific headers. 17:31:55 17:31:55 :param retries: 17:31:55 Configure the number of retries to allow before raising a 17:31:55 :class:`~urllib3.exceptions.MaxRetryError` exception. 17:31:55 17:31:55 Pass ``None`` to retry until you receive a response. Pass a 17:31:55 :class:`~urllib3.util.retry.Retry` object for fine-grained control 17:31:55 over different types of retries. 17:31:55 Pass an integer number to retry connection errors that many times, 17:31:55 but no other types of errors. Pass zero to never retry. 17:31:55 17:31:55 If ``False``, then retries are disabled and any exception is raised 17:31:55 immediately. Also, instead of raising a MaxRetryError on redirects, 17:31:55 the redirect response will be returned. 17:31:55 17:31:55 :type retries: :class:`~urllib3.util.retry.Retry`, False, or an int. 17:31:55 17:31:55 :param timeout: 17:31:55 If specified, overrides the default timeout for this one 17:31:55 request. It may be a float (in seconds) or an instance of 17:31:55 :class:`urllib3.util.Timeout`. 17:31:55 17:31:55 :param chunked: 17:31:55 If True, urllib3 will send the body using chunked transfer 17:31:55 encoding. Otherwise, urllib3 will send the body using the standard 17:31:55 content-length form. Defaults to False. 17:31:55 17:31:55 :param response_conn: 17:31:55 Set this to ``None`` if you will handle releasing the connection or 17:31:55 set the connection to have the response release it. 17:31:55 17:31:55 :param preload_content: 17:31:55 If True, the response's body will be preloaded during construction. 17:31:55 17:31:55 :param decode_content: 17:31:55 If True, will attempt to decode the body based on the 17:31:55 'content-encoding' header. 17:31:55 17:31:55 :param enforce_content_length: 17:31:55 Enforce content length checking. Body returned by server must match 17:31:55 value of Content-Length header, if present. Otherwise, raise error. 17:31:55 """ 17:31:55 self.num_requests += 1 17:31:55 17:31:55 timeout_obj = self._get_timeout(timeout) 17:31:55 timeout_obj.start_connect() 17:31:55 conn.timeout = Timeout.resolve_default_timeout(timeout_obj.connect_timeout) 17:31:55 17:31:55 try: 17:31:55 # Trigger any extra validation we need to do. 17:31:55 try: 17:31:55 self._validate_conn(conn) 17:31:55 except (SocketTimeout, BaseSSLError) as e: 17:31:55 self._raise_timeout(err=e, url=url, timeout_value=conn.timeout) 17:31:55 raise 17:31:55 17:31:55 # _validate_conn() starts the connection to an HTTPS proxy 17:31:55 # so we need to wrap errors with 'ProxyError' here too. 17:31:55 except ( 17:31:55 OSError, 17:31:55 NewConnectionError, 17:31:55 TimeoutError, 17:31:55 BaseSSLError, 17:31:55 CertificateError, 17:31:55 SSLError, 17:31:55 ) as e: 17:31:55 new_e: Exception = e 17:31:55 if isinstance(e, (BaseSSLError, CertificateError)): 17:31:55 new_e = SSLError(e) 17:31:55 # If the connection didn't successfully connect to it's proxy 17:31:55 # then there 17:31:55 if isinstance( 17:31:55 new_e, (OSError, NewConnectionError, TimeoutError, SSLError) 17:31:55 ) and (conn and conn.proxy and not conn.has_connected_to_proxy): 17:31:55 new_e = _wrap_proxy_error(new_e, conn.proxy.scheme) 17:31:55 raise new_e 17:31:55 17:31:55 # conn.request() calls http.client.*.request, not the method in 17:31:55 # urllib3.request. It also calls makefile (recv) on the socket. 17:31:55 try: 17:31:55 conn.request( 17:31:55 method, 17:31:55 url, 17:31:55 body=body, 17:31:55 headers=headers, 17:31:55 chunked=chunked, 17:31:55 preload_content=preload_content, 17:31:55 decode_content=decode_content, 17:31:55 enforce_content_length=enforce_content_length, 17:31:55 ) 17:31:55 17:31:55 # We are swallowing BrokenPipeError (errno.EPIPE) since the server is 17:31:55 # legitimately able to close the connection after sending a valid response. 17:31:55 # With this behaviour, the received response is still readable. 17:31:55 except BrokenPipeError: 17:31:55 pass 17:31:55 except OSError as e: 17:31:55 # MacOS/Linux 17:31:55 # EPROTOTYPE and ECONNRESET are needed on macOS 17:31:55 # https://erickt.github.io/blog/2014/11/19/adventures-in-debugging-a-potential-osx-kernel-bug/ 17:31:55 # Condition changed later to emit ECONNRESET instead of only EPROTOTYPE. 17:31:55 if e.errno != errno.EPROTOTYPE and e.errno != errno.ECONNRESET: 17:31:55 raise 17:31:55 17:31:55 # Reset the timeout for the recv() on the socket 17:31:55 read_timeout = timeout_obj.read_timeout 17:31:55 17:31:55 if not conn.is_closed: 17:31:55 # In Python 3 socket.py will catch EAGAIN and return None when you 17:31:55 # try and read into the file pointer created by http.client, which 17:31:55 # instead raises a BadStatusLine exception. Instead of catching 17:31:55 # the exception and assuming all BadStatusLine exceptions are read 17:31:55 # timeouts, check for a zero timeout before making the request. 17:31:55 if read_timeout == 0: 17:31:55 raise ReadTimeoutError( 17:31:55 self, url, f"Read timed out. (read timeout={read_timeout})" 17:31:55 ) 17:31:55 conn.timeout = read_timeout 17:31:55 17:31:55 # Receive the response from the server 17:31:55 try: 17:31:55 > response = conn.getresponse() 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:537: 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connection.py:466: in getresponse 17:31:55 httplib_response = super().getresponse() 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:1374: in getresponse 17:31:55 response.begin() 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:318: in begin 17:31:55 version, status, reason = self._read_status() 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:279: in _read_status 17:31:55 line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1") 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 17:31:55 self = 17:31:55 b = 17:31:55 17:31:55 def readinto(self, b): 17:31:55 """Read up to len(b) bytes into the writable buffer *b* and return 17:31:55 the number of bytes read. If the socket is non-blocking and no bytes 17:31:55 are available, None is returned. 17:31:55 17:31:55 If *b* is non-empty, a 0 return value indicates that the connection 17:31:55 was shutdown at the other end. 17:31:55 """ 17:31:55 self._checkClosed() 17:31:55 self._checkReadable() 17:31:55 if self._timeout_occurred: 17:31:55 raise OSError("cannot read from timed out object") 17:31:55 while True: 17:31:55 try: 17:31:55 > return self._sock.recv_into(b) 17:31:55 E TimeoutError: timed out 17:31:55 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/socket.py:705: TimeoutError 17:31:55 17:31:55 The above exception was the direct cause of the following exception: 17:31:55 17:31:55 self = 17:31:55 request = , stream = False 17:31:55 timeout = Timeout(connect=10, read=10, total=None), verify = True, cert = None 17:31:55 proxies = OrderedDict() 17:31:55 17:31:55 def send( 17:31:55 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 17:31:55 ): 17:31:55 """Sends PreparedRequest object. Returns Response object. 17:31:55 17:31:55 :param request: The :class:`PreparedRequest ` being sent. 17:31:55 :param stream: (optional) Whether to stream the request content. 17:31:55 :param timeout: (optional) How long to wait for the server to send 17:31:55 data before giving up, as a float, or a :ref:`(connect timeout, 17:31:55 read timeout) ` tuple. 17:31:55 :type timeout: float or tuple or urllib3 Timeout object 17:31:55 :param verify: (optional) Either a boolean, in which case it controls whether 17:31:55 we verify the server's TLS certificate, or a string, in which case it 17:31:55 must be a path to a CA bundle to use 17:31:55 :param cert: (optional) Any user-provided SSL certificate to be trusted. 17:31:55 :param proxies: (optional) The proxies dictionary to apply to the request. 17:31:55 :rtype: requests.Response 17:31:55 """ 17:31:55 17:31:55 try: 17:31:55 conn = self.get_connection(request.url, proxies) 17:31:55 except LocationValueError as e: 17:31:55 raise InvalidURL(e, request=request) 17:31:55 17:31:55 self.cert_verify(conn, request.url, verify, cert) 17:31:55 url = self.request_url(request, proxies) 17:31:55 self.add_headers( 17:31:55 request, 17:31:55 stream=stream, 17:31:55 timeout=timeout, 17:31:55 verify=verify, 17:31:55 cert=cert, 17:31:55 proxies=proxies, 17:31:55 ) 17:31:55 17:31:55 chunked = not (request.body is None or "Content-Length" in request.headers) 17:31:55 17:31:55 if isinstance(timeout, tuple): 17:31:55 try: 17:31:55 connect, read = timeout 17:31:55 timeout = TimeoutSauce(connect=connect, read=read) 17:31:55 except ValueError: 17:31:55 raise ValueError( 17:31:55 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 17:31:55 f"or a single float to set both timeouts to the same value." 17:31:55 ) 17:31:55 elif isinstance(timeout, TimeoutSauce): 17:31:55 pass 17:31:55 else: 17:31:55 timeout = TimeoutSauce(connect=timeout, read=timeout) 17:31:55 17:31:55 try: 17:31:55 > resp = conn.urlopen( 17:31:55 method=request.method, 17:31:55 url=url, 17:31:55 body=request.body, 17:31:55 headers=request.headers, 17:31:55 redirect=False, 17:31:55 assert_same_host=False, 17:31:55 preload_content=False, 17:31:55 decode_content=False, 17:31:55 retries=self.max_retries, 17:31:55 timeout=timeout, 17:31:55 chunked=chunked, 17:31:55 ) 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/adapters.py:486: 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:847: in urlopen 17:31:55 retries = retries.increment( 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/util/retry.py:470: in increment 17:31:55 raise reraise(type(error), error, _stacktrace) 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/util/util.py:39: in reraise 17:31:55 raise value 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:793: in urlopen 17:31:55 response = self._make_request( 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:539: in _make_request 17:31:55 self._raise_timeout(err=e, url=url, timeout_value=read_timeout) 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 17:31:55 self = 17:31:55 err = TimeoutError('timed out') 17:31:55 url = '/rests/operations/transportpce-networkutils:init-rdm-xpdr-links' 17:31:55 timeout_value = 10 17:31:55 17:31:55 def _raise_timeout( 17:31:55 self, 17:31:55 err: BaseSSLError | OSError | SocketTimeout, 17:31:55 url: str, 17:31:55 timeout_value: _TYPE_TIMEOUT | None, 17:31:55 ) -> None: 17:31:55 """Is the error actually a timeout? Will raise a ReadTimeout or pass""" 17:31:55 17:31:55 if isinstance(err, SocketTimeout): 17:31:55 > raise ReadTimeoutError( 17:31:55 self, url, f"Read timed out. (read timeout={timeout_value})" 17:31:55 ) from err 17:31:55 E urllib3.exceptions.ReadTimeoutError: HTTPConnectionPool(host='localhost', port=8182): Read timed out. (read timeout=10) 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:370: ReadTimeoutError 17:31:55 17:31:55 During handling of the above exception, another exception occurred: 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_083_connect_roadma_PP2_to_xpdra2_1_N1(self): 17:31:55 > response = test_utils.transportpce_api_rpc_request( 17:31:55 'transportpce-networkutils', 'init-rdm-xpdr-links', 17:31:55 {'links-input': {'xpdr-node': 'XPDR-A2', 'xpdr-num': '1', 'network-num': '1', 17:31:55 'rdm-node': 'ROADM-A1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP1-TXRX'}}) 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1302: 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 transportpce_tests/common/test_utils.py:677: in transportpce_api_rpc_request 17:31:55 response = post_request(url, data) 17:31:55 transportpce_tests/common/test_utils.py:141: in post_request 17:31:55 return requests.request( 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/api.py:59: in request 17:31:55 return session.request(method=method, url=url, **kwargs) 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/sessions.py:589: in request 17:31:55 resp = self.send(prep, **send_kwargs) 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/sessions.py:703: in send 17:31:55 r = adapter.send(request, **kwargs) 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 17:31:55 self = 17:31:55 request = , stream = False 17:31:55 timeout = Timeout(connect=10, read=10, total=None), verify = True, cert = None 17:31:55 proxies = OrderedDict() 17:31:55 17:31:55 def send( 17:31:55 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 17:31:55 ): 17:31:55 """Sends PreparedRequest object. Returns Response object. 17:31:55 17:31:55 :param request: The :class:`PreparedRequest ` being sent. 17:31:55 :param stream: (optional) Whether to stream the request content. 17:31:55 :param timeout: (optional) How long to wait for the server to send 17:31:55 data before giving up, as a float, or a :ref:`(connect timeout, 17:31:55 read timeout) ` tuple. 17:31:55 :type timeout: float or tuple or urllib3 Timeout object 17:31:55 :param verify: (optional) Either a boolean, in which case it controls whether 17:31:55 we verify the server's TLS certificate, or a string, in which case it 17:31:55 must be a path to a CA bundle to use 17:31:55 :param cert: (optional) Any user-provided SSL certificate to be trusted. 17:31:55 :param proxies: (optional) The proxies dictionary to apply to the request. 17:31:55 :rtype: requests.Response 17:31:55 """ 17:31:55 17:31:55 try: 17:31:55 conn = self.get_connection(request.url, proxies) 17:31:55 except LocationValueError as e: 17:31:55 raise InvalidURL(e, request=request) 17:31:55 17:31:55 self.cert_verify(conn, request.url, verify, cert) 17:31:55 url = self.request_url(request, proxies) 17:31:55 self.add_headers( 17:31:55 request, 17:31:55 stream=stream, 17:31:55 timeout=timeout, 17:31:55 verify=verify, 17:31:55 cert=cert, 17:31:55 proxies=proxies, 17:31:55 ) 17:31:55 17:31:55 chunked = not (request.body is None or "Content-Length" in request.headers) 17:31:55 17:31:55 if isinstance(timeout, tuple): 17:31:55 try: 17:31:55 connect, read = timeout 17:31:55 timeout = TimeoutSauce(connect=connect, read=read) 17:31:55 except ValueError: 17:31:55 raise ValueError( 17:31:55 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 17:31:55 f"or a single float to set both timeouts to the same value." 17:31:55 ) 17:31:55 elif isinstance(timeout, TimeoutSauce): 17:31:55 pass 17:31:55 else: 17:31:55 timeout = TimeoutSauce(connect=timeout, read=timeout) 17:31:55 17:31:55 try: 17:31:55 resp = conn.urlopen( 17:31:55 method=request.method, 17:31:55 url=url, 17:31:55 body=request.body, 17:31:55 headers=request.headers, 17:31:55 redirect=False, 17:31:55 assert_same_host=False, 17:31:55 preload_content=False, 17:31:55 decode_content=False, 17:31:55 retries=self.max_retries, 17:31:55 timeout=timeout, 17:31:55 chunked=chunked, 17:31:55 ) 17:31:55 17:31:55 except (ProtocolError, OSError) as err: 17:31:55 raise ConnectionError(err, request=request) 17:31:55 17:31:55 except MaxRetryError as e: 17:31:55 if isinstance(e.reason, ConnectTimeoutError): 17:31:55 # TODO: Remove this in 3.0.0: see #2811 17:31:55 if not isinstance(e.reason, NewConnectionError): 17:31:55 raise ConnectTimeout(e, request=request) 17:31:55 17:31:55 if isinstance(e.reason, ResponseError): 17:31:55 raise RetryError(e, request=request) 17:31:55 17:31:55 if isinstance(e.reason, _ProxyError): 17:31:55 raise ProxyError(e, request=request) 17:31:55 17:31:55 if isinstance(e.reason, _SSLError): 17:31:55 # This branch is for urllib3 v1.22 and later. 17:31:55 raise SSLError(e, request=request) 17:31:55 17:31:55 raise ConnectionError(e, request=request) 17:31:55 17:31:55 except ClosedPoolError as e: 17:31:55 raise ConnectionError(e, request=request) 17:31:55 17:31:55 except _ProxyError as e: 17:31:55 raise ProxyError(e) 17:31:55 17:31:55 except (_SSLError, _HTTPError) as e: 17:31:55 if isinstance(e, _SSLError): 17:31:55 # This branch is for urllib3 versions earlier than v1.22 17:31:55 raise SSLError(e, request=request) 17:31:55 elif isinstance(e, ReadTimeoutError): 17:31:55 > raise ReadTimeout(e, request=request) 17:31:55 E requests.exceptions.ReadTimeout: HTTPConnectionPool(host='localhost', port=8182): Read timed out. (read timeout=10) 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/adapters.py:532: ReadTimeout 17:31:55 ________ TransportPCEtesting.test_084_connect_xpdrc2_1_N1_to_roadmc_PP2 ________ 17:31:55 17:31:55 self = 17:31:55 conn = 17:31:55 method = 'POST' 17:31:55 url = '/rests/operations/transportpce-networkutils:init-xpdr-rdm-links' 17:31:55 body = '{"input": {"links-input": {"xpdr-node": "XPDR-C2", "xpdr-num": "1", "network-num": "1", "rdm-node": "ROADM-C1", "srg-num": "1", "termination-point-num": "SRG1-PP1-TXRX"}}}' 17:31:55 headers = {'User-Agent': 'python-requests/2.31.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/json', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Content-Length': '171', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 17:31:55 retries = Retry(total=0, connect=None, read=False, redirect=None, status=None) 17:31:55 timeout = Timeout(connect=10, read=10, total=None), chunked = False 17:31:55 response_conn = 17:31:55 preload_content = False, decode_content = False, enforce_content_length = True 17:31:55 17:31:55 def _make_request( 17:31:55 self, 17:31:55 conn: BaseHTTPConnection, 17:31:55 method: str, 17:31:55 url: str, 17:31:55 body: _TYPE_BODY | None = None, 17:31:55 headers: typing.Mapping[str, str] | None = None, 17:31:55 retries: Retry | None = None, 17:31:55 timeout: _TYPE_TIMEOUT = _DEFAULT_TIMEOUT, 17:31:55 chunked: bool = False, 17:31:55 response_conn: BaseHTTPConnection | None = None, 17:31:55 preload_content: bool = True, 17:31:55 decode_content: bool = True, 17:31:55 enforce_content_length: bool = True, 17:31:55 ) -> BaseHTTPResponse: 17:31:55 """ 17:31:55 Perform a request on a given urllib connection object taken from our 17:31:55 pool. 17:31:55 17:31:55 :param conn: 17:31:55 a connection from one of our connection pools 17:31:55 17:31:55 :param method: 17:31:55 HTTP request method (such as GET, POST, PUT, etc.) 17:31:55 17:31:55 :param url: 17:31:55 The URL to perform the request on. 17:31:55 17:31:55 :param body: 17:31:55 Data to send in the request body, either :class:`str`, :class:`bytes`, 17:31:55 an iterable of :class:`str`/:class:`bytes`, or a file-like object. 17:31:55 17:31:55 :param headers: 17:31:55 Dictionary of custom headers to send, such as User-Agent, 17:31:55 If-None-Match, etc. If None, pool headers are used. If provided, 17:31:55 these headers completely replace any pool-specific headers. 17:31:55 17:31:55 :param retries: 17:31:55 Configure the number of retries to allow before raising a 17:31:55 :class:`~urllib3.exceptions.MaxRetryError` exception. 17:31:55 17:31:55 Pass ``None`` to retry until you receive a response. Pass a 17:31:55 :class:`~urllib3.util.retry.Retry` object for fine-grained control 17:31:55 over different types of retries. 17:31:55 Pass an integer number to retry connection errors that many times, 17:31:55 but no other types of errors. Pass zero to never retry. 17:31:55 17:31:55 If ``False``, then retries are disabled and any exception is raised 17:31:55 immediately. Also, instead of raising a MaxRetryError on redirects, 17:31:55 the redirect response will be returned. 17:31:55 17:31:55 :type retries: :class:`~urllib3.util.retry.Retry`, False, or an int. 17:31:55 17:31:55 :param timeout: 17:31:55 If specified, overrides the default timeout for this one 17:31:55 request. It may be a float (in seconds) or an instance of 17:31:55 :class:`urllib3.util.Timeout`. 17:31:55 17:31:55 :param chunked: 17:31:55 If True, urllib3 will send the body using chunked transfer 17:31:55 encoding. Otherwise, urllib3 will send the body using the standard 17:31:55 content-length form. Defaults to False. 17:31:55 17:31:55 :param response_conn: 17:31:55 Set this to ``None`` if you will handle releasing the connection or 17:31:55 set the connection to have the response release it. 17:31:55 17:31:55 :param preload_content: 17:31:55 If True, the response's body will be preloaded during construction. 17:31:55 17:31:55 :param decode_content: 17:31:55 If True, will attempt to decode the body based on the 17:31:55 'content-encoding' header. 17:31:55 17:31:55 :param enforce_content_length: 17:31:55 Enforce content length checking. Body returned by server must match 17:31:55 value of Content-Length header, if present. Otherwise, raise error. 17:31:55 """ 17:31:55 self.num_requests += 1 17:31:55 17:31:55 timeout_obj = self._get_timeout(timeout) 17:31:55 timeout_obj.start_connect() 17:31:55 conn.timeout = Timeout.resolve_default_timeout(timeout_obj.connect_timeout) 17:31:55 17:31:55 try: 17:31:55 # Trigger any extra validation we need to do. 17:31:55 try: 17:31:55 self._validate_conn(conn) 17:31:55 except (SocketTimeout, BaseSSLError) as e: 17:31:55 self._raise_timeout(err=e, url=url, timeout_value=conn.timeout) 17:31:55 raise 17:31:55 17:31:55 # _validate_conn() starts the connection to an HTTPS proxy 17:31:55 # so we need to wrap errors with 'ProxyError' here too. 17:31:55 except ( 17:31:55 OSError, 17:31:55 NewConnectionError, 17:31:55 TimeoutError, 17:31:55 BaseSSLError, 17:31:55 CertificateError, 17:31:55 SSLError, 17:31:55 ) as e: 17:31:55 new_e: Exception = e 17:31:55 if isinstance(e, (BaseSSLError, CertificateError)): 17:31:55 new_e = SSLError(e) 17:31:55 # If the connection didn't successfully connect to it's proxy 17:31:55 # then there 17:31:55 if isinstance( 17:31:55 new_e, (OSError, NewConnectionError, TimeoutError, SSLError) 17:31:55 ) and (conn and conn.proxy and not conn.has_connected_to_proxy): 17:31:55 new_e = _wrap_proxy_error(new_e, conn.proxy.scheme) 17:31:55 raise new_e 17:31:55 17:31:55 # conn.request() calls http.client.*.request, not the method in 17:31:55 # urllib3.request. It also calls makefile (recv) on the socket. 17:31:55 try: 17:31:55 conn.request( 17:31:55 method, 17:31:55 url, 17:31:55 body=body, 17:31:55 headers=headers, 17:31:55 chunked=chunked, 17:31:55 preload_content=preload_content, 17:31:55 decode_content=decode_content, 17:31:55 enforce_content_length=enforce_content_length, 17:31:55 ) 17:31:55 17:31:55 # We are swallowing BrokenPipeError (errno.EPIPE) since the server is 17:31:55 # legitimately able to close the connection after sending a valid response. 17:31:55 # With this behaviour, the received response is still readable. 17:31:55 except BrokenPipeError: 17:31:55 pass 17:31:55 except OSError as e: 17:31:55 # MacOS/Linux 17:31:55 # EPROTOTYPE and ECONNRESET are needed on macOS 17:31:55 # https://erickt.github.io/blog/2014/11/19/adventures-in-debugging-a-potential-osx-kernel-bug/ 17:31:55 # Condition changed later to emit ECONNRESET instead of only EPROTOTYPE. 17:31:55 if e.errno != errno.EPROTOTYPE and e.errno != errno.ECONNRESET: 17:31:55 raise 17:31:55 17:31:55 # Reset the timeout for the recv() on the socket 17:31:55 read_timeout = timeout_obj.read_timeout 17:31:55 17:31:55 if not conn.is_closed: 17:31:55 # In Python 3 socket.py will catch EAGAIN and return None when you 17:31:55 # try and read into the file pointer created by http.client, which 17:31:55 # instead raises a BadStatusLine exception. Instead of catching 17:31:55 # the exception and assuming all BadStatusLine exceptions are read 17:31:55 # timeouts, check for a zero timeout before making the request. 17:31:55 if read_timeout == 0: 17:31:55 raise ReadTimeoutError( 17:31:55 self, url, f"Read timed out. (read timeout={read_timeout})" 17:31:55 ) 17:31:55 conn.timeout = read_timeout 17:31:55 17:31:55 # Receive the response from the server 17:31:55 try: 17:31:55 > response = conn.getresponse() 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:537: 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connection.py:466: in getresponse 17:31:55 httplib_response = super().getresponse() 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:1374: in getresponse 17:31:55 response.begin() 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:318: in begin 17:31:55 version, status, reason = self._read_status() 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:279: in _read_status 17:31:55 line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1") 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 17:31:55 self = 17:31:55 b = 17:31:55 17:31:55 def readinto(self, b): 17:31:55 """Read up to len(b) bytes into the writable buffer *b* and return 17:31:55 the number of bytes read. If the socket is non-blocking and no bytes 17:31:55 are available, None is returned. 17:31:55 17:31:55 If *b* is non-empty, a 0 return value indicates that the connection 17:31:55 was shutdown at the other end. 17:31:55 """ 17:31:55 self._checkClosed() 17:31:55 self._checkReadable() 17:31:55 if self._timeout_occurred: 17:31:55 raise OSError("cannot read from timed out object") 17:31:55 while True: 17:31:55 try: 17:31:55 > return self._sock.recv_into(b) 17:31:55 E TimeoutError: timed out 17:31:55 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/socket.py:705: TimeoutError 17:31:55 17:31:55 The above exception was the direct cause of the following exception: 17:31:55 17:31:55 self = 17:31:55 request = , stream = False 17:31:55 timeout = Timeout(connect=10, read=10, total=None), verify = True, cert = None 17:31:55 proxies = OrderedDict() 17:31:55 17:31:55 def send( 17:31:55 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 17:31:55 ): 17:31:55 """Sends PreparedRequest object. Returns Response object. 17:31:55 17:31:55 :param request: The :class:`PreparedRequest ` being sent. 17:31:55 :param stream: (optional) Whether to stream the request content. 17:31:55 :param timeout: (optional) How long to wait for the server to send 17:31:55 data before giving up, as a float, or a :ref:`(connect timeout, 17:31:55 read timeout) ` tuple. 17:31:55 :type timeout: float or tuple or urllib3 Timeout object 17:31:55 :param verify: (optional) Either a boolean, in which case it controls whether 17:31:55 we verify the server's TLS certificate, or a string, in which case it 17:31:55 must be a path to a CA bundle to use 17:31:55 :param cert: (optional) Any user-provided SSL certificate to be trusted. 17:31:55 :param proxies: (optional) The proxies dictionary to apply to the request. 17:31:55 :rtype: requests.Response 17:31:55 """ 17:31:55 17:31:55 try: 17:31:55 conn = self.get_connection(request.url, proxies) 17:31:55 except LocationValueError as e: 17:31:55 raise InvalidURL(e, request=request) 17:31:55 17:31:55 self.cert_verify(conn, request.url, verify, cert) 17:31:55 url = self.request_url(request, proxies) 17:31:55 self.add_headers( 17:31:55 request, 17:31:55 stream=stream, 17:31:55 timeout=timeout, 17:31:55 verify=verify, 17:31:55 cert=cert, 17:31:55 proxies=proxies, 17:31:55 ) 17:31:55 17:31:55 chunked = not (request.body is None or "Content-Length" in request.headers) 17:31:55 17:31:55 if isinstance(timeout, tuple): 17:31:55 try: 17:31:55 connect, read = timeout 17:31:55 timeout = TimeoutSauce(connect=connect, read=read) 17:31:55 except ValueError: 17:31:55 raise ValueError( 17:31:55 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 17:31:55 f"or a single float to set both timeouts to the same value." 17:31:55 ) 17:31:55 elif isinstance(timeout, TimeoutSauce): 17:31:55 pass 17:31:55 else: 17:31:55 timeout = TimeoutSauce(connect=timeout, read=timeout) 17:31:55 17:31:55 try: 17:31:55 > resp = conn.urlopen( 17:31:55 method=request.method, 17:31:55 url=url, 17:31:55 body=request.body, 17:31:55 headers=request.headers, 17:31:55 redirect=False, 17:31:55 assert_same_host=False, 17:31:55 preload_content=False, 17:31:55 decode_content=False, 17:31:55 retries=self.max_retries, 17:31:55 timeout=timeout, 17:31:55 chunked=chunked, 17:31:55 ) 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/adapters.py:486: 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:847: in urlopen 17:31:55 retries = retries.increment( 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/util/retry.py:470: in increment 17:31:55 raise reraise(type(error), error, _stacktrace) 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/util/util.py:39: in reraise 17:31:55 raise value 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:793: in urlopen 17:31:55 response = self._make_request( 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:539: in _make_request 17:31:55 self._raise_timeout(err=e, url=url, timeout_value=read_timeout) 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 17:31:55 self = 17:31:55 err = TimeoutError('timed out') 17:31:55 url = '/rests/operations/transportpce-networkutils:init-xpdr-rdm-links' 17:31:55 timeout_value = 10 17:31:55 17:31:55 def _raise_timeout( 17:31:55 self, 17:31:55 err: BaseSSLError | OSError | SocketTimeout, 17:31:55 url: str, 17:31:55 timeout_value: _TYPE_TIMEOUT | None, 17:31:55 ) -> None: 17:31:55 """Is the error actually a timeout? Will raise a ReadTimeout or pass""" 17:31:55 17:31:55 if isinstance(err, SocketTimeout): 17:31:55 > raise ReadTimeoutError( 17:31:55 self, url, f"Read timed out. (read timeout={timeout_value})" 17:31:55 ) from err 17:31:55 E urllib3.exceptions.ReadTimeoutError: HTTPConnectionPool(host='localhost', port=8182): Read timed out. (read timeout=10) 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:370: ReadTimeoutError 17:31:55 17:31:55 During handling of the above exception, another exception occurred: 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_084_connect_xpdrc2_1_N1_to_roadmc_PP2(self): 17:31:55 > response = test_utils.transportpce_api_rpc_request( 17:31:55 'transportpce-networkutils', 'init-xpdr-rdm-links', 17:31:55 {'links-input': {'xpdr-node': 'XPDR-C2', 'xpdr-num': '1', 'network-num': '1', 17:31:55 'rdm-node': 'ROADM-C1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP1-TXRX'}}) 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1310: 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 transportpce_tests/common/test_utils.py:677: in transportpce_api_rpc_request 17:31:55 response = post_request(url, data) 17:31:55 transportpce_tests/common/test_utils.py:141: in post_request 17:31:55 return requests.request( 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/api.py:59: in request 17:31:55 return session.request(method=method, url=url, **kwargs) 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/sessions.py:589: in request 17:31:55 resp = self.send(prep, **send_kwargs) 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/sessions.py:703: in send 17:31:55 r = adapter.send(request, **kwargs) 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 17:31:55 self = 17:31:55 request = , stream = False 17:31:55 timeout = Timeout(connect=10, read=10, total=None), verify = True, cert = None 17:31:55 proxies = OrderedDict() 17:31:55 17:31:55 def send( 17:31:55 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 17:31:55 ): 17:31:55 """Sends PreparedRequest object. Returns Response object. 17:31:55 17:31:55 :param request: The :class:`PreparedRequest ` being sent. 17:31:55 :param stream: (optional) Whether to stream the request content. 17:31:55 :param timeout: (optional) How long to wait for the server to send 17:31:55 data before giving up, as a float, or a :ref:`(connect timeout, 17:31:55 read timeout) ` tuple. 17:31:55 :type timeout: float or tuple or urllib3 Timeout object 17:31:55 :param verify: (optional) Either a boolean, in which case it controls whether 17:31:55 we verify the server's TLS certificate, or a string, in which case it 17:31:55 must be a path to a CA bundle to use 17:31:55 :param cert: (optional) Any user-provided SSL certificate to be trusted. 17:31:55 :param proxies: (optional) The proxies dictionary to apply to the request. 17:31:55 :rtype: requests.Response 17:31:55 """ 17:31:55 17:31:55 try: 17:31:55 conn = self.get_connection(request.url, proxies) 17:31:55 except LocationValueError as e: 17:31:55 raise InvalidURL(e, request=request) 17:31:55 17:31:55 self.cert_verify(conn, request.url, verify, cert) 17:31:55 url = self.request_url(request, proxies) 17:31:55 self.add_headers( 17:31:55 request, 17:31:55 stream=stream, 17:31:55 timeout=timeout, 17:31:55 verify=verify, 17:31:55 cert=cert, 17:31:55 proxies=proxies, 17:31:55 ) 17:31:55 17:31:55 chunked = not (request.body is None or "Content-Length" in request.headers) 17:31:55 17:31:55 if isinstance(timeout, tuple): 17:31:55 try: 17:31:55 connect, read = timeout 17:31:55 timeout = TimeoutSauce(connect=connect, read=read) 17:31:55 except ValueError: 17:31:55 raise ValueError( 17:31:55 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 17:31:55 f"or a single float to set both timeouts to the same value." 17:31:55 ) 17:31:55 elif isinstance(timeout, TimeoutSauce): 17:31:55 pass 17:31:55 else: 17:31:55 timeout = TimeoutSauce(connect=timeout, read=timeout) 17:31:55 17:31:55 try: 17:31:55 resp = conn.urlopen( 17:31:55 method=request.method, 17:31:55 url=url, 17:31:55 body=request.body, 17:31:55 headers=request.headers, 17:31:55 redirect=False, 17:31:55 assert_same_host=False, 17:31:55 preload_content=False, 17:31:55 decode_content=False, 17:31:55 retries=self.max_retries, 17:31:55 timeout=timeout, 17:31:55 chunked=chunked, 17:31:55 ) 17:31:55 17:31:55 except (ProtocolError, OSError) as err: 17:31:55 raise ConnectionError(err, request=request) 17:31:55 17:31:55 except MaxRetryError as e: 17:31:55 if isinstance(e.reason, ConnectTimeoutError): 17:31:55 # TODO: Remove this in 3.0.0: see #2811 17:31:55 if not isinstance(e.reason, NewConnectionError): 17:31:55 raise ConnectTimeout(e, request=request) 17:31:55 17:31:55 if isinstance(e.reason, ResponseError): 17:31:55 raise RetryError(e, request=request) 17:31:55 17:31:55 if isinstance(e.reason, _ProxyError): 17:31:55 raise ProxyError(e, request=request) 17:31:55 17:31:55 if isinstance(e.reason, _SSLError): 17:31:55 # This branch is for urllib3 v1.22 and later. 17:31:55 raise SSLError(e, request=request) 17:31:55 17:31:55 raise ConnectionError(e, request=request) 17:31:55 17:31:55 except ClosedPoolError as e: 17:31:55 raise ConnectionError(e, request=request) 17:31:55 17:31:55 except _ProxyError as e: 17:31:55 raise ProxyError(e) 17:31:55 17:31:55 except (_SSLError, _HTTPError) as e: 17:31:55 if isinstance(e, _SSLError): 17:31:55 # This branch is for urllib3 versions earlier than v1.22 17:31:55 raise SSLError(e, request=request) 17:31:55 elif isinstance(e, ReadTimeoutError): 17:31:55 > raise ReadTimeout(e, request=request) 17:31:55 E requests.exceptions.ReadTimeout: HTTPConnectionPool(host='localhost', port=8182): Read timed out. (read timeout=10) 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/adapters.py:532: ReadTimeout 17:31:55 ________ TransportPCEtesting.test_085_connect_roadmc_PP2_to_xpdrc2_1_N1 ________ 17:31:55 17:31:55 self = 17:31:55 conn = 17:31:55 method = 'POST' 17:31:55 url = '/rests/operations/transportpce-networkutils:init-rdm-xpdr-links' 17:31:55 body = '{"input": {"links-input": {"xpdr-node": "XPDR-C2", "xpdr-num": "1", "network-num": "1", "rdm-node": "ROADM-C1", "srg-num": "1", "termination-point-num": "SRG1-PP1-TXRX"}}}' 17:31:55 headers = {'User-Agent': 'python-requests/2.31.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/json', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Content-Length': '171', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 17:31:55 retries = Retry(total=0, connect=None, read=False, redirect=None, status=None) 17:31:55 timeout = Timeout(connect=10, read=10, total=None), chunked = False 17:31:55 response_conn = 17:31:55 preload_content = False, decode_content = False, enforce_content_length = True 17:31:55 17:31:55 def _make_request( 17:31:55 self, 17:31:55 conn: BaseHTTPConnection, 17:31:55 method: str, 17:31:55 url: str, 17:31:55 body: _TYPE_BODY | None = None, 17:31:55 headers: typing.Mapping[str, str] | None = None, 17:31:55 retries: Retry | None = None, 17:31:55 timeout: _TYPE_TIMEOUT = _DEFAULT_TIMEOUT, 17:31:55 chunked: bool = False, 17:31:55 response_conn: BaseHTTPConnection | None = None, 17:31:55 preload_content: bool = True, 17:31:55 decode_content: bool = True, 17:31:55 enforce_content_length: bool = True, 17:31:55 ) -> BaseHTTPResponse: 17:31:55 """ 17:31:55 Perform a request on a given urllib connection object taken from our 17:31:55 pool. 17:31:55 17:31:55 :param conn: 17:31:55 a connection from one of our connection pools 17:31:55 17:31:55 :param method: 17:31:55 HTTP request method (such as GET, POST, PUT, etc.) 17:31:55 17:31:55 :param url: 17:31:55 The URL to perform the request on. 17:31:55 17:31:55 :param body: 17:31:55 Data to send in the request body, either :class:`str`, :class:`bytes`, 17:31:55 an iterable of :class:`str`/:class:`bytes`, or a file-like object. 17:31:55 17:31:55 :param headers: 17:31:55 Dictionary of custom headers to send, such as User-Agent, 17:31:55 If-None-Match, etc. If None, pool headers are used. If provided, 17:31:55 these headers completely replace any pool-specific headers. 17:31:55 17:31:55 :param retries: 17:31:55 Configure the number of retries to allow before raising a 17:31:55 :class:`~urllib3.exceptions.MaxRetryError` exception. 17:31:55 17:31:55 Pass ``None`` to retry until you receive a response. Pass a 17:31:55 :class:`~urllib3.util.retry.Retry` object for fine-grained control 17:31:55 over different types of retries. 17:31:55 Pass an integer number to retry connection errors that many times, 17:31:55 but no other types of errors. Pass zero to never retry. 17:31:55 17:31:55 If ``False``, then retries are disabled and any exception is raised 17:31:55 immediately. Also, instead of raising a MaxRetryError on redirects, 17:31:55 the redirect response will be returned. 17:31:55 17:31:55 :type retries: :class:`~urllib3.util.retry.Retry`, False, or an int. 17:31:55 17:31:55 :param timeout: 17:31:55 If specified, overrides the default timeout for this one 17:31:55 request. It may be a float (in seconds) or an instance of 17:31:55 :class:`urllib3.util.Timeout`. 17:31:55 17:31:55 :param chunked: 17:31:55 If True, urllib3 will send the body using chunked transfer 17:31:55 encoding. Otherwise, urllib3 will send the body using the standard 17:31:55 content-length form. Defaults to False. 17:31:55 17:31:55 :param response_conn: 17:31:55 Set this to ``None`` if you will handle releasing the connection or 17:31:55 set the connection to have the response release it. 17:31:55 17:31:55 :param preload_content: 17:31:55 If True, the response's body will be preloaded during construction. 17:31:55 17:31:55 :param decode_content: 17:31:55 If True, will attempt to decode the body based on the 17:31:55 'content-encoding' header. 17:31:55 17:31:55 :param enforce_content_length: 17:31:55 Enforce content length checking. Body returned by server must match 17:31:55 value of Content-Length header, if present. Otherwise, raise error. 17:31:55 """ 17:31:55 self.num_requests += 1 17:31:55 17:31:55 timeout_obj = self._get_timeout(timeout) 17:31:55 timeout_obj.start_connect() 17:31:55 conn.timeout = Timeout.resolve_default_timeout(timeout_obj.connect_timeout) 17:31:55 17:31:55 try: 17:31:55 # Trigger any extra validation we need to do. 17:31:55 try: 17:31:55 self._validate_conn(conn) 17:31:55 except (SocketTimeout, BaseSSLError) as e: 17:31:55 self._raise_timeout(err=e, url=url, timeout_value=conn.timeout) 17:31:55 raise 17:31:55 17:31:55 # _validate_conn() starts the connection to an HTTPS proxy 17:31:55 # so we need to wrap errors with 'ProxyError' here too. 17:31:55 except ( 17:31:55 OSError, 17:31:55 NewConnectionError, 17:31:55 TimeoutError, 17:31:55 BaseSSLError, 17:31:55 CertificateError, 17:31:55 SSLError, 17:31:55 ) as e: 17:31:55 new_e: Exception = e 17:31:55 if isinstance(e, (BaseSSLError, CertificateError)): 17:31:55 new_e = SSLError(e) 17:31:55 # If the connection didn't successfully connect to it's proxy 17:31:55 # then there 17:31:55 if isinstance( 17:31:55 new_e, (OSError, NewConnectionError, TimeoutError, SSLError) 17:31:55 ) and (conn and conn.proxy and not conn.has_connected_to_proxy): 17:31:55 new_e = _wrap_proxy_error(new_e, conn.proxy.scheme) 17:31:55 raise new_e 17:31:55 17:31:55 # conn.request() calls http.client.*.request, not the method in 17:31:55 # urllib3.request. It also calls makefile (recv) on the socket. 17:31:55 try: 17:31:55 conn.request( 17:31:55 method, 17:31:55 url, 17:31:55 body=body, 17:31:55 headers=headers, 17:31:55 chunked=chunked, 17:31:55 preload_content=preload_content, 17:31:55 decode_content=decode_content, 17:31:55 enforce_content_length=enforce_content_length, 17:31:55 ) 17:31:55 17:31:55 # We are swallowing BrokenPipeError (errno.EPIPE) since the server is 17:31:55 # legitimately able to close the connection after sending a valid response. 17:31:55 # With this behaviour, the received response is still readable. 17:31:55 except BrokenPipeError: 17:31:55 pass 17:31:55 except OSError as e: 17:31:55 # MacOS/Linux 17:31:55 # EPROTOTYPE and ECONNRESET are needed on macOS 17:31:55 # https://erickt.github.io/blog/2014/11/19/adventures-in-debugging-a-potential-osx-kernel-bug/ 17:31:55 # Condition changed later to emit ECONNRESET instead of only EPROTOTYPE. 17:31:55 if e.errno != errno.EPROTOTYPE and e.errno != errno.ECONNRESET: 17:31:55 raise 17:31:55 17:31:55 # Reset the timeout for the recv() on the socket 17:31:55 read_timeout = timeout_obj.read_timeout 17:31:55 17:31:55 if not conn.is_closed: 17:31:55 # In Python 3 socket.py will catch EAGAIN and return None when you 17:31:55 # try and read into the file pointer created by http.client, which 17:31:55 # instead raises a BadStatusLine exception. Instead of catching 17:31:55 # the exception and assuming all BadStatusLine exceptions are read 17:31:55 # timeouts, check for a zero timeout before making the request. 17:31:55 if read_timeout == 0: 17:31:55 raise ReadTimeoutError( 17:31:55 self, url, f"Read timed out. (read timeout={read_timeout})" 17:31:55 ) 17:31:55 conn.timeout = read_timeout 17:31:55 17:31:55 # Receive the response from the server 17:31:55 try: 17:31:55 > response = conn.getresponse() 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:537: 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connection.py:466: in getresponse 17:31:55 httplib_response = super().getresponse() 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:1374: in getresponse 17:31:55 response.begin() 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:318: in begin 17:31:55 version, status, reason = self._read_status() 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:279: in _read_status 17:31:55 line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1") 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 17:31:55 self = 17:31:55 b = 17:31:55 17:31:55 def readinto(self, b): 17:31:55 """Read up to len(b) bytes into the writable buffer *b* and return 17:31:55 the number of bytes read. If the socket is non-blocking and no bytes 17:31:55 are available, None is returned. 17:31:55 17:31:55 If *b* is non-empty, a 0 return value indicates that the connection 17:31:55 was shutdown at the other end. 17:31:55 """ 17:31:55 self._checkClosed() 17:31:55 self._checkReadable() 17:31:55 if self._timeout_occurred: 17:31:55 raise OSError("cannot read from timed out object") 17:31:55 while True: 17:31:55 try: 17:31:55 > return self._sock.recv_into(b) 17:31:55 E TimeoutError: timed out 17:31:55 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/socket.py:705: TimeoutError 17:31:55 17:31:55 The above exception was the direct cause of the following exception: 17:31:55 17:31:55 self = 17:31:55 request = , stream = False 17:31:55 timeout = Timeout(connect=10, read=10, total=None), verify = True, cert = None 17:31:55 proxies = OrderedDict() 17:31:55 17:31:55 def send( 17:31:55 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 17:31:55 ): 17:31:55 """Sends PreparedRequest object. Returns Response object. 17:31:55 17:31:55 :param request: The :class:`PreparedRequest ` being sent. 17:31:55 :param stream: (optional) Whether to stream the request content. 17:31:55 :param timeout: (optional) How long to wait for the server to send 17:31:55 data before giving up, as a float, or a :ref:`(connect timeout, 17:31:55 read timeout) ` tuple. 17:31:55 :type timeout: float or tuple or urllib3 Timeout object 17:31:55 :param verify: (optional) Either a boolean, in which case it controls whether 17:31:55 we verify the server's TLS certificate, or a string, in which case it 17:31:55 must be a path to a CA bundle to use 17:31:55 :param cert: (optional) Any user-provided SSL certificate to be trusted. 17:31:55 :param proxies: (optional) The proxies dictionary to apply to the request. 17:31:55 :rtype: requests.Response 17:31:55 """ 17:31:55 17:31:55 try: 17:31:55 conn = self.get_connection(request.url, proxies) 17:31:55 except LocationValueError as e: 17:31:55 raise InvalidURL(e, request=request) 17:31:55 17:31:55 self.cert_verify(conn, request.url, verify, cert) 17:31:55 url = self.request_url(request, proxies) 17:31:55 self.add_headers( 17:31:55 request, 17:31:55 stream=stream, 17:31:55 timeout=timeout, 17:31:55 verify=verify, 17:31:55 cert=cert, 17:31:55 proxies=proxies, 17:31:55 ) 17:31:55 17:31:55 chunked = not (request.body is None or "Content-Length" in request.headers) 17:31:55 17:31:55 if isinstance(timeout, tuple): 17:31:55 try: 17:31:55 connect, read = timeout 17:31:55 timeout = TimeoutSauce(connect=connect, read=read) 17:31:55 except ValueError: 17:31:55 raise ValueError( 17:31:55 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 17:31:55 f"or a single float to set both timeouts to the same value." 17:31:55 ) 17:31:55 elif isinstance(timeout, TimeoutSauce): 17:31:55 pass 17:31:55 else: 17:31:55 timeout = TimeoutSauce(connect=timeout, read=timeout) 17:31:55 17:31:55 try: 17:31:55 > resp = conn.urlopen( 17:31:55 method=request.method, 17:31:55 url=url, 17:31:55 body=request.body, 17:31:55 headers=request.headers, 17:31:55 redirect=False, 17:31:55 assert_same_host=False, 17:31:55 preload_content=False, 17:31:55 decode_content=False, 17:31:55 retries=self.max_retries, 17:31:55 timeout=timeout, 17:31:55 chunked=chunked, 17:31:55 ) 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/adapters.py:486: 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:847: in urlopen 17:31:55 retries = retries.increment( 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/util/retry.py:470: in increment 17:31:55 raise reraise(type(error), error, _stacktrace) 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/util/util.py:39: in reraise 17:31:55 raise value 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:793: in urlopen 17:31:55 response = self._make_request( 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:539: in _make_request 17:31:55 self._raise_timeout(err=e, url=url, timeout_value=read_timeout) 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 17:31:55 self = 17:31:55 err = TimeoutError('timed out') 17:31:55 url = '/rests/operations/transportpce-networkutils:init-rdm-xpdr-links' 17:31:55 timeout_value = 10 17:31:55 17:31:55 def _raise_timeout( 17:31:55 self, 17:31:55 err: BaseSSLError | OSError | SocketTimeout, 17:31:55 url: str, 17:31:55 timeout_value: _TYPE_TIMEOUT | None, 17:31:55 ) -> None: 17:31:55 """Is the error actually a timeout? Will raise a ReadTimeout or pass""" 17:31:55 17:31:55 if isinstance(err, SocketTimeout): 17:31:55 > raise ReadTimeoutError( 17:31:55 self, url, f"Read timed out. (read timeout={timeout_value})" 17:31:55 ) from err 17:31:55 E urllib3.exceptions.ReadTimeoutError: HTTPConnectionPool(host='localhost', port=8182): Read timed out. (read timeout=10) 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:370: ReadTimeoutError 17:31:55 17:31:55 During handling of the above exception, another exception occurred: 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_085_connect_roadmc_PP2_to_xpdrc2_1_N1(self): 17:31:55 > response = test_utils.transportpce_api_rpc_request( 17:31:55 'transportpce-networkutils', 'init-rdm-xpdr-links', 17:31:55 {'links-input': {'xpdr-node': 'XPDR-C2', 'xpdr-num': '1', 'network-num': '1', 17:31:55 'rdm-node': 'ROADM-C1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP1-TXRX'}}) 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1318: 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 transportpce_tests/common/test_utils.py:677: in transportpce_api_rpc_request 17:31:55 response = post_request(url, data) 17:31:55 transportpce_tests/common/test_utils.py:141: in post_request 17:31:55 return requests.request( 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/api.py:59: in request 17:31:55 return session.request(method=method, url=url, **kwargs) 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/sessions.py:589: in request 17:31:55 resp = self.send(prep, **send_kwargs) 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/sessions.py:703: in send 17:31:55 r = adapter.send(request, **kwargs) 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 17:31:55 self = 17:31:55 request = , stream = False 17:31:55 timeout = Timeout(connect=10, read=10, total=None), verify = True, cert = None 17:31:55 proxies = OrderedDict() 17:31:55 17:31:55 def send( 17:31:55 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 17:31:55 ): 17:31:55 """Sends PreparedRequest object. Returns Response object. 17:31:55 17:31:55 :param request: The :class:`PreparedRequest ` being sent. 17:31:55 :param stream: (optional) Whether to stream the request content. 17:31:55 :param timeout: (optional) How long to wait for the server to send 17:31:55 data before giving up, as a float, or a :ref:`(connect timeout, 17:31:55 read timeout) ` tuple. 17:31:55 :type timeout: float or tuple or urllib3 Timeout object 17:31:55 :param verify: (optional) Either a boolean, in which case it controls whether 17:31:55 we verify the server's TLS certificate, or a string, in which case it 17:31:55 must be a path to a CA bundle to use 17:31:55 :param cert: (optional) Any user-provided SSL certificate to be trusted. 17:31:55 :param proxies: (optional) The proxies dictionary to apply to the request. 17:31:55 :rtype: requests.Response 17:31:55 """ 17:31:55 17:31:55 try: 17:31:55 conn = self.get_connection(request.url, proxies) 17:31:55 except LocationValueError as e: 17:31:55 raise InvalidURL(e, request=request) 17:31:55 17:31:55 self.cert_verify(conn, request.url, verify, cert) 17:31:55 url = self.request_url(request, proxies) 17:31:55 self.add_headers( 17:31:55 request, 17:31:55 stream=stream, 17:31:55 timeout=timeout, 17:31:55 verify=verify, 17:31:55 cert=cert, 17:31:55 proxies=proxies, 17:31:55 ) 17:31:55 17:31:55 chunked = not (request.body is None or "Content-Length" in request.headers) 17:31:55 17:31:55 if isinstance(timeout, tuple): 17:31:55 try: 17:31:55 connect, read = timeout 17:31:55 timeout = TimeoutSauce(connect=connect, read=read) 17:31:55 except ValueError: 17:31:55 raise ValueError( 17:31:55 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 17:31:55 f"or a single float to set both timeouts to the same value." 17:31:55 ) 17:31:55 elif isinstance(timeout, TimeoutSauce): 17:31:55 pass 17:31:55 else: 17:31:55 timeout = TimeoutSauce(connect=timeout, read=timeout) 17:31:55 17:31:55 try: 17:31:55 resp = conn.urlopen( 17:31:55 method=request.method, 17:31:55 url=url, 17:31:55 body=request.body, 17:31:55 headers=request.headers, 17:31:55 redirect=False, 17:31:55 assert_same_host=False, 17:31:55 preload_content=False, 17:31:55 decode_content=False, 17:31:55 retries=self.max_retries, 17:31:55 timeout=timeout, 17:31:55 chunked=chunked, 17:31:55 ) 17:31:55 17:31:55 except (ProtocolError, OSError) as err: 17:31:55 raise ConnectionError(err, request=request) 17:31:55 17:31:55 except MaxRetryError as e: 17:31:55 if isinstance(e.reason, ConnectTimeoutError): 17:31:55 # TODO: Remove this in 3.0.0: see #2811 17:31:55 if not isinstance(e.reason, NewConnectionError): 17:31:55 raise ConnectTimeout(e, request=request) 17:31:55 17:31:55 if isinstance(e.reason, ResponseError): 17:31:55 raise RetryError(e, request=request) 17:31:55 17:31:55 if isinstance(e.reason, _ProxyError): 17:31:55 raise ProxyError(e, request=request) 17:31:55 17:31:55 if isinstance(e.reason, _SSLError): 17:31:55 # This branch is for urllib3 v1.22 and later. 17:31:55 raise SSLError(e, request=request) 17:31:55 17:31:55 raise ConnectionError(e, request=request) 17:31:55 17:31:55 except ClosedPoolError as e: 17:31:55 raise ConnectionError(e, request=request) 17:31:55 17:31:55 except _ProxyError as e: 17:31:55 raise ProxyError(e) 17:31:55 17:31:55 except (_SSLError, _HTTPError) as e: 17:31:55 if isinstance(e, _SSLError): 17:31:55 # This branch is for urllib3 versions earlier than v1.22 17:31:55 raise SSLError(e, request=request) 17:31:55 elif isinstance(e, ReadTimeoutError): 17:31:55 > raise ReadTimeout(e, request=request) 17:31:55 E requests.exceptions.ReadTimeout: HTTPConnectionPool(host='localhost', port=8182): Read timed out. (read timeout=10) 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/adapters.py:532: ReadTimeout 17:31:55 ________________ TransportPCEtesting.test_087_get_400GE_service ________________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_087_get_400GE_service(self): 17:31:55 response = test_utils.get_ordm_serv_list_attr_request("services", "service-400GE") 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1351: AssertionError 17:31:55 ________________ TransportPCEtesting.test_088_check_xc1_roadma _________________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_088_check_xc1_roadma(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 "ROADM-A1", "roadm-connections", "SRG1-PP1-TXRX-DEG2-TTP-TXRX-755:768") 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1361: AssertionError 17:31:55 ________________ TransportPCEtesting.test_089_check_topo_xpdra2 ________________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_089_check_topo_xpdra2(self): 17:31:55 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'XPDR-A2-XPDR1', 'config') 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 liste_tp = response['node']['ietf-network-topology:termination-point'] 17:31:55 for ele in liste_tp: 17:31:55 if ele['tp-id'] == 'XPDR1-NETWORK1': 17:31:55 self.assertEqual( 17:31:55 196.08125, 17:31:55 > float(ele['org-openroadm-network-topology:xpdr-network-attributes']['wavelength']['frequency'])) 17:31:55 E KeyError: 'org-openroadm-network-topology:xpdr-network-attributes' 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1380: KeyError 17:31:55 _____________ TransportPCEtesting.test_090_check_topo_roadma_SRG1 ______________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_090_check_topo_roadma_SRG1(self): 17:31:55 response = test_utils.get_ietf_network_node_request('openroadm-topology', 'ROADM-A1-SRG1', 'config') 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 freq_map = base64.b64decode( 17:31:55 response['node']['org-openroadm-network-topology:srg-attributes']['avail-freq-maps'][0]['freq-map']) 17:31:55 freq_map_array = [int(x) for x in freq_map] 17:31:55 self.assertEqual(freq_map_array[95], 0, "Index 1 should not be available") 17:31:55 liste_tp = response['node']['ietf-network-topology:termination-point'] 17:31:55 for ele in liste_tp: 17:31:55 if ele['tp-id'] == 'SRG1-PP1-TXRX': 17:31:55 freq_map = base64.b64decode( 17:31:55 > ele['org-openroadm-network-topology:pp-attributes']['avail-freq-maps'][0]['freq-map']) 17:31:55 E KeyError: 'org-openroadm-network-topology:pp-attributes' 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1399: KeyError 17:31:55 _______ TransportPCEtesting.test_092_check_interface_400GE_CLIENT_xpdra2 _______ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_092_check_interface_400GE_CLIENT_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR1-CLIENT1-ETHERNET') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1430: AssertionError 17:31:55 ___________ TransportPCEtesting.test_093_check_interface_OTSI_xpdra2 ___________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_093_check_interface_OTSI_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR1-NETWORK1-755:768') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1447: AssertionError 17:31:55 ________ TransportPCEtesting.test_094_check_interface_OTSI_GROUP_xpdra2 ________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_094_check_interface_OTSI_GROUP_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR1-NETWORK1-OTSIGROUP-400G') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1473: AssertionError 17:31:55 __________ TransportPCEtesting.test_095_check_interface_OTUC4_xpdra2 ___________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_095_check_interface_OTUC4_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR1-NETWORK1-OTUC4') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1492: AssertionError 17:31:55 __________ TransportPCEtesting.test_096_check_interface_ODUC4_xpdra2 ___________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_096_check_interface_ODUC4_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR1-NETWORK1-ODUC4') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1518: AssertionError 17:31:55 _________ TransportPCEtesting.test_097_check_interface_ODUFLEX_xpdra2 __________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_097_check_interface_ODUFLEX_xpdra2(self): 17:31:55 response = test_utils.check_node_attribute_request( 17:31:55 'XPDR-A2', 'interface', 'XPDR1-NETWORK1-ODUFLEX') 17:31:55 > self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 E AssertionError: 409 != 200 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1549: AssertionError 17:31:55 ______________ TransportPCEtesting.test_098_delete_400GE_service _______________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_098_delete_400GE_service(self): 17:31:55 self.del_serv_input_data["service-delete-req-info"]["service-name"] = "service-400GE" 17:31:55 response = test_utils.transportpce_api_rpc_request( 17:31:55 'org-openroadm-service', 'service-delete', 17:31:55 self.del_serv_input_data) 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 > self.assertIn('Renderer service delete in progress', 17:31:55 response['output']['configuration-response-common']['response-message']) 17:31:55 E AssertionError: 'Renderer service delete in progress' not found in "Service 'service-400GE' does not exist in datastore" 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1605: AssertionError 17:31:55 _________________ TransportPCEtesting.test_099_get_no_service __________________ 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_099_get_no_service(self): 17:31:55 response = test_utils.get_ordm_serv_list_request() 17:31:55 > self.assertEqual(response['status_code'], requests.codes.conflict) 17:31:55 E AssertionError: 200 != 409 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1611: AssertionError 17:31:55 _________ TransportPCEtesting.test_105_disconnect_xponders_from_roadm __________ 17:31:55 17:31:55 self = 17:31:55 conn = 17:31:55 method = 'DELETE' 17:31:55 url = '/rests/data/ietf-network:networks/network=openroadm-topology/ietf-network-topology:link=ROADM-A1-SRG1-SRG1-PP2-TXRXtoXPDR-A2-XPDR2-XPDR2-NETWORK1?content=config' 17:31:55 body = None 17:31:55 headers = {'User-Agent': 'python-requests/2.31.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/json', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 17:31:55 retries = Retry(total=0, connect=None, read=False, redirect=None, status=None) 17:31:55 timeout = Timeout(connect=10, read=10, total=None), chunked = False 17:31:55 response_conn = 17:31:55 preload_content = False, decode_content = False, enforce_content_length = True 17:31:55 17:31:55 def _make_request( 17:31:55 self, 17:31:55 conn: BaseHTTPConnection, 17:31:55 method: str, 17:31:55 url: str, 17:31:55 body: _TYPE_BODY | None = None, 17:31:55 headers: typing.Mapping[str, str] | None = None, 17:31:55 retries: Retry | None = None, 17:31:55 timeout: _TYPE_TIMEOUT = _DEFAULT_TIMEOUT, 17:31:55 chunked: bool = False, 17:31:55 response_conn: BaseHTTPConnection | None = None, 17:31:55 preload_content: bool = True, 17:31:55 decode_content: bool = True, 17:31:55 enforce_content_length: bool = True, 17:31:55 ) -> BaseHTTPResponse: 17:31:55 """ 17:31:55 Perform a request on a given urllib connection object taken from our 17:31:55 pool. 17:31:55 17:31:55 :param conn: 17:31:55 a connection from one of our connection pools 17:31:55 17:31:55 :param method: 17:31:55 HTTP request method (such as GET, POST, PUT, etc.) 17:31:55 17:31:55 :param url: 17:31:55 The URL to perform the request on. 17:31:55 17:31:55 :param body: 17:31:55 Data to send in the request body, either :class:`str`, :class:`bytes`, 17:31:55 an iterable of :class:`str`/:class:`bytes`, or a file-like object. 17:31:55 17:31:55 :param headers: 17:31:55 Dictionary of custom headers to send, such as User-Agent, 17:31:55 If-None-Match, etc. If None, pool headers are used. If provided, 17:31:55 these headers completely replace any pool-specific headers. 17:31:55 17:31:55 :param retries: 17:31:55 Configure the number of retries to allow before raising a 17:31:55 :class:`~urllib3.exceptions.MaxRetryError` exception. 17:31:55 17:31:55 Pass ``None`` to retry until you receive a response. Pass a 17:31:55 :class:`~urllib3.util.retry.Retry` object for fine-grained control 17:31:55 over different types of retries. 17:31:55 Pass an integer number to retry connection errors that many times, 17:31:55 but no other types of errors. Pass zero to never retry. 17:31:55 17:31:55 If ``False``, then retries are disabled and any exception is raised 17:31:55 immediately. Also, instead of raising a MaxRetryError on redirects, 17:31:55 the redirect response will be returned. 17:31:55 17:31:55 :type retries: :class:`~urllib3.util.retry.Retry`, False, or an int. 17:31:55 17:31:55 :param timeout: 17:31:55 If specified, overrides the default timeout for this one 17:31:55 request. It may be a float (in seconds) or an instance of 17:31:55 :class:`urllib3.util.Timeout`. 17:31:55 17:31:55 :param chunked: 17:31:55 If True, urllib3 will send the body using chunked transfer 17:31:55 encoding. Otherwise, urllib3 will send the body using the standard 17:31:55 content-length form. Defaults to False. 17:31:55 17:31:55 :param response_conn: 17:31:55 Set this to ``None`` if you will handle releasing the connection or 17:31:55 set the connection to have the response release it. 17:31:55 17:31:55 :param preload_content: 17:31:55 If True, the response's body will be preloaded during construction. 17:31:55 17:31:55 :param decode_content: 17:31:55 If True, will attempt to decode the body based on the 17:31:55 'content-encoding' header. 17:31:55 17:31:55 :param enforce_content_length: 17:31:55 Enforce content length checking. Body returned by server must match 17:31:55 value of Content-Length header, if present. Otherwise, raise error. 17:31:55 """ 17:31:55 self.num_requests += 1 17:31:55 17:31:55 timeout_obj = self._get_timeout(timeout) 17:31:55 timeout_obj.start_connect() 17:31:55 conn.timeout = Timeout.resolve_default_timeout(timeout_obj.connect_timeout) 17:31:55 17:31:55 try: 17:31:55 # Trigger any extra validation we need to do. 17:31:55 try: 17:31:55 self._validate_conn(conn) 17:31:55 except (SocketTimeout, BaseSSLError) as e: 17:31:55 self._raise_timeout(err=e, url=url, timeout_value=conn.timeout) 17:31:55 raise 17:31:55 17:31:55 # _validate_conn() starts the connection to an HTTPS proxy 17:31:55 # so we need to wrap errors with 'ProxyError' here too. 17:31:55 except ( 17:31:55 OSError, 17:31:55 NewConnectionError, 17:31:55 TimeoutError, 17:31:55 BaseSSLError, 17:31:55 CertificateError, 17:31:55 SSLError, 17:31:55 ) as e: 17:31:55 new_e: Exception = e 17:31:55 if isinstance(e, (BaseSSLError, CertificateError)): 17:31:55 new_e = SSLError(e) 17:31:55 # If the connection didn't successfully connect to it's proxy 17:31:55 # then there 17:31:55 if isinstance( 17:31:55 new_e, (OSError, NewConnectionError, TimeoutError, SSLError) 17:31:55 ) and (conn and conn.proxy and not conn.has_connected_to_proxy): 17:31:55 new_e = _wrap_proxy_error(new_e, conn.proxy.scheme) 17:31:55 raise new_e 17:31:55 17:31:55 # conn.request() calls http.client.*.request, not the method in 17:31:55 # urllib3.request. It also calls makefile (recv) on the socket. 17:31:55 try: 17:31:55 conn.request( 17:31:55 method, 17:31:55 url, 17:31:55 body=body, 17:31:55 headers=headers, 17:31:55 chunked=chunked, 17:31:55 preload_content=preload_content, 17:31:55 decode_content=decode_content, 17:31:55 enforce_content_length=enforce_content_length, 17:31:55 ) 17:31:55 17:31:55 # We are swallowing BrokenPipeError (errno.EPIPE) since the server is 17:31:55 # legitimately able to close the connection after sending a valid response. 17:31:55 # With this behaviour, the received response is still readable. 17:31:55 except BrokenPipeError: 17:31:55 pass 17:31:55 except OSError as e: 17:31:55 # MacOS/Linux 17:31:55 # EPROTOTYPE and ECONNRESET are needed on macOS 17:31:55 # https://erickt.github.io/blog/2014/11/19/adventures-in-debugging-a-potential-osx-kernel-bug/ 17:31:55 # Condition changed later to emit ECONNRESET instead of only EPROTOTYPE. 17:31:55 if e.errno != errno.EPROTOTYPE and e.errno != errno.ECONNRESET: 17:31:55 raise 17:31:55 17:31:55 # Reset the timeout for the recv() on the socket 17:31:55 read_timeout = timeout_obj.read_timeout 17:31:55 17:31:55 if not conn.is_closed: 17:31:55 # In Python 3 socket.py will catch EAGAIN and return None when you 17:31:55 # try and read into the file pointer created by http.client, which 17:31:55 # instead raises a BadStatusLine exception. Instead of catching 17:31:55 # the exception and assuming all BadStatusLine exceptions are read 17:31:55 # timeouts, check for a zero timeout before making the request. 17:31:55 if read_timeout == 0: 17:31:55 raise ReadTimeoutError( 17:31:55 self, url, f"Read timed out. (read timeout={read_timeout})" 17:31:55 ) 17:31:55 conn.timeout = read_timeout 17:31:55 17:31:55 # Receive the response from the server 17:31:55 try: 17:31:55 > response = conn.getresponse() 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:537: 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connection.py:466: in getresponse 17:31:55 httplib_response = super().getresponse() 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:1374: in getresponse 17:31:55 response.begin() 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:318: in begin 17:31:55 version, status, reason = self._read_status() 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/http/client.py:279: in _read_status 17:31:55 line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1") 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 17:31:55 self = 17:31:55 b = 17:31:55 17:31:55 def readinto(self, b): 17:31:55 """Read up to len(b) bytes into the writable buffer *b* and return 17:31:55 the number of bytes read. If the socket is non-blocking and no bytes 17:31:55 are available, None is returned. 17:31:55 17:31:55 If *b* is non-empty, a 0 return value indicates that the connection 17:31:55 was shutdown at the other end. 17:31:55 """ 17:31:55 self._checkClosed() 17:31:55 self._checkReadable() 17:31:55 if self._timeout_occurred: 17:31:55 raise OSError("cannot read from timed out object") 17:31:55 while True: 17:31:55 try: 17:31:55 > return self._sock.recv_into(b) 17:31:55 E TimeoutError: timed out 17:31:55 17:31:55 /opt/pyenv/versions/3.10.6/lib/python3.10/socket.py:705: TimeoutError 17:31:55 17:31:55 The above exception was the direct cause of the following exception: 17:31:55 17:31:55 self = 17:31:55 request = , stream = False 17:31:55 timeout = Timeout(connect=10, read=10, total=None), verify = True, cert = None 17:31:55 proxies = OrderedDict() 17:31:55 17:31:55 def send( 17:31:55 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 17:31:55 ): 17:31:55 """Sends PreparedRequest object. Returns Response object. 17:31:55 17:31:55 :param request: The :class:`PreparedRequest ` being sent. 17:31:55 :param stream: (optional) Whether to stream the request content. 17:31:55 :param timeout: (optional) How long to wait for the server to send 17:31:55 data before giving up, as a float, or a :ref:`(connect timeout, 17:31:55 read timeout) ` tuple. 17:31:55 :type timeout: float or tuple or urllib3 Timeout object 17:31:55 :param verify: (optional) Either a boolean, in which case it controls whether 17:31:55 we verify the server's TLS certificate, or a string, in which case it 17:31:55 must be a path to a CA bundle to use 17:31:55 :param cert: (optional) Any user-provided SSL certificate to be trusted. 17:31:55 :param proxies: (optional) The proxies dictionary to apply to the request. 17:31:55 :rtype: requests.Response 17:31:55 """ 17:31:55 17:31:55 try: 17:31:55 conn = self.get_connection(request.url, proxies) 17:31:55 except LocationValueError as e: 17:31:55 raise InvalidURL(e, request=request) 17:31:55 17:31:55 self.cert_verify(conn, request.url, verify, cert) 17:31:55 url = self.request_url(request, proxies) 17:31:55 self.add_headers( 17:31:55 request, 17:31:55 stream=stream, 17:31:55 timeout=timeout, 17:31:55 verify=verify, 17:31:55 cert=cert, 17:31:55 proxies=proxies, 17:31:55 ) 17:31:55 17:31:55 chunked = not (request.body is None or "Content-Length" in request.headers) 17:31:55 17:31:55 if isinstance(timeout, tuple): 17:31:55 try: 17:31:55 connect, read = timeout 17:31:55 timeout = TimeoutSauce(connect=connect, read=read) 17:31:55 except ValueError: 17:31:55 raise ValueError( 17:31:55 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 17:31:55 f"or a single float to set both timeouts to the same value." 17:31:55 ) 17:31:55 elif isinstance(timeout, TimeoutSauce): 17:31:55 pass 17:31:55 else: 17:31:55 timeout = TimeoutSauce(connect=timeout, read=timeout) 17:31:55 17:31:55 try: 17:31:55 > resp = conn.urlopen( 17:31:55 method=request.method, 17:31:55 url=url, 17:31:55 body=request.body, 17:31:55 headers=request.headers, 17:31:55 redirect=False, 17:31:55 assert_same_host=False, 17:31:55 preload_content=False, 17:31:55 decode_content=False, 17:31:55 retries=self.max_retries, 17:31:55 timeout=timeout, 17:31:55 chunked=chunked, 17:31:55 ) 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/adapters.py:486: 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:847: in urlopen 17:31:55 retries = retries.increment( 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/util/retry.py:470: in increment 17:31:55 raise reraise(type(error), error, _stacktrace) 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/util/util.py:39: in reraise 17:31:55 raise value 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:793: in urlopen 17:31:55 response = self._make_request( 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:539: in _make_request 17:31:55 self._raise_timeout(err=e, url=url, timeout_value=read_timeout) 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 17:31:55 self = 17:31:55 err = TimeoutError('timed out') 17:31:55 url = '/rests/data/ietf-network:networks/network=openroadm-topology/ietf-network-topology:link=ROADM-A1-SRG1-SRG1-PP2-TXRXtoXPDR-A2-XPDR2-XPDR2-NETWORK1?content=config' 17:31:55 timeout_value = 10 17:31:55 17:31:55 def _raise_timeout( 17:31:55 self, 17:31:55 err: BaseSSLError | OSError | SocketTimeout, 17:31:55 url: str, 17:31:55 timeout_value: _TYPE_TIMEOUT | None, 17:31:55 ) -> None: 17:31:55 """Is the error actually a timeout? Will raise a ReadTimeout or pass""" 17:31:55 17:31:55 if isinstance(err, SocketTimeout): 17:31:55 > raise ReadTimeoutError( 17:31:55 self, url, f"Read timed out. (read timeout={timeout_value})" 17:31:55 ) from err 17:31:55 E urllib3.exceptions.ReadTimeoutError: HTTPConnectionPool(host='localhost', port=8182): Read timed out. (read timeout=10) 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/urllib3/connectionpool.py:370: ReadTimeoutError 17:31:55 17:31:55 During handling of the above exception, another exception occurred: 17:31:55 17:31:55 self = 17:31:55 17:31:55 def test_105_disconnect_xponders_from_roadm(self): 17:31:55 response = test_utils.get_ietf_network_request('openroadm-topology', 'config') 17:31:55 self.assertEqual(response['status_code'], requests.codes.ok) 17:31:55 links = response['network'][0]['ietf-network-topology:link'] 17:31:55 for link in links: 17:31:55 if link["org-openroadm-common-network:link-type"] in ('XPONDER-OUTPUT', 'XPONDER-INPUT'): 17:31:55 > response = test_utils.del_ietf_network_link_request( 17:31:55 'openroadm-topology', link['link-id'], 'config') 17:31:55 17:31:55 transportpce_tests/hybrid/test02_B100G_end2end.py:1659: 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 transportpce_tests/common/test_utils.py:542: in del_ietf_network_link_request 17:31:55 response = delete_request(url[RESTCONF_VERSION].format(*format_args)) 17:31:55 transportpce_tests/common/test_utils.py:132: in delete_request 17:31:55 return requests.request( 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/api.py:59: in request 17:31:55 return session.request(method=method, url=url, **kwargs) 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/sessions.py:589: in request 17:31:55 resp = self.send(prep, **send_kwargs) 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/sessions.py:703: in send 17:31:55 r = adapter.send(request, **kwargs) 17:31:55 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 17:31:55 17:31:55 self = 17:31:55 request = , stream = False 17:31:55 timeout = Timeout(connect=10, read=10, total=None), verify = True, cert = None 17:31:55 proxies = OrderedDict() 17:31:55 17:31:55 def send( 17:31:55 self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 17:31:55 ): 17:31:55 """Sends PreparedRequest object. Returns Response object. 17:31:55 17:31:55 :param request: The :class:`PreparedRequest ` being sent. 17:31:55 :param stream: (optional) Whether to stream the request content. 17:31:55 :param timeout: (optional) How long to wait for the server to send 17:31:55 data before giving up, as a float, or a :ref:`(connect timeout, 17:31:55 read timeout) ` tuple. 17:31:55 :type timeout: float or tuple or urllib3 Timeout object 17:31:55 :param verify: (optional) Either a boolean, in which case it controls whether 17:31:55 we verify the server's TLS certificate, or a string, in which case it 17:31:55 must be a path to a CA bundle to use 17:31:55 :param cert: (optional) Any user-provided SSL certificate to be trusted. 17:31:55 :param proxies: (optional) The proxies dictionary to apply to the request. 17:31:55 :rtype: requests.Response 17:31:55 """ 17:31:55 17:31:55 try: 17:31:55 conn = self.get_connection(request.url, proxies) 17:31:55 except LocationValueError as e: 17:31:55 raise InvalidURL(e, request=request) 17:31:55 17:31:55 self.cert_verify(conn, request.url, verify, cert) 17:31:55 url = self.request_url(request, proxies) 17:31:55 self.add_headers( 17:31:55 request, 17:31:55 stream=stream, 17:31:55 timeout=timeout, 17:31:55 verify=verify, 17:31:55 cert=cert, 17:31:55 proxies=proxies, 17:31:55 ) 17:31:55 17:31:55 chunked = not (request.body is None or "Content-Length" in request.headers) 17:31:55 17:31:55 if isinstance(timeout, tuple): 17:31:55 try: 17:31:55 connect, read = timeout 17:31:55 timeout = TimeoutSauce(connect=connect, read=read) 17:31:55 except ValueError: 17:31:55 raise ValueError( 17:31:55 f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 17:31:55 f"or a single float to set both timeouts to the same value." 17:31:55 ) 17:31:55 elif isinstance(timeout, TimeoutSauce): 17:31:55 pass 17:31:55 else: 17:31:55 timeout = TimeoutSauce(connect=timeout, read=timeout) 17:31:55 17:31:55 try: 17:31:55 resp = conn.urlopen( 17:31:55 method=request.method, 17:31:55 url=url, 17:31:55 body=request.body, 17:31:55 headers=request.headers, 17:31:55 redirect=False, 17:31:55 assert_same_host=False, 17:31:55 preload_content=False, 17:31:55 decode_content=False, 17:31:55 retries=self.max_retries, 17:31:55 timeout=timeout, 17:31:55 chunked=chunked, 17:31:55 ) 17:31:55 17:31:55 except (ProtocolError, OSError) as err: 17:31:55 raise ConnectionError(err, request=request) 17:31:55 17:31:55 except MaxRetryError as e: 17:31:55 if isinstance(e.reason, ConnectTimeoutError): 17:31:55 # TODO: Remove this in 3.0.0: see #2811 17:31:55 if not isinstance(e.reason, NewConnectionError): 17:31:55 raise ConnectTimeout(e, request=request) 17:31:55 17:31:55 if isinstance(e.reason, ResponseError): 17:31:55 raise RetryError(e, request=request) 17:31:55 17:31:55 if isinstance(e.reason, _ProxyError): 17:31:55 raise ProxyError(e, request=request) 17:31:55 17:31:55 if isinstance(e.reason, _SSLError): 17:31:55 # This branch is for urllib3 v1.22 and later. 17:31:55 raise SSLError(e, request=request) 17:31:55 17:31:55 raise ConnectionError(e, request=request) 17:31:55 17:31:55 except ClosedPoolError as e: 17:31:55 raise ConnectionError(e, request=request) 17:31:55 17:31:55 except _ProxyError as e: 17:31:55 raise ProxyError(e) 17:31:55 17:31:55 except (_SSLError, _HTTPError) as e: 17:31:55 if isinstance(e, _SSLError): 17:31:55 # This branch is for urllib3 versions earlier than v1.22 17:31:55 raise SSLError(e, request=request) 17:31:55 elif isinstance(e, ReadTimeoutError): 17:31:55 > raise ReadTimeout(e, request=request) 17:31:55 E requests.exceptions.ReadTimeout: HTTPConnectionPool(host='localhost', port=8182): Read timed out. (read timeout=10) 17:31:55 17:31:55 ../.tox/tests_hybrid/lib/python3.10/site-packages/requests/adapters.py:532: ReadTimeout 17:31:55 =========================== short test summary info ============================ 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_024_get_ODUC4_service1 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_026_check_interface_ODUC4_xpdrc2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_027_check_otn_topo_links 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_028_check_otn_topo_tp 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_030_get_100GE_service_1 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_031_check_interface_100GE_CLIENT_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_032_check_interface_ODU4_CLIENT_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_033_check_interface_ODU4_NETWORK_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_034_check_ODU4_connection_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_035_check_interface_100GE_CLIENT_xpdrc2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_036_check_interface_ODU4_CLIENT_xpdrc2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_037_check_interface_ODU4_NETWORK_xpdrc2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_038_check_ODU4_connection_xpdrc2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_039_check_otn_topo_links 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_040_check_otn_topo_tp 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_042_get_100GE_service_2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_043_check_service_list 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_044_check_otn_topo_links 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_045_check_otn_topo_tp 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_046_delete_100GE_service_2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_047_delete_100GE_service_1 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_053_check_otn_topo_links 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_054_check_otn_topo_tp 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_056_get_100GE_service_3 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_057_check_service_list 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_058_check_interface_100GE_CLIENT_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_059_check_interface_ODU4_CLIENT_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_060_check_interface_ODU4_NETWORK_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_061_check_ODU4_connection_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_062_check_interface_100GE_CLIENT_xpdrc2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_063_check_interface_ODU4_CLIENT_xpdrc2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_064_check_interface_ODU4_NETWORK_xpdrc2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_065_check_ODU4_connection_xpdrc2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_066_check_otn_topo_links 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_067_check_otn_topo_tp 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_068_delete_100GE_service_3 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_070_check_service_list 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_071_check_no_interface_ODU4_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_075_get_no_service 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_076_check_no_interface_OTUC4_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_077_check_no_interface_OTSI_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_078_check_no_interface_OTSIG_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_079_getLinks_OtnTopology 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_080_check_openroadm_topo_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_082_connect_xpdra2_1_N1_to_roadma_PP2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_083_connect_roadma_PP2_to_xpdra2_1_N1 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_084_connect_xpdrc2_1_N1_to_roadmc_PP2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_085_connect_roadmc_PP2_to_xpdrc2_1_N1 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_087_get_400GE_service 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_088_check_xc1_roadma 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_089_check_topo_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_090_check_topo_roadma_SRG1 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_092_check_interface_400GE_CLIENT_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_093_check_interface_OTSI_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_094_check_interface_OTSI_GROUP_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_095_check_interface_OTUC4_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_096_check_interface_ODUC4_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_097_check_interface_ODUFLEX_xpdra2 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_098_delete_400GE_service 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_099_get_no_service 17:31:55 FAILED transportpce_tests/hybrid/test02_B100G_end2end.py::TransportPCEtesting::test_105_disconnect_xponders_from_roadm 17:31:55 61 failed, 48 passed in 1156.32s (0:19:16) 17:31:55 tests_hybrid: exit 1 (1341.43 seconds) /w/workspace/transportpce-tox-verify-transportpce-master/tests> ./launch_tests.sh hybrid pid=75018 17:31:56 tests_hybrid: FAIL ✖ in 22 minutes 32.56 seconds 17:31:56 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 17:32:04 buildlighty: freeze> python -m pip freeze --all 17:32:04 buildlighty: bcrypt==4.1.2,certifi==2024.2.2,cffi==1.16.0,charset-normalizer==3.3.2,cryptography==42.0.5,dict2xml==1.7.5,exceptiongroup==1.2.0,idna==3.6,iniconfig==2.0.0,lxml==5.1.0,netconf-client==3.0.0,packaging==23.2,paramiko==3.4.0,pip==24.0,pluggy==1.4.0,psutil==5.9.8,pycparser==2.21,PyNaCl==1.5.0,pytest==8.0.2,requests==2.31.0,setuptools==69.1.0,tomli==2.0.1,urllib3==2.2.1,wheel==0.42.0 17:32:04 buildlighty: commands[0] /w/workspace/transportpce-tox-verify-transportpce-master/lighty> ./build.sh 17:32:04 NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED 17:32:30 buildcontroller: OK (166.97=setup[8.62]+cmd[158.35] seconds) 17:32:30 testsPCE: OK (362.88=setup[86.42]+cmd[276.46] seconds) 17:32:30 sims121: OK (12.03=setup[9.35]+cmd[2.68] seconds) 17:32:30 build_karaf_tests121: OK (49.82=setup[9.20]+cmd[40.62] seconds) 17:32:30 tests121: FAIL code 1 (762.64=setup[12.46]+cmd[750.17] seconds) 17:32:30 sims221: OK (12.06=setup[8.93]+cmd[3.13] seconds) 17:32:30 build_karaf_tests221: OK (71.07=setup[12.98]+cmd[58.08] seconds) 17:32:30 tests_tapi: FAIL code 1 (2187.52=setup[7.58]+cmd[2179.94] seconds) 17:32:30 tests221: OK (2870.34=setup[6.67]+cmd[2863.66] seconds) 17:32:30 sims71: OK (16.36=setup[12.84]+cmd[3.52] seconds) 17:32:30 build_karaf_tests71: OK (78.41=setup[22.42]+cmd[55.99] seconds) 17:32:30 tests71: OK (480.55=setup[7.15]+cmd[1.22,472.18] seconds) 17:32:30 build_karaf_tests_hybrid: OK (69.03=setup[9.21]+cmd[59.82] seconds) 17:32:30 tests_hybrid: FAIL code 1 (1352.56=setup[7.09]+cmd[4.04,1341.43] seconds) 17:32:30 buildlighty: OK (34.29=setup[8.65]+cmd[25.63] seconds) 17:32:30 docs: OK (27.40=setup[25.64]+cmd[1.76] seconds) 17:32:30 docs-linkcheck: OK (28.41=setup[25.57]+cmd[2.85] seconds) 17:32:30 checkbashisms: OK (43.90=setup[2.74]+cmd[40.48,0.67] seconds) 17:32:30 pre-commit: OK (34.55=setup[3.60]+cmd[23.07,7.87] seconds) 17:32:30 pylint: OK (27.66=setup[3.69]+cmd[23.97] seconds) 17:32:30 evaluation failed :( (7175.50 seconds) 17:32:30 + tox_status=255 17:32:30 + echo '---> Completed tox runs' 17:32:30 ---> Completed tox runs 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/buildcontroller/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=buildcontroller 17:32:30 + cp -r .tox/buildcontroller/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/buildcontroller 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/build_karaf_tests121/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=build_karaf_tests121 17:32:30 + cp -r .tox/build_karaf_tests121/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests121 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/build_karaf_tests221/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=build_karaf_tests221 17:32:30 + cp -r .tox/build_karaf_tests221/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests221 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/build_karaf_tests71/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=build_karaf_tests71 17:32:30 + cp -r .tox/build_karaf_tests71/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests71 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/build_karaf_tests_hybrid/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=build_karaf_tests_hybrid 17:32:30 + cp -r .tox/build_karaf_tests_hybrid/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/build_karaf_tests_hybrid 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/buildlighty/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=buildlighty 17:32:30 + cp -r .tox/buildlighty/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/buildlighty 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/checkbashisms/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=checkbashisms 17:32:30 + cp -r .tox/checkbashisms/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/checkbashisms 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/docs-linkcheck/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=docs-linkcheck 17:32:30 + cp -r .tox/docs-linkcheck/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/docs-linkcheck 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/docs/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=docs 17:32:30 + cp -r .tox/docs/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/docs 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/pre-commit/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=pre-commit 17:32:30 + cp -r .tox/pre-commit/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/pre-commit 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/pylint/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=pylint 17:32:30 + cp -r .tox/pylint/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/pylint 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/sims121/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=sims121 17:32:30 + cp -r .tox/sims121/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/sims121 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/sims221/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=sims221 17:32:30 + cp -r .tox/sims221/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/sims221 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/sims71/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=sims71 17:32:30 + cp -r .tox/sims71/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/sims71 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/tests121/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=tests121 17:32:30 + cp -r .tox/tests121/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests121 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/tests221/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=tests221 17:32:30 + cp -r .tox/tests221/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests221 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/tests71/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=tests71 17:32:30 + cp -r .tox/tests71/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests71 17:32:30 + for i in .tox/*/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 ++ echo .tox/tests_hybrid/log 17:32:30 + tox_env=tests_hybrid 17:32:30 + cp -r .tox/tests_hybrid/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests_hybrid 17:32:30 + for i in .tox/*/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 ++ echo .tox/testsPCE/log 17:32:30 + tox_env=testsPCE 17:32:30 + cp -r .tox/testsPCE/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/testsPCE 17:32:30 + for i in .tox/*/log 17:32:30 ++ echo .tox/tests_tapi/log 17:32:30 ++ awk -F/ '{print $2}' 17:32:30 + tox_env=tests_tapi 17:32:30 + cp -r .tox/tests_tapi/log /w/workspace/transportpce-tox-verify-transportpce-master/archives/tox/tests_tapi 17:32:30 + DOC_DIR=docs/_build/html 17:32:30 + [[ -d docs/_build/html ]] 17:32:30 + echo '---> Archiving generated docs' 17:32:30 ---> Archiving generated docs 17:32:30 + mv docs/_build/html /w/workspace/transportpce-tox-verify-transportpce-master/archives/docs 17:32:30 + echo '---> tox-run.sh ends' 17:32:30 ---> tox-run.sh ends 17:32:30 + test 255 -eq 0 17:32:30 + exit 255 17:32:30 Build step 'Execute shell' marked build as failure 17:32:30 $ ssh-agent -k 17:32:30 unset SSH_AUTH_SOCK; 17:32:30 unset SSH_AGENT_PID; 17:32:30 echo Agent pid 5561 killed; 17:32:30 [ssh-agent] Stopped. 17:32:30 [PostBuildScript] - [INFO] Executing post build scripts. 17:32:30 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins6093949010342562589.sh 17:32:30 ---> sysstat.sh 17:32:31 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins2235079453961776794.sh 17:32:31 ---> package-listing.sh 17:32:31 ++ facter osfamily 17:32:31 ++ tr '[:upper:]' '[:lower:]' 17:32:31 + OS_FAMILY=redhat 17:32:31 + workspace=/w/workspace/transportpce-tox-verify-transportpce-master 17:32:31 + START_PACKAGES=/tmp/packages_start.txt 17:32:31 + END_PACKAGES=/tmp/packages_end.txt 17:32:31 + DIFF_PACKAGES=/tmp/packages_diff.txt 17:32:31 + PACKAGES=/tmp/packages_start.txt 17:32:31 + '[' /w/workspace/transportpce-tox-verify-transportpce-master ']' 17:32:31 + PACKAGES=/tmp/packages_end.txt 17:32:31 + case "${OS_FAMILY}" in 17:32:31 + rpm -qa 17:32:31 + sort 17:32:31 + '[' -f /tmp/packages_start.txt ']' 17:32:31 + '[' -f /tmp/packages_end.txt ']' 17:32:31 + diff /tmp/packages_start.txt /tmp/packages_end.txt 17:32:32 + true 17:32:32 + '[' /w/workspace/transportpce-tox-verify-transportpce-master ']' 17:32:32 + mkdir -p /w/workspace/transportpce-tox-verify-transportpce-master/archives/ 17:32:32 + cp -f /tmp/packages_diff.txt /tmp/packages_end.txt /tmp/packages_start.txt /w/workspace/transportpce-tox-verify-transportpce-master/archives/ 17:32:32 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins16475729869437382429.sh 17:32:32 ---> capture-instance-metadata.sh 17:32:32 Setup pyenv: 17:32:32 system 17:32:32 3.8.13 17:32:32 3.9.13 17:32:32 * 3.10.6 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 17:32:32 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-EKjs from file:/tmp/.os_lf_venv 17:32:34 lf-activate-venv(): INFO: Installing: lftools 17:32:54 lf-activate-venv(): INFO: Adding /tmp/venv-EKjs/bin to PATH 17:32:54 INFO: Running in OpenStack, capturing instance metadata 17:32:54 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins13425198999453908294.sh 17:32:54 provisioning config files... 17:32:55 Could not find credentials [logs] for transportpce-tox-verify-transportpce-master #1449 17:32:55 copy managed file [jenkins-log-archives-settings] to file:/w/workspace/transportpce-tox-verify-transportpce-master@tmp/config12140100453126464698tmp 17:32:55 Regular expression run condition: Expression=[^.*logs-s3.*], Label=[odl-logs-s3-cloudfront-index] 17:32:55 Run condition [Regular expression match] enabling perform for step [Provide Configuration files] 17:32:55 provisioning config files... 17:32:55 copy managed file [jenkins-s3-log-ship] to file:/home/jenkins/.aws/credentials 17:32:55 [EnvInject] - Injecting environment variables from a build step. 17:32:55 [EnvInject] - Injecting as environment variables the properties content 17:32:55 SERVER_ID=logs 17:32:55 17:32:55 [EnvInject] - Variables injected successfully. 17:32:55 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins7388012369077522036.sh 17:32:55 ---> create-netrc.sh 17:32:55 WARN: Log server credential not found. 17:32:55 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins11124939568638314729.sh 17:32:55 ---> python-tools-install.sh 17:32:55 Setup pyenv: 17:32:55 system 17:32:55 3.8.13 17:32:55 3.9.13 17:32:55 * 3.10.6 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 17:32:55 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-EKjs from file:/tmp/.os_lf_venv 17:32:57 lf-activate-venv(): INFO: Installing: lftools 17:33:16 lf-activate-venv(): INFO: Adding /tmp/venv-EKjs/bin to PATH 17:33:16 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins12354778306223669613.sh 17:33:16 ---> sudo-logs.sh 17:33:16 Archiving 'sudo' log.. 17:33:16 [transportpce-tox-verify-transportpce-master] $ /bin/bash /tmp/jenkins11392562425344708624.sh 17:33:16 ---> job-cost.sh 17:33:16 Setup pyenv: 17:33:16 system 17:33:16 3.8.13 17:33:16 3.9.13 17:33:16 * 3.10.6 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 17:33:16 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-EKjs from file:/tmp/.os_lf_venv 17:33:18 lf-activate-venv(): INFO: Installing: zipp==1.1.0 python-openstackclient urllib3~=1.26.15 17:33:26 lf-activate-venv(): INFO: Adding /tmp/venv-EKjs/bin to PATH 17:33:26 INFO: No Stack... 17:33:26 INFO: Retrieving Pricing Info for: v3-standard-4 17:33:27 INFO: Archiving Costs 17:33:27 [transportpce-tox-verify-transportpce-master] $ /bin/bash -l /tmp/jenkins17466299758089342533.sh 17:33:27 ---> logs-deploy.sh 17:33:27 Setup pyenv: 17:33:27 system 17:33:27 3.8.13 17:33:27 3.9.13 17:33:27 * 3.10.6 (set by /w/workspace/transportpce-tox-verify-transportpce-master/.python-version) 17:33:27 lf-activate-venv(): INFO: Reuse venv:/tmp/venv-EKjs from file:/tmp/.os_lf_venv 17:33:29 lf-activate-venv(): INFO: Installing: lftools 17:33:39 lf-activate-venv(): INFO: Adding /tmp/venv-EKjs/bin to PATH 17:33:39 WARNING: Nexus logging server not set 17:33:39 INFO: S3 path logs/releng/vex-yul-odl-jenkins-1/transportpce-tox-verify-transportpce-master/1449/ 17:33:39 INFO: archiving logs to S3 17:33:42 ---> uname -a: 17:33:42 Linux prd-centos8-builder-4c-16g-175.novalocal 4.18.0-536.el8.x86_64 #1 SMP Thu Jan 18 15:15:29 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux 17:33:42 17:33:42 17:33:42 ---> lscpu: 17:33:42 Architecture: x86_64 17:33:42 CPU op-mode(s): 32-bit, 64-bit 17:33:42 Byte Order: Little Endian 17:33:42 CPU(s): 4 17:33:42 On-line CPU(s) list: 0-3 17:33:42 Thread(s) per core: 1 17:33:42 Core(s) per socket: 1 17:33:42 Socket(s): 4 17:33:42 NUMA node(s): 1 17:33:42 Vendor ID: AuthenticAMD 17:33:42 CPU family: 23 17:33:42 Model: 49 17:33:42 Model name: AMD EPYC-Rome Processor 17:33:42 Stepping: 0 17:33:42 CPU MHz: 2799.998 17:33:42 BogoMIPS: 5599.99 17:33:42 Virtualization: AMD-V 17:33:42 Hypervisor vendor: KVM 17:33:42 Virtualization type: full 17:33:42 L1d cache: 32K 17:33:42 L1i cache: 32K 17:33:42 L2 cache: 512K 17:33:42 L3 cache: 16384K 17:33:42 NUMA node0 CPU(s): 0-3 17:33:42 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 xsaves clzero xsaveerptr wbnoinvd arat npt nrip_save umip rdpid arch_capabilities 17:33:42 17:33:42 17:33:42 ---> nproc: 17:33:42 4 17:33:42 17:33:42 17:33:42 ---> df -h: 17:33:42 Filesystem Size Used Avail Use% Mounted on 17:33:42 devtmpfs 7.7G 0 7.7G 0% /dev 17:33:42 tmpfs 7.7G 0 7.7G 0% /dev/shm 17:33:42 tmpfs 7.7G 17M 7.7G 1% /run 17:33:42 tmpfs 7.7G 0 7.7G 0% /sys/fs/cgroup 17:33:42 /dev/vda1 80G 17G 64G 22% / 17:33:42 tmpfs 1.6G 0 1.6G 0% /run/user/1001 17:33:42 17:33:42 17:33:42 ---> free -m: 17:33:42 total used free shared buff/cache available 17:33:42 Mem: 15761 953 4906 19 9901 14458 17:33:42 Swap: 1023 1 1022 17:33:42 17:33:42 17:33:42 ---> ip addr: 17:33:42 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 17:33:42 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 17:33:42 inet 127.0.0.1/8 scope host lo 17:33:42 valid_lft forever preferred_lft forever 17:33:42 inet6 ::1/128 scope host 17:33:42 valid_lft forever preferred_lft forever 17:33:42 2: eth0: mtu 1458 qdisc mq state UP group default qlen 1000 17:33:42 link/ether fa:16:3e:ef:80:26 brd ff:ff:ff:ff:ff:ff 17:33:42 altname enp0s3 17:33:42 altname ens3 17:33:42 inet 10.30.171.115/23 brd 10.30.171.255 scope global dynamic noprefixroute eth0 17:33:42 valid_lft 79027sec preferred_lft 79027sec 17:33:42 inet6 fe80::f816:3eff:feef:8026/64 scope link 17:33:42 valid_lft forever preferred_lft forever 17:33:42 3: docker0: mtu 1458 qdisc noqueue state DOWN group default 17:33:42 link/ether 02:42:21:54:30:e8 brd ff:ff:ff:ff:ff:ff 17:33:42 inet 10.250.0.254/24 brd 10.250.0.255 scope global docker0 17:33:42 valid_lft forever preferred_lft forever 17:33:42 17:33:42 17:33:42 ---> sar -b -r -n DEV: 17:33:42 Linux 4.18.0-536.el8.x86_64 (centos-stream-8-builder-37d44b9c-5feb-4b6f-a60e-fe1022bf91ff.nov) 02/27/2024 _x86_64_ (4 CPU) 17:33:42 17:33:42 15:30:44 LINUX RESTART (4 CPU) 17:33:42 17:33:42 03:31:03 PM tps rtps wtps bread/s bwrtn/s 17:33:42 03:32:01 PM 182.74 35.68 147.06 7694.38 35899.12 17:33:42 03:33:01 PM 126.91 2.80 124.11 107.03 10078.71 17:33:42 03:34:01 PM 380.15 69.90 310.24 4619.59 45605.66 17:33:42 03:35:01 PM 269.23 87.22 182.01 1855.38 15970.23 17:33:42 03:36:01 PM 221.62 57.70 163.93 570.67 33796.52 17:33:42 03:37:01 PM 281.84 0.00 281.84 0.00 120775.01 17:33:42 03:38:01 PM 186.65 2.08 184.57 165.65 110564.08 17:33:42 03:39:01 PM 86.95 0.83 86.11 73.53 6421.11 17:33:42 03:40:01 PM 74.32 3.18 71.14 630.78 971.17 17:33:42 03:41:01 PM 67.55 0.95 66.60 123.27 1029.34 17:33:42 03:42:01 PM 55.84 0.75 55.09 183.89 1233.95 17:33:42 03:43:01 PM 68.28 0.23 68.04 8.13 9528.74 17:33:42 03:44:01 PM 15.25 0.00 15.25 0.00 135.51 17:33:42 03:45:01 PM 7.51 0.00 7.51 0.00 54.45 17:33:42 03:46:01 PM 30.59 0.70 29.90 8.67 413.66 17:33:42 03:47:01 PM 19.29 0.00 19.29 0.00 396.27 17:33:42 03:48:01 PM 2.90 0.00 2.90 0.00 129.94 17:33:42 03:49:01 PM 2.47 0.00 2.47 0.00 38.80 17:33:42 03:50:01 PM 7.31 0.00 7.31 0.00 67.63 17:33:42 03:51:01 PM 0.72 0.00 0.72 0.00 12.78 17:33:42 03:52:02 PM 1.25 0.22 1.03 18.66 17.01 17:33:42 03:53:01 PM 1.05 0.00 1.05 0.00 112.64 17:33:42 03:54:01 PM 0.88 0.00 0.88 0.00 11.25 17:33:42 03:55:01 PM 0.90 0.00 0.90 0.00 12.50 17:33:42 03:56:01 PM 1.20 0.00 1.20 0.00 19.40 17:33:42 03:57:01 PM 0.85 0.00 0.85 0.00 13.31 17:33:42 03:58:01 PM 0.33 0.00 0.33 0.00 5.30 17:33:42 03:59:01 PM 0.38 0.00 0.38 0.00 5.90 17:33:42 04:00:01 PM 0.92 0.07 0.85 3.07 12.15 17:33:42 04:01:01 PM 1.32 0.02 1.30 0.13 17.71 17:33:42 04:02:01 PM 1.33 0.13 1.20 2.93 18.64 17:33:42 04:03:01 PM 0.43 0.00 0.43 0.00 7.87 17:33:42 04:04:01 PM 0.33 0.00 0.33 0.00 4.63 17:33:42 04:05:01 PM 0.68 0.00 0.68 0.00 9.70 17:33:42 04:06:01 PM 0.45 0.00 0.45 0.00 7.08 17:33:42 04:07:01 PM 0.32 0.00 0.32 0.00 6.25 17:33:42 04:08:01 PM 0.60 0.00 0.60 0.00 7.93 17:33:42 04:09:01 PM 0.35 0.00 0.35 0.00 5.71 17:33:42 04:10:01 PM 0.30 0.00 0.30 0.00 4.12 17:33:42 04:11:01 PM 1.40 0.00 1.40 0.00 14.13 17:33:42 04:12:01 PM 1.72 0.00 1.72 0.00 18.71 17:33:42 04:13:01 PM 1.98 0.00 1.98 0.00 20.93 17:33:42 04:14:01 PM 37.25 0.65 36.60 22.52 1638.20 17:33:42 04:15:01 PM 69.18 0.13 69.05 1.60 10062.69 17:33:42 04:16:01 PM 41.37 0.00 41.37 0.00 384.69 17:33:42 04:17:01 PM 10.66 0.00 10.66 0.00 63.12 17:33:42 04:18:01 PM 26.52 0.00 26.52 0.00 313.50 17:33:42 04:19:01 PM 40.89 0.00 40.89 0.00 347.99 17:33:42 04:20:01 PM 14.60 0.00 14.60 0.00 80.19 17:33:42 04:21:01 PM 54.73 0.00 54.73 0.00 586.20 17:33:42 04:22:01 PM 30.56 0.00 30.56 0.00 642.22 17:33:42 04:23:01 PM 61.88 0.00 61.88 0.00 3013.55 17:33:42 04:24:01 PM 55.96 0.00 55.96 0.00 931.29 17:33:42 04:25:01 PM 31.84 0.00 31.84 0.00 280.82 17:33:42 04:26:01 PM 21.97 0.00 21.97 0.00 253.76 17:33:42 04:27:01 PM 32.27 0.00 32.27 0.00 486.42 17:33:42 04:28:01 PM 23.85 0.00 23.85 0.00 331.93 17:33:42 04:29:01 PM 16.21 0.00 16.21 0.00 229.90 17:33:42 04:30:01 PM 87.62 0.02 87.60 0.13 1059.05 17:33:42 04:31:01 PM 9.71 0.00 9.71 0.00 152.60 17:33:42 04:32:01 PM 50.90 0.32 50.58 6.53 567.51 17:33:42 04:33:01 PM 23.78 0.00 23.78 0.00 423.76 17:33:42 04:34:02 PM 40.08 0.00 40.08 0.00 325.00 17:33:42 04:35:01 PM 17.74 0.00 17.74 0.00 112.06 17:33:42 04:36:01 PM 27.55 0.00 27.55 0.00 455.15 17:33:42 04:37:01 PM 42.09 0.00 42.09 0.00 349.13 17:33:42 04:38:01 PM 3.50 0.00 3.50 0.00 43.40 17:33:42 04:39:01 PM 8.67 0.00 8.67 0.00 59.71 17:33:42 04:40:01 PM 9.13 0.00 9.13 0.00 56.69 17:33:42 04:41:01 PM 14.08 2.57 11.51 154.88 135.45 17:33:42 04:42:01 PM 5.78 0.00 5.78 0.00 47.04 17:33:42 04:43:01 PM 7.70 0.00 7.70 0.00 51.08 17:33:42 04:44:01 PM 26.30 0.00 26.30 0.00 281.73 17:33:42 04:45:01 PM 47.73 0.00 47.73 0.00 712.23 17:33:42 04:46:01 PM 10.96 0.00 10.96 0.00 93.82 17:33:42 04:47:01 PM 24.96 0.00 24.96 0.00 151.59 17:33:42 04:48:01 PM 11.93 0.00 11.93 0.00 89.05 17:33:42 04:49:01 PM 15.44 0.00 15.44 0.00 101.90 17:33:42 04:50:01 PM 17.73 0.00 17.73 0.00 104.83 17:33:42 04:51:01 PM 29.09 0.00 29.09 0.00 175.31 17:33:42 04:52:01 PM 52.25 0.00 52.25 0.00 942.13 17:33:42 04:53:01 PM 12.19 0.00 12.19 0.00 102.18 17:33:42 04:54:01 PM 19.03 0.00 19.03 0.00 113.75 17:33:42 04:55:01 PM 10.95 0.00 10.95 0.00 84.91 17:33:42 04:56:01 PM 9.48 0.00 9.48 0.00 73.94 17:33:42 04:57:01 PM 15.68 0.00 15.68 0.00 93.20 17:33:42 04:58:01 PM 7.88 0.00 7.88 0.00 71.61 17:33:42 04:59:01 PM 8.40 0.00 8.40 0.00 63.59 17:33:42 05:00:01 PM 23.26 0.00 23.26 0.00 780.21 17:33:42 05:01:01 PM 35.29 0.00 35.29 0.00 352.26 17:33:42 05:02:01 PM 18.02 0.00 18.02 0.00 112.24 17:33:42 05:03:01 PM 8.91 0.00 8.91 0.00 63.67 17:33:42 05:04:01 PM 9.81 0.00 9.81 0.00 70.83 17:33:42 05:05:01 PM 6.20 0.00 6.20 0.00 47.90 17:33:42 05:06:01 PM 4.55 0.00 4.55 0.00 43.69 17:33:42 05:07:01 PM 10.76 0.00 10.76 0.00 78.66 17:33:42 05:08:01 PM 4.87 0.00 4.87 0.00 43.46 17:33:42 05:09:01 PM 17.08 0.02 17.06 0.67 110.25 17:33:42 05:10:01 PM 54.13 0.00 54.13 0.00 3974.84 17:33:42 05:11:01 PM 67.81 0.00 67.81 0.00 10933.94 17:33:42 05:12:01 PM 11.31 0.00 11.31 0.00 152.25 17:33:42 05:13:01 PM 32.81 0.00 32.81 0.00 479.35 17:33:42 05:14:01 PM 20.92 0.00 20.92 0.00 236.13 17:33:42 05:15:01 PM 6.48 0.00 6.48 0.00 56.88 17:33:42 05:16:01 PM 1.23 0.00 1.23 0.00 23.18 17:33:42 05:17:01 PM 0.37 0.00 0.37 0.00 8.85 17:33:42 05:18:02 PM 0.53 0.00 0.53 0.00 9.05 17:33:42 05:19:01 PM 0.44 0.00 0.44 0.00 8.71 17:33:42 05:20:01 PM 2.07 0.00 2.07 0.00 119.23 17:33:42 05:21:01 PM 1.97 0.00 1.97 0.00 27.18 17:33:42 05:22:01 PM 2.12 0.00 2.12 0.00 24.64 17:33:42 05:23:01 PM 1.72 0.00 1.72 0.00 18.23 17:33:42 05:24:01 PM 2.03 0.00 2.03 0.00 26.58 17:33:42 05:25:01 PM 1.90 0.00 1.90 0.00 20.53 17:33:42 05:26:01 PM 2.00 0.00 2.00 0.00 23.86 17:33:42 05:27:01 PM 2.08 0.00 2.08 0.00 23.51 17:33:42 05:28:01 PM 0.43 0.00 0.43 0.00 6.48 17:33:42 05:29:01 PM 0.58 0.00 0.58 0.00 7.16 17:33:42 05:30:01 PM 0.45 0.00 0.45 0.00 7.65 17:33:42 05:31:01 PM 0.48 0.00 0.48 0.00 5.88 17:33:42 05:32:01 PM 2.37 0.00 2.37 0.00 43.47 17:33:42 05:33:01 PM 110.31 13.43 96.88 1685.45 15298.90 17:33:42 Average: 31.21 2.28 28.93 145.07 3711.56 17:33:42 17:33:42 03:31:03 PM kbmemfree kbavail kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty 17:33:42 03:32:01 PM 13336860 15077340 2802588 17.36 2688 1964580 1188152 6.91 207104 2277220 84284 17:33:42 03:33:01 PM 12735048 14865948 3404400 21.09 2688 2332652 1512836 8.80 424144 2573912 250100 17:33:42 03:34:01 PM 11118040 14615680 5021408 31.11 2688 3639532 1591568 9.26 670124 3795560 286320 17:33:42 03:35:01 PM 8495832 12463828 7643616 47.36 2688 4079616 3644356 21.20 742564 6284004 259588 17:33:42 03:36:01 PM 8100508 13927280 8038940 49.81 2688 5897504 2234596 13.00 1214372 6150444 1250884 17:33:42 03:37:01 PM 4256008 12540968 11883440 73.63 2688 8302472 3718424 21.63 1919076 9183828 804272 17:33:42 03:38:01 PM 2284696 12145856 13854752 85.84 2688 9858856 4856124 28.25 2532844 10499780 150844 17:33:42 03:39:01 PM 236756 8448604 15902692 98.53 2640 8213008 8530244 49.63 2589256 12475900 1184 17:33:42 03:40:01 PM 153564 7942500 15985884 99.05 2640 7789848 9394788 54.66 2718392 12424748 456 17:33:42 03:41:01 PM 6257396 13758032 9882052 61.23 2636 7501800 2404616 13.99 2693488 6377880 556 17:33:42 03:42:01 PM 3490012 11083748 12649436 78.38 2636 7589604 5574016 32.43 2708260 9107900 81520 17:33:42 03:43:01 PM 939532 8807472 15199916 94.18 2636 7859912 7992076 46.50 2758724 11587524 548 17:33:42 03:44:01 PM 735528 8604248 15403920 95.44 2636 7860564 8041116 46.78 2759244 11789232 44 17:33:42 03:45:01 PM 704368 8573248 15435080 95.64 2636 7860724 8056908 46.88 2759276 11820356 180 17:33:42 03:46:01 PM 3230244 11099804 12909204 79.99 2636 7861356 5513616 32.08 2767836 9299516 428 17:33:42 03:47:01 PM 995692 8865580 15143756 93.83 2636 7861512 8089872 47.07 2767920 11524552 208 17:33:42 03:48:01 PM 1005260 8875244 15134188 93.77 2636 7861584 8026580 46.70 2767928 11514840 128 17:33:42 03:49:01 PM 1013476 8883512 15125972 93.72 2636 7861640 8042332 46.79 2767960 11506656 96 17:33:42 03:50:01 PM 822004 8692120 15317444 94.91 2636 7861688 8065824 46.93 2767964 11697600 124 17:33:42 03:51:01 PM 1024252 8894488 15115196 93.65 2636 7861736 7821764 45.51 2767968 11494940 116 17:33:42 03:52:02 PM 1023000 8893864 15116448 93.66 2636 7862348 7838016 45.60 2768536 11496020 92 17:33:42 03:53:01 PM 1014828 8885768 15124620 93.71 2636 7862404 7838016 45.60 2768532 11504364 72 17:33:42 03:54:01 PM 971120 8842120 15168328 93.98 2636 7862452 7856304 45.71 2768536 11546856 68 17:33:42 03:55:01 PM 3389168 11259996 12750280 79.00 2636 7862344 5222780 30.39 2866928 9043892 44 17:33:42 03:56:01 PM 3389300 11260148 12750148 79.00 2636 7862360 5222780 30.39 2866928 9043932 36 17:33:42 03:57:01 PM 3336308 11207184 12803140 79.33 2636 7862392 5222780 30.39 2866932 9097020 52 17:33:42 03:58:01 PM 3336812 11207712 12802636 79.33 2636 7862412 5222780 30.39 2866932 9096520 40 17:33:42 03:59:01 PM 3315904 11186840 12823544 79.45 2636 7862448 5222780 30.39 2866932 9117520 52 17:33:42 04:00:01 PM 3296636 11167696 12842812 79.57 2636 7862580 5263196 30.62 2867240 9135944 76 17:33:42 04:01:01 PM 3260412 11131544 12879036 79.80 2636 7862660 5263196 30.62 2867292 9171620 96 17:33:42 04:02:01 PM 3256352 11127660 12883096 79.82 2636 7862836 5279072 30.71 2867348 9175940 60 17:33:42 04:03:01 PM 3247584 11118920 12891864 79.88 2636 7862864 5279072 30.71 2867348 9184924 36 17:33:42 04:04:01 PM 3246184 11117544 12893264 79.89 2636 7862888 5294824 30.81 2867348 9186164 48 17:33:42 04:05:01 PM 3230304 11101700 12909144 79.99 2636 7862924 5294824 30.81 2867352 9202268 40 17:33:42 04:06:01 PM 3226324 11097744 12913124 80.01 2636 7862944 5294824 30.81 2867352 9206588 52 17:33:42 04:07:01 PM 3231456 11102916 12907992 79.98 2636 7862988 5294824 30.81 2867352 9201400 44 17:33:42 04:08:01 PM 3224904 11096384 12914544 80.02 2636 7863008 5294824 30.81 2867356 9207664 40 17:33:42 04:09:01 PM 3222892 11094400 12916556 80.03 2636 7863032 5294824 30.81 2867356 9209420 44 17:33:42 04:10:01 PM 3222944 11094472 12916504 80.03 2636 7863056 5297284 30.82 2867356 9209604 40 17:33:42 04:11:01 PM 3220632 11092188 12918816 80.04 2636 7863080 5297284 30.82 2867364 9211900 24 17:33:42 04:12:01 PM 3220752 11092332 12918696 80.04 2636 7863104 5297284 30.82 2867364 9211776 32 17:33:42 04:13:01 PM 3220528 11092144 12918920 80.05 2636 7863140 5297284 30.82 2867364 9212104 24 17:33:42 04:14:01 PM 5027916 13311336 11111532 68.85 2636 8265064 3068160 17.85 2925400 7345192 267816 17:33:42 04:15:01 PM 4405444 12690596 11734004 72.70 2636 8266536 3379248 19.66 3064416 7823940 408 17:33:42 04:16:01 PM 4566484 12851760 11572964 71.71 2636 8266648 3167948 18.43 3068272 7658172 84 17:33:42 04:17:01 PM 4564032 12849392 11575416 71.72 2636 8266732 3167948 18.43 3068292 7661372 60 17:33:42 04:18:01 PM 3990004 12275712 12149444 75.28 2636 8267060 3779488 21.99 3079708 8221796 520 17:33:42 04:19:01 PM 3765836 12051956 12373612 76.67 2636 8267284 3879712 22.57 3079872 8443640 108 17:33:42 04:20:01 PM 3757840 12044148 12381608 76.72 2636 8267420 3881720 22.58 3079880 8451976 168 17:33:42 04:21:01 PM 4527244 12813764 11612204 71.95 2636 8267672 3188668 18.55 3080212 7685348 136 17:33:42 04:22:01 PM 3876076 12237900 12263372 75.98 2636 8337824 3989068 23.21 3080736 8327776 70060 17:33:42 04:23:01 PM 5960696 14322776 10178752 63.07 2636 8337872 1751076 10.19 3084140 6244996 156 17:33:42 04:24:01 PM 4132812 12495636 12006636 74.39 2636 8338368 3870100 22.52 3092616 8056936 288 17:33:42 04:25:01 PM 2860932 11224424 13278516 82.27 2636 8338544 5288712 30.77 3092652 9318828 88 17:33:42 04:26:01 PM 5943156 14306372 10196292 63.18 2636 8338560 1776480 10.34 3093544 6253020 236 17:33:42 04:27:01 PM 5993836 14357328 10145612 62.86 2636 8338828 1714196 9.97 3094012 6201936 228 17:33:42 04:28:01 PM 4710260 13074156 11429188 70.82 2636 8339024 3066252 17.84 3094036 7478672 32 17:33:42 04:29:01 PM 5536380 13900280 10603068 65.70 2636 8339104 2209120 12.85 3094256 6655836 224 17:33:42 04:30:01 PM 4725440 13090392 11414008 70.72 2636 8339672 3097912 18.02 3094364 7462600 192 17:33:42 04:31:01 PM 6212564 14577436 9926884 61.51 2636 8339684 1527836 8.89 3094572 5984000 164 17:33:42 04:32:01 PM 4026988 12393000 12112460 75.05 2636 8340304 3840956 22.35 3094716 8155420 48 17:33:42 04:33:01 PM 4382212 12748300 11757236 72.85 2636 8340500 4075436 23.71 3094788 7804640 440 17:33:42 04:34:02 PM 2446268 10813388 13693180 84.84 2636 8340852 5712156 33.23 3094828 9727960 200 17:33:42 04:35:01 PM 2370712 10738132 13768736 85.31 2636 8341112 5727908 33.33 3094828 9804120 132 17:33:42 04:36:01 PM 4615604 12982988 11523844 71.40 2636 8341336 3263664 18.99 3094840 7573264 368 17:33:42 04:37:01 PM 2774020 11142404 13365428 82.81 2636 8341792 5284340 30.74 3094892 9399844 388 17:33:42 04:38:01 PM 2728984 11097444 13410464 83.09 2636 8341868 5284340 30.74 3094896 9445228 44 17:33:42 04:39:01 PM 2562624 10931316 13576824 84.12 2636 8342076 5284340 30.74 3094892 9610816 196 17:33:42 04:40:01 PM 2498076 10866996 13641372 84.52 2636 8342268 5328428 31.00 3094892 9674724 216 17:33:42 04:41:01 PM 2480368 10854408 13659080 84.63 2636 8347284 5318912 30.95 3099208 9688276 28 17:33:42 04:42:01 PM 2473940 10848160 13665508 84.67 2636 8347460 5318912 30.95 3099216 9694632 40 17:33:42 04:43:01 PM 2464604 10838944 13674844 84.73 2636 8347616 5318912 30.95 3099216 9703836 148 17:33:42 04:44:01 PM 5929988 14304312 10209460 63.26 2636 8347824 2300648 13.39 3099200 6259124 212 17:33:42 04:45:01 PM 2806104 11181188 13333344 82.61 2636 8348148 5341064 31.07 3099260 9363240 420 17:33:42 04:46:01 PM 2783692 11159108 13355756 82.75 2636 8348460 5341064 31.07 3099260 9385184 16 17:33:42 04:47:01 PM 2690220 11066308 13449228 83.33 2636 8349100 5356860 31.17 3099260 9478500 32 17:33:42 04:48:01 PM 2541812 10918300 13597636 84.25 2636 8349464 5356860 31.17 3099260 9626360 80 17:33:42 04:49:01 PM 2540368 10917284 13599080 84.26 2636 8349888 5356860 31.17 3099260 9627564 28 17:33:42 04:50:01 PM 2519876 10897464 13619572 84.39 2636 8350508 5390012 31.36 3099260 9648156 404 17:33:42 04:51:01 PM 2436492 10814896 13702956 84.90 2636 8351276 5390012 31.36 3099260 9731224 340 17:33:42 04:52:01 PM 1983228 10360956 14156220 87.71 2636 8350520 6511580 37.88 3099336 10184056 256 17:33:42 04:53:01 PM 1736960 10115372 14402488 89.24 2636 8350920 6692984 38.94 3099364 10426468 72 17:33:42 04:54:01 PM 1511864 9890820 14627584 90.63 2636 8351320 6741864 39.22 3099364 10650024 92 17:33:42 04:55:01 PM 1326260 9705728 14813188 91.78 2636 8351756 6857996 39.90 3099364 10834788 252 17:33:42 04:56:01 PM 1134680 9514336 15004768 92.97 2636 8351912 6857996 39.90 3099364 11025700 40 17:33:42 04:57:01 PM 1004536 9384588 15134912 93.78 2636 8352272 6873772 39.99 3099364 11155264 304 17:33:42 04:58:01 PM 999528 9379936 15139920 93.81 2636 8352584 6873772 39.99 3099364 11161716 44 17:33:42 04:59:01 PM 989948 9370600 15149500 93.87 2636 8352812 6873772 39.99 3099364 11171124 32 17:33:42 05:00:01 PM 2250752 10630844 13888696 86.05 2636 8352420 7074400 41.16 3099380 9917784 292 17:33:42 05:01:01 PM 987804 9368584 15151644 93.88 2636 8352876 7402068 43.07 3099400 11173196 88 17:33:42 05:02:01 PM 774500 9156016 15364948 95.20 2636 8353444 7465636 43.44 3099428 11385148 308 17:33:42 05:03:01 PM 678072 9059864 15461376 95.80 2636 8353672 7482408 43.53 3099424 11480988 92 17:33:42 05:04:01 PM 531036 8913056 15608412 96.71 2636 8353880 7482408 43.53 3099424 11628768 200 17:33:42 05:05:01 PM 435368 8817500 15704080 97.30 2636 8353992 7498548 43.63 3099424 11723328 64 17:33:42 05:06:01 PM 385556 8767860 15753892 97.61 2636 8354148 7498548 43.63 3099424 11773540 36 17:33:42 05:07:01 PM 377680 8760272 15761768 97.66 2636 8354424 7498548 43.63 3099424 11781528 36 17:33:42 05:08:01 PM 375524 8758220 15763924 97.67 2636 8354524 7498548 43.63 3099424 11783332 36 17:33:42 05:09:01 PM 336684 8719872 15802764 97.91 2636 8354972 7530228 43.81 3099456 11821060 56 17:33:42 05:10:01 PM 4093688 12934152 12045760 74.64 2636 8799896 3142992 18.29 3131616 8033496 309124 17:33:42 05:11:01 PM 1192564 10035724 14946884 92.61 2636 8802268 5822040 33.87 3188832 10860984 2160 17:33:42 05:12:01 PM 1133020 9976276 15006428 92.98 2636 8802364 5853764 34.06 3189996 10919632 96 17:33:42 05:13:01 PM 4035340 12878884 12104108 75.00 2636 8802728 3326556 19.35 3310888 7909764 628 17:33:42 05:14:01 PM 1323900 10168008 14815548 91.80 2636 8803128 5676160 33.02 3315768 10603476 208 17:33:42 05:15:01 PM 1126372 9970984 15013076 93.02 2636 8803472 5771824 33.58 3317048 10800424 44 17:33:42 05:16:01 PM 1118828 9963484 15020620 93.07 2636 8803516 5788004 33.67 3317056 10806884 92 17:33:42 05:17:01 PM 1109816 9954552 15029632 93.12 2636 8803592 5788004 33.67 3317072 10816080 112 17:33:42 05:18:02 PM 1464096 10308856 14675352 90.93 2636 8803612 5442116 31.66 3317072 10461728 76 17:33:42 05:19:01 PM 1440092 10285036 14699356 91.08 2636 8803784 5458008 31.75 3317332 10484616 248 17:33:42 05:20:01 PM 1431108 10276096 14708340 91.13 2636 8803812 5478316 31.87 3317336 10493916 96 17:33:42 05:21:01 PM 1431440 10276500 14708008 91.13 2636 8803856 5478316 31.87 3317340 10493576 36 17:33:42 05:22:01 PM 1429416 10274528 14710032 91.14 2636 8803916 5478316 31.87 3317340 10495372 4 17:33:42 05:23:01 PM 1426524 10271668 14712924 91.16 2636 8803948 5478316 31.87 3317344 10498628 60 17:33:42 05:24:01 PM 1423708 10268936 14715740 91.18 2636 8804032 5478316 31.87 3317344 10501284 36 17:33:42 05:25:01 PM 1417248 10262496 14722200 91.22 2636 8804056 5478316 31.87 3317344 10508164 36 17:33:42 05:26:01 PM 1415368 10260704 14724080 91.23 2636 8804144 5478316 31.87 3317348 10510348 28 17:33:42 05:27:01 PM 1415976 10261336 14723472 91.23 2636 8804164 5478316 31.87 3317348 10509488 36 17:33:42 05:28:01 PM 1416140 10261540 14723308 91.23 2636 8804204 5478316 31.87 3317348 10509552 44 17:33:42 05:29:01 PM 1415212 10260640 14724236 91.23 2636 8804236 5478316 31.87 3317352 10510436 60 17:33:42 05:30:01 PM 1415188 10260668 14724260 91.23 2636 8804284 5475780 31.86 3317352 10510404 32 17:33:42 05:31:01 PM 1415220 10260724 14724228 91.23 2636 8804304 5475780 31.86 3317352 10510328 36 17:33:42 05:32:01 PM 5914024 14793360 10225424 63.36 2636 8836216 1251252 7.28 3326376 6021192 32128 17:33:42 05:33:01 PM 5103560 14839940 11035888 68.38 2636 9679348 1125124 6.55 3534128 6602808 388100 17:33:42 Average: 2906534 11036115 13232914 81.99 2639 8113744 5264587 30.63 2939132 9444167 34865 17:33:42 17:33:42 03:31:03 PM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil 17:33:42 03:32:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:32:01 PM eth0 409.04 261.41 1633.65 62.06 0.00 0.00 0.00 0.00 17:33:42 03:32:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:33:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:33:01 PM eth0 113.51 97.28 1131.03 19.77 0.00 0.00 0.00 0.00 17:33:42 03:33:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:34:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:34:01 PM eth0 480.96 374.88 6504.75 43.10 0.00 0.00 0.00 0.00 17:33:42 03:34:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:35:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:35:01 PM eth0 392.40 273.11 5853.52 35.66 0.00 0.00 0.00 0.00 17:33:42 03:35:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:36:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:36:01 PM eth0 280.57 163.03 5442.59 18.00 0.00 0.00 0.00 0.00 17:33:42 03:36:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:37:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:37:01 PM eth0 156.40 71.32 3851.44 7.94 0.00 0.00 0.00 0.00 17:33:42 03:37:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:38:01 PM lo 2.48 2.48 0.28 0.28 0.00 0.00 0.00 0.00 17:33:42 03:38:01 PM eth0 1.88 2.41 0.88 0.80 0.00 0.00 0.00 0.00 17:33:42 03:38:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:39:01 PM lo 26.92 26.92 29.68 29.68 0.00 0.00 0.00 0.00 17:33:42 03:39:01 PM eth0 1.60 1.50 0.25 0.24 0.00 0.00 0.00 0.00 17:33:42 03:39:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:40:01 PM lo 30.20 30.20 25.07 25.07 0.00 0.00 0.00 0.00 17:33:42 03:40:01 PM eth0 1.57 1.78 0.30 0.29 0.00 0.00 0.00 0.00 17:33:42 03:40:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:41:01 PM lo 35.23 35.23 16.38 16.38 0.00 0.00 0.00 0.00 17:33:42 03:41:01 PM eth0 1.42 1.80 0.25 0.26 0.00 0.00 0.00 0.00 17:33:42 03:41:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:42:01 PM lo 5.01 5.01 1.82 1.82 0.00 0.00 0.00 0.00 17:33:42 03:42:01 PM eth0 2.26 2.83 0.99 0.95 0.00 0.00 0.00 0.00 17:33:42 03:42:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:43:01 PM lo 24.78 24.78 26.29 26.29 0.00 0.00 0.00 0.00 17:33:42 03:43:01 PM eth0 1.02 0.95 0.68 0.14 0.00 0.00 0.00 0.00 17:33:42 03:43:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:44:01 PM lo 21.10 21.10 10.36 10.36 0.00 0.00 0.00 0.00 17:33:42 03:44:01 PM eth0 0.33 0.22 0.04 0.03 0.00 0.00 0.00 0.00 17:33:42 03:44:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:45:01 PM lo 13.86 13.86 5.57 5.57 0.00 0.00 0.00 0.00 17:33:42 03:45:01 PM eth0 0.28 0.27 0.04 0.05 0.00 0.00 0.00 0.00 17:33:42 03:45:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:46:01 PM lo 22.51 22.51 7.78 7.78 0.00 0.00 0.00 0.00 17:33:42 03:46:01 PM eth0 0.77 0.77 0.14 0.13 0.00 0.00 0.00 0.00 17:33:42 03:46:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:47:01 PM lo 1.05 1.05 0.10 0.10 0.00 0.00 0.00 0.00 17:33:42 03:47:01 PM eth0 0.63 0.52 0.12 0.11 0.00 0.00 0.00 0.00 17:33:42 03:47:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:48:01 PM lo 0.82 0.82 0.29 0.29 0.00 0.00 0.00 0.00 17:33:42 03:48:01 PM eth0 0.15 0.13 0.01 0.01 0.00 0.00 0.00 0.00 17:33:42 03:48:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:49:01 PM lo 1.53 1.53 0.25 0.25 0.00 0.00 0.00 0.00 17:33:42 03:49:01 PM eth0 0.37 0.37 0.07 0.06 0.00 0.00 0.00 0.00 17:33:42 03:49:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:50:01 PM lo 0.15 0.15 0.03 0.03 0.00 0.00 0.00 0.00 17:33:42 03:50:01 PM eth0 0.10 0.10 0.01 0.01 0.00 0.00 0.00 0.00 17:33:42 03:50:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:51:01 PM lo 1.05 1.05 0.71 0.71 0.00 0.00 0.00 0.00 17:33:42 03:51:01 PM eth0 0.13 0.10 0.01 0.01 0.00 0.00 0.00 0.00 17:33:42 03:51:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:52:02 PM lo 0.58 0.58 0.08 0.08 0.00 0.00 0.00 0.00 17:33:42 03:52:02 PM eth0 1.25 0.45 0.41 0.28 0.00 0.00 0.00 0.00 17:33:42 03:52:02 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:53:01 PM lo 0.37 0.37 0.36 0.36 0.00 0.00 0.00 0.00 17:33:42 03:53:01 PM eth0 0.37 0.24 0.26 0.20 0.00 0.00 0.00 0.00 17:33:42 03:53:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:54:01 PM lo 0.88 0.88 0.64 0.64 0.00 0.00 0.00 0.00 17:33:42 03:54:01 PM eth0 0.13 0.08 0.01 0.01 0.00 0.00 0.00 0.00 17:33:42 03:54:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:55:01 PM lo 1.15 1.15 0.24 0.24 0.00 0.00 0.00 0.00 17:33:42 03:55:01 PM eth0 0.60 0.52 0.13 0.24 0.00 0.00 0.00 0.00 17:33:42 03:55:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:56:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:56:01 PM eth0 0.68 0.05 0.07 0.00 0.00 0.00 0.00 0.00 17:33:42 03:56:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:57:01 PM lo 2.33 2.33 1.16 1.16 0.00 0.00 0.00 0.00 17:33:42 03:57:01 PM eth0 1.22 0.35 0.40 0.27 0.00 0.00 0.00 0.00 17:33:42 03:57:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:58:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:58:01 PM eth0 0.37 0.28 0.25 0.20 0.00 0.00 0.00 0.00 17:33:42 03:58:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:59:01 PM lo 3.18 3.18 1.14 1.14 0.00 0.00 0.00 0.00 17:33:42 03:59:01 PM eth0 0.07 0.05 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 03:59:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:00:01 PM lo 2.37 2.37 0.53 0.53 0.00 0.00 0.00 0.00 17:33:42 04:00:01 PM eth0 0.52 0.38 0.09 0.07 0.00 0.00 0.00 0.00 17:33:42 04:00:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:01:01 PM lo 9.93 9.93 2.44 2.44 0.00 0.00 0.00 0.00 17:33:42 04:01:01 PM eth0 1.40 1.32 0.44 0.26 0.00 0.00 0.00 0.00 17:33:42 04:01:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:02:01 PM lo 3.10 3.10 0.67 0.67 0.00 0.00 0.00 0.00 17:33:42 04:02:01 PM eth0 1.67 1.13 0.59 0.45 0.00 0.00 0.00 0.00 17:33:42 04:02:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:03:01 PM lo 1.33 1.33 0.49 0.49 0.00 0.00 0.00 0.00 17:33:42 04:03:01 PM eth0 0.18 0.02 0.01 0.00 0.00 0.00 0.00 0.00 17:33:42 04:03:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:04:01 PM lo 0.05 0.05 0.01 0.01 0.00 0.00 0.00 0.00 17:33:42 04:04:01 PM eth0 0.12 0.07 0.01 0.00 0.00 0.00 0.00 0.00 17:33:42 04:04:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:05:01 PM lo 3.27 3.27 1.01 1.01 0.00 0.00 0.00 0.00 17:33:42 04:05:01 PM eth0 0.12 0.07 0.01 0.01 0.00 0.00 0.00 0.00 17:33:42 04:05:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:06:01 PM lo 0.38 0.38 0.08 0.08 0.00 0.00 0.00 0.00 17:33:42 04:06:01 PM eth0 0.10 0.07 0.01 0.00 0.00 0.00 0.00 0.00 17:33:42 04:06:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:07:01 PM lo 0.58 0.58 0.12 0.12 0.00 0.00 0.00 0.00 17:33:42 04:07:01 PM eth0 0.22 0.15 0.08 0.07 0.00 0.00 0.00 0.00 17:33:42 04:07:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:08:01 PM lo 0.43 0.43 0.07 0.07 0.00 0.00 0.00 0.00 17:33:42 04:08:01 PM eth0 0.12 0.08 0.01 0.01 0.00 0.00 0.00 0.00 17:33:42 04:08:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:09:01 PM lo 0.28 0.28 0.06 0.06 0.00 0.00 0.00 0.00 17:33:42 04:09:01 PM eth0 0.07 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:09:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:10:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:10:01 PM eth0 0.07 0.07 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:10:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:11:01 PM lo 0.27 0.27 0.04 0.04 0.00 0.00 0.00 0.00 17:33:42 04:11:01 PM eth0 0.12 0.07 0.01 0.01 0.00 0.00 0.00 0.00 17:33:42 04:11:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:12:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:12:01 PM eth0 0.25 0.15 0.08 0.07 0.00 0.00 0.00 0.00 17:33:42 04:12:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:13:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:13:01 PM eth0 0.18 0.00 0.01 0.00 0.00 0.00 0.00 0.00 17:33:42 04:13:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:14:01 PM lo 1.85 1.85 0.39 0.39 0.00 0.00 0.00 0.00 17:33:42 04:14:01 PM eth0 46.91 21.52 683.32 4.15 0.00 0.00 0.00 0.00 17:33:42 04:14:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:15:01 PM lo 8.51 8.51 17.26 17.26 0.00 0.00 0.00 0.00 17:33:42 04:15:01 PM eth0 1.97 1.33 0.55 0.41 0.00 0.00 0.00 0.00 17:33:42 04:15:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:16:01 PM lo 24.51 24.51 7.77 7.77 0.00 0.00 0.00 0.00 17:33:42 04:16:01 PM eth0 1.12 0.98 0.43 0.35 0.00 0.00 0.00 0.00 17:33:42 04:16:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:17:01 PM lo 20.55 20.55 5.98 5.98 0.00 0.00 0.00 0.00 17:33:42 04:17:01 PM eth0 1.13 1.43 0.29 0.28 0.00 0.00 0.00 0.00 17:33:42 04:17:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:18:01 PM lo 10.04 10.04 2.60 2.60 0.00 0.00 0.00 0.00 17:33:42 04:18:01 PM eth0 0.70 0.88 0.12 0.13 0.00 0.00 0.00 0.00 17:33:42 04:18:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:19:01 PM lo 29.40 29.40 10.10 10.10 0.00 0.00 0.00 0.00 17:33:42 04:19:01 PM eth0 0.98 1.25 0.38 0.18 0.00 0.00 0.00 0.00 17:33:42 04:19:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:20:01 PM lo 28.70 28.70 8.32 8.32 0.00 0.00 0.00 0.00 17:33:42 04:20:01 PM eth0 1.68 1.48 0.37 0.30 0.00 0.00 0.00 0.00 17:33:42 04:20:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:21:01 PM lo 15.79 15.79 4.90 4.90 0.00 0.00 0.00 0.00 17:33:42 04:21:01 PM eth0 1.52 0.90 0.50 0.36 0.00 0.00 0.00 0.00 17:33:42 04:21:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:22:01 PM lo 13.14 13.14 3.74 3.74 0.00 0.00 0.00 0.00 17:33:42 04:22:01 PM eth0 2.47 2.65 1.32 1.09 0.00 0.00 0.00 0.00 17:33:42 04:22:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:23:01 PM lo 15.21 15.21 10.25 10.25 0.00 0.00 0.00 0.00 17:33:42 04:23:01 PM eth0 1.55 1.83 0.31 0.30 0.00 0.00 0.00 0.00 17:33:42 04:23:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:24:01 PM lo 12.77 12.77 4.70 4.70 0.00 0.00 0.00 0.00 17:33:42 04:24:01 PM eth0 0.88 0.95 0.12 0.13 0.00 0.00 0.00 0.00 17:33:42 04:24:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:25:01 PM lo 16.29 16.29 8.09 8.09 0.00 0.00 0.00 0.00 17:33:42 04:25:01 PM eth0 0.88 1.18 0.17 0.18 0.00 0.00 0.00 0.00 17:33:42 04:25:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:26:01 PM lo 15.49 15.49 6.25 6.25 0.00 0.00 0.00 0.00 17:33:42 04:26:01 PM eth0 1.00 1.38 0.20 0.22 0.00 0.00 0.00 0.00 17:33:42 04:26:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:27:01 PM lo 4.89 4.89 6.27 6.27 0.00 0.00 0.00 0.00 17:33:42 04:27:01 PM eth0 0.88 0.85 0.21 0.20 0.00 0.00 0.00 0.00 17:33:42 04:27:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:28:01 PM lo 7.58 7.58 3.04 3.04 0.00 0.00 0.00 0.00 17:33:42 04:28:01 PM eth0 0.42 0.42 0.06 0.06 0.00 0.00 0.00 0.00 17:33:42 04:28:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:29:01 PM lo 3.10 3.10 0.59 0.59 0.00 0.00 0.00 0.00 17:33:42 04:29:01 PM eth0 0.53 0.50 0.10 0.09 0.00 0.00 0.00 0.00 17:33:42 04:29:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:30:01 PM lo 28.82 28.82 14.64 14.64 0.00 0.00 0.00 0.00 17:33:42 04:30:01 PM eth0 0.83 0.80 0.11 0.11 0.00 0.00 0.00 0.00 17:33:42 04:30:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:31:01 PM lo 19.70 19.70 8.40 8.40 0.00 0.00 0.00 0.00 17:33:42 04:31:01 PM eth0 1.15 1.50 0.22 0.23 0.00 0.00 0.00 0.00 17:33:42 04:31:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:32:01 PM lo 11.06 11.06 14.65 14.65 0.00 0.00 0.00 0.00 17:33:42 04:32:01 PM eth0 1.30 0.72 0.29 0.23 0.00 0.00 0.00 0.00 17:33:42 04:32:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:33:01 PM lo 10.94 10.94 5.38 5.38 0.00 0.00 0.00 0.00 17:33:42 04:33:01 PM eth0 1.40 1.27 0.44 0.37 0.00 0.00 0.00 0.00 17:33:42 04:33:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:34:02 PM lo 34.29 34.29 14.14 14.14 0.00 0.00 0.00 0.00 17:33:42 04:34:02 PM eth0 0.78 0.73 0.14 0.13 0.00 0.00 0.00 0.00 17:33:42 04:34:02 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:35:01 PM lo 39.82 39.82 12.22 12.22 0.00 0.00 0.00 0.00 17:33:42 04:35:01 PM eth0 0.54 0.47 0.10 0.09 0.00 0.00 0.00 0.00 17:33:42 04:35:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:36:01 PM lo 18.17 18.17 5.75 5.75 0.00 0.00 0.00 0.00 17:33:42 04:36:01 PM eth0 0.72 0.70 0.12 0.12 0.00 0.00 0.00 0.00 17:33:42 04:36:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:37:01 PM lo 29.95 29.95 21.70 21.70 0.00 0.00 0.00 0.00 17:33:42 04:37:01 PM eth0 0.98 1.02 0.21 0.21 0.00 0.00 0.00 0.00 17:33:42 04:37:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:38:01 PM lo 5.08 5.08 3.25 3.25 0.00 0.00 0.00 0.00 17:33:42 04:38:01 PM eth0 0.72 0.58 0.13 0.11 0.00 0.00 0.00 0.00 17:33:42 04:38:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:39:01 PM lo 18.98 18.98 9.43 9.43 0.00 0.00 0.00 0.00 17:33:42 04:39:01 PM eth0 0.47 0.45 0.10 0.09 0.00 0.00 0.00 0.00 17:33:42 04:39:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:40:01 PM lo 23.37 23.37 10.16 10.16 0.00 0.00 0.00 0.00 17:33:42 04:40:01 PM eth0 1.23 0.63 0.40 0.28 0.00 0.00 0.00 0.00 17:33:42 04:40:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:41:01 PM lo 14.88 14.88 6.51 6.51 0.00 0.00 0.00 0.00 17:33:42 04:41:01 PM eth0 2.77 3.08 1.74 0.34 0.00 0.00 0.00 0.00 17:33:42 04:41:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:42:01 PM lo 8.23 8.23 4.31 4.31 0.00 0.00 0.00 0.00 17:33:42 04:42:01 PM eth0 0.52 0.40 0.15 0.13 0.00 0.00 0.00 0.00 17:33:42 04:42:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:43:01 PM lo 17.26 17.26 8.69 8.69 0.00 0.00 0.00 0.00 17:33:42 04:43:01 PM eth0 0.62 0.57 0.12 0.11 0.00 0.00 0.00 0.00 17:33:42 04:43:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:44:01 PM lo 20.91 20.91 7.07 7.07 0.00 0.00 0.00 0.00 17:33:42 04:44:01 PM eth0 0.60 0.67 0.11 0.11 0.00 0.00 0.00 0.00 17:33:42 04:44:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:45:01 PM lo 33.32 33.32 12.99 12.99 0.00 0.00 0.00 0.00 17:33:42 04:45:01 PM eth0 0.83 0.98 0.13 0.13 0.00 0.00 0.00 0.00 17:33:42 04:45:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:46:01 PM lo 18.73 18.73 6.39 6.39 0.00 0.00 0.00 0.00 17:33:42 04:46:01 PM eth0 0.53 0.73 0.11 0.11 0.00 0.00 0.00 0.00 17:33:42 04:46:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:47:01 PM lo 52.72 52.72 16.76 16.76 0.00 0.00 0.00 0.00 17:33:42 04:47:01 PM eth0 0.45 0.48 0.13 0.12 0.00 0.00 0.00 0.00 17:33:42 04:47:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:48:01 PM lo 24.63 24.63 7.56 7.56 0.00 0.00 0.00 0.00 17:33:42 04:48:01 PM eth0 0.48 0.57 0.18 0.08 0.00 0.00 0.00 0.00 17:33:42 04:48:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:49:01 PM lo 30.32 30.32 9.35 9.35 0.00 0.00 0.00 0.00 17:33:42 04:49:01 PM eth0 0.30 0.30 0.04 0.04 0.00 0.00 0.00 0.00 17:33:42 04:49:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:50:01 PM lo 37.16 37.16 12.17 12.17 0.00 0.00 0.00 0.00 17:33:42 04:50:01 PM eth0 0.12 0.08 0.01 0.01 0.00 0.00 0.00 0.00 17:33:42 04:50:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:51:01 PM lo 62.11 62.11 19.54 19.54 0.00 0.00 0.00 0.00 17:33:42 04:51:01 PM eth0 0.10 0.05 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:51:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:52:01 PM lo 2.58 2.58 0.83 0.83 0.00 0.00 0.00 0.00 17:33:42 04:52:01 PM eth0 1.21 1.13 0.43 0.36 0.00 0.00 0.00 0.00 17:33:42 04:52:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:53:01 PM lo 22.21 22.21 22.11 22.11 0.00 0.00 0.00 0.00 17:33:42 04:53:01 PM eth0 0.63 0.87 0.14 0.14 0.00 0.00 0.00 0.00 17:33:42 04:53:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:54:01 PM lo 32.28 32.28 13.66 13.66 0.00 0.00 0.00 0.00 17:33:42 04:54:01 PM eth0 0.60 0.78 0.12 0.12 0.00 0.00 0.00 0.00 17:33:42 04:54:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:55:01 PM lo 22.56 22.56 10.74 10.74 0.00 0.00 0.00 0.00 17:33:42 04:55:01 PM eth0 0.53 0.75 0.11 0.12 0.00 0.00 0.00 0.00 17:33:42 04:55:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:56:01 PM lo 21.85 21.85 8.87 8.87 0.00 0.00 0.00 0.00 17:33:42 04:56:01 PM eth0 0.55 0.75 0.11 0.12 0.00 0.00 0.00 0.00 17:33:42 04:56:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:57:01 PM lo 32.49 32.49 10.99 10.99 0.00 0.00 0.00 0.00 17:33:42 04:57:01 PM eth0 0.57 0.65 0.17 0.16 0.00 0.00 0.00 0.00 17:33:42 04:57:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:58:01 PM lo 17.49 17.49 8.36 8.36 0.00 0.00 0.00 0.00 17:33:42 04:58:01 PM eth0 0.83 0.97 0.27 0.16 0.00 0.00 0.00 0.00 17:33:42 04:58:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 04:59:01 PM lo 20.88 20.88 8.29 8.29 0.00 0.00 0.00 0.00 17:33:42 04:59:01 PM eth0 0.35 0.30 0.06 0.06 0.00 0.00 0.00 0.00 17:33:42 04:59:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:00:01 PM lo 3.88 3.88 2.12 2.12 0.00 0.00 0.00 0.00 17:33:42 05:00:01 PM eth0 0.93 0.88 0.14 0.13 0.00 0.00 0.00 0.00 17:33:42 05:00:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:01:01 PM lo 22.46 22.46 22.68 22.68 0.00 0.00 0.00 0.00 17:33:42 05:01:01 PM eth0 0.55 0.53 0.11 0.10 0.00 0.00 0.00 0.00 17:33:42 05:01:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:02:01 PM lo 34.47 34.47 15.41 15.41 0.00 0.00 0.00 0.00 17:33:42 05:02:01 PM eth0 0.65 0.58 0.18 0.16 0.00 0.00 0.00 0.00 17:33:42 05:02:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:03:01 PM lo 15.53 15.53 7.72 7.72 0.00 0.00 0.00 0.00 17:33:42 05:03:01 PM eth0 0.42 0.50 0.08 0.08 0.00 0.00 0.00 0.00 17:33:42 05:03:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:04:01 PM lo 19.09 19.09 10.91 10.91 0.00 0.00 0.00 0.00 17:33:42 05:04:01 PM eth0 0.53 0.75 0.11 0.12 0.00 0.00 0.00 0.00 17:33:42 05:04:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:05:01 PM lo 13.00 13.00 7.62 7.62 0.00 0.00 0.00 0.00 17:33:42 05:05:01 PM eth0 0.52 0.67 0.10 0.10 0.00 0.00 0.00 0.00 17:33:42 05:05:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:06:01 PM lo 6.68 6.68 4.89 4.89 0.00 0.00 0.00 0.00 17:33:42 05:06:01 PM eth0 0.35 0.43 0.06 0.07 0.00 0.00 0.00 0.00 17:33:42 05:06:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:07:01 PM lo 23.54 23.54 11.96 11.96 0.00 0.00 0.00 0.00 17:33:42 05:07:01 PM eth0 0.60 0.57 0.17 0.15 0.00 0.00 0.00 0.00 17:33:42 05:07:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:08:01 PM lo 8.75 8.75 6.09 6.09 0.00 0.00 0.00 0.00 17:33:42 05:08:01 PM eth0 0.40 0.35 0.07 0.06 0.00 0.00 0.00 0.00 17:33:42 05:08:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:09:01 PM lo 35.77 35.77 12.98 12.98 0.00 0.00 0.00 0.00 17:33:42 05:09:01 PM eth0 0.28 0.28 0.06 0.05 0.00 0.00 0.00 0.00 17:33:42 05:09:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:10:01 PM lo 4.25 4.25 2.54 2.54 0.00 0.00 0.00 0.00 17:33:42 05:10:01 PM eth0 146.15 72.29 1982.71 5.57 0.00 0.00 0.00 0.00 17:33:42 05:10:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:11:01 PM lo 31.24 31.24 32.99 32.99 0.00 0.00 0.00 0.00 17:33:42 05:11:01 PM eth0 0.52 0.50 0.06 0.06 0.00 0.00 0.00 0.00 17:33:42 05:11:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:12:01 PM lo 13.08 13.08 6.84 6.84 0.00 0.00 0.00 0.00 17:33:42 05:12:01 PM eth0 1.18 1.12 0.30 0.27 0.00 0.00 0.00 0.00 17:33:42 05:12:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:13:01 PM lo 21.95 21.95 6.50 6.50 0.00 0.00 0.00 0.00 17:33:42 05:13:01 PM eth0 0.70 0.68 0.12 0.11 0.00 0.00 0.00 0.00 17:33:42 05:13:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:14:01 PM lo 5.23 5.23 2.57 2.57 0.00 0.00 0.00 0.00 17:33:42 05:14:01 PM eth0 0.43 0.38 0.05 0.04 0.00 0.00 0.00 0.00 17:33:42 05:14:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:15:01 PM lo 31.19 31.19 9.87 9.87 0.00 0.00 0.00 0.00 17:33:42 05:15:01 PM eth0 0.75 0.72 0.15 0.14 0.00 0.00 0.00 0.00 17:33:42 05:15:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:16:01 PM lo 3.83 3.83 1.69 1.69 0.00 0.00 0.00 0.00 17:33:42 05:16:01 PM eth0 0.73 0.75 0.15 0.15 0.00 0.00 0.00 0.00 17:33:42 05:16:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:17:01 PM lo 9.71 9.71 3.98 3.98 0.00 0.00 0.00 0.00 17:33:42 05:17:01 PM eth0 1.20 1.48 0.29 0.29 0.00 0.00 0.00 0.00 17:33:42 05:17:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:18:02 PM lo 2.60 2.60 1.81 1.81 0.00 0.00 0.00 0.00 17:33:42 05:18:02 PM eth0 0.52 0.73 0.11 0.11 0.00 0.00 0.00 0.00 17:33:42 05:18:02 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:19:01 PM lo 15.22 15.22 4.14 4.14 0.00 0.00 0.00 0.00 17:33:42 05:19:01 PM eth0 0.20 0.27 0.03 0.04 0.00 0.00 0.00 0.00 17:33:42 05:19:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:20:01 PM lo 4.92 4.92 1.60 1.60 0.00 0.00 0.00 0.00 17:33:42 05:20:01 PM eth0 0.78 1.07 0.16 0.16 0.00 0.00 0.00 0.00 17:33:42 05:20:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:21:01 PM lo 0.43 0.43 0.09 0.09 0.00 0.00 0.00 0.00 17:33:42 05:21:01 PM eth0 0.07 0.05 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:21:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:22:01 PM lo 1.33 1.33 0.42 0.42 0.00 0.00 0.00 0.00 17:33:42 05:22:01 PM eth0 0.22 0.10 0.08 0.06 0.00 0.00 0.00 0.00 17:33:42 05:22:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:23:01 PM lo 0.38 0.38 0.06 0.06 0.00 0.00 0.00 0.00 17:33:42 05:23:01 PM eth0 0.12 0.08 0.01 0.01 0.00 0.00 0.00 0.00 17:33:42 05:23:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:24:01 PM lo 3.90 3.90 1.03 1.03 0.00 0.00 0.00 0.00 17:33:42 05:24:01 PM eth0 0.05 0.02 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:24:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:25:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:25:01 PM eth0 0.83 0.20 0.16 0.07 0.00 0.00 0.00 0.00 17:33:42 05:25:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:26:01 PM lo 0.58 0.58 0.11 0.11 0.00 0.00 0.00 0.00 17:33:42 05:26:01 PM eth0 0.43 0.27 0.26 0.20 0.00 0.00 0.00 0.00 17:33:42 05:26:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:27:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:27:01 PM eth0 0.17 0.08 0.08 0.06 0.00 0.00 0.00 0.00 17:33:42 05:27:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:28:01 PM lo 0.25 0.25 0.05 0.05 0.00 0.00 0.00 0.00 17:33:42 05:28:01 PM eth0 0.08 0.07 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:28:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:29:01 PM lo 0.22 0.22 0.02 0.02 0.00 0.00 0.00 0.00 17:33:42 05:29:01 PM eth0 0.12 0.12 0.01 0.01 0.00 0.00 0.00 0.00 17:33:42 05:29:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:30:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:30:01 PM eth0 0.13 0.07 0.01 0.00 0.00 0.00 0.00 0.00 17:33:42 05:30:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:31:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:31:01 PM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:31:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:32:01 PM lo 0.05 0.05 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:32:01 PM eth0 3.10 3.20 1.68 3.89 0.00 0.00 0.00 0.00 17:33:42 05:32:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:33:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 05:33:01 PM eth0 140.56 115.53 1642.46 20.12 0.00 0.00 0.00 0.00 17:33:42 05:33:01 PM docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 Average: lo 12.39 12.39 5.97 5.97 0.00 0.00 0.00 0.00 17:33:42 Average: eth0 18.32 12.47 235.43 1.93 0.00 0.00 0.00 0.00 17:33:42 Average: docker0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 17:33:42 17:33:42 17:33:42 ---> sar -P ALL: 17:33:42 Linux 4.18.0-536.el8.x86_64 (centos-stream-8-builder-37d44b9c-5feb-4b6f-a60e-fe1022bf91ff.nov) 02/27/2024 _x86_64_ (4 CPU) 17:33:42 17:33:42 15:30:44 LINUX RESTART (4 CPU) 17:33:42 17:33:42 03:31:03 PM CPU %user %nice %system %iowait %steal %idle 17:33:42 03:32:01 PM all 20.18 0.00 4.52 3.44 0.09 71.76 17:33:42 03:32:01 PM 0 32.60 0.00 5.78 6.21 0.10 55.30 17:33:42 03:32:01 PM 1 10.66 0.00 3.66 1.08 0.07 84.54 17:33:42 03:32:01 PM 2 19.23 0.00 3.94 4.10 0.07 72.67 17:33:42 03:32:01 PM 3 18.23 0.00 4.71 2.38 0.12 74.55 17:33:42 03:33:01 PM all 23.78 0.00 3.87 1.65 0.08 70.61 17:33:42 03:33:01 PM 0 16.43 0.00 2.42 0.75 0.08 80.31 17:33:42 03:33:01 PM 1 30.59 0.00 4.40 2.11 0.08 62.82 17:33:42 03:33:01 PM 2 27.28 0.00 4.36 1.83 0.08 66.44 17:33:42 03:33:01 PM 3 20.84 0.00 4.29 1.93 0.08 72.86 17:33:42 03:34:01 PM all 63.81 0.62 10.06 6.35 0.14 19.03 17:33:42 03:34:01 PM 0 63.69 0.61 10.71 5.65 0.13 19.22 17:33:42 03:34:01 PM 1 64.88 0.82 9.87 6.05 0.15 18.23 17:33:42 03:34:01 PM 2 65.72 0.58 10.99 6.72 0.14 15.85 17:33:42 03:34:01 PM 3 60.97 0.47 8.67 6.99 0.12 22.77 17:33:42 03:35:01 PM all 59.55 0.97 14.82 4.23 0.12 20.31 17:33:42 03:35:01 PM 0 55.09 0.91 15.54 3.25 0.12 25.09 17:33:42 03:35:01 PM 1 60.92 1.50 15.38 5.14 0.14 16.93 17:33:42 03:35:01 PM 2 56.88 0.63 15.87 5.96 0.12 20.54 17:33:42 03:35:01 PM 3 65.28 0.86 12.51 2.58 0.10 18.68 17:33:42 03:36:01 PM all 35.96 0.56 14.90 5.60 0.10 42.88 17:33:42 03:36:01 PM 0 28.06 0.25 9.97 7.01 0.13 54.57 17:33:42 03:36:01 PM 1 38.32 0.90 21.46 5.68 0.08 33.55 17:33:42 03:36:01 PM 2 46.50 0.40 12.72 3.96 0.08 36.34 17:33:42 03:36:01 PM 3 30.96 0.67 15.45 5.76 0.10 47.06 17:33:42 03:37:01 PM all 67.15 0.00 5.46 17.45 0.10 9.83 17:33:42 03:37:01 PM 0 67.42 0.00 5.37 10.98 0.10 16.13 17:33:42 03:37:01 PM 1 58.30 0.00 6.27 24.19 0.10 11.14 17:33:42 03:37:01 PM 2 61.65 0.00 5.58 28.75 0.12 3.90 17:33:42 03:37:01 PM 3 81.28 0.00 4.63 5.84 0.10 8.15 17:33:42 03:38:01 PM all 81.94 0.00 4.23 6.53 0.11 7.18 17:33:42 03:38:01 PM 0 78.54 0.00 4.68 7.31 0.12 9.35 17:33:42 03:38:01 PM 1 86.86 0.00 3.98 5.23 0.12 3.81 17:33:42 03:38:01 PM 2 76.09 0.00 4.24 9.20 0.12 10.36 17:33:42 03:38:01 PM 3 86.29 0.00 4.04 4.36 0.10 5.21 17:33:42 03:39:01 PM all 72.39 0.00 2.90 0.58 0.13 24.00 17:33:42 03:39:01 PM 0 57.60 0.00 3.21 1.11 0.13 37.95 17:33:42 03:39:01 PM 1 73.69 0.00 3.62 0.34 0.12 22.24 17:33:42 03:39:01 PM 2 82.22 0.00 2.25 0.72 0.13 14.68 17:33:42 03:39:01 PM 3 76.03 0.00 2.54 0.17 0.12 21.14 17:33:42 03:40:01 PM all 38.12 0.00 1.62 0.90 0.13 59.24 17:33:42 03:40:01 PM 0 38.73 0.00 1.56 0.64 0.15 58.93 17:33:42 03:40:01 PM 1 37.48 0.00 1.81 1.19 0.12 59.41 17:33:42 03:40:01 PM 2 37.65 0.00 1.59 1.07 0.12 59.57 17:33:42 03:40:01 PM 3 38.61 0.00 1.53 0.69 0.13 59.04 17:33:42 03:41:01 PM all 44.25 0.00 2.64 0.92 0.13 52.06 17:33:42 03:41:01 PM 0 48.27 0.00 1.96 0.92 0.10 48.75 17:33:42 03:41:01 PM 1 40.96 0.00 3.18 0.97 0.13 54.75 17:33:42 03:41:01 PM 2 44.40 0.00 2.57 0.71 0.13 52.19 17:33:42 03:41:01 PM 3 43.35 0.00 2.85 1.07 0.15 52.57 17:33:42 03:42:01 PM all 82.38 0.00 2.81 1.87 0.10 12.83 17:33:42 03:42:01 PM 0 85.15 0.00 2.54 1.00 0.08 11.22 17:33:42 03:42:01 PM 1 82.29 0.00 2.93 1.04 0.10 13.64 17:33:42 03:42:01 PM 2 77.51 0.00 3.34 3.09 0.13 15.93 17:33:42 03:42:01 PM 3 84.55 0.00 2.43 2.38 0.10 10.54 17:33:42 17:33:42 03:42:01 PM CPU %user %nice %system %iowait %steal %idle 17:33:42 03:43:01 PM all 53.34 0.00 1.69 1.34 0.13 43.50 17:33:42 03:43:01 PM 0 51.94 0.00 1.51 0.40 0.15 46.00 17:33:42 03:43:01 PM 1 52.70 0.00 2.25 1.78 0.12 43.15 17:33:42 03:43:01 PM 2 53.54 0.00 1.58 0.79 0.13 43.97 17:33:42 03:43:01 PM 3 55.20 0.00 1.44 2.38 0.12 40.86 17:33:42 03:44:01 PM all 10.06 0.00 0.59 0.05 0.11 89.19 17:33:42 03:44:01 PM 0 9.56 0.00 0.65 0.07 0.12 89.60 17:33:42 03:44:01 PM 1 9.77 0.00 0.70 0.03 0.10 89.39 17:33:42 03:44:01 PM 2 10.72 0.00 0.52 0.03 0.12 88.61 17:33:42 03:44:01 PM 3 10.20 0.00 0.50 0.05 0.10 89.15 17:33:42 03:45:01 PM all 3.00 0.00 0.48 0.05 0.10 96.37 17:33:42 03:45:01 PM 0 2.65 0.00 0.44 0.02 0.10 96.80 17:33:42 03:45:01 PM 1 3.14 0.00 0.50 0.12 0.12 96.13 17:33:42 03:45:01 PM 2 3.05 0.00 0.50 0.02 0.10 96.33 17:33:42 03:45:01 PM 3 3.17 0.00 0.47 0.05 0.10 96.21 17:33:42 03:46:01 PM all 30.57 0.00 1.50 0.55 0.12 67.26 17:33:42 03:46:01 PM 0 25.71 0.00 1.66 0.47 0.12 72.04 17:33:42 03:46:01 PM 1 30.62 0.00 1.22 0.33 0.10 67.72 17:33:42 03:46:01 PM 2 33.51 0.00 1.58 0.07 0.12 64.73 17:33:42 03:46:01 PM 3 32.43 0.00 1.56 1.34 0.13 64.54 17:33:42 03:47:01 PM all 43.24 0.00 1.60 24.81 0.13 30.22 17:33:42 03:47:01 PM 0 40.88 0.00 1.78 32.02 0.13 25.18 17:33:42 03:47:01 PM 1 44.52 0.00 1.81 1.16 0.13 52.37 17:33:42 03:47:01 PM 2 41.20 0.00 1.79 32.38 0.12 24.51 17:33:42 03:47:01 PM 3 46.36 0.00 1.02 33.61 0.12 18.89 17:33:42 03:48:01 PM all 2.02 0.00 0.39 0.10 0.10 97.38 17:33:42 03:48:01 PM 0 1.84 0.00 0.35 0.42 0.08 97.30 17:33:42 03:48:01 PM 1 2.65 0.00 0.40 0.00 0.12 96.84 17:33:42 03:48:01 PM 2 1.73 0.00 0.44 0.00 0.08 97.75 17:33:42 03:48:01 PM 3 1.86 0.00 0.39 0.00 0.12 97.64 17:33:42 03:49:01 PM all 1.28 0.00 0.39 0.51 0.09 97.73 17:33:42 03:49:01 PM 0 1.04 0.00 0.35 1.10 0.10 97.41 17:33:42 03:49:01 PM 1 1.49 0.00 0.37 0.82 0.08 97.24 17:33:42 03:49:01 PM 2 1.41 0.00 0.44 0.00 0.08 98.07 17:33:42 03:49:01 PM 3 1.19 0.00 0.40 0.12 0.08 98.21 17:33:42 03:50:01 PM all 2.48 0.00 0.45 0.28 0.14 96.65 17:33:42 03:50:01 PM 0 2.41 0.00 0.40 0.62 0.27 96.29 17:33:42 03:50:01 PM 1 3.25 0.00 0.52 0.49 0.08 95.66 17:33:42 03:50:01 PM 2 2.04 0.00 0.45 0.00 0.10 97.40 17:33:42 03:50:01 PM 3 2.20 0.00 0.43 0.00 0.10 97.27 17:33:42 03:51:01 PM all 3.85 0.00 0.41 0.02 0.09 95.63 17:33:42 03:51:01 PM 0 2.78 0.00 0.45 0.00 0.10 96.67 17:33:42 03:51:01 PM 1 4.20 0.00 0.38 0.05 0.08 95.28 17:33:42 03:51:01 PM 2 4.33 0.00 0.39 0.00 0.10 95.18 17:33:42 03:51:01 PM 3 4.09 0.00 0.42 0.03 0.08 95.37 17:33:42 03:52:02 PM all 0.90 0.00 0.41 0.27 0.10 98.32 17:33:42 03:52:02 PM 0 0.74 0.00 0.33 0.00 0.10 98.83 17:33:42 03:52:02 PM 1 1.32 0.00 0.47 0.05 0.10 98.06 17:33:42 03:52:02 PM 2 0.80 0.00 0.47 0.85 0.08 97.79 17:33:42 03:52:02 PM 3 0.72 0.00 0.39 0.18 0.10 98.61 17:33:42 03:53:01 PM all 2.02 0.00 0.39 0.09 0.10 97.41 17:33:42 03:53:01 PM 0 2.11 0.00 0.32 0.00 0.08 97.49 17:33:42 03:53:01 PM 1 1.72 0.00 0.43 0.17 0.10 97.58 17:33:42 03:53:01 PM 2 2.28 0.00 0.46 0.00 0.10 97.16 17:33:42 03:53:01 PM 3 1.96 0.00 0.34 0.19 0.10 97.41 17:33:42 17:33:42 03:53:01 PM CPU %user %nice %system %iowait %steal %idle 17:33:42 03:54:01 PM all 1.86 0.00 0.41 0.03 0.10 97.60 17:33:42 03:54:01 PM 0 1.77 0.00 0.40 0.02 0.12 97.69 17:33:42 03:54:01 PM 1 1.36 0.00 0.50 0.08 0.12 97.94 17:33:42 03:54:01 PM 2 2.28 0.00 0.39 0.00 0.10 97.24 17:33:42 03:54:01 PM 3 2.03 0.00 0.37 0.00 0.08 97.52 17:33:42 03:55:01 PM all 1.21 0.00 0.38 0.00 0.08 98.33 17:33:42 03:55:01 PM 0 1.04 0.00 0.37 0.00 0.08 98.51 17:33:42 03:55:01 PM 1 1.54 0.00 0.32 0.00 0.08 98.06 17:33:42 03:55:01 PM 2 1.27 0.00 0.38 0.00 0.07 98.28 17:33:42 03:55:01 PM 3 1.00 0.00 0.43 0.00 0.08 98.48 17:33:42 03:56:01 PM all 0.49 0.00 0.23 0.00 0.08 99.21 17:33:42 03:56:01 PM 0 0.45 0.00 0.23 0.02 0.08 99.22 17:33:42 03:56:01 PM 1 0.82 0.00 0.22 0.00 0.08 98.88 17:33:42 03:56:01 PM 2 0.38 0.00 0.22 0.00 0.07 99.33 17:33:42 03:56:01 PM 3 0.30 0.00 0.23 0.00 0.07 99.40 17:33:42 03:57:01 PM all 2.42 0.00 0.26 0.00 0.10 97.22 17:33:42 03:57:01 PM 0 2.32 0.00 0.27 0.00 0.08 97.33 17:33:42 03:57:01 PM 1 2.81 0.00 0.23 0.00 0.08 96.87 17:33:42 03:57:01 PM 2 2.56 0.00 0.28 0.00 0.13 97.02 17:33:42 03:57:01 PM 3 1.97 0.00 0.27 0.00 0.08 97.67 17:33:42 03:58:01 PM all 0.49 0.00 0.24 0.01 0.09 99.17 17:33:42 03:58:01 PM 0 0.65 0.00 0.20 0.00 0.08 99.07 17:33:42 03:58:01 PM 1 0.42 0.00 0.27 0.00 0.10 99.21 17:33:42 03:58:01 PM 2 0.48 0.00 0.25 0.00 0.08 99.18 17:33:42 03:58:01 PM 3 0.40 0.00 0.23 0.05 0.08 99.23 17:33:42 03:59:01 PM all 1.96 0.00 0.23 0.03 0.10 97.68 17:33:42 03:59:01 PM 0 1.87 0.00 0.22 0.00 0.08 97.83 17:33:42 03:59:01 PM 1 1.64 0.00 0.28 0.00 0.12 97.96 17:33:42 03:59:01 PM 2 1.96 0.00 0.27 0.00 0.10 97.68 17:33:42 03:59:01 PM 3 2.37 0.00 0.17 0.12 0.08 97.26 17:33:42 04:00:01 PM all 1.55 0.00 0.25 0.01 0.09 98.09 17:33:42 04:00:01 PM 0 1.07 0.00 0.23 0.02 0.10 98.58 17:33:42 04:00:01 PM 1 1.75 0.00 0.25 0.00 0.08 97.91 17:33:42 04:00:01 PM 2 1.30 0.00 0.27 0.00 0.10 98.33 17:33:42 04:00:01 PM 3 2.09 0.00 0.25 0.03 0.08 97.54 17:33:42 04:01:01 PM all 2.34 0.00 0.28 0.03 0.08 97.26 17:33:42 04:01:01 PM 0 2.67 0.00 0.25 0.12 0.07 96.89 17:33:42 04:01:01 PM 1 2.26 0.00 0.30 0.00 0.10 97.34 17:33:42 04:01:01 PM 2 1.94 0.00 0.30 0.00 0.08 97.67 17:33:42 04:01:01 PM 3 2.49 0.00 0.27 0.02 0.08 97.14 17:33:42 04:02:01 PM all 0.84 0.00 0.26 0.03 0.09 98.78 17:33:42 04:02:01 PM 0 0.53 0.00 0.28 0.00 0.10 99.08 17:33:42 04:02:01 PM 1 0.95 0.00 0.23 0.07 0.08 98.66 17:33:42 04:02:01 PM 2 1.02 0.00 0.32 0.02 0.10 98.55 17:33:42 04:02:01 PM 3 0.87 0.00 0.20 0.02 0.08 98.83 17:33:42 04:03:01 PM all 1.18 0.00 0.24 0.02 0.09 98.47 17:33:42 04:03:01 PM 0 1.13 0.00 0.18 0.00 0.08 98.60 17:33:42 04:03:01 PM 1 1.30 0.00 0.28 0.00 0.10 98.31 17:33:42 04:03:01 PM 2 0.84 0.00 0.25 0.07 0.08 98.76 17:33:42 04:03:01 PM 3 1.44 0.00 0.25 0.00 0.10 98.21 17:33:42 04:04:01 PM all 0.56 0.00 0.25 0.00 0.09 99.11 17:33:42 04:04:01 PM 0 0.43 0.00 0.20 0.00 0.07 99.30 17:33:42 04:04:01 PM 1 0.70 0.00 0.25 0.00 0.10 98.95 17:33:42 04:04:01 PM 2 0.45 0.00 0.28 0.00 0.12 99.15 17:33:42 04:04:01 PM 3 0.64 0.00 0.25 0.00 0.08 99.03 17:33:42 17:33:42 04:04:01 PM CPU %user %nice %system %iowait %steal %idle 17:33:42 04:05:01 PM all 1.44 0.00 0.25 0.00 0.08 98.22 17:33:42 04:05:01 PM 0 1.40 0.00 0.22 0.00 0.08 98.30 17:33:42 04:05:01 PM 1 1.47 0.00 0.20 0.00 0.08 98.25 17:33:42 04:05:01 PM 2 1.22 0.00 0.32 0.00 0.08 98.38 17:33:42 04:05:01 PM 3 1.67 0.00 0.27 0.00 0.08 97.98 17:33:42 04:06:01 PM all 0.59 0.00 0.22 0.00 0.08 99.11 17:33:42 04:06:01 PM 0 0.83 0.00 0.15 0.00 0.08 98.93 17:33:42 04:06:01 PM 1 0.45 0.00 0.32 0.00 0.08 99.15 17:33:42 04:06:01 PM 2 0.50 0.00 0.25 0.00 0.10 99.15 17:33:42 04:06:01 PM 3 0.55 0.00 0.15 0.00 0.07 99.23 17:33:42 04:07:01 PM all 0.63 0.00 0.24 0.00 0.10 99.03 17:33:42 04:07:01 PM 0 0.68 0.00 0.23 0.00 0.08 99.00 17:33:42 04:07:01 PM 1 0.47 0.00 0.30 0.02 0.13 99.08 17:33:42 04:07:01 PM 2 0.45 0.00 0.27 0.00 0.12 99.16 17:33:42 04:07:01 PM 3 0.92 0.00 0.15 0.00 0.07 98.86 17:33:42 04:08:01 PM all 0.56 0.00 0.25 0.00 0.09 99.09 17:33:42 04:08:01 PM 0 0.35 0.00 0.20 0.00 0.08 99.37 17:33:42 04:08:01 PM 1 0.57 0.00 0.35 0.00 0.12 98.96 17:33:42 04:08:01 PM 2 0.43 0.00 0.27 0.02 0.08 99.20 17:33:42 04:08:01 PM 3 0.90 0.00 0.17 0.00 0.08 98.85 17:33:42 04:09:01 PM all 0.56 0.00 0.23 0.00 0.10 99.10 17:33:42 04:09:01 PM 0 0.48 0.00 0.18 0.00 0.10 99.23 17:33:42 04:09:01 PM 1 0.45 0.00 0.28 0.02 0.10 99.15 17:33:42 04:09:01 PM 2 0.55 0.00 0.27 0.00 0.12 99.06 17:33:42 04:09:01 PM 3 0.77 0.00 0.18 0.00 0.10 98.95 17:33:42 04:10:01 PM all 0.48 0.00 0.23 0.00 0.10 99.18 17:33:42 04:10:01 PM 0 0.30 0.00 0.20 0.00 0.08 99.42 17:33:42 04:10:01 PM 1 0.47 0.00 0.33 0.00 0.10 99.10 17:33:42 04:10:01 PM 2 0.43 0.00 0.17 0.02 0.08 99.30 17:33:42 04:10:01 PM 3 0.74 0.00 0.23 0.00 0.12 98.91 17:33:42 04:11:01 PM all 0.49 0.00 0.25 0.01 0.10 99.15 17:33:42 04:11:01 PM 0 0.48 0.00 0.30 0.02 0.12 99.08 17:33:42 04:11:01 PM 1 0.43 0.00 0.27 0.00 0.10 99.20 17:33:42 04:11:01 PM 2 0.42 0.00 0.20 0.00 0.08 99.30 17:33:42 04:11:01 PM 3 0.64 0.00 0.22 0.02 0.12 99.01 17:33:42 04:12:01 PM all 0.51 0.00 0.22 0.02 0.10 99.15 17:33:42 04:12:01 PM 0 0.85 0.00 0.15 0.00 0.08 98.92 17:33:42 04:12:01 PM 1 0.38 0.00 0.22 0.08 0.10 99.21 17:33:42 04:12:01 PM 2 0.49 0.00 0.27 0.00 0.10 99.15 17:33:42 04:12:01 PM 3 0.32 0.00 0.25 0.00 0.10 99.33 17:33:42 04:13:01 PM all 0.50 0.00 0.23 0.05 0.10 99.12 17:33:42 04:13:01 PM 0 0.63 0.00 0.22 0.00 0.10 99.05 17:33:42 04:13:01 PM 1 0.40 0.00 0.23 0.00 0.10 99.26 17:33:42 04:13:01 PM 2 0.45 0.00 0.27 0.10 0.12 99.06 17:33:42 04:13:01 PM 3 0.50 0.00 0.22 0.08 0.10 99.10 17:33:42 04:14:01 PM all 30.53 0.00 1.80 0.35 0.10 67.22 17:33:42 04:14:01 PM 0 33.00 0.00 3.18 0.77 0.10 62.95 17:33:42 04:14:01 PM 1 28.66 0.00 1.66 0.30 0.10 69.28 17:33:42 04:14:01 PM 2 30.75 0.00 1.34 0.07 0.10 67.74 17:33:42 04:14:01 PM 3 29.69 0.00 1.04 0.27 0.10 68.91 17:33:42 04:15:01 PM all 57.67 0.00 1.76 0.73 0.12 39.72 17:33:42 04:15:01 PM 0 62.69 0.00 1.96 0.47 0.12 34.77 17:33:42 04:15:01 PM 1 57.06 0.00 2.36 1.62 0.13 38.82 17:33:42 04:15:01 PM 2 61.22 0.00 1.12 0.10 0.12 37.44 17:33:42 04:15:01 PM 3 49.71 0.00 1.59 0.72 0.12 47.86 17:33:42 17:33:42 04:15:01 PM CPU %user %nice %system %iowait %steal %idle 17:33:42 04:16:01 PM all 10.70 0.00 0.64 0.20 0.08 88.38 17:33:42 04:16:01 PM 0 10.12 0.00 0.80 0.38 0.08 88.61 17:33:42 04:16:01 PM 1 10.89 0.00 0.60 0.12 0.08 88.31 17:33:42 04:16:01 PM 2 10.35 0.00 0.62 0.08 0.08 88.86 17:33:42 04:16:01 PM 3 11.44 0.00 0.52 0.22 0.08 87.73 17:33:42 04:17:01 PM all 3.18 0.00 0.36 0.09 0.08 96.28 17:33:42 04:17:01 PM 0 2.46 0.00 0.38 0.05 0.08 97.02 17:33:42 04:17:01 PM 1 3.33 0.00 0.32 0.10 0.07 96.19 17:33:42 04:17:01 PM 2 3.68 0.00 0.35 0.02 0.10 95.85 17:33:42 04:17:01 PM 3 3.26 0.00 0.40 0.20 0.08 96.05 17:33:42 04:18:01 PM all 46.09 0.00 1.53 0.08 0.11 52.19 17:33:42 04:18:01 PM 0 51.29 0.00 1.07 0.03 0.12 47.49 17:33:42 04:18:01 PM 1 37.85 0.00 2.09 0.15 0.12 59.79 17:33:42 04:18:01 PM 2 50.74 0.00 1.24 0.03 0.10 47.89 17:33:42 04:18:01 PM 3 44.44 0.00 1.72 0.10 0.12 53.61 17:33:42 04:19:01 PM all 22.22 0.00 0.80 0.12 0.10 76.76 17:33:42 04:19:01 PM 0 23.79 0.00 1.02 0.10 0.10 74.99 17:33:42 04:19:01 PM 1 22.03 0.00 0.69 0.05 0.12 77.12 17:33:42 04:19:01 PM 2 19.60 0.00 0.94 0.28 0.12 79.06 17:33:42 04:19:01 PM 3 23.46 0.00 0.55 0.03 0.08 75.87 17:33:42 04:20:01 PM all 3.86 0.00 0.46 0.09 0.10 95.50 17:33:42 04:20:01 PM 0 4.41 0.00 0.37 0.05 0.08 95.08 17:33:42 04:20:01 PM 1 3.80 0.00 0.47 0.17 0.10 95.46 17:33:42 04:20:01 PM 2 3.53 0.00 0.50 0.08 0.10 95.78 17:33:42 04:20:01 PM 3 3.70 0.00 0.49 0.05 0.10 95.66 17:33:42 04:21:01 PM all 45.21 0.00 1.58 0.28 0.11 52.82 17:33:42 04:21:01 PM 0 42.16 0.00 1.27 0.28 0.12 56.17 17:33:42 04:21:01 PM 1 40.93 0.00 1.74 0.44 0.10 56.79 17:33:42 04:21:01 PM 2 49.58 0.00 2.24 0.08 0.13 47.96 17:33:42 04:21:01 PM 3 48.15 0.00 1.07 0.32 0.10 50.36 17:33:42 04:22:01 PM all 34.64 0.00 1.55 0.19 0.10 63.51 17:33:42 04:22:01 PM 0 39.90 0.00 2.34 0.20 0.10 57.46 17:33:42 04:22:01 PM 1 33.77 0.00 0.93 0.07 0.12 65.11 17:33:42 04:22:01 PM 2 35.73 0.00 1.12 0.25 0.10 62.80 17:33:42 04:22:01 PM 3 29.14 0.00 1.83 0.25 0.10 68.68 17:33:42 04:23:01 PM all 28.74 0.00 1.30 0.65 0.10 69.21 17:33:42 04:23:01 PM 0 28.97 0.00 1.25 1.62 0.10 68.05 17:33:42 04:23:01 PM 1 27.04 0.00 1.39 0.72 0.10 70.75 17:33:42 04:23:01 PM 2 32.41 0.00 0.84 0.03 0.08 66.63 17:33:42 04:23:01 PM 3 26.54 0.00 1.71 0.23 0.10 71.42 17:33:42 04:24:01 PM all 61.47 0.00 1.99 0.23 0.11 36.20 17:33:42 04:24:01 PM 0 62.88 0.00 1.30 0.10 0.10 35.62 17:33:42 04:24:01 PM 1 54.73 0.00 2.56 0.30 0.12 42.29 17:33:42 04:24:01 PM 2 63.67 0.00 2.26 0.18 0.12 33.77 17:33:42 04:24:01 PM 3 64.59 0.00 1.82 0.33 0.12 33.13 17:33:42 04:25:01 PM all 24.46 0.00 0.89 0.40 0.10 74.15 17:33:42 04:25:01 PM 0 22.09 0.00 0.87 0.80 0.12 76.12 17:33:42 04:25:01 PM 1 26.75 0.00 1.12 0.30 0.10 71.73 17:33:42 04:25:01 PM 2 26.49 0.00 0.77 0.45 0.10 72.19 17:33:42 04:25:01 PM 3 22.51 0.00 0.79 0.05 0.10 76.55 17:33:42 04:26:01 PM all 14.13 0.00 0.92 0.32 0.11 84.52 17:33:42 04:26:01 PM 0 12.24 0.00 1.24 0.28 0.10 86.14 17:33:42 04:26:01 PM 1 13.16 0.00 1.15 0.42 0.12 85.15 17:33:42 04:26:01 PM 2 16.26 0.00 0.72 0.03 0.12 82.87 17:33:42 04:26:01 PM 3 14.85 0.00 0.59 0.54 0.10 83.93 17:33:42 17:33:42 04:26:01 PM CPU %user %nice %system %iowait %steal %idle 17:33:42 04:27:01 PM all 32.01 0.00 1.21 0.22 0.10 66.46 17:33:42 04:27:01 PM 0 25.81 0.00 1.67 0.15 0.10 72.26 17:33:42 04:27:01 PM 1 34.37 0.00 1.19 0.08 0.10 64.26 17:33:42 04:27:01 PM 2 33.06 0.00 1.27 0.62 0.10 64.95 17:33:42 04:27:01 PM 3 34.79 0.00 0.72 0.02 0.10 64.37 17:33:42 04:28:01 PM all 23.82 0.00 0.77 0.18 0.10 75.15 17:33:42 04:28:01 PM 0 21.86 0.00 0.89 0.25 0.07 76.93 17:33:42 04:28:01 PM 1 25.41 0.00 0.54 0.02 0.12 73.92 17:33:42 04:28:01 PM 2 22.03 0.00 1.00 0.17 0.10 76.70 17:33:42 04:28:01 PM 3 25.96 0.00 0.64 0.27 0.10 73.03 17:33:42 04:29:01 PM all 16.53 0.00 0.79 0.04 0.10 82.55 17:33:42 04:29:01 PM 0 17.33 0.00 1.17 0.02 0.10 81.38 17:33:42 04:29:01 PM 1 18.35 0.00 0.48 0.02 0.10 81.05 17:33:42 04:29:01 PM 2 18.67 0.00 0.55 0.00 0.10 80.68 17:33:42 04:29:01 PM 3 11.75 0.00 0.94 0.12 0.10 87.09 17:33:42 04:30:01 PM all 60.19 0.00 1.99 0.28 0.10 37.45 17:33:42 04:30:01 PM 0 62.28 0.00 1.96 0.35 0.10 35.31 17:33:42 04:30:01 PM 1 53.36 0.00 2.31 0.28 0.10 43.94 17:33:42 04:30:01 PM 2 65.46 0.00 1.49 0.25 0.08 32.72 17:33:42 04:30:01 PM 3 59.67 0.00 2.18 0.22 0.10 37.83 17:33:42 04:31:01 PM all 8.99 0.00 0.70 0.04 0.08 90.18 17:33:42 04:31:01 PM 0 9.38 0.00 0.84 0.05 0.07 89.67 17:33:42 04:31:01 PM 1 8.33 0.00 0.74 0.08 0.08 90.77 17:33:42 04:31:01 PM 2 8.86 0.00 0.59 0.02 0.10 90.44 17:33:42 04:31:01 PM 3 9.41 0.00 0.65 0.02 0.08 89.84 17:33:42 04:32:01 PM all 42.33 0.00 1.27 0.15 0.10 56.15 17:33:42 04:32:01 PM 0 38.97 0.00 1.57 0.54 0.10 58.83 17:33:42 04:32:01 PM 1 43.09 0.00 1.44 0.02 0.08 55.37 17:33:42 04:32:01 PM 2 43.72 0.00 1.27 0.02 0.10 54.89 17:33:42 04:32:01 PM 3 43.56 0.00 0.80 0.02 0.10 55.52 17:33:42 04:33:01 PM all 33.73 0.00 1.31 0.08 0.09 64.79 17:33:42 04:33:01 PM 0 36.01 0.00 0.95 0.07 0.08 62.88 17:33:42 04:33:01 PM 1 32.76 0.00 1.54 0.15 0.10 65.45 17:33:42 04:33:01 PM 2 36.36 0.00 1.04 0.02 0.08 62.50 17:33:42 04:33:01 PM 3 29.78 0.00 1.71 0.07 0.10 68.35 17:33:42 04:34:02 PM all 31.75 0.00 1.05 0.16 0.10 66.94 17:33:42 04:34:02 PM 0 33.95 0.00 0.94 0.08 0.10 64.93 17:33:42 04:34:02 PM 1 30.27 0.00 1.14 0.35 0.12 68.12 17:33:42 04:34:02 PM 2 29.16 0.00 1.11 0.07 0.10 69.56 17:33:42 04:34:02 PM 3 33.60 0.00 1.02 0.13 0.08 65.16 17:33:42 04:35:01 PM all 6.59 0.00 0.46 0.06 0.09 92.80 17:33:42 04:35:01 PM 0 6.58 0.00 0.42 0.08 0.07 92.85 17:33:42 04:35:01 PM 1 7.06 0.00 0.43 0.05 0.09 92.38 17:33:42 04:35:01 PM 2 6.17 0.00 0.51 0.09 0.10 93.14 17:33:42 04:35:01 PM 3 6.55 0.00 0.48 0.03 0.09 92.86 17:33:42 04:36:01 PM all 26.95 0.00 1.23 0.11 0.09 71.62 17:33:42 04:36:01 PM 0 27.10 0.00 1.86 0.17 0.08 70.79 17:33:42 04:36:01 PM 1 28.90 0.00 1.05 0.03 0.08 69.93 17:33:42 04:36:01 PM 2 29.37 0.00 0.84 0.03 0.10 69.66 17:33:42 04:36:01 PM 3 22.43 0.00 1.17 0.22 0.08 76.10 17:33:42 04:37:01 PM all 40.68 0.00 1.19 0.27 0.11 57.75 17:33:42 04:37:01 PM 0 39.93 0.00 1.36 0.69 0.10 57.93 17:33:42 04:37:01 PM 1 40.53 0.00 0.90 0.02 0.12 58.43 17:33:42 04:37:01 PM 2 43.46 0.00 1.10 0.23 0.08 55.11 17:33:42 04:37:01 PM 3 38.82 0.00 1.41 0.13 0.13 59.51 17:33:42 17:33:42 04:37:01 PM CPU %user %nice %system %iowait %steal %idle 17:33:42 04:38:01 PM all 2.22 0.00 0.31 0.01 0.08 97.38 17:33:42 04:38:01 PM 0 2.30 0.00 0.28 0.00 0.10 97.31 17:33:42 04:38:01 PM 1 2.32 0.00 0.30 0.00 0.07 97.31 17:33:42 04:38:01 PM 2 2.12 0.00 0.30 0.00 0.08 97.49 17:33:42 04:38:01 PM 3 2.13 0.00 0.33 0.03 0.08 97.42 17:33:42 04:39:01 PM all 4.17 0.00 0.38 0.18 0.08 95.19 17:33:42 04:39:01 PM 0 4.18 0.00 0.37 0.03 0.05 95.37 17:33:42 04:39:01 PM 1 4.20 0.00 0.45 0.15 0.08 95.12 17:33:42 04:39:01 PM 2 3.91 0.00 0.43 0.42 0.10 95.14 17:33:42 04:39:01 PM 3 4.39 0.00 0.28 0.10 0.08 95.14 17:33:42 04:40:01 PM all 3.58 0.00 0.41 0.22 0.09 95.70 17:33:42 04:40:01 PM 0 3.71 0.00 0.37 0.08 0.08 95.76 17:33:42 04:40:01 PM 1 3.43 0.00 0.35 0.32 0.12 95.79 17:33:42 04:40:01 PM 2 3.16 0.00 0.50 0.35 0.08 95.90 17:33:42 04:40:01 PM 3 4.04 0.00 0.40 0.12 0.08 95.36 17:33:42 04:41:01 PM all 2.32 0.99 0.42 0.33 0.10 95.83 17:33:42 04:41:01 PM 0 2.52 0.02 0.38 0.35 0.10 96.63 17:33:42 04:41:01 PM 1 2.24 0.00 0.40 0.30 0.10 96.95 17:33:42 04:41:01 PM 2 2.22 3.95 0.62 0.47 0.10 92.64 17:33:42 04:41:01 PM 3 2.28 0.00 0.28 0.20 0.12 97.12 17:33:42 04:42:01 PM all 1.54 0.00 0.30 0.03 0.09 98.04 17:33:42 04:42:01 PM 0 1.34 0.00 0.30 0.05 0.08 98.23 17:33:42 04:42:01 PM 1 1.46 0.00 0.30 0.02 0.10 98.13 17:33:42 04:42:01 PM 2 1.60 0.00 0.37 0.02 0.12 97.89 17:33:42 04:42:01 PM 3 1.77 0.00 0.22 0.03 0.07 97.91 17:33:42 04:43:01 PM all 2.20 0.00 0.33 0.08 0.08 97.30 17:33:42 04:43:01 PM 0 2.24 0.00 0.32 0.07 0.07 97.31 17:33:42 04:43:01 PM 1 2.46 0.00 0.35 0.05 0.08 97.05 17:33:42 04:43:01 PM 2 1.89 0.00 0.37 0.12 0.08 97.54 17:33:42 04:43:01 PM 3 2.23 0.00 0.30 0.08 0.10 97.29 17:33:42 04:44:01 PM all 14.38 0.00 0.96 0.13 0.08 84.44 17:33:42 04:44:01 PM 0 11.14 0.00 1.16 0.07 0.08 87.56 17:33:42 04:44:01 PM 1 15.62 0.00 0.79 0.12 0.08 83.39 17:33:42 04:44:01 PM 2 15.83 0.00 0.82 0.05 0.10 83.20 17:33:42 04:44:01 PM 3 14.96 0.00 1.09 0.28 0.07 83.60 17:33:42 04:45:01 PM all 50.15 0.00 1.49 0.27 0.10 47.98 17:33:42 04:45:01 PM 0 50.85 0.00 1.67 0.27 0.10 47.11 17:33:42 04:45:01 PM 1 50.59 0.00 1.10 0.13 0.10 48.07 17:33:42 04:45:01 PM 2 46.46 0.00 1.46 0.60 0.10 51.38 17:33:42 04:45:01 PM 3 52.70 0.00 1.72 0.08 0.12 45.37 17:33:42 04:46:01 PM all 4.22 0.00 0.38 0.33 0.08 95.00 17:33:42 04:46:01 PM 0 3.88 0.00 0.45 0.65 0.08 94.93 17:33:42 04:46:01 PM 1 4.34 0.00 0.35 0.22 0.08 95.01 17:33:42 04:46:01 PM 2 4.13 0.00 0.42 0.33 0.08 95.04 17:33:42 04:46:01 PM 3 4.52 0.00 0.28 0.13 0.05 95.01 17:33:42 04:47:01 PM all 7.42 0.00 0.57 0.26 0.08 91.66 17:33:42 04:47:01 PM 0 6.73 0.00 0.65 0.33 0.08 92.20 17:33:42 04:47:01 PM 1 8.89 0.00 0.47 0.18 0.08 90.38 17:33:42 04:47:01 PM 2 7.42 0.00 0.55 0.39 0.07 91.58 17:33:42 04:47:01 PM 3 6.65 0.00 0.62 0.13 0.10 92.49 17:33:42 04:48:01 PM all 2.98 0.00 0.40 0.12 0.08 96.42 17:33:42 04:48:01 PM 0 2.98 0.00 0.40 0.15 0.08 96.39 17:33:42 04:48:01 PM 1 3.01 0.00 0.38 0.12 0.08 96.40 17:33:42 04:48:01 PM 2 3.36 0.00 0.37 0.10 0.08 96.08 17:33:42 04:48:01 PM 3 2.58 0.00 0.44 0.10 0.08 96.80 17:33:42 17:33:42 04:48:01 PM CPU %user %nice %system %iowait %steal %idle 17:33:42 04:49:01 PM all 2.94 0.00 0.41 0.14 0.08 96.43 17:33:42 04:49:01 PM 0 2.38 0.00 0.47 0.08 0.07 97.01 17:33:42 04:49:01 PM 1 2.81 0.00 0.44 0.23 0.08 96.44 17:33:42 04:49:01 PM 2 3.17 0.00 0.37 0.08 0.08 96.29 17:33:42 04:49:01 PM 3 3.38 0.00 0.37 0.17 0.08 96.00 17:33:42 04:50:01 PM all 3.90 0.00 0.43 0.13 0.08 95.45 17:33:42 04:50:01 PM 0 5.60 0.00 0.35 0.12 0.07 93.87 17:33:42 04:50:01 PM 1 3.31 0.00 0.45 0.27 0.08 95.88 17:33:42 04:50:01 PM 2 3.30 0.00 0.47 0.07 0.10 96.06 17:33:42 04:50:01 PM 3 3.39 0.00 0.45 0.08 0.07 96.01 17:33:42 04:51:01 PM all 4.99 0.00 0.59 0.16 0.08 94.18 17:33:42 04:51:01 PM 0 4.88 0.00 0.64 0.17 0.08 94.23 17:33:42 04:51:01 PM 1 4.64 0.00 0.77 0.34 0.08 94.17 17:33:42 04:51:01 PM 2 5.67 0.00 0.44 0.05 0.07 93.78 17:33:42 04:51:01 PM 3 4.77 0.00 0.52 0.10 0.07 94.54 17:33:42 04:52:01 PM all 59.01 0.00 2.13 0.26 0.12 38.48 17:33:42 04:52:01 PM 0 57.55 0.00 2.77 0.15 0.12 39.42 17:33:42 04:52:01 PM 1 59.32 0.00 2.36 0.23 0.12 37.97 17:33:42 04:52:01 PM 2 58.66 0.00 2.29 0.65 0.12 38.28 17:33:42 04:52:01 PM 3 60.50 0.00 1.10 0.00 0.13 38.26 17:33:42 04:53:01 PM all 17.00 0.00 0.55 0.11 0.09 82.25 17:33:42 04:53:01 PM 0 15.71 0.00 0.62 0.02 0.08 83.57 17:33:42 04:53:01 PM 1 18.34 0.00 0.50 0.08 0.10 80.98 17:33:42 04:53:01 PM 2 16.14 0.00 0.54 0.13 0.10 83.09 17:33:42 04:53:01 PM 3 17.79 0.00 0.54 0.22 0.08 81.37 17:33:42 04:54:01 PM all 11.31 0.00 0.55 0.15 0.08 87.90 17:33:42 04:54:01 PM 0 11.35 0.00 0.55 0.12 0.08 87.89 17:33:42 04:54:01 PM 1 11.19 0.00 0.54 0.17 0.08 88.02 17:33:42 04:54:01 PM 2 11.57 0.00 0.54 0.18 0.08 87.63 17:33:42 04:54:01 PM 3 11.14 0.00 0.59 0.12 0.08 88.08 17:33:42 04:55:01 PM all 7.01 0.00 0.44 0.33 0.08 92.14 17:33:42 04:55:01 PM 0 5.83 0.00 0.55 0.60 0.08 92.93 17:33:42 04:55:01 PM 1 7.03 0.00 0.40 0.23 0.08 92.25 17:33:42 04:55:01 PM 2 7.81 0.00 0.42 0.42 0.08 91.27 17:33:42 04:55:01 PM 3 7.37 0.00 0.39 0.07 0.08 92.10 17:33:42 04:56:01 PM all 3.88 0.00 0.41 0.06 0.08 95.57 17:33:42 04:56:01 PM 0 3.85 0.00 0.44 0.03 0.07 95.62 17:33:42 04:56:01 PM 1 3.57 0.00 0.50 0.03 0.10 95.80 17:33:42 04:56:01 PM 2 3.90 0.00 0.38 0.02 0.10 95.60 17:33:42 04:56:01 PM 3 4.22 0.00 0.30 0.15 0.07 95.27 17:33:42 04:57:01 PM all 4.08 0.00 0.44 0.08 0.07 95.33 17:33:42 04:57:01 PM 0 4.03 0.00 0.40 0.12 0.05 95.40 17:33:42 04:57:01 PM 1 4.41 0.00 0.45 0.07 0.07 95.01 17:33:42 04:57:01 PM 2 4.20 0.00 0.52 0.05 0.07 95.16 17:33:42 04:57:01 PM 3 3.68 0.00 0.40 0.08 0.08 95.75 17:33:42 04:58:01 PM all 2.44 0.00 0.34 0.28 0.09 96.85 17:33:42 04:58:01 PM 0 2.39 0.00 0.37 0.42 0.08 96.74 17:33:42 04:58:01 PM 1 2.84 0.00 0.30 0.17 0.08 96.60 17:33:42 04:58:01 PM 2 2.39 0.00 0.33 0.40 0.10 96.77 17:33:42 04:58:01 PM 3 2.14 0.00 0.35 0.13 0.08 97.29 17:33:42 04:59:01 PM all 2.68 0.00 0.38 0.30 0.08 96.55 17:33:42 04:59:01 PM 0 2.51 0.00 0.30 0.20 0.07 96.93 17:33:42 04:59:01 PM 1 2.68 0.00 0.42 0.32 0.07 96.52 17:33:42 04:59:01 PM 2 2.31 0.00 0.49 0.37 0.10 96.73 17:33:42 04:59:01 PM 3 3.23 0.00 0.33 0.32 0.10 96.02 17:33:42 17:33:42 04:59:01 PM CPU %user %nice %system %iowait %steal %idle 17:33:42 05:00:01 PM all 51.05 0.00 1.92 0.18 0.11 46.74 17:33:42 05:00:01 PM 0 56.47 0.00 1.24 0.23 0.10 41.95 17:33:42 05:00:01 PM 1 53.99 0.00 2.43 0.17 0.12 43.30 17:33:42 05:00:01 PM 2 47.30 0.00 1.61 0.10 0.12 50.87 17:33:42 05:00:01 PM 3 46.43 0.00 2.40 0.20 0.10 50.86 17:33:42 05:01:01 PM all 25.61 0.00 0.82 0.10 0.10 73.38 17:33:42 05:01:01 PM 0 25.76 0.00 0.77 0.03 0.10 73.33 17:33:42 05:01:01 PM 1 28.99 0.00 0.67 0.32 0.08 69.94 17:33:42 05:01:01 PM 2 20.75 0.00 1.02 0.03 0.10 78.10 17:33:42 05:01:01 PM 3 26.90 0.00 0.80 0.03 0.10 72.16 17:33:42 05:02:01 PM all 11.97 0.00 0.60 0.18 0.09 87.16 17:33:42 05:02:01 PM 0 12.27 0.00 0.53 0.15 0.07 86.98 17:33:42 05:02:01 PM 1 11.11 0.00 0.74 0.33 0.10 87.72 17:33:42 05:02:01 PM 2 11.84 0.00 0.62 0.17 0.10 87.27 17:33:42 05:02:01 PM 3 12.64 0.00 0.52 0.08 0.08 86.67 17:33:42 05:03:01 PM all 5.21 0.00 0.35 0.03 0.09 94.32 17:33:42 05:03:01 PM 0 4.32 0.00 0.49 0.07 0.10 95.03 17:33:42 05:03:01 PM 1 5.55 0.00 0.37 0.02 0.08 93.98 17:33:42 05:03:01 PM 2 4.77 0.00 0.28 0.00 0.08 94.86 17:33:42 05:03:01 PM 3 6.21 0.00 0.25 0.03 0.08 93.43 17:33:42 05:04:01 PM all 4.28 0.00 0.41 0.05 0.10 95.16 17:33:42 05:04:01 PM 0 3.73 0.00 0.45 0.08 0.10 95.63 17:33:42 05:04:01 PM 1 4.70 0.00 0.33 0.02 0.08 94.87 17:33:42 05:04:01 PM 2 3.70 0.00 0.49 0.08 0.12 95.61 17:33:42 05:04:01 PM 3 4.98 0.00 0.35 0.03 0.08 94.55 17:33:42 05:05:01 PM all 2.16 0.00 0.32 0.02 0.08 97.42 17:33:42 05:05:01 PM 0 1.99 0.00 0.32 0.03 0.08 97.57 17:33:42 05:05:01 PM 1 2.18 0.00 0.32 0.02 0.08 97.41 17:33:42 05:05:01 PM 2 1.86 0.00 0.39 0.00 0.08 97.67 17:33:42 05:05:01 PM 3 2.63 0.00 0.27 0.02 0.07 97.02 17:33:42 05:06:01 PM all 1.40 0.00 0.31 0.06 0.08 98.16 17:33:42 05:06:01 PM 0 1.17 0.00 0.30 0.12 0.07 98.35 17:33:42 05:06:01 PM 1 1.81 0.00 0.32 0.05 0.08 97.74 17:33:42 05:06:01 PM 2 1.34 0.00 0.30 0.03 0.07 98.26 17:33:42 05:06:01 PM 3 1.27 0.00 0.30 0.03 0.08 98.31 17:33:42 05:07:01 PM all 2.98 0.00 0.38 0.10 0.09 96.45 17:33:42 05:07:01 PM 0 3.12 0.00 0.40 0.15 0.08 96.24 17:33:42 05:07:01 PM 1 2.91 0.00 0.39 0.03 0.08 96.59 17:33:42 05:07:01 PM 2 2.71 0.00 0.40 0.07 0.10 96.72 17:33:42 05:07:01 PM 3 3.17 0.00 0.33 0.15 0.10 96.25 17:33:42 05:08:01 PM all 1.28 0.00 0.30 0.12 0.07 98.23 17:33:42 05:08:01 PM 0 1.14 0.00 0.25 0.20 0.07 98.34 17:33:42 05:08:01 PM 1 1.65 0.00 0.23 0.00 0.07 98.05 17:33:42 05:08:01 PM 2 1.16 0.00 0.37 0.15 0.08 98.24 17:33:42 05:08:01 PM 3 1.19 0.00 0.33 0.13 0.07 98.27 17:33:42 05:09:01 PM all 3.74 0.00 0.46 0.14 0.10 95.57 17:33:42 05:09:01 PM 0 3.16 0.00 0.45 0.15 0.10 96.14 17:33:42 05:09:01 PM 1 4.62 0.00 0.37 0.02 0.10 94.90 17:33:42 05:09:01 PM 2 3.57 0.00 0.52 0.34 0.10 95.48 17:33:42 05:09:01 PM 3 3.60 0.00 0.50 0.05 0.08 95.76 17:33:42 05:10:01 PM all 39.53 0.00 2.09 0.58 0.10 57.71 17:33:42 05:10:01 PM 0 35.56 0.00 2.01 0.49 0.10 61.84 17:33:42 05:10:01 PM 1 32.99 0.00 2.69 1.70 0.08 62.54 17:33:42 05:10:01 PM 2 46.59 0.00 2.43 0.10 0.10 50.78 17:33:42 05:10:01 PM 3 42.95 0.00 1.22 0.03 0.10 55.70 17:33:42 17:33:42 05:10:01 PM CPU %user %nice %system %iowait %steal %idle 17:33:42 05:11:01 PM all 71.73 0.00 2.04 1.27 0.12 24.84 17:33:42 05:11:01 PM 0 77.29 0.00 2.09 0.02 0.12 20.48 17:33:42 05:11:01 PM 1 57.20 0.00 2.11 4.34 0.13 36.21 17:33:42 05:11:01 PM 2 71.22 0.00 2.32 0.42 0.12 25.93 17:33:42 05:11:01 PM 3 81.17 0.00 1.66 0.32 0.10 16.75 17:33:42 05:12:01 PM all 4.24 0.00 0.44 0.29 0.09 94.94 17:33:42 05:12:01 PM 0 3.51 0.00 0.43 0.38 0.08 95.59 17:33:42 05:12:01 PM 1 4.53 0.00 0.50 0.37 0.10 94.49 17:33:42 05:12:01 PM 2 4.00 0.00 0.49 0.35 0.10 95.06 17:33:42 05:12:01 PM 3 4.90 0.00 0.33 0.05 0.08 94.63 17:33:42 05:13:01 PM all 29.27 0.00 1.38 1.04 0.09 68.23 17:33:42 05:13:01 PM 0 31.14 0.00 1.12 0.18 0.08 67.47 17:33:42 05:13:01 PM 1 27.89 0.00 1.88 0.12 0.10 70.02 17:33:42 05:13:01 PM 2 30.15 0.00 1.63 3.52 0.08 64.62 17:33:42 05:13:01 PM 3 27.88 0.00 0.89 0.35 0.08 70.79 17:33:42 05:14:01 PM all 70.12 0.00 1.70 0.36 0.12 27.70 17:33:42 05:14:01 PM 0 69.56 0.00 2.46 0.18 0.10 27.70 17:33:42 05:14:01 PM 1 78.66 0.00 1.74 0.12 0.14 19.35 17:33:42 05:14:01 PM 2 69.10 0.00 1.26 1.02 0.12 28.51 17:33:42 05:14:01 PM 3 63.25 0.00 1.35 0.10 0.12 35.18 17:33:42 05:15:01 PM all 10.99 0.00 0.61 3.07 0.12 85.21 17:33:42 05:15:01 PM 0 10.84 0.00 0.62 2.71 0.10 85.73 17:33:42 05:15:01 PM 1 10.36 0.00 0.62 3.45 0.12 85.44 17:33:42 05:15:01 PM 2 12.02 0.00 0.55 3.40 0.13 83.90 17:33:42 05:15:01 PM 3 10.76 0.00 0.65 2.71 0.12 85.75 17:33:42 05:16:01 PM all 1.18 0.00 0.27 0.15 0.08 98.32 17:33:42 05:16:01 PM 0 1.29 0.00 0.30 0.35 0.08 97.98 17:33:42 05:16:01 PM 1 0.90 0.00 0.30 0.25 0.08 98.46 17:33:42 05:16:01 PM 2 1.37 0.00 0.27 0.00 0.07 98.29 17:33:42 05:16:01 PM 3 1.14 0.00 0.22 0.02 0.07 98.56 17:33:42 05:17:01 PM all 2.08 0.00 0.32 0.00 0.07 97.53 17:33:42 05:17:01 PM 0 2.39 0.00 0.27 0.00 0.07 97.28 17:33:42 05:17:01 PM 1 1.72 0.00 0.42 0.00 0.07 97.79 17:33:42 05:17:01 PM 2 2.17 0.00 0.30 0.00 0.07 97.46 17:33:42 05:17:01 PM 3 2.03 0.00 0.30 0.00 0.07 97.60 17:33:42 05:18:02 PM all 1.20 0.00 0.26 0.00 0.07 98.47 17:33:42 05:18:02 PM 0 1.62 0.00 0.18 0.00 0.05 98.15 17:33:42 05:18:02 PM 1 0.94 0.00 0.28 0.00 0.07 98.71 17:33:42 05:18:02 PM 2 1.41 0.00 0.27 0.00 0.08 98.24 17:33:42 05:18:02 PM 3 0.84 0.00 0.28 0.02 0.08 98.78 17:33:42 05:19:01 PM all 2.53 0.00 0.34 0.00 0.09 97.04 17:33:42 05:19:01 PM 0 2.41 0.00 0.29 0.00 0.08 97.21 17:33:42 05:19:01 PM 1 2.19 0.00 0.39 0.00 0.08 97.33 17:33:42 05:19:01 PM 2 3.59 0.00 0.34 0.00 0.09 95.99 17:33:42 05:19:01 PM 3 1.93 0.00 0.36 0.00 0.09 97.63 17:33:42 05:20:01 PM all 1.50 0.00 0.33 0.32 0.09 97.77 17:33:42 05:20:01 PM 0 1.09 0.00 0.27 0.17 0.08 98.40 17:33:42 05:20:01 PM 1 1.54 0.00 0.42 0.08 0.10 97.86 17:33:42 05:20:01 PM 2 2.06 0.00 0.28 0.50 0.07 97.09 17:33:42 05:20:01 PM 3 1.30 0.00 0.33 0.52 0.12 97.73 17:33:42 05:21:01 PM all 0.60 0.00 0.24 0.04 0.06 99.06 17:33:42 05:21:01 PM 0 0.35 0.00 0.15 0.15 0.05 99.30 17:33:42 05:21:01 PM 1 0.62 0.00 0.32 0.00 0.07 98.99 17:33:42 05:21:01 PM 2 0.94 0.00 0.27 0.00 0.07 98.73 17:33:42 05:21:01 PM 3 0.49 0.00 0.23 0.00 0.07 99.21 17:33:42 17:33:42 05:21:01 PM CPU %user %nice %system %iowait %steal %idle 17:33:42 05:22:01 PM all 0.85 0.00 0.25 0.03 0.07 98.80 17:33:42 05:22:01 PM 0 0.54 0.00 0.22 0.10 0.07 99.08 17:33:42 05:22:01 PM 1 0.79 0.00 0.38 0.00 0.07 98.76 17:33:42 05:22:01 PM 2 1.17 0.00 0.17 0.00 0.07 98.60 17:33:42 05:22:01 PM 3 0.92 0.00 0.23 0.00 0.07 98.78 17:33:42 05:23:01 PM all 0.73 0.00 0.26 0.01 0.07 98.94 17:33:42 05:23:01 PM 0 0.43 0.00 0.25 0.02 0.07 99.23 17:33:42 05:23:01 PM 1 0.62 0.00 0.32 0.00 0.08 98.98 17:33:42 05:23:01 PM 2 0.95 0.00 0.27 0.00 0.07 98.71 17:33:42 05:23:01 PM 3 0.90 0.00 0.20 0.02 0.05 98.83 17:33:42 05:24:01 PM all 0.72 0.00 0.27 0.04 0.08 98.90 17:33:42 05:24:01 PM 0 0.50 0.00 0.30 0.15 0.07 98.98 17:33:42 05:24:01 PM 1 1.04 0.00 0.25 0.00 0.07 98.64 17:33:42 05:24:01 PM 2 0.60 0.00 0.27 0.00 0.08 99.05 17:33:42 05:24:01 PM 3 0.72 0.00 0.25 0.00 0.08 98.94 17:33:42 05:25:01 PM all 0.49 0.00 0.26 0.06 0.06 99.13 17:33:42 05:25:01 PM 0 0.32 0.00 0.27 0.25 0.05 99.11 17:33:42 05:25:01 PM 1 0.70 0.00 0.27 0.00 0.07 98.96 17:33:42 05:25:01 PM 2 0.52 0.00 0.30 0.00 0.07 99.11 17:33:42 05:25:01 PM 3 0.40 0.00 0.18 0.00 0.07 99.35 17:33:42 05:26:01 PM all 0.66 0.00 0.26 0.00 0.08 98.99 17:33:42 05:26:01 PM 0 0.63 0.00 0.23 0.00 0.08 99.05 17:33:42 05:26:01 PM 1 0.94 0.00 0.28 0.00 0.08 98.69 17:33:42 05:26:01 PM 2 0.60 0.00 0.32 0.02 0.07 99.00 17:33:42 05:26:01 PM 3 0.47 0.00 0.22 0.00 0.10 99.21 17:33:42 05:27:01 PM all 0.54 0.00 0.22 0.08 0.08 99.08 17:33:42 05:27:01 PM 0 0.52 0.00 0.23 0.30 0.08 98.86 17:33:42 05:27:01 PM 1 0.72 0.00 0.27 0.00 0.08 98.93 17:33:42 05:27:01 PM 2 0.55 0.00 0.27 0.03 0.07 99.08 17:33:42 05:27:01 PM 3 0.35 0.00 0.12 0.00 0.08 99.45 17:33:42 05:28:01 PM all 0.56 0.00 0.26 0.00 0.07 99.11 17:33:42 05:28:01 PM 0 0.55 0.00 0.22 0.02 0.05 99.16 17:33:42 05:28:01 PM 1 0.72 0.00 0.27 0.00 0.07 98.95 17:33:42 05:28:01 PM 2 0.59 0.00 0.28 0.00 0.08 99.05 17:33:42 05:28:01 PM 3 0.40 0.00 0.25 0.00 0.07 99.28 17:33:42 05:29:01 PM all 0.62 0.00 0.24 0.00 0.07 99.07 17:33:42 05:29:01 PM 0 0.58 0.00 0.20 0.00 0.07 99.15 17:33:42 05:29:01 PM 1 0.85 0.00 0.23 0.00 0.07 98.85 17:33:42 05:29:01 PM 2 0.49 0.00 0.27 0.00 0.07 99.18 17:33:42 05:29:01 PM 3 0.55 0.00 0.25 0.00 0.08 99.11 17:33:42 05:30:01 PM all 0.55 0.00 0.23 0.00 0.08 99.13 17:33:42 05:30:01 PM 0 0.30 0.00 0.20 0.00 0.05 99.45 17:33:42 05:30:01 PM 1 0.49 0.00 0.23 0.02 0.08 99.18 17:33:42 05:30:01 PM 2 0.59 0.00 0.28 0.00 0.10 99.03 17:33:42 05:30:01 PM 3 0.84 0.00 0.20 0.00 0.10 98.86 17:33:42 05:31:01 PM all 0.47 0.00 0.24 0.05 0.08 99.16 17:33:42 05:31:01 PM 0 0.28 0.00 0.20 0.00 0.08 99.43 17:33:42 05:31:01 PM 1 0.37 0.00 0.32 0.18 0.08 99.05 17:33:42 05:31:01 PM 2 0.43 0.00 0.27 0.00 0.08 99.21 17:33:42 05:31:01 PM 3 0.80 0.00 0.18 0.00 0.07 98.95 17:33:42 05:32:01 PM all 2.06 0.00 0.52 0.26 0.07 97.09 17:33:42 05:32:01 PM 0 5.62 0.00 0.74 0.84 0.07 92.74 17:33:42 05:32:01 PM 1 0.69 0.00 0.40 0.17 0.08 98.66 17:33:42 05:32:01 PM 2 0.90 0.00 0.62 0.03 0.07 98.38 17:33:42 05:32:01 PM 3 1.02 0.00 0.32 0.00 0.07 98.59 17:33:42 17:33:42 05:32:01 PM CPU %user %nice %system %iowait %steal %idle 17:33:42 05:33:01 PM all 29.97 0.00 2.70 7.87 0.09 59.37 17:33:42 05:33:01 PM 0 37.61 0.00 5.22 14.48 0.10 42.59 17:33:42 05:33:01 PM 1 23.57 0.00 2.19 5.17 0.08 68.98 17:33:42 05:33:01 PM 2 33.25 0.00 2.17 9.37 0.08 55.12 17:33:42 05:33:01 PM 3 25.45 0.00 1.22 2.45 0.08 70.80 17:33:42 Average: all 16.93 0.03 1.17 0.85 0.09 80.94 17:33:42 Average: 0 16.82 0.01 1.18 0.93 0.09 80.96 17:33:42 Average: 1 16.63 0.03 1.27 0.69 0.10 81.28 17:33:42 Average: 2 17.24 0.05 1.15 1.05 0.10 80.41 17:33:42 Average: 3 17.02 0.02 1.07 0.71 0.09 81.09 17:33:42 17:33:42 17:33:42