LABELS=centos7-builder-2c-1g
-IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20221016-222911.194
+IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20230301-060101.869
HARDWARE_ID=v3-standard-2
LABELS=centos7-builder-2c-2g
-IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20221016-222911.194
+IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20230301-060101.869
HARDWARE_ID=v3-standard-2
LABELS=centos7-builder-2c-8g
-IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20221016-222911.194
+IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20230301-060101.869
HARDWARE_ID=v3-standard-2
LABELS=centos7-builder-4c-16g
-IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20221016-222911.194
+IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20230301-060101.869
HARDWARE_ID=v3-standard-4
LABELS=centos7-builder-4c-4g
-IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20221016-222911.194
+IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20230301-060101.869
HARDWARE_ID=v3-standard-4
LABELS=centos7-builder-8c-8g
-IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20221016-222911.194
+IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20230301-060101.869
HARDWARE_ID=v3-standard-8
LABELS=centos7-docker-1c-4g
-IMAGE_NAME=ZZCI - CentOS 7 - docker - x86_64 - 20221201-220105.396
+IMAGE_NAME=ZZCI - CentOS 7 - docker - x86_64 - 20230301-220107.956
HARDWARE_ID=v3-standard-2
LABELS=centos7-docker-2c-2g
-IMAGE_NAME=ZZCI - CentOS 7 - docker - x86_64 - 20221201-220105.396
+IMAGE_NAME=ZZCI - CentOS 7 - docker - x86_64 - 20230301-220107.956
HARDWARE_ID=v3-standard-2
LABELS=centos7-docker-2c-8g
-IMAGE_NAME=ZZCI - CentOS 7 - docker - x86_64 - 20221201-220105.396
+IMAGE_NAME=ZZCI - CentOS 7 - docker - x86_64 - 20230301-220107.956
HARDWARE_ID=v3-standard-2
LABELS=centos7-docker-4c-4g
-IMAGE_NAME=ZZCI - CentOS 7 - docker - x86_64 - 20221201-220105.396
+IMAGE_NAME=ZZCI - CentOS 7 - docker - x86_64 - 20230301-220107.956
HARDWARE_ID=v3-standard-4
LABELS=centos7-helm-2c-2g
-IMAGE_NAME=ZZCI - CentOS 7 - helm - x86_64 - 20221101-000135.064
+IMAGE_NAME=ZZCI - CentOS 7 - helm - x86_64 - 20230301-000133.034
HARDWARE_ID=v3-standard-2
LABELS=centos7-helm-4c-4g
-IMAGE_NAME=ZZCI - CentOS 7 - helm - x86_64 - 20221101-000135.064
+IMAGE_NAME=ZZCI - CentOS 7 - helm - x86_64 - 20230301-000133.034
HARDWARE_ID=v3-standard-4
LABELS=centos7-robot-2c-8g
-IMAGE_NAME=ZZCI - CentOS 7 - robot - x86_64 - 20221201-220143.533
+IMAGE_NAME=ZZCI - CentOS 7 - robot - x86_64 - 20230301-220131.480
HARDWARE_ID=v3-standard-2
INSTANCE_CAP=16
LABELS=centos8-builder-2c-1g
-IMAGE_NAME=ZZCI - CentOS Stream 8 - builder - x86_64 - 20221201-160128.560
+IMAGE_NAME=ZZCI - CentOS Stream 8 - builder - x86_64 - 20230301-160121.204
HARDWARE_ID=v3-standard-2
LABELS=centos8-builder-2c-2g
-IMAGE_NAME=ZZCI - CentOS Stream 8 - builder - x86_64 - 20221201-160128.560
+IMAGE_NAME=ZZCI - CentOS Stream 8 - builder - x86_64 - 20230301-160121.204
HARDWARE_ID=v3-standard-2
LABELS=centos8-builder-2c-8g
-IMAGE_NAME=ZZCI - CentOS Stream 8 - builder - x86_64 - 20221201-160128.560
+IMAGE_NAME=ZZCI - CentOS Stream 8 - builder - x86_64 - 20230301-160121.204
HARDWARE_ID=v3-standard-2
LABELS=centos8-builder-4c-16g
-IMAGE_NAME=ZZCI - CentOS Stream 8 - builder - x86_64 - 20221201-160128.560
+IMAGE_NAME=ZZCI - CentOS Stream 8 - builder - x86_64 - 20230301-160121.204
HARDWARE_ID=v3-standard-4
LABELS=centos8-builder-4c-4g
-IMAGE_NAME=ZZCI - CentOS Stream 8 - builder - x86_64 - 20221201-160128.560
+IMAGE_NAME=ZZCI - CentOS Stream 8 - builder - x86_64 - 20230301-160121.204
HARDWARE_ID=v3-standard-4
LABELS=centos8-builder-8c-8g
-IMAGE_NAME=ZZCI - CentOS Stream 8 - builder - x86_64 - 20221201-160128.560
+IMAGE_NAME=ZZCI - CentOS Stream 8 - builder - x86_64 - 20230301-160121.204
HARDWARE_ID=v3-standard-8
LABELS=centos8-robot-2c-8g
-IMAGE_NAME=ZZCI - CentOS Stream 8 - robot - x86_64 - 20220811-231817.668
+IMAGE_NAME=ZZCI - CentOS Stream 8 - robot - x86_64 - 20230301-010147.625
HARDWARE_ID=v3-standard-2
INSTANCE_CAP=16
CLOUD_ZONE=ca-ymq-1
# Default Template Configuration
-IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20221016-222911.194
+IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20230301-060101.869
AVAILABILITY_ZONE=nova
HARDWARE_ID=v3-standard-2
NETWORK_ID=b5fcd86e-efac-4997-b8bc-dbe0d35bc229
LABELS=queue-disttest-2c-1g
-IMAGE_NAME=ZZCI - CentOS 7 - robot - x86_64 - 20221201-220143.533
+IMAGE_NAME=ZZCI - CentOS 7 - robot - x86_64 - 20230301-220131.480
HARDWARE_ID=v3-standard-2
INSTANCE_CAP=1
LABELS=queue-intque-2c-1g
-IMAGE_NAME=ZZCI - CentOS 7 - robot - x86_64 - 20221201-220143.533
+IMAGE_NAME=ZZCI - CentOS 7 - robot - x86_64 - 20230301-220131.480
HARDWARE_ID=v3-standard-2
INSTANCE_CAP=1
NUM_EXECUTORS=4
LABELS=ubuntu1804-docker-2c-2g
-IMAGE_NAME=ZZCI - Ubuntu 18.04 - docker - x86_64 - 20230101-040125.332
+IMAGE_NAME=ZZCI - Ubuntu 18.04 - docker - x86_64 - 20230301-040106.351
HARDWARE_ID=v3-standard-2
LABELS=ubuntu1804-docker-4c-4g
-IMAGE_NAME=ZZCI - Ubuntu 18.04 - docker - x86_64 - 20230101-040125.332
+IMAGE_NAME=ZZCI - Ubuntu 18.04 - docker - x86_64 - 20230301-040106.351
HARDWARE_ID=v3-standard-4
-IMAGE_NAME=ZZCI - Ubuntu 18.04 - helm - x86_64 - 20221201-140107.142
+IMAGE_NAME=ZZCI - Ubuntu 18.04 - helm - x86_64 - 20230301-140059.950
LABELS=ubuntu1804-helm-2c-1g
HARDWARE_ID=v3-standard-4
-IMAGE_NAME=ZZCI - Ubuntu 18.04 - helm - x86_64 - 20221201-140107.142
+IMAGE_NAME=ZZCI - Ubuntu 18.04 - helm - x86_64 - 20230301-140059.950
LABELS=ubuntu1804-helm-4c-4g
HARDWARE_ID=v3-standard-4
LABELS=ubuntu1804-mininet-ovs-28-1c-4g
-IMAGE_NAME=ZZCI - Ubuntu 18.04 - mininet-ovs-28 - x86_64 - 20221201-180114.186
+IMAGE_NAME=ZZCI - Ubuntu 18.04 - mininet-ovs-28 - x86_64 - 20230301-180106.402
HARDWARE_ID=v3-standard-2
--- /dev/null
+---
+# Autogenerated by autorelease autorelease-update-validate-autorelease-jobs-{stream} Jenkins job
+- project:
+ name: autorelease-validate-argon
+ jobs:
+ - "{project-name}-validate-autorelease-{stream}"
+ stream: argon
+ branch: master
+ project-name:
+ - daexim:
+ project: daexim
+ - integration-distribution:
+ project: integration/distribution
+ - jsonrpc:
+ project: jsonrpc
+ - lispflowmapping:
+ project: lispflowmapping
+ - openflowplugin:
+ project: openflowplugin
+ - ovsdb:
+ project: ovsdb
+ - serviceutils:
+ project: serviceutils
jobs:
- "{project-name}-validate-autorelease-{stream}"
stream: chlorine
- branch: master
+ branch: stable/chlorine
project-name:
- daexim:
project: daexim
# CSIT configuration
odl_system_count: 1
odl_system_flavor: "v3-standard-4"
- odl_system_image: "ZZCI - CentOS Stream 8 - builder - x86_64 - 20221201-160128.560"
+ odl_system_image: "ZZCI - CentOS Stream 8 - builder - x86_64 - 20230301-160121.204"
controller-max-mem: "2048m"
openstack_system_count: 1
openstack_system_flavor: "v3-standard-4"
- openstack_system_image: "ZZCI - CentOS 7 - devstack - x86_64 - 20221016-125752.520"
+ openstack_system_image: "ZZCI - CentOS 7 - devstack - x86_64 - 20230301-230109.257"
openstack_system2_count: 0
openstack_system2_flavor: "v3-standard-2"
- openstack_system2_image: "ZZCI - CentOS 7 - devstack - x86_64 - 20221016-125752.520"
+ openstack_system2_image: "ZZCI - CentOS 7 - devstack - x86_64 - 20230301-230109.257"
tools_system_count: 1
tools_system_flavor: "v3-standard-2"
- tools_system_image: "ZZCI - Ubuntu 18.04 - mininet-ovs-28 - x86_64 - 20221201-180114.186"
- openstack_stein_system_image: "ZZCI - CentOS 7 - devstack-stein - x86_64 - 20221016-222956.928"
+ tools_system_image: "ZZCI - Ubuntu 18.04 - mininet-ovs-28 - x86_64 - 20230301-180106.402"
+ openstack_stein_system_image: "ZZCI - CentOS 7 - devstack-stein - x86_64 - 20221101-010107.368"
openstack_rocky_system_image: "ZZCI - CentOS 7 - devstack-rocky - x86_64 - 20221101-000109.537"
# Default Robot framework options
docker_system_count: "1"
docker_system_flavor: "v3-standard-2"
- docker_system_image: "ZZCI - CentOS 7 - docker - x86_64 - 20221201-220105.396"
+ docker_system_image: "ZZCI - CentOS 7 - docker - x86_64 - 20230301-220107.956"
#####################
# Job Configuration #
git-url: https://gerrit.linuxfoundation.org/infra/$GERRIT_PROJECT
gerrit-server-name: lf-releng
+- project:
+ name: lf-infra-gerrit_to_platform
+ jobs:
+ - gerrit-tox-verify
+
+ project-name: lf-infra-gerrit_to_platform
+ project: releng/gerrit_to_platform
+ build-node: centos8-builder-2c-1g
+ stream: any
+ branch: "*"
+
+ git-url: https://gerrit.linuxfoundation.org/infra/$GERRIT_PROJECT
+ gerrit-server-name: lf-releng
+
- project:
name: lf-infra-global-jjb
jobs:
jobs:
- lf-pipelines-verify
+- project:
+ name: lf-infra-python-one-password
+ jobs:
+ - gerrit-tox-verify
+
+ project-name: lf-infra-python-one-password
+ project: releng/python-one-password
+ build-node: centos8-builder-2c-2g
+ stream: any
+ branch: "*"
+
+ git-url: https://gerrit.linuxfoundation.org/infra/$GERRIT_PROJECT
+ gerrit-server-name: lf-releng
+
- project:
name: lf-infra-view
views:
# Used by the release job
staging-profile-id: a674173c7b29d
+- project:
+ name: mdsal-11.0.x
+ jobs:
+ - "{project-name}-rtd-jobs":
+ build-node: centos7-builder-2c-2g
+ project-pattern: mdsal
+ rtd-build-url: https://readthedocs.org/api/v2/webhook/odl-mdsal/44052/
+ rtd-token: a56d6212dd3de3eef12642affe8a6100cc8bc002
+ - odl-maven-jobs-jdk17
+ - odl-maven-verify-jobs-jdk17
+
+ project: mdsal
+ project-name: mdsal
+ branch: 11.0.x
+ stream: 11.0.x
+
+ build-node: centos8-builder-4c-4g
+ java-version: "openjdk17"
+ mvn-settings: "mdsal-settings"
+ build-timeout: 60
+
+ archive-artifacts: >
+ **/*.prop
+ **/*.log
+ **/target/surefire-reports/*-output.txt
+ **/target/failsafe-reports/failsafe-summary.xml
+ **/hs_err_*.log
+ **/target/feature/feature.xml
+
+ # Used by the release job
+ staging-profile-id: a674173c7b29d
+
- project:
name: mdsal-10.0.x
jobs:
scope: "only"
# no mininet required
- tools_system_image: "ZZCI - Ubuntu 18.04 - docker - x86_64 - 20230101-040125.332"
+ tools_system_image: "ZZCI - Ubuntu 18.04 - docker - x86_64 - 20230301-040106.351"
# Features to install
install-features: "odl-netconf-callhome-ssh,odl-restconf"
- all:
scope: "all"
- tools_system_image: "ZZCI - Ubuntu 18.04 - docker - x86_64 - 20230101-040125.332"
+ tools_system_image: "ZZCI - Ubuntu 18.04 - docker - x86_64 - 20230301-040106.351"
# Features to install
install-features: >
# Used by the release job
staging-profile-id: 1271cf710cc09d
+- project:
+ name: yangtools-10.0.x
+ jobs:
+ - odl-maven-jobs-jdk17
+ - odl-maven-verify-jobs-jdk17
+
+ project: yangtools
+ project-name: yangtools
+ branch: 10.0.x
+ stream: 10.0.x
+
+ build-node: centos8-builder-4c-4g
+ java-version: "openjdk17"
+ mvn-settings: "yangtools-settings"
+
+ dependencies: ""
+ email-upstream: "[yangtools]"
+ archive-artifacts: >
+ **/*.prop
+ **/*.log
+ **/target/surefire-reports/*-output.txt
+ **/target/failsafe-reports/failsafe-summary.xml
+ **/hs_err_*.log
+ **/target/feature/feature.xml
+
+ # Used by the release job
+ staging-profile-id: 1271cf710cc09d
+
- project:
name: yangtools-9.0.x
jobs:
from lxml import etree
-def get_version_for_artifact(group_id_elem, artifact_id_elem):
+def get_version_for_artifact(group_id, artifact_id):
versions_list = []
- url = f'https://repo1.maven.org/maven2/org/opendaylight/{group_id_elem}/{artifact_id_elem}/'
+ url = f'https://repo1.maven.org/maven2/org/opendaylight/{group_id}/{artifact_id}/'
response = requests.get(url).content
soup = BeautifulSoup(response, 'html.parser')
try:
# get all xml files
for path in Path(python_lib.bumping_dir).rglob('*.xml'):
- if ("pom.xml" or "feature.xml" in str(path)):
- if "test/resources" not in str(path):
- tree = etree.parse(path)
- root = tree.getroot()
- # update major and minor artifacts versions
- if "pom.xml" in str(path):
- prefix = "{" + root.nsmap[None] + "}"
- all_elements = tree.findall(
- f'.//{prefix}parent') + tree.findall(f'.//{prefix}dependency')
- for element in all_elements:
- group_id_elem = (element.find(f'{prefix}groupId'))
- artifact_id_elem = (element.find(f'{prefix}artifactId'))
- version = (element.find(f'{prefix}version'))
- try:
- if "org.opendaylight" in group_id_elem.text and version is not None:
- # skip artifacts containing items in skipped list
- skipped = ["${project.version}",
- "SNAPSHOT", "@project.version@"]
- if not any(x in version.text for x in skipped):
- new_version = get_version_for_artifact(
- group_id_elem.text.split(".")[2], artifact_id_elem.text)
- if python_lib.check_minor_version(version, new_version):
- print(python_lib.log_artifact(
- path, group_id_elem, artifact_id_elem, version.text, new_version))
- version.text = new_version
- tree.write(path, encoding="UTF-8", pretty_print=True,
- doctype='<?xml version="1.0" encoding="UTF-8"?>')
- except AttributeError:
- pass
-
- # update feature versions
- if "feature.xml" in str(path):
- prefix = "{" + root.nsmap[None] + "}"
- all_featuress = tree.findall(f'.//{prefix}feature')
-
- # feature versions add +1
- for feature in all_featuress:
- try:
- if feature.attrib["version"] and feature.attrib["version"] != "${project.version}":
- current_version = feature.attrib["version"]
- # workaround for float feature versions
- nums = current_version[1:-1].split(',')
- if "." in nums[0]:
- nums[0] = str(round((float(nums[0]) + 0.01), 2))
- else:
- nums[0], nums[1] = str(
- int(nums[0]) + 1), str(int(nums[1])+1)
- result = '[' + ','.join(nums) + ')'
- feature.attrib["version"] = result
- print(python_lib.log_artifact(
- path=path, version=current_version, new_version=result))
- standalone = ''
- if tree.docinfo.standalone:
- standalone = ' standalone="yes"'
- tree.write(path, encoding="UTF-8", pretty_print=True,
- doctype=f'<?xml version="1.0" encoding="UTF-8"{standalone}?>')
- except KeyError:
- pass
+ if "test/resources" in str(path):
+ continue
+ tree = etree.parse(path)
+ root = tree.getroot()
+ # update major and minor artifacts versions
+ if "pom.xml" in str(path):
+ prefix = "{" + root.nsmap[None] + "}"
+ # line above can trigger a 'KeyError: None' outside pom.xml and feature.xml files.
+ all_elements = tree.findall(
+ f'.//{prefix}parent') + tree.findall(f'.//{prefix}dependency')
+ for element in all_elements:
+ group_id_elem = (element.find(f'{prefix}groupId'))
+ artifact_id_elem = (element.find(f'{prefix}artifactId'))
+ version = (element.find(f'{prefix}version'))
+ try:
+ if "org.opendaylight" in group_id_elem.text and version is not None:
+ # skip artifacts containing items in skipped list
+ skipped = ["${project.version}", "SNAPSHOT", "@project.version@"]
+ if not any(x in version.text for x in skipped):
+ new_version = get_version_for_artifact(
+ group_id_elem.text.split(".")[2], artifact_id_elem.text)
+ if python_lib.check_minor_version(version, new_version):
+ print(python_lib.log_artifact(
+ path, group_id_elem, artifact_id_elem, version.text, new_version))
+ version.text = new_version
+ tree.write(path, encoding="UTF-8", pretty_print=True,
+ doctype='<?xml version="1.0" encoding="UTF-8"?>')
+ except AttributeError:
+ pass
+ # update feature versions
+ if "feature.xml" in str(path):
+ prefix = "{" + root.nsmap[None] + "}"
+ # line above can trigger a 'KeyError: None' outside pom.xml and feature.xml files.
+ all_features = tree.findall(f'.//{prefix}feature')
+ # feature versions add +1
+ for feature in all_features:
+ try:
+ if feature.attrib["version"] and feature.attrib["version"] != "${project.version}":
+ current_version = feature.attrib["version"]
+ # workaround for float feature versions
+ nums = current_version[1:-1].split(',')
+ if "." in nums[0]:
+ nums[0] = str(round((float(nums[0]) + 0.01), 2))
+ else:
+ nums[0] = str(int(nums[0]) + 1)
+ nums[1] = str(int(nums[1]) + 1)
+ result = '[' + ','.join(nums) + ')'
+ feature.attrib["version"] = result
+ print(python_lib.log_artifact(
+ path=path, version=current_version, new_version=result))
+ standalone = ''
+ if tree.docinfo.standalone:
+ standalone = ' standalone="yes"'
+ tree.write(path, encoding="UTF-8", pretty_print=True,
+ doctype=f'<?xml version="1.0" encoding="UTF-8"{standalone}?>')
+ except KeyError:
+ pass
[tox]
minversion = 1.6
-envlist = docs,docs-linkcheck,jjb-version,prefix,robot,
+envlist = docs,docs-linkcheck,jjb-version,prefix,robot,pylint
# pre-commit
skipsdist = true
|| (echo "checkbashisms command not found - please install it (e.g. sudo apt-get install devscripts | \
yum install devscripts-minimal )" >&2 && exit 1)'
find . -not -path '*/\.*' -name *.sh -exec checkbashisms -f \{\} +
+
+[testenv:pylint]
+basepython = python3
+deps = pylint>=2.6.0
+whitelist_externals = find
+commands =
+# .tox folder and submodules directories global-jjb/ & packer/common-packer/ must be excluded since they are not maintained here
+ find . -name *.py -not -path "./.tox/*" -not -path "./global-jjb/*" -not -path "./packer/common-packer/*" -exec \
+ pylint --fail-under=6.50 --max-line-length=120 --disable=missing-docstring --disable=fixme --disable=duplicate-code \{\} +
+