Triggered by Gerrit: https://git.opendaylight.org/gerrit/c/bgpcep/+/118783 Running as SYSTEM [EnvInject] - Loading node environment variables. Building remotely on prd-ubuntu2204-docker-8c-8g-3161 (ubuntu2204-docker-8c-8g) in workspace /w/workspace/bgpcep-tox-verify-master [ssh-agent] Looking for ssh-agent implementation... [ssh-agent] Exec ssh-agent (binary ssh-agent on a remote machine) $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-XXXXXXkmZgxN/agent.1656 SSH_AGENT_PID=1658 [ssh-agent] Started. Running ssh-add (command line suppressed) Identity added: /w/workspace/bgpcep-tox-verify-master@tmp/private_key_38219689097646129.key (/w/workspace/bgpcep-tox-verify-master@tmp/private_key_38219689097646129.key) [ssh-agent] Using credentials jenkins (jenkins-ssh) The recommended git tool is: NONE using credential jenkins-ssh Wiping out workspace first. Cloning the remote Git repository Cloning repository git://devvexx.opendaylight.org/mirror/bgpcep > git init /w/workspace/bgpcep-tox-verify-master # timeout=10 Fetching upstream changes from git://devvexx.opendaylight.org/mirror/bgpcep > git --version # timeout=10 > git --version # 'git version 2.34.1' using GIT_SSH to set credentials jenkins-ssh Verifying host key using known hosts file 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. > git fetch --tags --force --progress -- git://devvexx.opendaylight.org/mirror/bgpcep +refs/heads/*:refs/remotes/origin/* # timeout=10 > git config remote.origin.url git://devvexx.opendaylight.org/mirror/bgpcep # timeout=10 > git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10 > git config remote.origin.url git://devvexx.opendaylight.org/mirror/bgpcep # timeout=10 Fetching upstream changes from git://devvexx.opendaylight.org/mirror/bgpcep using GIT_SSH to set credentials jenkins-ssh Verifying host key using known hosts file 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. > git fetch --tags --force --progress -- git://devvexx.opendaylight.org/mirror/bgpcep refs/changes/83/118783/8 # timeout=10 > git rev-parse b8cdb0e9e8fe76bcad66e35e2f241384be12f7c8^{commit} # timeout=10 JENKINS-19022: warning: possible memory leak due to Git plugin usage; see: https://plugins.jenkins.io/git/#remove-git-plugin-buildsbybranch-builddata-script Checking out Revision b8cdb0e9e8fe76bcad66e35e2f241384be12f7c8 (refs/changes/83/118783/8) > git config core.sparsecheckout # timeout=10 > git checkout -f b8cdb0e9e8fe76bcad66e35e2f241384be12f7c8 # timeout=10 Commit message: "Port CSIT bgp_userfeatures test suite to pytest" > git rev-parse FETCH_HEAD^{commit} # timeout=10 > git rev-list --no-walk 9ffafc84e0f0d01bf9af65a829bc39e8e10c761c # timeout=10 provisioning config files... copy managed file [npmrc] to file:/home/jenkins/.npmrc copy managed file [pipconf] to file:/home/jenkins/.config/pip/pip.conf [bgpcep-tox-verify-master] $ /bin/bash /tmp/jenkins18197600856313301335.sh ---> python-tools-install.sh Setup pyenv: * system (set by /opt/pyenv/version) * 3.8.20 (set by /opt/pyenv/version) * 3.9.20 (set by /opt/pyenv/version) 3.10.15 3.11.10 lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-lESz lf-activate-venv(): INFO: Save venv in file: /tmp/.os_lf_venv lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) lf-activate-venv(): INFO: Attempting to install with network-safe options... lf-activate-venv(): INFO: Base packages installed successfully lf-activate-venv(): INFO: Installing additional packages: lftools lf-activate-venv(): INFO: Adding /tmp/venv-lESz/bin to PATH Generating Requirements File 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. httplib2 0.31.0 requires pyparsing<4,>=3.0.4, but you have pyparsing 2.4.7 which is incompatible. deprecated 1.2.18 requires wrapt<2,>=1.10, but you have wrapt 2.0.0 which is incompatible. Python 3.11.10 pip 25.3 from /tmp/venv-lESz/lib/python3.11/site-packages/pip (python 3.11) appdirs==1.4.4 argcomplete==3.6.3 aspy.yaml==1.3.0 attrs==25.4.0 autopage==0.5.2 beautifulsoup4==4.14.2 boto3==1.40.61 botocore==1.40.61 bs4==0.0.2 cachetools==6.2.1 certifi==2025.10.5 cffi==2.0.0 cfgv==3.4.0 chardet==5.2.0 charset-normalizer==3.4.4 click==8.3.0 cliff==4.11.0 cmd2==2.7.0 cryptography==3.3.2 debtcollector==3.0.0 decorator==5.2.1 defusedxml==0.7.1 Deprecated==1.2.18 distlib==0.4.0 dnspython==2.8.0 docker==7.1.0 dogpile.cache==1.5.0 durationpy==0.10 email-validator==2.3.0 filelock==3.20.0 future==1.0.0 gitdb==4.0.12 GitPython==3.1.45 google-auth==2.42.0 httplib2==0.31.0 identify==2.6.15 idna==3.11 importlib-resources==1.5.0 iso8601==2.1.0 Jinja2==3.1.6 jmespath==1.0.1 jsonpatch==1.33 jsonpointer==3.0.0 jsonschema==4.25.1 jsonschema-specifications==2025.9.1 keystoneauth1==5.12.0 kubernetes==34.1.0 lftools==0.37.15 lxml==6.0.2 markdown-it-py==4.0.0 MarkupSafe==3.0.3 mdurl==0.1.2 msgpack==1.1.2 multi_key_dict==2.0.3 munch==4.0.0 netaddr==1.3.0 niet==1.4.2 nodeenv==1.9.1 oauth2client==4.1.3 oauthlib==3.3.1 openstacksdk==4.7.1 os-service-types==1.8.0 osc-lib==4.2.0 oslo.config==10.0.0 oslo.context==6.1.0 oslo.i18n==6.6.0 oslo.log==7.2.1 oslo.serialization==5.8.0 oslo.utils==9.1.0 packaging==25.0 pbr==7.0.1 platformdirs==4.5.0 prettytable==3.16.0 psutil==7.1.2 pyasn1==0.6.1 pyasn1_modules==0.4.2 pycparser==2.23 pygerrit2==2.0.15 PyGithub==2.8.1 Pygments==2.19.2 PyJWT==2.10.1 PyNaCl==1.6.0 pyparsing==2.4.7 pyperclip==1.11.0 pyrsistent==0.20.0 python-cinderclient==9.8.0 python-dateutil==2.9.0.post0 python-heatclient==4.3.0 python-jenkins==1.8.3 python-keystoneclient==5.7.0 python-magnumclient==4.9.0 python-openstackclient==8.2.0 python-swiftclient==4.8.0 PyYAML==6.0.3 referencing==0.37.0 requests==2.32.5 requests-oauthlib==2.0.0 requestsexceptions==1.4.0 rfc3986==2.0.0 rich==14.2.0 rich-argparse==1.7.1 rpds-py==0.28.0 rsa==4.9.1 ruamel.yaml==0.18.16 ruamel.yaml.clib==0.2.14 s3transfer==0.14.0 simplejson==3.20.2 six==1.17.0 smmap==5.0.2 soupsieve==2.8 stevedore==5.5.0 tabulate==0.9.0 toml==0.10.2 tomlkit==0.13.3 tqdm==4.67.1 typing_extensions==4.15.0 tzdata==2025.2 urllib3==1.26.20 virtualenv==20.35.4 wcwidth==0.2.14 websocket-client==1.9.0 wrapt==2.0.0 xdg==6.0.0 xmltodict==1.0.2 yq==3.4.3 [EnvInject] - Injecting environment variables from a build step. [EnvInject] - Injecting as environment variables the properties content PYTHON=python3 [EnvInject] - Variables injected successfully. [bgpcep-tox-verify-master] $ /bin/bash -l /tmp/jenkins5165577798595780967.sh ---> tox-install.sh + source /home/jenkins/lf-env.sh + lf-activate-venv --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 ++ mktemp -d /tmp/venv-XXXX + lf_venv=/tmp/venv-zlkt + local venv_file=/tmp/.os_lf_venv + local python=python3 + local options + local set_path=true + local install_args= ++ 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 + options=' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' + eval set -- ' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' ++ set -- --venv-file /tmp/.toxenv -- tox virtualenv urllib3~=1.26.15 + true + case $1 in + venv_file=/tmp/.toxenv + shift 2 + true + case $1 in + shift + break + case $python in + local pkg_list= + [[ -d /opt/pyenv ]] + echo 'Setup pyenv:' Setup pyenv: + export PYENV_ROOT=/opt/pyenv + PYENV_ROOT=/opt/pyenv + export PATH=/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin + PATH=/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin + pyenv versions system 3.8.20 3.9.20 3.10.15 * 3.11.10 (set by /w/workspace/bgpcep-tox-verify-master/.python-version) + command -v pyenv ++ pyenv init - --no-rehash + 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[*]}"'\'')" export PATH="/opt/pyenv/shims:${PATH}" export PYENV_SHELL=bash source '\''/opt/pyenv/libexec/../completions/pyenv.bash'\'' pyenv() { local command command="${1:-}" if [ "$#" -gt 0 ]; then shift fi case "$command" in rehash|shell) eval "$(pyenv "sh-$command" "$@")" ;; *) command pyenv "$command" "$@" ;; esac }' +++ 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[*]}"' ++ PATH=/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin ++ export PATH=/opt/pyenv/shims:/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin ++ PATH=/opt/pyenv/shims:/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin ++ export PYENV_SHELL=bash ++ PYENV_SHELL=bash ++ source /opt/pyenv/libexec/../completions/pyenv.bash +++ complete -F _pyenv pyenv ++ lf-pyver python3 ++ local py_version_xy=python3 ++ local py_version_xyz= ++ pyenv versions ++ awk '{ print $1 }' ++ sed 's/^[ *]* //' ++ local command ++ command=versions ++ '[' 1 -gt 0 ']' ++ shift ++ case "$command" in ++ command pyenv versions ++ grep -E '^[0-9.]*[0-9]$' ++ [[ ! -s /tmp/.pyenv_versions ]] +++ grep '^3' /tmp/.pyenv_versions +++ sort -V +++ tail -n 1 ++ py_version_xyz=3.11.10 ++ [[ -z 3.11.10 ]] ++ echo 3.11.10 ++ return 0 + pyenv local 3.11.10 + local command + command=local + '[' 2 -gt 0 ']' + shift + case "$command" in + command pyenv local 3.11.10 + for arg in "$@" + case $arg in + pkg_list+='tox ' + for arg in "$@" + case $arg in + pkg_list+='virtualenv ' + for arg in "$@" + case $arg in + pkg_list+='urllib3~=1.26.15 ' + [[ -f /tmp/.toxenv ]] + [[ ! -f /tmp/.toxenv ]] + [[ -n '' ]] + python3 -m venv /tmp/venv-zlkt + echo 'lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-zlkt' lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-zlkt + echo /tmp/venv-zlkt + echo 'lf-activate-venv(): INFO: Save venv in file: /tmp/.toxenv' lf-activate-venv(): INFO: Save venv in file: /tmp/.toxenv + echo 'lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv)' lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) + local 'pip_opts=--upgrade --quiet' + pip_opts='--upgrade --quiet --trusted-host pypi.org' + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org' + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org' + [[ -n '' ]] + [[ -n '' ]] + echo 'lf-activate-venv(): INFO: Attempting to install with network-safe options...' lf-activate-venv(): INFO: Attempting to install with network-safe options... + /tmp/venv-zlkt/bin/python3 -m pip install --upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org pip 'setuptools<66' virtualenv + echo 'lf-activate-venv(): INFO: Base packages installed successfully' lf-activate-venv(): INFO: Base packages installed successfully + [[ -z tox virtualenv urllib3~=1.26.15 ]] + echo 'lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 ' lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 + /tmp/venv-zlkt/bin/python3 -m pip install --upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org --upgrade-strategy eager tox virtualenv urllib3~=1.26.15 + type python3 + true + echo 'lf-activate-venv(): INFO: Adding /tmp/venv-zlkt/bin to PATH' lf-activate-venv(): INFO: Adding /tmp/venv-zlkt/bin to PATH + PATH=/tmp/venv-zlkt/bin:/opt/pyenv/shims:/opt/pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin + return 0 + python3 --version Python 3.11.10 + python3 -m pip --version pip 25.3 from /tmp/venv-zlkt/lib/python3.11/site-packages/pip (python 3.11) + python3 -m pip freeze cachetools==6.2.1 chardet==5.2.0 colorama==0.4.6 distlib==0.4.0 filelock==3.20.0 packaging==25.0 platformdirs==4.5.0 pluggy==1.6.0 pyproject-api==1.10.0 tox==4.32.0 urllib3==1.26.20 virtualenv==20.35.4 [bgpcep-tox-verify-master] $ /bin/sh -xe /tmp/jenkins3266360396000533009.sh [EnvInject] - Injecting environment variables from a build step. [EnvInject] - Injecting as environment variables the properties content PARALLEL=True [EnvInject] - Variables injected successfully. [bgpcep-tox-verify-master] $ /bin/bash -l /tmp/jenkins1000166509836952139.sh ---> tox-run.sh + PATH=/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin + ARCHIVE_TOX_DIR=/w/workspace/bgpcep-tox-verify-master/archives/tox + ARCHIVE_DOC_DIR=/w/workspace/bgpcep-tox-verify-master/archives/docs + mkdir -p /w/workspace/bgpcep-tox-verify-master/archives/tox + cd /w/workspace/bgpcep-tox-verify-master/. + source /home/jenkins/lf-env.sh + lf-activate-venv --venv-file /tmp/.toxenv tox virtualenv urllib3~=1.26.15 ++ mktemp -d /tmp/venv-XXXX + lf_venv=/tmp/venv-HY8h + local venv_file=/tmp/.os_lf_venv + local python=python3 + local options + local set_path=true + local install_args= ++ 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 + options=' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' + eval set -- ' --venv-file '\''/tmp/.toxenv'\'' -- '\''tox'\'' '\''virtualenv'\'' '\''urllib3~=1.26.15'\''' ++ set -- --venv-file /tmp/.toxenv -- tox virtualenv urllib3~=1.26.15 + true + case $1 in + venv_file=/tmp/.toxenv + shift 2 + true + case $1 in + shift + break + case $python in + local pkg_list= + [[ -d /opt/pyenv ]] + echo 'Setup pyenv:' Setup pyenv: + export PYENV_ROOT=/opt/pyenv + PYENV_ROOT=/opt/pyenv + export PATH=/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin + PATH=/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin + pyenv versions system 3.8.20 3.9.20 3.10.15 * 3.11.10 (set by /w/workspace/bgpcep-tox-verify-master/.python-version) + command -v pyenv ++ pyenv init - --no-rehash + 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[*]}"'\'')" export PATH="/opt/pyenv/shims:${PATH}" export PYENV_SHELL=bash source '\''/opt/pyenv/libexec/../completions/pyenv.bash'\'' pyenv() { local command command="${1:-}" if [ "$#" -gt 0 ]; then shift fi case "$command" in rehash|shell) eval "$(pyenv "sh-$command" "$@")" ;; *) command pyenv "$command" "$@" ;; esac }' +++ 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[*]}"' ++ PATH=/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin ++ export PATH=/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin ++ PATH=/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin ++ export PYENV_SHELL=bash ++ PYENV_SHELL=bash ++ source /opt/pyenv/libexec/../completions/pyenv.bash +++ complete -F _pyenv pyenv ++ lf-pyver python3 ++ local py_version_xy=python3 ++ local py_version_xyz= ++ pyenv versions ++ local command ++ command=versions ++ '[' 1 -gt 0 ']' ++ shift ++ case "$command" in ++ command pyenv versions ++ awk '{ print $1 }' ++ sed 's/^[ *]* //' ++ grep -E '^[0-9.]*[0-9]$' ++ [[ ! -s /tmp/.pyenv_versions ]] +++ grep '^3' /tmp/.pyenv_versions +++ sort -V +++ tail -n 1 ++ py_version_xyz=3.11.10 ++ [[ -z 3.11.10 ]] ++ echo 3.11.10 ++ return 0 + pyenv local 3.11.10 + local command + command=local + '[' 2 -gt 0 ']' + shift + case "$command" in + command pyenv local 3.11.10 + for arg in "$@" + case $arg in + pkg_list+='tox ' + for arg in "$@" + case $arg in + pkg_list+='virtualenv ' + for arg in "$@" + case $arg in + pkg_list+='urllib3~=1.26.15 ' + [[ -f /tmp/.toxenv ]] ++ cat /tmp/.toxenv + lf_venv=/tmp/venv-zlkt + echo 'lf-activate-venv(): INFO: Reuse venv:/tmp/venv-zlkt from' file:/tmp/.toxenv lf-activate-venv(): INFO: Reuse venv:/tmp/venv-zlkt from file:/tmp/.toxenv + echo 'lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv)' lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) + local 'pip_opts=--upgrade --quiet' + pip_opts='--upgrade --quiet --trusted-host pypi.org' + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org' + pip_opts='--upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org' + [[ -n '' ]] + [[ -n '' ]] + echo 'lf-activate-venv(): INFO: Attempting to install with network-safe options...' lf-activate-venv(): INFO: Attempting to install with network-safe options... + /tmp/venv-zlkt/bin/python3 -m pip install --upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org pip 'setuptools<66' virtualenv + echo 'lf-activate-venv(): INFO: Base packages installed successfully' lf-activate-venv(): INFO: Base packages installed successfully + [[ -z tox virtualenv urllib3~=1.26.15 ]] + echo 'lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 ' lf-activate-venv(): INFO: Installing additional packages: tox virtualenv urllib3~=1.26.15 + /tmp/venv-zlkt/bin/python3 -m pip install --upgrade --quiet --trusted-host pypi.org --trusted-host files.pythonhosted.org --trusted-host pypi.python.org --upgrade-strategy eager tox virtualenv urllib3~=1.26.15 + type python3 + true + echo 'lf-activate-venv(): INFO: Adding /tmp/venv-zlkt/bin to PATH' lf-activate-venv(): INFO: Adding /tmp/venv-zlkt/bin to PATH + PATH=/tmp/venv-zlkt/bin:/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin + return 0 + [[ -d /opt/pyenv ]] + echo '---> Setting up pyenv' ---> Setting up pyenv + export PYENV_ROOT=/opt/pyenv + PYENV_ROOT=/opt/pyenv + export PATH=/opt/pyenv/bin:/tmp/venv-zlkt/bin:/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin + PATH=/opt/pyenv/bin:/tmp/venv-zlkt/bin:/opt/pyenv/shims:/opt/pyenv/bin:/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/puppetlabs/bin ++ pwd + PYTHONPATH=/w/workspace/bgpcep-tox-verify-master + export PYTHONPATH + export TOX_TESTENV_PASSENV=PYTHONPATH + TOX_TESTENV_PASSENV=PYTHONPATH + tox --version 4.32.0 from /tmp/venv-zlkt/lib/python3.11/site-packages/tox/__init__.py + PARALLEL=True + TOX_OPTIONS_LIST= + [[ -n '' ]] + case ${PARALLEL,,} in + TOX_OPTIONS_LIST=' --parallel auto --parallel-live' + tox --parallel auto --parallel-live + tee -a /w/workspace/bgpcep-tox-verify-master/archives/tox/tox.log docs: install_deps> python -I -m pip install -r docs/requirements.txt docs-linkcheck: install_deps> python -I -m pip install -r docs/requirements.txt pre-commit: install_deps> python -I -m pip install pre-commit pre-commit: freeze> python -m pip freeze --all pre-commit: cfgv==3.4.0,distlib==0.4.0,filelock==3.20.0,identify==2.6.15,nodeenv==1.9.1,pip==25.3,platformdirs==4.5.0,pre_commit==4.3.0,PyYAML==6.0.3,setuptools==80.9.0,virtualenv==20.35.4 pre-commit: commands[0]> pre-commit run --all-files --show-diff-on-failure [WARNING] hook id `remove-tabs` uses deprecated stage names (commit) which will be removed in a future version. run: `pre-commit migrate-config` to automatically fix this. [INFO] Initializing environment for https://github.com/pre-commit/pre-commit-hooks. [WARNING] repo `https://github.com/pre-commit/pre-commit-hooks` uses deprecated stage names (commit, push) which will be removed in a future version. Hint: often `pre-commit autoupdate --repo https://github.com/pre-commit/pre-commit-hooks` will fix this. if it does not -- consider reporting an issue to that repo. [INFO] Initializing environment for https://github.com/Lucas-C/pre-commit-hooks. [INFO] Installing environment for https://github.com/pre-commit/pre-commit-hooks. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... [INFO] Installing environment for https://github.com/Lucas-C/pre-commit-hooks. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... trim trailing whitespace.................................................Failed - hook id: trailing-whitespace - exit code: 1 - files were modified by this hook Fixing tests/data/bgpfunctional/l3vpn_ipv4/bgp_l3vpn_ipv4/data.json Fixing tests/test_suites/bgp_userfeatures/ibgp_peers_basic.py Fixing tests/test_suites/bgp_userfeatures/bgp_policies_default.py Fixing tests/test_suites/bgp_userfeatures/080_bgp_functional_rt_constrain.py Fixing tests/lib/pcep.py Fixing tests/lib/bgp.py Fixing tests/conftest.py Fixing tests/test_suites/bgp_userfeatures/030_bgp_functional_evpn.py Fixing tests/data/bgpuser/empty_topology/data.json Fixing tests/lib/flowspec.py Fixing tests/test_suites/bgp_userfeatures/060_bgp_functional_mvpn.py Fixing tests/test_suites/bgp_userfeatures/070_bgp_functional_l3vpn_mcast.py Fixing tests/lib/infra.py Fixing tests/test_suites/bgp_userfeatures/bgp_ipv6_basic.py Fixing tests/test_suites/bgp_userfeatures/bgp_functional_md5.py Fixing tests/test_suites/bgp_userfeatures/basic.py Fixing tests/test_suites/bgp_userfeatures/050_bmp_basic.py Fixing tests/test_suites/bgp_userfeatures/010_bgp_flowspec.py Fixing tests/test_suites/bgp_userfeatures/ibgp_peer_lsp.py Fixing tests/lib/utils.py Fixing tests/test_suites/bgp_userfeatures/bgp_llgr_basic.py Fixing tests/lib/ip_topology.py Fixing tests/test_suites/bgp_userfeatures/010_bgp_functional_l3vpn.py Fixing tests/test_suites/bgp_userfeatures/bgp_app_peer_basic.py Fixing tests/data/bgpuser/filled_topology/data.json Tabs remover.............................................................Failed - hook id: remove-tabs - exit code: 1 - files were modified by this hook Substituting tabs in: tests/test_suites/bgp_userfeatures/010_bgp_functional_l3vpn.py by 4 whitespaces Tabs have been successfully removed. Now aborting the commit. You can check the changes made. Then simply "git add --update ." and re-commit Substituting tabs in: tests/test_suites/bgp_userfeatures/060_bgp_functional_mvpn.py by 4 whitespaces Tabs have been successfully removed. Now aborting the commit. You can check the changes made. Then simply "git add --update ." and re-commit Substituting tabs in: tests/test_suites/bgp_userfeatures/080_bgp_functional_rt_constrain.py by 4 whitespaces Tabs have been successfully removed. Now aborting the commit. You can check the changes made. Then simply "git add --update ." and re-commit Substituting tabs in: tests/test_suites/bgp_userfeatures/030_bgp_functional_evpn.py by 4 whitespaces Tabs have been successfully removed. Now aborting the commit. You can check the changes made. Then simply "git add --update ." and re-commit Substituting tabs in: tests/test_suites/bgp_userfeatures/070_bgp_functional_l3vpn_mcast.py by 4 whitespaces Tabs have been successfully removed. Now aborting the commit. You can check the changes made. Then simply "git add --update ." and re-commit pre-commit hook(s) made changes. If you are seeing this message in CI, reproduce locally with: `pre-commit run --all-files`. To run `pre-commit` as part of git workflow, use `pre-commit install`. All changes made by hooks: diff --git a/tests/conftest.py b/tests/conftest.py index 9cdd70f550..b0eefaf8ea 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -109,14 +109,14 @@ def step_tag_checker(request: pytest.FixtureRequest) -> Callable[[Optional[List[ """ Returns a function that checks if a step should run based on tags. Reads --step-include and --step-exclude command-line options. - + Logic mimics Robot Framework: 1. If --step-include is used, the step *must* match one tag. 2. If --step-exclude is used, the step *must not* match any tag. """ include_str = request.config.getoption("--step-include") exclude_str = request.config.getoption("--step-exclude") - + include_tags = set(include_str.split(',')) if include_str else set() exclude_tags = set(exclude_str.split(',')) if exclude_str else set() diff --git a/tests/data/bgpfunctional/l3vpn_ipv4/bgp_l3vpn_ipv4/data.json b/tests/data/bgpfunctional/l3vpn_ipv4/bgp_l3vpn_ipv4/data.json index 282ab6fb20..98376e0b05 100644 --- a/tests/data/bgpfunctional/l3vpn_ipv4/bgp_l3vpn_ipv4/data.json +++ b/tests/data/bgpfunctional/l3vpn_ipv4/bgp_l3vpn_ipv4/data.json @@ -26,4 +26,3 @@ ] } } - \ No newline at end of file diff --git a/tests/data/bgpuser/empty_topology/data.json b/tests/data/bgpuser/empty_topology/data.json index 178bf4035a..005014ebbf 100644 --- a/tests/data/bgpuser/empty_topology/data.json +++ b/tests/data/bgpuser/empty_topology/data.json @@ -9,4 +9,3 @@ } ] } - \ No newline at end of file diff --git a/tests/data/bgpuser/filled_topology/data.json b/tests/data/bgpuser/filled_topology/data.json index 1b8223483d..77b8ae18b2 100644 --- a/tests/data/bgpuser/filled_topology/data.json +++ b/tests/data/bgpuser/filled_topology/data.json @@ -27,4 +27,3 @@ } ] } - \ No newline at end of file diff --git a/tests/lib/bgp.py b/tests/lib/bgp.py index 57e438b1d0..472b3fc4f3 100644 --- a/tests/lib/bgp.py +++ b/tests/lib/bgp.py @@ -263,7 +263,7 @@ def start_bgp_speaker( allf: bool | None = None, evpn: bool | None = None, mvpn: bool | None = None, - l3vpn_mcast: bool | None = None, + l3vpn_mcast: bool | None = None, rt_constrain: bool | None = None, wfr: int | None = None, cluster: str | None = None, @@ -450,7 +450,7 @@ def start_bgp_app_peer( log_level: str = "info", timeout: int = 1200, ) -> tuple[int, str]: - """??? NOt necessary always to have these parames and if not provided skip them + """??? NOt necessary always to have these parames and if not provided skip them and not provide to the scrpt count, prefix: str = "8.0.0.0", prefix_len: int = 28,""" """Starts bgp_app_peer.py for manipulating BGP neighbour rib table. @@ -511,7 +511,7 @@ def start_exabgp( if log_file: command += f" > tmp/{log_file}" - + process = infra.shell(command, run_in_background=True) return process @@ -572,7 +572,7 @@ def start_gobgp( """??? """ command = f"{gobgp_path} -l debug -f {cfg_file} > tmp/gobgp.log" - + process = infra.shell(command, run_in_background=True) return process diff --git a/tests/lib/flowspec.py b/tests/lib/flowspec.py index 869e97742d..cfa1140fad 100644 --- a/tests/lib/flowspec.py +++ b/tests/lib/flowspec.py @@ -21,7 +21,7 @@ ODL_IP = os.environ["ODL_IP"] RESTCONF_PORT = os.environ["RESTCONF_PORT"] log = logging.getLogger(__name__) - + def verify_flowspec_data_is_empty(): templated_requests.get_templated_request("data/bgpflowspec/empty_route", None, verify=True) diff --git a/tests/lib/infra.py b/tests/lib/infra.py index d7f229a401..4c7ce3533d 100644 --- a/tests/lib/infra.py +++ b/tests/lib/infra.py @@ -98,7 +98,7 @@ def shell( except FileNotFoundError: log.error(f"ERROR command not found: {exec_command}") return None, None - + def read_until(process: subprocess.Popen, expected_text: str, timeout: int = 10): "This exepcted text must be within one line, it can not spread across mutliple lines" found_event = threading.Event() @@ -112,7 +112,7 @@ def read_until(process: subprocess.Popen, expected_text: str, timeout: int = 10) if line and expected_text in line: found_event.set() return - + queue = Queue() thread = threading.Thread(target=threaded_read, args=(process.stdout, expected_text, queue), daemon=True) thread.start() @@ -395,7 +395,7 @@ def stop_process_by_pid(pid: int, gracefully: bool = True, timeout: int | None = raise AssertionError( f"Was not able to stop process with PID {process.pid}, it is still running." ) from e - + def download_file(url: str): file_name = url.split("/")[-1] urllib.request.urlretrieve(url, f"tmp/{file_name}") @@ -403,5 +403,5 @@ def download_file(url: str): def get_file_content(path: str): with open(path, "r", encoding="utf-8") as file: content = file.read() - + return content diff --git a/tests/lib/ip_topology.py b/tests/lib/ip_topology.py index 1d2c149885..f695ea8ad7 100644 --- a/tests/lib/ip_topology.py +++ b/tests/lib/ip_topology.py @@ -114,7 +114,7 @@ def wait_for_ipv4_topology_prefixes_to_become_stable( raise AssertionError( f"Expected Ipv4 topology to be stable after {timeout} seconds" ) - + def verify_ip_topology_is_empty(): templated_requests.get_templated_request("data/bgpuser/empty_topology", None, verify=True) diff --git a/tests/lib/pcep.py b/tests/lib/pcep.py index ec652f4b83..eb986cc9f8 100644 --- a/tests/lib/pcep.py +++ b/tests/lib/pcep.py @@ -99,7 +99,7 @@ def configure_speaker_entitiy_identifier(): resposne = templated_requests.put_templated_request( "data/templates/node_speaker_entity", mapping, json=False ) - + return resposne def add_lsp(pcc_ip: str, lsp_name: str): @@ -107,7 +107,7 @@ def add_lsp(pcc_ip: str, lsp_name: str): resposne = templated_requests.post_templated_request( "data/templates/pcep_add_lsp", mapping, json=False ) - + return resposne def update_lsp(pcc_ip: str, lsp_name: str): @@ -115,7 +115,7 @@ def update_lsp(pcc_ip: str, lsp_name: str): resposne = templated_requests.post_templated_request( "data/templates/pcep_update_lsp", mapping, json=False ) - + return resposne def remove_lsp(pcc_ip: str, lsp_name: str): @@ -123,7 +123,7 @@ def remove_lsp(pcc_ip: str, lsp_name: str): resposne = templated_requests.post_templated_request( "data/templates/pcep_remove_lsp", mapping, json=False, accept="*/*" ) - + return resposne diff --git a/tests/lib/utils.py b/tests/lib/utils.py index 369675bb59..7205dee018 100644 --- a/tests/lib/utils.py +++ b/tests/lib/utils.py @@ -33,7 +33,7 @@ def verify_jsons_matach(json1: str, json2: str, json1_data_label: str = "json1", ) ) raise AssertionError(f": \n{visual_diff}") - + def wait_until_function_pass( retry_count: int, interval: int, function: Callable, *args, **kwargs @@ -137,7 +137,7 @@ def wait_until_function_returns_value_with_custom_value_validator( f"Failed to execute {function.__name__}({','.join([str(arg) for arg in args])} {kwargs or ''}) " \ f"after {retry_count} attempts." ) from last_exception - + def verify_function_never_passes_within_timeout( retry_count: int, interval: int, function: Callable, *args, **kwargs ) -> Any: @@ -154,10 +154,10 @@ def verify_function_never_passes_within_timeout( else: raise AssertionError("Function did pass within timeout") - + def verify_process_did_not_stop_immediatelp(pid: int, retry_count: int = 10, interval: int = 1): verify_function_returns_concrete_value_for_some_time(retry_count, interval, True, infra.is_process_still_running, pid) - + def verify_function_does_not_fail_within_timeout( retry_count: int, interval: int, function: Callable, *args, **kwargs ) -> Any: @@ -247,7 +247,7 @@ def verify_function_returns_value_which_passes_custom_value_validator_for_some_t time.sleep(interval) return result - + def run_function_ignore_errors(function: Callable, *args, **kwargs): try: function(*args, **kwargs) diff --git a/tests/test_suites/bgp_userfeatures/010_bgp_flowspec.py b/tests/test_suites/bgp_userfeatures/010_bgp_flowspec.py index 60fadbbe73..ac89087010 100644 --- a/tests/test_suites/bgp_userfeatures/010_bgp_flowspec.py +++ b/tests/test_suites/bgp_userfeatures/010_bgp_flowspec.py @@ -38,7 +38,7 @@ log = logging.getLogger(__name__) @pytest.mark.usefixtures("teardown_kill_all_running_play_script_processes") @pytest.mark.run(order=15) class TestBgpFlowspec: - + def set_bgp_peer_configuration(self): """??? """ @@ -96,5 +96,5 @@ class TestBgpFlowspec: """Deconfigure BGP peer.""" self.delete_bgp_peer_configuration() - + diff --git a/tests/test_suites/bgp_userfeatures/010_bgp_functional_l3vpn.py b/tests/test_suites/bgp_userfeatures/010_bgp_functional_l3vpn.py index 9c26c5f224..252e7d26eb 100644 --- a/tests/test_suites/bgp_userfeatures/010_bgp_functional_l3vpn.py +++ b/tests/test_suites/bgp_userfeatures/010_bgp_functional_l3vpn.py @@ -10,12 +10,12 @@ # BGP peer as follows: # # Functional test suite for bgp - l3vpn-ipv4 -# +# # This suite tests advertising and receiveing routes with l3vpn content. It -# uses odl and exabgp as bgp peers. Routes advertized from odl are configured +# uses odl and exabgp as bgp peers. Routes advertized from odl are configured # via application peer. Routes advertised from exabgp is statically configured # in exabgp config file. -# For fluorine and further, instead of exabgp, play.py is used. When sending +# For fluorine and further, instead of exabgp, play.py is used. When sending # routes from odl to peer, first route containg route-target argument # have to be send from peer to odl, so odl can identify this peer. Than it # sends l3vpn route containg this argument to odl app peer, and we check @@ -71,7 +71,7 @@ class TestBgpfunctionalL3Vpn: templated_requests.delete_templated_request( f"{RT_CONSTRAIN_DIR}/bgp_peer", mapping ) - + def verify_reported_data(self, tempalate_path): """Verifies expected response""" templated_requests.get_templated_request(tempalate_path, None, verify=True) @@ -88,12 +88,12 @@ class TestBgpfunctionalL3Vpn: infra.shell("cp data/bgpfunctional/l3vpn_ipv4/bgp-l3vpn-ipv4.cfg tmp/") infra.shell(f"sed -i -e 's/EXABGPIP/{TOOLS_IP}/g' tmp/bgp-l3vpn-ipv4.cfg") infra.shell(f"sed -i -e 's/ODLIP/{ODL_IP}/g' tmp/bgp-l3vpn-ipv4.cfg") - + def test_bgp_functional_l3vpn(self, allure_step_with_separate_logging): with allure_step_with_separate_logging("step_prepare_config_files"): """???.""" self.prepare_config_files() - + with allure_step_with_separate_logging("step_configure_app_peer"): """Configures bgp application peer. Openconfig is used for carbon and above.""" bgp.set_bgp_application_peer(ip=ODL_IP) @@ -140,5 +140,5 @@ class TestBgpfunctionalL3Vpn: self.delete_bgp_peer_configuration() with allure_step_with_separate_logging("step_deconfigure_app_peer"): - """ Revert the BGP configuration to the original state: without application peer""" + """ Revert the BGP configuration to the original state: without application peer""" bgp.delete_bgp_application_peer(ip=ODL_IP) diff --git a/tests/test_suites/bgp_userfeatures/030_bgp_functional_evpn.py b/tests/test_suites/bgp_userfeatures/030_bgp_functional_evpn.py index edc0a8f740..6f85b735fa 100644 --- a/tests/test_suites/bgp_userfeatures/030_bgp_functional_evpn.py +++ b/tests/test_suites/bgp_userfeatures/030_bgp_functional_evpn.py @@ -10,7 +10,7 @@ # BGP peer as follows: # # Functional test suite for bgp - evpn -# +# # This suite tests advertising and receiveing routes with evpn content. # It uses play.py and odl as bgp peers. Routes advertized from odl are # configured via application peer. Routes advertised from play.py are stored @@ -163,7 +163,7 @@ class TestBgpfunctionalEvpn: finally: self.withdraw_route_and_verify(withdraw_hex) - + def verify_reported_data(self, tempalate_path): """Verifies expected response""" templated_requests.get_templated_request(tempalate_path, None, verify=True) @@ -171,7 +171,7 @@ class TestBgpfunctionalEvpn: def wait_until_expected_data(self, template_path, retry_count=20, interval=1): utils.wait_until_function_pass(retry_count, interval, self.verify_reported_data, template_path) - + def test_bgp_functional_evpn(self, allure_step_with_separate_logging): with allure_step_with_separate_logging("step_configure_app_peer"): """Configures bgp application peer. Openconfig is used for carbon and above.""" @@ -416,5 +416,5 @@ class TestBgpfunctionalEvpn: self.delete_bgp_peer_configuration() with allure_step_with_separate_logging("step_deconfigure_app_peer"): - """ Revert the BGP configuration to the original state: without application peer""" + """ Revert the BGP configuration to the original state: without application peer""" self.delete_app_peer() diff --git a/tests/test_suites/bgp_userfeatures/050_bmp_basic.py b/tests/test_suites/bgp_userfeatures/050_bmp_basic.py index 80a8b70484..0b6e83ce5b 100644 --- a/tests/test_suites/bgp_userfeatures/050_bmp_basic.py +++ b/tests/test_suites/bgp_userfeatures/050_bmp_basic.py @@ -7,7 +7,7 @@ # # # This is a basic test for bgp monitoring protocol feature. After the feature -# odl-bgpcep-bmp installation, the port 12345 should be bound for listening. +# odl-bgpcep-bmp installation, the port 12345 should be bound for listening. # To test this feature bgp-bmp-mock tool is used. It is a part of the bgpcep project. # It is a java tool which simulates more peers and more routers. In this particular # test suite it simulates 1 peer with 1 router, which means it advertizes one peer diff --git a/tests/test_suites/bgp_userfeatures/060_bgp_functional_mvpn.py b/tests/test_suites/bgp_userfeatures/060_bgp_functional_mvpn.py index 4116ff33cc..36d105ea60 100644 --- a/tests/test_suites/bgp_userfeatures/060_bgp_functional_mvpn.py +++ b/tests/test_suites/bgp_userfeatures/060_bgp_functional_mvpn.py @@ -10,7 +10,7 @@ # BGP peer as follows: # # Functional test suite for bgp - mvpn -# +# # This suite tests advertising mvpn routes to odl. For advertising play.py # is used, and particular files are stored as *.hex files. There are # 7 different types of routes used for auto-discovery of multicast network. @@ -92,7 +92,7 @@ class TestBgpfunctionalMvpn: templated_requests.delete_templated_request( f"{MVPN_DIR}/bgp_peer", mapping ) - + def test_bgp_functional_Mvpn(self, allure_step_with_separate_logging): with allure_step_with_separate_logging("step_configure_app_peer"): """Configures bgp application peer.""" @@ -190,5 +190,5 @@ class TestBgpfunctionalMvpn: self.delete_bgp_peer_configuration() with allure_step_with_separate_logging("step_deconfigure_app_peer"): - """ Revert the BGP configuration to the original state: without application peer""" + """ Revert the BGP configuration to the original state: without application peer""" self.delete_app_peer() diff --git a/tests/test_suites/bgp_userfeatures/070_bgp_functional_l3vpn_mcast.py b/tests/test_suites/bgp_userfeatures/070_bgp_functional_l3vpn_mcast.py index cc941f8dee..52cb4cb48b 100644 --- a/tests/test_suites/bgp_userfeatures/070_bgp_functional_l3vpn_mcast.py +++ b/tests/test_suites/bgp_userfeatures/070_bgp_functional_l3vpn_mcast.py @@ -10,7 +10,7 @@ # BGP peer as follows: # # Functional test suite for bgp - l3vpn-mutlicast -# +# # This suite tests advertising l3vpn_mcast routes to odl. For advertising # play.py is used, and particular files are stored as *.hex files.There are # L3vpn-ipv4-multicast routes and L3vpn-ipv6-multicast routes tested. @@ -91,7 +91,7 @@ class TestBgpfunctionalL3vpnMcast: templated_requests.delete_templated_request( f"{L3VPN_MCAST_DIR}/bgp_peer", mapping ) - + def test_bgp_functional_l3vpn_mcast(self, allure_step_with_separate_logging): with allure_step_with_separate_logging("step_configure_app_peer"): """Configures bgp application peer.""" @@ -132,5 +132,5 @@ class TestBgpfunctionalL3vpnMcast: self.delete_bgp_peer_configuration() with allure_step_with_separate_logging("step_deconfigure_app_peer"): - """ Revert the BGP configuration to the original state: without application peer""" + """ Revert the BGP configuration to the original state: without application peer""" self.delete_app_peer() diff --git a/tests/test_suites/bgp_userfeatures/080_bgp_functional_rt_constrain.py b/tests/test_suites/bgp_userfeatures/080_bgp_functional_rt_constrain.py index 4fc4a15960..9e89533f54 100644 --- a/tests/test_suites/bgp_userfeatures/080_bgp_functional_rt_constrain.py +++ b/tests/test_suites/bgp_userfeatures/080_bgp_functional_rt_constrain.py @@ -10,7 +10,7 @@ # BGP peer as follows: # # Functional test suite for bgp - route-target-constrain safi -# +# # This suite tests advertising rt-constrain routes to odl. For advertising # from peer, play.py is used, sending hex messages to odl. For advertising # to app-peer, we are sending post requests with routes in xml. @@ -91,7 +91,7 @@ class TestBgpfunctionalRtConstrain: templated_requests.delete_templated_request( f"{RT_CONSTRAIN_DIR}/bgp_peer", mapping ) - + def test_bgp_functional_rt_constrain(self, allure_step_with_separate_logging): with allure_step_with_separate_logging("step_configure_app_peer"): """Configures bgp application peer.""" @@ -144,5 +144,5 @@ class TestBgpfunctionalRtConstrain: self.delete_bgp_peer_configuration() with allure_step_with_separate_logging("step_deconfigure_app_peer"): - """ Revert the BGP configuration to the original state: without application peer""" + """ Revert the BGP configuration to the original state: without application peer""" self.delete_app_peer() diff --git a/tests/test_suites/bgp_userfeatures/basic.py b/tests/test_suites/bgp_userfeatures/basic.py index 04dd3b663e..eea28b4656 100644 --- a/tests/test_suites/bgp_userfeatures/basic.py +++ b/tests/test_suites/bgp_userfeatures/basic.py @@ -36,7 +36,7 @@ # - check empty topology # - reconfigre neighbor without peer-group, delete peer-group # -# Brief description how to perform BGP functional test: +# Brief description how to perform BGP functional test: # https://wiki.opendaylight.org/view/BGP_LS_PCEP:Lithium_Feature_Tests#How_to_test_2 import json @@ -239,7 +239,7 @@ class TestBasic: with allure_step_with_separate_logging("step_check_listening_connection_is_established"): """See TCP (BGP) connection in established state.""" - self.check_speaker_is_connected() + self.check_speaker_is_connected() with allure_step_with_separate_logging("step_check_listening_topology_is_filled"): """See new routes in example-ipv4-topology as a proof that synchronization was correct.""" diff --git a/tests/test_suites/bgp_userfeatures/bgp_app_peer_basic.py b/tests/test_suites/bgp_userfeatures/bgp_app_peer_basic.py index 15dc5997d6..7a37e6b151 100644 --- a/tests/test_suites/bgp_userfeatures/bgp_app_peer_basic.py +++ b/tests/test_suites/bgp_userfeatures/bgp_app_peer_basic.py @@ -184,7 +184,7 @@ class TestBgpAppPeerBasic: with allure_step_with_separate_logging("step_tc3_reconnect_bgp_peer_and_check_incomming_updates_for_3_introduced_prefixes"): """Start BGP peer tool.""" self.bgp_speaker_process = bgp.start_bgp_speaker(0, my_ip=TOOLS_IP, log_level="debug") - + utils.verify_process_did_not_stop_immediatelp(self.bgp_speaker_process.pid) infra.wait_for_string_in_file(20, 1, "nlri_prefix_received:", "bgp_peer.log", threshold=3) infra.verify_string_occurence_count_in_file("nlri_prefix_received:", "bgp_peer.log", 3) diff --git a/tests/test_suites/bgp_userfeatures/bgp_functional_md5.py b/tests/test_suites/bgp_userfeatures/bgp_functional_md5.py index d136bed171..4677979935 100644 --- a/tests/test_suites/bgp_userfeatures/bgp_functional_md5.py +++ b/tests/test_suites/bgp_userfeatures/bgp_functional_md5.py @@ -48,7 +48,7 @@ class TestBgpFunctionalMd5: def reconfigure_odl_to_accept_connections(self, password: str): mapping = {"BGP_RIB_OPENCONFIG": "example-bgp-rib", "IP": TOOLS_IP, - "HOLDTIME": 180, + "HOLDTIME": 180, "PEER_PORT": 17900, "PASSWORD": password, "PASSIVE_MODE": "true"} @@ -88,6 +88,6 @@ class TestBgpFunctionalMd5: exabgp_process = bgp.start_exabgp_and_verify_connected("tmp/exa-md5.cfg", ODL_IP, expect_connected=False) bgp.stop_exabgp(exabgp_process) self.delete_bgp_peer_configuration() - - + + diff --git a/tests/test_suites/bgp_userfeatures/bgp_ipv6_basic.py b/tests/test_suites/bgp_userfeatures/bgp_ipv6_basic.py index bb8a98b038..5e7a79bd5b 100644 --- a/tests/test_suites/bgp_userfeatures/bgp_ipv6_basic.py +++ b/tests/test_suites/bgp_userfeatures/bgp_ipv6_basic.py @@ -174,7 +174,7 @@ class TestBgpIpv6Basic: """Save exabgp logs as exaipv6.log, and stop exabgp with ctrl-c bash signal.""" infra.shell(f"cp tmp/{EXABGP_LOG} results/") bgp.stop_exabgp(self.exabgp_process) - + with allure_step_with_separate_logging("step_configure_app_peer"): """Configures bgp application peer.""" mapping = {"IP": "127.0.0.12", "BGP_RIB_OPENCONFIG": "example-bgp-rib"} diff --git a/tests/test_suites/bgp_userfeatures/bgp_llgr_basic.py b/tests/test_suites/bgp_userfeatures/bgp_llgr_basic.py index ca2b7b3e61..5029040420 100644 --- a/tests/test_suites/bgp_userfeatures/bgp_llgr_basic.py +++ b/tests/test_suites/bgp_userfeatures/bgp_llgr_basic.py @@ -5,7 +5,7 @@ # terms of the Eclipse Public License v1.0 which accompanies this distribution, # and is available at http://www.eclipse.org/legal/epl-v10.html # -# This suite tests simple connection between one ibgp peer (goabgp) and Odl. +# This suite tests simple connection between one ibgp peer (goabgp) and Odl. # Peer is configured with ipv6, and gobgp connectes to odl via ipv6. import json @@ -43,11 +43,11 @@ class TestBgpLlgrBasic: def reconfigure_odl_to_accept_connections(self): mapping = {"BGP_RIB_OPENCONFIG": "example-bgp-rib", "IP": TOOLS_IP, - "HOLDTIME": 180, + "HOLDTIME": 180, "PEER_PORT": 17900, "PASSIVE_MODE": "true"} templated_requests.put_templated_request("data/ipv6/bgp_peer", mapping, json=False) - + def delete_bgp_peer_configuration(self): mapping = {"BGP_RIB_OPENCONFIG": "example-bgp-rib", "IP":TOOLS_IP } templated_requests.delete_templated_request("data/ipv6/bgp_peer", mapping) @@ -73,7 +73,7 @@ class TestBgpLlgrBasic: with allure_step_with_separate_logging("step_reconfigure_odl_to_accept_connections"): """Configure BGP peer modules with initiate-connection set to false with short ipv6 address.""" self.reconfigure_odl_to_accept_connections() - + with allure_step_with_separate_logging("step_start_gobgp"): """Starts gobgp peer simulator.""" self.gobgp_process = bgp.start_gobgp_and_verify_connected(f"tmp/gobgpd", f"tmp/{GOBGP_CFG}", TOOLS_IP) diff --git a/tests/test_suites/bgp_userfeatures/bgp_policies_default.py b/tests/test_suites/bgp_userfeatures/bgp_policies_default.py index 1e57637754..c3309a0306 100644 --- a/tests/test_suites/bgp_userfeatures/bgp_policies_default.py +++ b/tests/test_suites/bgp_userfeatures/bgp_policies_default.py @@ -91,20 +91,20 @@ class TestBgpPoliciesDefault: mapping = {"IP": ODL_IP,"BGP_RIB_OPENCONFIG": "example-bgp-rib"} templated_requests.post_templated_request(f"{POLICIES_VAR}/app_peer", mapping, json=False) templated_requests.post_templated_request(f"{POLICIES_VAR}/app_peer_route", mapping, json=False) - + with allure_step_with_separate_logging("step_reconfigure_odl_to_accept_connections"): """Configure BGP peer modules with initiate-connection set to false. Configures 6 different peers, two internal, two external and two route-reflectors.""" for index, peer_type in enumerate(PEER_TYPES): mapping = {"IP": f"127.0.0.{index+2}", "BGP_RIB_OPENCONFIG": RIB_INSTANCE, "RIB_INSTACE_NAME": RIB_INSTANCE, "HOLDTIME": HOLDTIME, "PASSIVE_MODE": "true"} templated_requests.put_templated_request(f"{POLICIES_VAR}/{peer_type}", mapping, json=False) - + with allure_step_with_separate_logging("step_start_exabgps"): """Start 6 exabgps as processes in background, each with it's own configuration.""" for index in range(1, 7): exabgp_process = bgp.start_exabgp(f"tmp/exabgp{index}.cfg", log_file=f"exa{index}.log") self.exabgp_processes.append(exabgp_process) - + with allure_step_with_separate_logging("step_verify_rib_filled"): """Verifies that sent routes are present in particular ribs.""" self.verify_rib_status() @@ -120,7 +120,7 @@ class TestBgpPoliciesDefault: for index, peer_type in enumerate(PEER_TYPES): mapping = {"IP": f"127.0.0.{index+2}", "BGP_RIB_OPENCONFIG": RIB_INSTANCE, "RIB_INSTACE_NAME": RIB_INSTANCE} templated_requests.delete_templated_request(f"{POLICIES_VAR}/{peer_type}", mapping) - + with allure_step_with_separate_logging("step_deconfigure_app_peer"): """Revert the BGP configuration to the original state: without application peer.""" mapping = {"IP": ODL_IP,"BGP_RIB_OPENCONFIG": "example-bgp-rib"} diff --git a/tests/test_suites/bgp_userfeatures/ibgp_peer_lsp.py b/tests/test_suites/bgp_userfeatures/ibgp_peer_lsp.py index 29bde1d253..e17b388e13 100644 --- a/tests/test_suites/bgp_userfeatures/ibgp_peer_lsp.py +++ b/tests/test_suites/bgp_userfeatures/ibgp_peer_lsp.py @@ -9,7 +9,7 @@ # peer operations and checks for IP4 topology updates and updates towards # BGP peer as follows: # -# +# # Basic tests for iBGP peers. # Test suite performs basic iBGP functional test case for carrying LSP State # Information in BGP as described in diff --git a/tests/test_suites/bgp_userfeatures/ibgp_peers_basic.py b/tests/test_suites/bgp_userfeatures/ibgp_peers_basic.py index 1b925300a3..7bdb5aba8b 100644 --- a/tests/test_suites/bgp_userfeatures/ibgp_peers_basic.py +++ b/tests/test_suites/bgp_userfeatures/ibgp_peers_basic.py @@ -106,7 +106,7 @@ class TestIbgpPeersBasic: infra.execute_karaf_command(f"log:set {ODL_LOG_LEVEL}") infra.execute_karaf_command(f"log:set ${ODL_BGP_LOG_LEVEL} org.opendaylight.bgpcep") infra.execute_karaf_command(f"log:set ${ODL_BGP_LOG_LEVEL} org.opendaylight.protocol") - + with allure_step_with_separate_logging("step_tc1_configure_two_ibgp_route_reflector_client_peers"): """Configure two iBGP peers as routing reflector clients.""" self.configure_ibgp_peer(BGP_PEER1_IP, rr_client=True, cluster_id=False) @@ -268,7 +268,7 @@ class TestIbgpPeersBasic: in second peer which has local route-reflector-cluster-id.""" mapping = {"IP": BGP_PEER2_IP, "BGP_RIB_OPENCONFIG": "example-bgp-rib", "PEER_NUMBER": 1, "CLUSTER_ID": BGP_PEER1_IP, "DEFAULT_ID": "127.0.0.4"} utils.wait_until_function_pass(10, 1, templated_requests.get_templated_request, f"{BGP_DATA_FOLDER}/cluster_id/peer_rib_out", mapping, verify=True) - + with allure_step_with_separate_logging("step_tc4_disconnect_bgp_peers"): """Stop BGP peer & store logs.""" bgp.stop_bgp_speaker(self.bgp_peer1_process) pre-commit: exit 1 (13.94 seconds) /w/workspace/bgpcep-tox-verify-master> pre-commit run --all-files --show-diff-on-failure pid=2404 pre-commit: FAIL ✖ in 18.19 seconds docs-linkcheck: freeze> python -m pip freeze --all docs-linkcheck: alabaster==1.0.0,attrs==25.4.0,babel==2.17.0,blockdiag==3.0.0,certifi==2025.10.5,charset-normalizer==3.4.4,contourpy==1.3.3,cycler==0.12.1,docutils==0.21.2,fonttools==4.60.1,funcparserlib==2.0.0a0,future==1.0.0,idna==3.11,imagesize==1.4.1,Jinja2==3.1.6,jsonschema==3.2.0,kiwisolver==1.4.9,lfdocs-conf==0.9.0,MarkupSafe==3.0.3,matplotlib==3.10.7,numpy==2.3.4,nwdiag==3.0.0,packaging==25.0,pillow==12.0.0,pip==25.3,Pygments==2.19.2,pyparsing==3.2.5,pyrsistent==0.20.0,python-dateutil==2.9.0.post0,PyYAML==6.0.3,requests==2.32.5,requests-file==1.5.1,roman-numerals-py==3.1.0,seqdiag==3.0.0,setuptools==80.9.0,six==1.17.0,snowballstemmer==3.0.1,Sphinx==8.2.3,sphinx-bootstrap-theme==0.8.1,sphinx-data-viewer==0.1.5,sphinx-rtd-theme==3.0.2,sphinx-tabs==3.4.7,sphinxcontrib-applehelp==2.0.0,sphinxcontrib-blockdiag==3.0.0,sphinxcontrib-devhelp==2.0.0,sphinxcontrib-htmlhelp==2.1.0,sphinxcontrib-jquery==4.1,sphinxcontrib-jsmath==1.0.1,sphinxcontrib-needs==0.7.9,sphinxcontrib-nwdiag==2.0.0,sphinxcontrib-plantuml==0.31,sphinxcontrib-qthelp==2.0.0,sphinxcontrib-seqdiag==3.0.0,sphinxcontrib-serializinghtml==2.0.0,sphinxcontrib-swaggerdoc==0.1.7,urllib3==2.5.0,webcolors==24.11.1 docs-linkcheck: commands[0]> sphinx-build -b linkcheck -d /w/workspace/bgpcep-tox-verify-master/.tox/docs-linkcheck/tmp/doctrees ./docs/ /w/workspace/bgpcep-tox-verify-master/docs/_build/linkcheck docs: freeze> python -m pip freeze --all Running Sphinx v8.2.3 loading translations [en]... done docs: alabaster==1.0.0,attrs==25.4.0,babel==2.17.0,blockdiag==3.0.0,certifi==2025.10.5,charset-normalizer==3.4.4,contourpy==1.3.3,cycler==0.12.1,docutils==0.21.2,fonttools==4.60.1,funcparserlib==2.0.0a0,future==1.0.0,idna==3.11,imagesize==1.4.1,Jinja2==3.1.6,jsonschema==3.2.0,kiwisolver==1.4.9,lfdocs-conf==0.9.0,MarkupSafe==3.0.3,matplotlib==3.10.7,numpy==2.3.4,nwdiag==3.0.0,packaging==25.0,pillow==12.0.0,pip==25.3,Pygments==2.19.2,pyparsing==3.2.5,pyrsistent==0.20.0,python-dateutil==2.9.0.post0,PyYAML==6.0.3,requests==2.32.5,requests-file==1.5.1,roman-numerals-py==3.1.0,seqdiag==3.0.0,setuptools==80.9.0,six==1.17.0,snowballstemmer==3.0.1,Sphinx==8.2.3,sphinx-bootstrap-theme==0.8.1,sphinx-data-viewer==0.1.5,sphinx-rtd-theme==3.0.2,sphinx-tabs==3.4.7,sphinxcontrib-applehelp==2.0.0,sphinxcontrib-blockdiag==3.0.0,sphinxcontrib-devhelp==2.0.0,sphinxcontrib-htmlhelp==2.1.0,sphinxcontrib-jquery==4.1,sphinxcontrib-jsmath==1.0.1,sphinxcontrib-needs==0.7.9,sphinxcontrib-nwdiag==2.0.0,sphinxcontrib-plantuml==0.31,sphinxcontrib-qthelp==2.0.0,sphinxcontrib-seqdiag==3.0.0,sphinxcontrib-serializinghtml==2.0.0,sphinxcontrib-swaggerdoc==0.1.7,urllib3==2.5.0,webcolors==24.11.1 docs: commands[0]> sphinx-build -W --keep-going -b html -n -d /w/workspace/bgpcep-tox-verify-master/.tox/docs/tmp/doctrees ./docs/ /w/workspace/bgpcep-tox-verify-master/docs/_build/html making output directory... done Converting `source_suffix = '.rst'` to `source_suffix = {'.rst': 'restructuredtext'}`. loading intersphinx inventory 'common-packer' from https://docs.releng.linuxfoundation.org/projects/common-packer/en/stable/objects.inv ... loading intersphinx inventory 'global-jjb' from https://docs.releng.linuxfoundation.org/projects/global-jjb/en/stable/objects.inv ... loading intersphinx inventory 'lfdocs' from https://docs.releng.linuxfoundation.org/en/latest/objects.inv ... loading intersphinx inventory 'lfdocs-conf' from https://docs.releng.linuxfoundation.org/projects/lfdocs-conf/en/stable/objects.inv ... loading intersphinx inventory 'lftools' from https://docs.releng.linuxfoundation.org/projects/lftools/en/stable/objects.inv ... loading intersphinx inventory 'pipelines' from https://docs.releng.linuxfoundation.org/projects/pipelines/en/latest/objects.inv ... loading intersphinx inventory 'python' from https://docs.python.org/3/objects.inv ... Running Sphinx v8.2.3 loading translations [en]... done making output directory... done Converting `source_suffix = '.rst'` to `source_suffix = {'.rst': 'restructuredtext'}`. loading intersphinx inventory 'common-packer' from https://docs.releng.linuxfoundation.org/projects/common-packer/en/stable/objects.inv ... loading intersphinx inventory 'global-jjb' from https://docs.releng.linuxfoundation.org/projects/global-jjb/en/stable/objects.inv ... loading intersphinx inventory 'lfdocs' from https://docs.releng.linuxfoundation.org/en/latest/objects.inv ... loading intersphinx inventory 'lfdocs-conf' from https://docs.releng.linuxfoundation.org/projects/lfdocs-conf/en/stable/objects.inv ... loading intersphinx inventory 'lftools' from https://docs.releng.linuxfoundation.org/projects/lftools/en/stable/objects.inv ... loading intersphinx inventory 'pipelines' from https://docs.releng.linuxfoundation.org/projects/pipelines/en/latest/objects.inv ... loading intersphinx inventory 'python' from https://docs.python.org/3/objects.inv ... building [mo]: targets for 0 po files that are out of date writing output... building [linkcheck]: targets for 58 source files that are out of date updating environment: [new config] 58 added, 0 changed, 0 removed reading sources... [ 2%] algo/algo-user-guide-algo-model reading sources... [ 3%] algo/algo-user-guide-running-algo reading sources... [ 5%] algo/index reading sources... [ 7%] bgp-developer-guide reading sources... [ 9%] bgp-monitoring-protocol-developer-guide reading sources... [ 10%] bgp/bgp-user-guide-additional-path-capability reading sources... [ 12%] bgp/bgp-user-guide-bgp-application-peer reading sources... [ 14%] bgp/bgp-user-guide-bgp-peering reading sources... [ 16%] bgp/bgp-user-guide-bgp-server reading sources... [ 17%] bgp/bgp-user-guide-config-concepts reading sources... [ 19%] bgp/bgp-user-guide-evpn-family building [mo]: targets for 0 po files that are out of date writing output... reading sources... [ 21%] bgp/bgp-user-guide-flowspec-family building [html]: targets for 58 source files that are out of date updating environment: [new config] 58 added, 0 changed, 0 removed reading sources... [ 2%] algo/algo-user-guide-algo-model reading sources... [ 3%] algo/algo-user-guide-running-algo reading sources... [ 5%] algo/index reading sources... [ 7%] bgp-developer-guide reading sources... [ 22%] bgp/bgp-user-guide-graceful-restart-capability reading sources... [ 9%] bgp-monitoring-protocol-developer-guide reading sources... [ 10%] bgp/bgp-user-guide-additional-path-capability reading sources... [ 24%] bgp/bgp-user-guide-high-availability reading sources... [ 26%] bgp/bgp-user-guide-ip-unicast-family reading sources... [ 12%] bgp/bgp-user-guide-bgp-application-peer reading sources... [ 28%] bgp/bgp-user-guide-l3vpn-family reading sources... [ 14%] bgp/bgp-user-guide-bgp-peering reading sources... [ 29%] bgp/bgp-user-guide-labeled-family reading sources... [ 31%] bgp/bgp-user-guide-linkstate-family reading sources... [ 33%] bgp/bgp-user-guide-long-lived-graceful-restart-capability reading sources... [ 16%] bgp/bgp-user-guide-bgp-server reading sources... [ 17%] bgp/bgp-user-guide-config-concepts reading sources... [ 19%] bgp/bgp-user-guide-evpn-family reading sources... [ 34%] bgp/bgp-user-guide-mvpn-family reading sources... [ 21%] bgp/bgp-user-guide-flowspec-family reading sources... [ 22%] bgp/bgp-user-guide-graceful-restart-capability reading sources... [ 36%] bgp/bgp-user-guide-operational-state reading sources... [ 24%] bgp/bgp-user-guide-high-availability reading sources... [ 26%] bgp/bgp-user-guide-ip-unicast-family reading sources... [ 28%] bgp/bgp-user-guide-l3vpn-family reading sources... [ 38%] bgp/bgp-user-guide-overview reading sources... [ 40%] bgp/bgp-user-guide-pmsi-attribute reading sources... [ 29%] bgp/bgp-user-guide-labeled-family reading sources... [ 41%] bgp/bgp-user-guide-protocol-configuration reading sources... [ 43%] bgp/bgp-user-guide-protocol-configuration-loader reading sources... [ 31%] bgp/bgp-user-guide-linkstate-family reading sources... [ 45%] bgp/bgp-user-guide-revised-error-handling reading sources... [ 47%] bgp/bgp-user-guide-rib-config-policies reading sources... [ 33%] bgp/bgp-user-guide-long-lived-graceful-restart-capability reading sources... [ 34%] bgp/bgp-user-guide-mvpn-family reading sources... [ 36%] bgp/bgp-user-guide-operational-state reading sources... [ 38%] bgp/bgp-user-guide-overview reading sources... [ 40%] bgp/bgp-user-guide-pmsi-attribute reading sources... [ 41%] bgp/bgp-user-guide-protocol-configuration reading sources... [ 43%] bgp/bgp-user-guide-protocol-configuration-loader reading sources... [ 45%] bgp/bgp-user-guide-revised-error-handling reading sources... [ 47%] bgp/bgp-user-guide-rib-config-policies reading sources... [ 48%] bgp/bgp-user-guide-route-refresh-capability reading sources... [ 50%] bgp/bgp-user-guide-route-target-family reading sources... [ 52%] bgp/bgp-user-guide-running-bgp reading sources... [ 53%] bgp/bgp-user-guide-supported-capabilities reading sources... [ 55%] bgp/bgp-user-guide-test-tools reading sources... [ 57%] bgp/bgp-user-guide-topology-provider reading sources... [ 48%] bgp/bgp-user-guide-route-refresh-capability reading sources... [ 50%] bgp/bgp-user-guide-route-target-family reading sources... [ 59%] bgp/bgp-user-guide-troubleshooting reading sources... [ 52%] bgp/bgp-user-guide-running-bgp reading sources... [ 53%] bgp/bgp-user-guide-supported-capabilities reading sources... [ 60%] bgp/index reading sources... [ 62%] bmp/bgp-monitoring-protocol-user-guide-config-concepts reading sources... [ 55%] bgp/bgp-user-guide-test-tools reading sources... [ 64%] bmp/bgp-monitoring-protocol-user-guide-overview reading sources... [ 66%] bmp/bgp-monitoring-protocol-user-guide-running-bmp reading sources... [ 67%] bmp/bgp-monitoring-protocol-user-guide-supported-capabilities reading sources... [ 57%] bgp/bgp-user-guide-topology-provider reading sources... [ 69%] bmp/bgp-monitoring-protocol-user-guide-test-tools reading sources... [ 71%] bmp/bgp-monitoring-protocol-user-guide-troubleshooting reading sources... [ 72%] bmp/index reading sources... [ 74%] graph/graph-user-guide-graph-model reading sources... [ 76%] graph/graph-user-guide-manage-graph reading sources... [ 78%] graph/graph-user-guide-running-graph reading sources... [ 79%] graph/index reading sources... [ 81%] index reading sources... [ 83%] pcep-developer-guide reading sources... [ 59%] bgp/bgp-user-guide-troubleshooting reading sources... [ 60%] bgp/index reading sources... [ 62%] bmp/bgp-monitoring-protocol-user-guide-config-concepts reading sources... [ 64%] bmp/bgp-monitoring-protocol-user-guide-overview reading sources... [ 66%] bmp/bgp-monitoring-protocol-user-guide-running-bmp reading sources... [ 67%] bmp/bgp-monitoring-protocol-user-guide-supported-capabilities reading sources... [ 69%] bmp/bgp-monitoring-protocol-user-guide-test-tools reading sources... [ 71%] bmp/bgp-monitoring-protocol-user-guide-troubleshooting reading sources... [ 72%] bmp/index reading sources... [ 74%] graph/graph-user-guide-graph-model reading sources... [ 84%] pcep/index reading sources... [ 76%] graph/graph-user-guide-manage-graph reading sources... [ 86%] pcep/pcep-user-guide-active-stateful-pce reading sources... [ 78%] graph/graph-user-guide-running-graph reading sources... [ 79%] graph/index reading sources... [ 81%] index reading sources... [ 83%] pcep-developer-guide reading sources... [ 84%] pcep/index reading sources... [ 86%] pcep/pcep-user-guide-active-stateful-pce reading sources... [ 88%] pcep/pcep-user-guide-cli reading sources... [ 90%] pcep/pcep-user-guide-overview reading sources... [ 91%] pcep/pcep-user-guide-pce-server reading sources... [ 88%] pcep/pcep-user-guide-cli reading sources... [ 90%] pcep/pcep-user-guide-overview reading sources... [ 91%] pcep/pcep-user-guide-pce-server reading sources... [ 93%] pcep/pcep-user-guide-running-pcep reading sources... [ 95%] pcep/pcep-user-guide-session-statistics reading sources... [ 93%] pcep/pcep-user-guide-running-pcep reading sources... [ 95%] pcep/pcep-user-guide-session-statistics reading sources... [ 97%] pcep/pcep-user-guide-supported-capabilities reading sources... [ 97%] pcep/pcep-user-guide-supported-capabilities reading sources... [ 98%] pcep/pcep-user-guide-test-tools reading sources... [ 98%] pcep/pcep-user-guide-test-tools reading sources... [100%] pcep/pcep-user-guide-troubleshooting reading sources... [100%] pcep/pcep-user-guide-troubleshooting looking for now-outdated files... none found looking for now-outdated files... none found pickling environment... done checking consistency... done preparing documents... done copying assets... copying assets: done writing output... [ 2%] algo/algo-user-guide-algo-model writing output... [ 3%] algo/algo-user-guide-running-algo writing output... [ 5%] algo/index writing output... [ 7%] bgp-developer-guide writing output... [ 9%] bgp-monitoring-protocol-developer-guide writing output... [ 10%] bgp/bgp-user-guide-additional-path-capability writing output... [ 12%] bgp/bgp-user-guide-bgp-application-peer pickling environment... writing output... [ 14%] bgp/bgp-user-guide-bgp-peering writing output... [ 16%] bgp/bgp-user-guide-bgp-server writing output... [ 17%] bgp/bgp-user-guide-config-concepts writing output... [ 19%] bgp/bgp-user-guide-evpn-family writing output... [ 21%] bgp/bgp-user-guide-flowspec-family writing output... [ 22%] bgp/bgp-user-guide-graceful-restart-capability writing output... [ 24%] bgp/bgp-user-guide-high-availability writing output... [ 26%] bgp/bgp-user-guide-ip-unicast-family writing output... [ 28%] bgp/bgp-user-guide-l3vpn-family writing output... [ 29%] bgp/bgp-user-guide-labeled-family writing output... [ 31%] bgp/bgp-user-guide-linkstate-family writing output... [ 33%] bgp/bgp-user-guide-long-lived-graceful-restart-capability writing output... [ 34%] bgp/bgp-user-guide-mvpn-family writing output... [ 36%] bgp/bgp-user-guide-operational-state done checking consistency... done preparing documents... done copying assets... copying static files... Writing evaluated template result to /w/workspace/bgpcep-tox-verify-master/docs/_build/html/_static/basic.css writing output... [ 38%] bgp/bgp-user-guide-overview Writing evaluated template result to /w/workspace/bgpcep-tox-verify-master/docs/_build/html/_static/documentation_options.js writing output... [ 40%] bgp/bgp-user-guide-pmsi-attribute Writing evaluated template result to /w/workspace/bgpcep-tox-verify-master/docs/_build/html/_static/language_data.js writing output... [ 41%] bgp/bgp-user-guide-protocol-configuration writing output... [ 43%] bgp/bgp-user-guide-protocol-configuration-loader writing output... [ 45%] bgp/bgp-user-guide-revised-error-handling writing output... [ 47%] bgp/bgp-user-guide-rib-config-policies Writing evaluated template result to /w/workspace/bgpcep-tox-verify-master/docs/_build/html/_static/bootstrap-sphinx.css Writing evaluated template result to /w/workspace/bgpcep-tox-verify-master/docs/_build/html/_static/bootstrap-sphinx.js writing output... [ 48%] bgp/bgp-user-guide-route-refresh-capability writing output... [ 50%] bgp/bgp-user-guide-route-target-family writing output... [ 52%] bgp/bgp-user-guide-running-bgp writing output... [ 53%] bgp/bgp-user-guide-supported-capabilities copying static files: done copying extra files... copying extra files: done copying assets: done writing output... [ 2%] algo/algo-user-guide-algo-model writing output... [ 55%] bgp/bgp-user-guide-test-tools writing output... [ 57%] bgp/bgp-user-guide-topology-provider writing output... [ 59%] bgp/bgp-user-guide-troubleshooting writing output... [ 60%] bgp/index writing output... [ 62%] bmp/bgp-monitoring-protocol-user-guide-config-concepts writing output... [ 64%] bmp/bgp-monitoring-protocol-user-guide-overview writing output... [ 66%] bmp/bgp-monitoring-protocol-user-guide-running-bmp writing output... [ 67%] bmp/bgp-monitoring-protocol-user-guide-supported-capabilities writing output... [ 69%] bmp/bgp-monitoring-protocol-user-guide-test-tools writing output... [ 71%] bmp/bgp-monitoring-protocol-user-guide-troubleshooting writing output... [ 72%] bmp/index writing output... [ 74%] graph/graph-user-guide-graph-model writing output... [ 76%] graph/graph-user-guide-manage-graph writing output... [ 78%] graph/graph-user-guide-running-graph writing output... [ 79%] graph/index writing output... [ 81%] index writing output... [ 83%] pcep-developer-guide writing output... [ 84%] pcep/index writing output... [ 3%] algo/algo-user-guide-running-algo writing output... [ 5%] algo/index writing output... [ 7%] bgp-developer-guide writing output... [ 9%] bgp-monitoring-protocol-developer-guide writing output... [ 86%] pcep/pcep-user-guide-active-stateful-pce writing output... [ 88%] pcep/pcep-user-guide-cli writing output... [ 10%] bgp/bgp-user-guide-additional-path-capability writing output... [ 90%] pcep/pcep-user-guide-overview writing output... [ 91%] pcep/pcep-user-guide-pce-server writing output... [ 93%] pcep/pcep-user-guide-running-pcep writing output... [ 95%] pcep/pcep-user-guide-session-statistics writing output... [ 97%] pcep/pcep-user-guide-supported-capabilities writing output... [ 98%] pcep/pcep-user-guide-test-tools writing output... [100%] pcep/pcep-user-guide-troubleshooting (bgp-developer-guide: line 32) -ignored- https://tools.ietf.org/html/rfc4271 (bgp-developer-guide: line 32) -ignored- https://tools.ietf.org/html/rfc4760 (bgp-developer-guide: line 32) -ignored- https://tools.ietf.org/html/rfc4456 (bgp-developer-guide: line 32) -ignored- https://tools.ietf.org/html/rfc1997 (bgp-developer-guide: line 32) -ignored- https://tools.ietf.org/html/rfc4360 (bgp-developer-guide: line 39) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/concepts/src/main/yang/bgp-types.yang;hb=refs/heads/stable/boron (bgp-developer-guide: line 42) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/concepts/src/main/java/org/opendaylight/bgp/concepts/NextHopUtil.java;hb=refs/heads/stable/boron (bgp-developer-guide: line 57) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/parser-impl/src/main/java/org/opendaylight/protocol/bgp/parser/impl/BGPActivator.java;hb=refs/heads/stable/boron (bgp-developer-guide: line 95) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/parser-spi/src/main/java/org/opendaylight/protocol/bgp/parser/spi/pojo/SimpleBGPExtensionProviderContext.java;hb=refs/heads/stable/boron (bgp-developer-guide: line 95) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=tree;f=bgp/parser-spi/src/main/java/org/opendaylight/protocol/bgp/parser/spi;hb=refs/heads/stable/boron (bgp-developer-guide: line 194) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPSynchronization.java;hb=refs/heads/stable/boron (bgp-developer-guide: line 203) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPPeer.java;hb=refs/heads/stable/boron (bgp-developer-guide: line 203) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/StrictBGPPeerRegistry.java;hb=refs/heads/stable/boron (bgp-developer-guide: line 214) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/ApplicationPeer.java;hb=refs/heads/stable/boron (bgp-developer-guide: line 223) -ignored- https://tools.ietf.org/html/rfc4271#section-3.2 (bgp-developer-guide: line 229) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/rib-spi/src/main/java/org/opendaylight/protocol/bgp/rib/spi/RIBSupport.java;hb=refs/heads/stable/boron (bgp-developer-guide: line 242) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AdjRibInWriter.java;hb=refs/heads/stable/boron (bgp-developer-guide: line 248) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/EffectiveRibInWriter.java;hb=refs/heads/stable/boron (bgp-developer-guide: line 253) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/LocRibWriter.java;hb=refs/heads/stable/boron (bgp-developer-guide: line 259) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AdjRibOutListener.java;h=a14fd54a29ea613b381a36248f67491d968963b8;hb=refs/heads/stable/boron (bgp-developer-guide: line 266) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/inet/src/main/yang/bgp-inet.yang;hb=refs/heads/stable/boron (bgp-developer-guide: line 274) -ignored- https://tools.ietf.org/html/rfc5575 (bgp-developer-guide: line 274) -ignored- https://tools.ietf.org/html/draft-ietf-idr-flow-spec-v6-06 (bgp-developer-guide: line 274) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/flowspec/src/main/yang/bgp-flowspec.yang;hb=refs/heads/stable/boron (bgp-developer-guide: line 289) -ignored- https://tools.ietf.org/html/draft-ietf-idr-ls-distribution-04 (bgp-developer-guide: line 289) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/linkstate/src/main/yang/bgp-linkstate.yang;hb=refs/heads/stable/boron (bgp-developer-guide: line 289) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/extensions/linkstate/src/main/java/org/opendaylight/protocol/bgp/linkstate/impl/attribute/LinkstateAttributeParser.java;hb=HEAD (bgp-developer-guide: line 289) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=bgp/extensions/linkstate/src/main/java/org/opendaylight/protocol/bgp/linkstate/impl/nlri/LinkstateNlriParser.java;hb=HEAD (bgp-developer-guide: line 289) -ignored- https://tools.ietf.org/html/draft-ietf-idr-te-lsp-distribution-03 (bgp-developer-guide: line 289) -ignored- https://tools.ietf.org/html/draft-gredler-idr-bgp-ls-segment-routing-ext-00 (bgp-developer-guide: line 289) -ignored- https://tools.ietf.org/html/draft-ietf-idr-bgpls-segment-routing-epe-02 (bgp-developer-guide: line 312) -ignored- https://tools.ietf.org/html/rfc3107 (bgp-developer-guide: line 312) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob_plain;f=bgp/labeled-unicast/src/main/yang/bgp-labeled-unicast.yang;hb=refs/heads/stable/boron (bgp-developer-guide: line 326) -ignored- https://tools.ietf.org/html/draft-clemm-netmod-yang-network-topo-01 (bgp-monitoring-protocol-developer-guide: line 50) -ignored- https://tools.ietf.org/html/draft-ietf-grow-bmp-15 (bgp/bgp-user-guide-additional-path-capability: line 344) -ignored- https://tools.ietf.org/html/rfc7911 (bgp/bgp-user-guide-additional-path-capability: line 345) -ignored- https://tools.ietf.org/html/draft-ietf-idr-add-paths-guidelines-08 (bgp/bgp-user-guide-config-concepts: line 88) -ignored- https://tools.ietf.org/html/rfc6793 (bgp/bgp-user-guide-config-concepts: line 89) -ignored- https://tools.ietf.org/html/rfc7311 (bgp/bgp-user-guide-config-concepts: line 90) -ignored- https://tools.ietf.org/html/rfc5668 (bgp/bgp-user-guide-config-concepts: line 91) -ignored- https://tools.ietf.org/html/draft-ietf-idr-link-bandwidth-06 (bgp/bgp-user-guide-config-concepts: line 92) -ignored- https://tools.ietf.org/html/rfc7938 (bgp/bgp-user-guide-evpn-family: line 1021) -ignored- https://tools.ietf.org/html/rfc7432 (bgp/bgp-user-guide-evpn-family: line 1022) -ignored- https://tools.ietf.org/html/rfc7623 (bgp/bgp-user-guide-evpn-family: line 1023) -ignored- https://tools.ietf.org/html/draft-ietf-bess-evpn-vpws-07 (bgp/bgp-user-guide-evpn-family: line 1024) -ignored- https://tools.ietf.org/html/draft-ietf-bess-evpn-overlay-04 (bgp/bgp-user-guide-evpn-family: line 1025) -ignored- https://tools.ietf.org/html/draft-ietf-bess-dci-evpn-overlay-04 (bgp/bgp-user-guide-evpn-family: line 1026) -ignored- https://tools.ietf.org/html/draft-ietf-bess-evpn-usage-03 (bgp/bgp-user-guide-flowspec-family: line 1390) -ignored- https://tools.ietf.org/html/draft-ietf-idr-flow-spec-v6-07 (bgp/bgp-user-guide-flowspec-family: line 1391) -ignored- https://tools.ietf.org/html/draft-ietf-idr-flowspec-redirect-ip-00 (bgp/bgp-user-guide-flowspec-family: line 1392) -ignored- https://tools.ietf.org/html/rfc7674 (bgp/bgp-user-guide-flowspec-family: line 1393) -ignored- https://tools.ietf.org/html/draft-ietf-idr-bgp-flowspec-oid-03 (bgp/bgp-user-guide-graceful-restart-capability: line 174) -ignored- https://tools.ietf.org/html/rfc4724 (bgp/bgp-user-guide-l3vpn-family: line 651) -ignored- https://tools.ietf.org/html/rfc4364 (bgp/bgp-user-guide-l3vpn-family: line 652) -ignored- https://tools.ietf.org/html/rfc4659 (bgp/bgp-user-guide-l3vpn-family: line 653) -ignored- https://tools.ietf.org/html/draft-ietf-bess-virtual-pe-00 (bgp/bgp-user-guide-labeled-family: line 460) -ignored- https://tools.ietf.org/html/draft-ietf-idr-bgp-prefix-sid-03 (bgp/bgp-user-guide-labeled-family: line 461) -ignored- https://tools.ietf.org/html/rfc4798 (bgp/bgp-user-guide-labeled-family: line 462) -ignored- https://tools.ietf.org/html/draft-ietf-spring-segment-routing-msdc-01 (bgp/bgp-user-guide-labeled-family: line 463) -ignored- https://tools.ietf.org/html/draft-gredler-idr-bgplu-epe-06 (bgp/bgp-user-guide-linkstate-family: line 659) -ignored- https://tools.ietf.org/html/rfc9552 (bgp/bgp-user-guide-linkstate-family: line 660) -ignored- https://tools.ietf.org/html/rfc9085 (bgp/bgp-user-guide-linkstate-family: line 661) -ignored- https://tools.ietf.org/html/rfc9086 (bgp/bgp-user-guide-linkstate-family: line 662) -ignored- https://tools.ietf.org/html/rfc9351 (bgp/bgp-user-guide-linkstate-family: line 663) -ignored- https://tools.ietf.org/html/rfc9514 (bgp/bgp-user-guide-linkstate-family: line 664) -ignored- https://tools.ietf.org/html/rfc8814 (bgp/bgp-user-guide-linkstate-family: line 665) -ignored- https://tools.ietf.org/html/rfc8571 (bgp/bgp-user-guide-linkstate-family: line 666) -ignored- https://tools.ietf.org/html/rfc9294 (bgp/bgp-user-guide-linkstate-family: line 667) -ignored- https://tools.ietf.org/html/draft-ietf-idr-ls-distribution-impl-04 (bgp/bgp-user-guide-long-lived-graceful-restart-capability: line 75) -ignored- https://tools.ietf.org/html/draft-uttaro-idr-bgp-persistence-04 (bgp/bgp-user-guide-mvpn-family: line 994) -ignored- https://tools.ietf.org/html/rfc6513 (bgp/bgp-user-guide-mvpn-family: line 995) -ignored- https://tools.ietf.org/html/rfc6514 (bgp/bgp-user-guide-mvpn-family: line 996) -ignored- https://tools.ietf.org/html/rfc6515 (bgp/bgp-user-guide-revised-error-handling: line 6) -ignored- https://tools.ietf.org/html/rfc7606 (bgp/bgp-user-guide-rib-config-policies: line 8) -ignored- https://tools.ietf.org/html/rfc8212 (bgp/bgp-user-guide-route-refresh-capability: line 58) -ignored- https://tools.ietf.org/html/rfc2918 (bgp/bgp-user-guide-route-target-family: line 433) -ignored- https://tools.ietf.org/html/rfc4684 (bgp/bgp-user-guide-supported-capabilities: line 11) -ignored- https://tools.ietf.org/html/rfc4486 (bgp/bgp-user-guide-supported-capabilities: line 12) -ignored- https://tools.ietf.org/html/rfc5492 (bgp/bgp-user-guide-supported-capabilities: line 13) -ignored- https://tools.ietf.org/html/rfc5004 (bgp/bgp-user-guide-supported-capabilities: line 14) -ignored- https://tools.ietf.org/html/rfc6286 (bgp/bgp-user-guide-supported-capabilities: line 19) -ignored- https://tools.ietf.org/html/draft-ietf-idr-bgp-extended-messages-13 (bgp/bgp-user-guide-supported-capabilities: line 21) -ignored- https://tools.ietf.org/html/rfc7752 (bgp/bgp-user-guide-supported-capabilities: line 22) -ignored- https://tools.ietf.org/html/draft-gredler-idr-bgp-ls-segment-routing-ext-03 (bgp/bgp-user-guide-supported-capabilities: line 23) -ignored- https://tools.ietf.org/html/draft-ietf-idr-bgpls-segment-routing-epe-05 (bgp/bgp-user-guide-supported-capabilities: line 25) -ignored- http://tools.ietf.org/html/rfc7674 (bgp/bgp-user-guide-supported-capabilities: line 39) -ignored- https://tools.ietf.org/html/draft-sajassi-bess-evpn-vpws-fxc-01 (bmp/bgp-monitoring-protocol-user-guide-supported-capabilities: line 7) -ignored- https://tools.ietf.org/html/rfc7854 (pcep-developer-guide: line 68) -ignored- https://tools.ietf.org/html/rfc5441 (pcep-developer-guide: line 68) -ignored- https://tools.ietf.org/html/rfc5541 (pcep-developer-guide: line 68) -ignored- https://tools.ietf.org/html/rfc5455 (pcep-developer-guide: line 68) -ignored- https://tools.ietf.org/html/rfc5557 (pcep-developer-guide: line 68) -ignored- https://tools.ietf.org/html/rfc5521 (pcep-developer-guide: line 120) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=pcep/spi/src/main/java/org/opendaylight/protocol/pcep/spi/pojo/SimplePCEPExtensionProviderContext.java;hb=HEAD (pcep-developer-guide: line 120) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=tree;f=pcep/spi/src/main/java/org/opendaylight/protocol/pcep/spi/pojo;hb=HEAD (pcep-developer-guide: line 162) -ignored- https://tools.ietf.org/html/draft-ietf-pce-stateful-pce (pcep-developer-guide: line 162) -ignored- https://tools.ietf.org/html/draft-ietf-pce-pce-initiated-lsp (pcep-developer-guide: line 173) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=pcep/api/src/main/yang/pcep-types.yang;hb=HEAD (pcep-developer-guide: line 198) -ignored- https://tools.ietf.org/html/draft-ietf-pce-segment-routing-01 (pcep-developer-guide: line 213) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=pcep/segment-routing/src/main/yang/odl-pcep-segment-routing.yang;hb=HEAD (pcep-developer-guide: line 218) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=pcep/segment-routing/src/main/java/org/opendaylight/protocol/pcep/segment/routing/SrEroSubobjectParser.java;hb=HEAD (pcep-developer-guide: line 218) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=pcep/segment-routing/src/main/java/org/opendaylight/protocol/pcep/segment/routing/SrPceCapabilityTlvParser.java;hb=HEAD (pcep-developer-guide: line 220) -ignored- https://tools.ietf.org/html/draft-ietf-pce-lsp-setup-type-01 (pcep-developer-guide: line 228) -ignored- https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=pcep/base-parser/src/main/java/org/opendaylight/protocol/pcep/parser/tlv/PathSetupTypeTlvParser.java;hb=HEAD (pcep/pcep-user-guide-supported-capabilities: line 6) -ignored- https://tools.ietf.org/html/rfc5440 (pcep/pcep-user-guide-supported-capabilities: line 8) -ignored- https://tools.ietf.org/html/rfc5520 (pcep/pcep-user-guide-supported-capabilities: line 12) -ignored- https://tools.ietf.org/html/rfc5886 (pcep/pcep-user-guide-supported-capabilities: line 13) -ignored- https://tools.ietf.org/html/rfc7470 (pcep/pcep-user-guide-supported-capabilities: line 14) -ignored- https://tools.ietf.org/html/rfc7896 (pcep/pcep-user-guide-supported-capabilities: line 15) -ignored- https://tools.ietf.org/html/draft-ietf-pce-stateful-pce-16 (pcep/pcep-user-guide-supported-capabilities: line 16) -ignored- https://tools.ietf.org/html/draft-ietf-pce-pce-initiated-lsp-07 (pcep/pcep-user-guide-supported-capabilities: line 17) -ignored- https://tools.ietf.org/html/draft-ietf-pce-segment-routing-07 (pcep/pcep-user-guide-supported-capabilities: line 18) -ignored- https://tools.ietf.org/html/draft-ietf-pce-lsp-setup-type-03 (pcep/pcep-user-guide-supported-capabilities: line 19) -ignored- https://tools.ietf.org/html/draft-ietf-pce-stateful-sync-optimizations-05 (pcep/pcep-user-guide-supported-capabilities: line 20) -ignored- https://tools.ietf.org/html/draft-sivabalan-pce-binding-label-sid-01 (pcep/pcep-user-guide-supported-capabilities: line 21) -ignored- https://tools.ietf.org/html/draft-ietf-pce-pceps-10 (pcep/pcep-user-guide-supported-capabilities: line 22) -ignored- https://tools.ietf.org/html/rfc8306 (pcep/pcep-user-guide-troubleshooting: line 67) -ignored- https://tools.ietf.org/html/rfc4655 (pcep/pcep-user-guide-troubleshooting: line 68) -ignored- https://tools.ietf.org/html/rfc4657 (pcep/pcep-user-guide-troubleshooting: line 69) -ignored- https://tools.ietf.org/html/rfc7399 (pcep/pcep-user-guide-troubleshooting: line 70) -ignored- https://tools.ietf.org/html/rfc7491 (pcep/pcep-user-guide-troubleshooting: line 71) -ignored- https://tools.ietf.org/html/rfc5623 (pcep/pcep-user-guide-troubleshooting: line 72) -ignored- https://tools.ietf.org/html/draft-ietf-pce-stateful-pce-app-07 writing output... [ 12%] bgp/bgp-user-guide-bgp-application-peer writing output... [ 14%] bgp/bgp-user-guide-bgp-peering writing output... [ 16%] bgp/bgp-user-guide-bgp-server writing output... [ 17%] bgp/bgp-user-guide-config-concepts (graph/graph-user-guide-graph-model: line 50) ok https://en.wikipedia.org/wiki/Graph_theory (algo/algo-user-guide-algo-model: line 30) ok https://en.wikipedia.org/wiki/Shortest_path_problem (algo/algo-user-guide-algo-model: line 30) ok https://en.wikipedia.org/wiki/Constrained_Shortest_Path_First writing output... [ 19%] bgp/bgp-user-guide-evpn-family writing output... [ 21%] bgp/bgp-user-guide-flowspec-family writing output... [ 22%] bgp/bgp-user-guide-graceful-restart-capability writing output... [ 24%] bgp/bgp-user-guide-high-availability writing output... [ 26%] bgp/bgp-user-guide-ip-unicast-family writing output... [ 28%] bgp/bgp-user-guide-l3vpn-family writing output... [ 29%] bgp/bgp-user-guide-labeled-family writing output... [ 31%] bgp/bgp-user-guide-linkstate-family writing output... [ 33%] bgp/bgp-user-guide-long-lived-graceful-restart-capability writing output... [ 34%] bgp/bgp-user-guide-mvpn-family (bgp/bgp-user-guide-evpn-family: line 976) ok http://www.iana.org/assignments/bgp-parameters/bgp-parameters.xhtml#tunnel-types writing output... [ 36%] bgp/bgp-user-guide-operational-state writing output... [ 38%] bgp/bgp-user-guide-overview writing output... [ 40%] bgp/bgp-user-guide-pmsi-attribute writing output... [ 41%] bgp/bgp-user-guide-protocol-configuration writing output... [ 43%] bgp/bgp-user-guide-protocol-configuration-loader writing output... [ 45%] bgp/bgp-user-guide-revised-error-handling writing output... [ 47%] bgp/bgp-user-guide-rib-config-policies writing output... [ 48%] bgp/bgp-user-guide-route-refresh-capability writing output... [ 50%] bgp/bgp-user-guide-route-target-family writing output... [ 52%] bgp/bgp-user-guide-running-bgp (bgp/bgp-user-guide-troubleshooting: line 41) redirect https://jira.opendaylight.org/browse/BGPCEP-756?jql=project%20%3D%20BGPCEP%20AND%20component%20%3D%20BGP - with Found to https://lf-opendaylight.atlassian.net/issues/?jql=project+%3D+BGPCEP+AND+component+%3D+BGP&selectedIssue=BGPCEP-756 writing output... [ 53%] bgp/bgp-user-guide-supported-capabilities writing output... [ 55%] bgp/bgp-user-guide-test-tools writing output... [ 57%] bgp/bgp-user-guide-topology-provider writing output... [ 59%] bgp/bgp-user-guide-troubleshooting writing output... [ 60%] bgp/index writing output... [ 62%] bmp/bgp-monitoring-protocol-user-guide-config-concepts (bmp/bgp-monitoring-protocol-user-guide-troubleshooting: line 43) redirect https://jira.opendaylight.org/projects/BGPCEP/issues/BGPCEP-589?filter=allopenissues - with Found to https://lf-opendaylight.atlassian.net/jira/software/c/projects/BGPCEP/issues/?filter=allopenissues&selectedIssue=BGPCEP-589 build succeeded. Look for any errors in the above output or in docs/_build/linkcheck/output.txt writing output... [ 64%] bmp/bgp-monitoring-protocol-user-guide-overview writing output... [ 66%] bmp/bgp-monitoring-protocol-user-guide-running-bmp writing output... [ 67%] bmp/bgp-monitoring-protocol-user-guide-supported-capabilities writing output... [ 69%] bmp/bgp-monitoring-protocol-user-guide-test-tools writing output... [ 71%] bmp/bgp-monitoring-protocol-user-guide-troubleshooting writing output... [ 72%] bmp/index writing output... [ 74%] graph/graph-user-guide-graph-model writing output... [ 76%] graph/graph-user-guide-manage-graph writing output... [ 78%] graph/graph-user-guide-running-graph writing output... [ 79%] graph/index writing output... [ 81%] index writing output... [ 83%] pcep-developer-guide writing output... [ 84%] pcep/index writing output... [ 86%] pcep/pcep-user-guide-active-stateful-pce writing output... [ 88%] pcep/pcep-user-guide-cli writing output... [ 90%] pcep/pcep-user-guide-overview writing output... [ 91%] pcep/pcep-user-guide-pce-server writing output... [ 93%] pcep/pcep-user-guide-running-pcep writing output... [ 95%] pcep/pcep-user-guide-session-statistics writing output... [ 97%] pcep/pcep-user-guide-supported-capabilities writing output... [ 98%] pcep/pcep-user-guide-test-tools writing output... [100%] pcep/pcep-user-guide-troubleshooting generating indices... genindex done highlighting module code... writing additional pages... search done copying images... [ 4%] images/bgpcep/bgp-dependency-tree.png copying images... [ 7%] images/bgpcep/PathAttributesSerialization.png copying images... [ 11%] images/bgpcep/RIB.png copying images... [ 15%] bgp/images/local-as.png copying images... [ 19%] bgp/images/MultipleClustersIds.png copying images... [ 22%] bgp/images/bgp-pipeline.png copying images... [ 26%] bgp/images/bgp-app-pipeline.png copying images... [ 30%] bgp/images/BGP_HA.png copying images... [ 33%] bgp/images/BGP_HA_failure.png copying images... [ 37%] bgp/images/BGP_HA_recovery.png copying images... [ 41%] bmp/images/bmp.png copying images... [ 44%] bmp/images/bmp-plugin.png copying images... [ 48%] images/bgpcep/pcep-dependency-tree.png copying images... [ 52%] images/bgpcep/pcep-parsing.png copying images... [ 56%] images/bgpcep/validation.png copying images... [ 59%] pcep/images/pcep-sync.png copying images... [ 63%] pcep/images/pcep-delegation-return.png copying images... [ 67%] pcep/images/pcep-update.png copying images... [ 70%] pcep/images/pcep-initiate.png copying images... [ 74%] pcep/images/pcep-deletion.png copying images... [ 78%] pcep/images/pcep-revoke-delegation.png copying images... [ 81%] pcep/images/pcep-sync-skipped.png copying images... [ 85%] pcep/images/pcep-sync-incremental.png copying images... [ 89%] pcep/images/pcep-sync-initial.png copying images... [ 93%] pcep/images/pcep-re-sync.png copying images... [ 96%] pcep/images/pcep.png copying images... [100%] pcep/images/pcep-plugin.png dumping search index in English (code: en)... done dumping object inventory... done build succeeded. The HTML pages are in docs/_build/html. docs-linkcheck: OK ✔ in 31.67 seconds docs: OK (33.21=setup[24.90]+cmd[8.31] seconds) docs-linkcheck: OK (31.67=setup[24.44]+cmd[7.23] seconds) pre-commit: FAIL code 1 (18.19=setup[4.24]+cmd[13.94] seconds) evaluation failed :( (33.24 seconds) + tox_status=255 + echo '---> Completed tox runs' ---> Completed tox runs + for i in .tox/*/log ++ echo .tox/docs-linkcheck/log ++ awk -F/ '{print $2}' + tox_env=docs-linkcheck + cp -r .tox/docs-linkcheck/log /w/workspace/bgpcep-tox-verify-master/archives/tox/docs-linkcheck + for i in .tox/*/log ++ echo .tox/docs/log ++ awk -F/ '{print $2}' + tox_env=docs + cp -r .tox/docs/log /w/workspace/bgpcep-tox-verify-master/archives/tox/docs + for i in .tox/*/log ++ echo .tox/pre-commit/log ++ awk -F/ '{print $2}' + tox_env=pre-commit + cp -r .tox/pre-commit/log /w/workspace/bgpcep-tox-verify-master/archives/tox/pre-commit + DOC_DIR=docs/_build/html + [[ -d docs/_build/html ]] + echo '---> Archiving generated docs' ---> Archiving generated docs + mv docs/_build/html /w/workspace/bgpcep-tox-verify-master/archives/docs + echo '---> tox-run.sh ends' ---> tox-run.sh ends + test 255 -eq 0 + exit 255 ++ '[' 1 = 1 ']' ++ '[' -x /usr/bin/clear_console ']' ++ /usr/bin/clear_console -q Build step 'Execute shell' marked build as failure $ ssh-agent -k unset SSH_AUTH_SOCK; unset SSH_AGENT_PID; echo Agent pid 1658 killed; [ssh-agent] Stopped. [PostBuildScript] - [INFO] Executing post build scripts. [bgpcep-tox-verify-master] $ /bin/bash /tmp/jenkins3079284031729910884.sh ---> sysstat.sh [bgpcep-tox-verify-master] $ /bin/bash /tmp/jenkins2650937268710899784.sh ---> package-listing.sh ++ facter osfamily ++ tr '[:upper:]' '[:lower:]' + OS_FAMILY=debian + workspace=/w/workspace/bgpcep-tox-verify-master + START_PACKAGES=/tmp/packages_start.txt + END_PACKAGES=/tmp/packages_end.txt + DIFF_PACKAGES=/tmp/packages_diff.txt + PACKAGES=/tmp/packages_start.txt + '[' /w/workspace/bgpcep-tox-verify-master ']' + PACKAGES=/tmp/packages_end.txt + case "${OS_FAMILY}" in + dpkg -l + grep '^ii' + '[' -f /tmp/packages_start.txt ']' + '[' -f /tmp/packages_end.txt ']' + diff /tmp/packages_start.txt /tmp/packages_end.txt + '[' /w/workspace/bgpcep-tox-verify-master ']' + mkdir -p /w/workspace/bgpcep-tox-verify-master/archives/ + cp -f /tmp/packages_diff.txt /tmp/packages_end.txt /tmp/packages_start.txt /w/workspace/bgpcep-tox-verify-master/archives/ [bgpcep-tox-verify-master] $ /bin/bash /tmp/jenkins16025556903381254908.sh ---> capture-instance-metadata.sh Setup pyenv: system 3.8.20 3.9.20 3.10.15 * 3.11.10 (set by /w/workspace/bgpcep-tox-verify-master/.python-version) lf-activate-venv(): INFO: Reuse venv:/tmp/venv-lESz from file:/tmp/.os_lf_venv lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) lf-activate-venv(): INFO: Attempting to install with network-safe options... lf-activate-venv(): INFO: Base packages installed successfully lf-activate-venv(): INFO: Installing additional packages: lftools lf-activate-venv(): INFO: Adding /tmp/venv-lESz/bin to PATH INFO: Running in OpenStack, capturing instance metadata [bgpcep-tox-verify-master] $ /bin/bash /tmp/jenkins3999466478918601459.sh provisioning config files... Could not find credentials [logs] for bgpcep-tox-verify-master #1458 copy managed file [jenkins-log-archives-settings] to file:/w/workspace/bgpcep-tox-verify-master@tmp/config4697805236746877058tmp Regular expression run condition: Expression=[^.*logs-s3.*], Label=[odl-logs-s3-cloudfront-index] Run condition [Regular expression match] enabling perform for step [Provide Configuration files] provisioning config files... copy managed file [jenkins-s3-log-ship] to file:/home/jenkins/.aws/credentials [EnvInject] - Injecting environment variables from a build step. [EnvInject] - Injecting as environment variables the properties content SERVER_ID=logs [EnvInject] - Variables injected successfully. [bgpcep-tox-verify-master] $ /bin/bash /tmp/jenkins16068445833045556163.sh ---> create-netrc.sh WARN: Log server credential not found. [bgpcep-tox-verify-master] $ /bin/bash /tmp/jenkins5422346277071587784.sh ---> python-tools-install.sh Setup pyenv: system 3.8.20 3.9.20 3.10.15 * 3.11.10 (set by /w/workspace/bgpcep-tox-verify-master/.python-version) lf-activate-venv(): INFO: Reuse venv:/tmp/venv-lESz from file:/tmp/.os_lf_venv lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) lf-activate-venv(): INFO: Attempting to install with network-safe options... lf-activate-venv(): INFO: Base packages installed successfully lf-activate-venv(): INFO: Installing additional packages: lftools lf-activate-venv(): INFO: Adding /tmp/venv-lESz/bin to PATH [bgpcep-tox-verify-master] $ /bin/bash /tmp/jenkins2929056617601912652.sh ---> sudo-logs.sh Archiving 'sudo' log.. [bgpcep-tox-verify-master] $ /bin/bash /tmp/jenkins15340226403027803417.sh ---> job-cost.sh Setup pyenv: system 3.8.20 3.9.20 3.10.15 * 3.11.10 (set by /w/workspace/bgpcep-tox-verify-master/.python-version) lf-activate-venv(): INFO: Reuse venv:/tmp/venv-lESz from file:/tmp/.os_lf_venv lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) lf-activate-venv(): INFO: Attempting to install with network-safe options... lf-activate-venv(): INFO: Base packages installed successfully lf-activate-venv(): INFO: Installing additional packages: zipp==1.1.0 python-openstackclient urllib3~=1.26.15 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. deprecated 1.2.18 requires wrapt<2,>=1.10, but you have wrapt 2.0.0 which is incompatible. lf-activate-venv(): INFO: Adding /tmp/venv-lESz/bin to PATH INFO: No Stack... INFO: Retrieving Pricing Info for: v3-standard-8 INFO: Archiving Costs [bgpcep-tox-verify-master] $ /bin/bash -l /tmp/jenkins7661320809928140171.sh ---> logs-deploy.sh Setup pyenv: system 3.8.20 3.9.20 3.10.15 * 3.11.10 (set by /w/workspace/bgpcep-tox-verify-master/.python-version) lf-activate-venv(): INFO: Reuse venv:/tmp/venv-lESz from file:/tmp/.os_lf_venv lf-activate-venv(): INFO: Installing base packages (pip, setuptools, virtualenv) lf-activate-venv(): INFO: Attempting to install with network-safe options... lf-activate-venv(): INFO: Base packages installed successfully lf-activate-venv(): INFO: Installing additional packages: lftools urllib3~=1.26.15 lf-activate-venv(): INFO: Adding /tmp/venv-lESz/bin to PATH WARNING: Nexus logging server not set INFO: S3 path logs/releng/vex-yul-odl-jenkins-1/bgpcep-tox-verify-master/1458/ INFO: archiving logs to S3 ---> uname -a: Linux prd-ubuntu2204-docker-8c-8g-3161 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux ---> lscpu: Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Address sizes: 40 bits physical, 48 bits virtual Byte Order: Little Endian CPU(s): 8 On-line CPU(s) list: 0-7 Vendor ID: AuthenticAMD Model name: AMD EPYC-Rome Processor CPU family: 23 Model: 49 Thread(s) per core: 1 Core(s) per socket: 1 Socket(s): 8 Stepping: 0 BogoMIPS: 5600.00 Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext perfctr_core ssbd ibrs ibpb stibp vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 clzero xsaveerptr wbnoinvd arat npt nrip_save umip rdpid arch_capabilities Virtualization: AMD-V Hypervisor vendor: KVM Virtualization type: full L1d cache: 256 KiB (8 instances) L1i cache: 256 KiB (8 instances) L2 cache: 4 MiB (8 instances) L3 cache: 128 MiB (8 instances) NUMA node(s): 1 NUMA node0 CPU(s): 0-7 Vulnerability Gather data sampling: Not affected Vulnerability Indirect target selection: Not affected Vulnerability Itlb multihit: Not affected Vulnerability L1tf: Not affected Vulnerability Mds: Not affected Vulnerability Meltdown: Not affected Vulnerability Mmio stale data: Not affected Vulnerability Reg file data sampling: Not affected Vulnerability Retbleed: Mitigation; untrained return thunk; SMT disabled Vulnerability Spec rstack overflow: Mitigation; SMT disabled Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl and seccomp Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization Vulnerability Spectre v2: Mitigation; Retpolines; IBPB disabled; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI Not affected Vulnerability Srbds: Not affected Vulnerability Tsx async abort: Not affected ---> nproc: 8 ---> df -h: Filesystem Size Used Avail Use% Mounted on tmpfs 3.2G 1.1M 3.2G 1% /run /dev/vda1 155G 9.2G 146G 6% / tmpfs 16G 0 16G 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock /dev/vda15 105M 6.1M 99M 6% /boot/efi tmpfs 3.2G 4.0K 3.2G 1% /run/user/1001 ---> free -m: total used free shared buff/cache available Mem: 32092 871 27717 4 3503 30753 Swap: 1023 0 1023 ---> ip addr: 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens3: mtu 1458 qdisc mq state UP group default qlen 1000 link/ether fa:16:3e:7e:31:b7 brd ff:ff:ff:ff:ff:ff altname enp0s3 inet 10.30.171.106/23 metric 100 brd 10.30.171.255 scope global dynamic ens3 valid_lft 86185sec preferred_lft 86185sec inet6 fe80::f816:3eff:fe7e:31b7/64 scope link valid_lft forever preferred_lft forever 3: docker0: mtu 1458 qdisc noqueue state DOWN group default link/ether 0a:cf:d3:08:f9:5e brd ff:ff:ff:ff:ff:ff inet 10.250.0.254/24 brd 10.250.0.255 scope global docker0 valid_lft forever preferred_lft forever ---> sar -b -r -n DEV: Linux 5.15.0-153-generic (prd-ubuntu2204-docker-8c-8g-3161) 10/29/25 _x86_64_ (8 CPU) 09:23:39 LINUX RESTART (8 CPU) ---> sar -P ALL: Linux 5.15.0-153-generic (prd-ubuntu2204-docker-8c-8g-3161) 10/29/25 _x86_64_ (8 CPU) 09:23:39 LINUX RESTART (8 CPU)