summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.editorconfig25
-rw-r--r--.github/workflows/gerrit-verify.yaml62
-rw-r--r--.gitignore3
-rw-r--r--.gitlint97
-rw-r--r--.pre-commit-config.yaml32
-rw-r--r--.yamllint11
-rw-r--r--INFO.yaml33
-rw-r--r--docker/LICENSE32
-rw-r--r--docker/scripts/README.md502
-rwxr-xr-xdocker/scripts/build_executor_docker_image.sh8
-rwxr-xr-xdocker/scripts/dbld_csit_find_ansible_packages.py4
-rwxr-xr-xdocker/scripts/dbld_csit_install_packages.sh12
-rwxr-xr-xdocker/scripts/dbld_lfit_requirements.sh7
-rwxr-xr-xdocker/scripts/dbld_vpp_install_packages.sh50
-rw-r--r--docker/scripts/lib_apt.sh78
-rw-r--r--docker/scripts/lib_common.sh17
-rw-r--r--docker/scripts/lib_csit.sh130
-rw-r--r--docker/scripts/lib_dnf.sh209
-rw-r--r--docker/scripts/lib_vpp.sh18
-rw-r--r--docker/scripts/lib_yum.sh212
-rwxr-xr-xdocker/scripts/update_dockerhub_prod_tags.sh12
-rwxr-xr-xextras/bash/packagecloud_attic_cleanup.sh29
-rw-r--r--extras/bash/sandbox_test_functions.sh6
m---------global-jjb0
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-centos7-prod-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-centos7-sandbox-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-centos7-test-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-prod-aarch64.yaml6
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-prod-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-sandbox-aarch64.yaml6
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-sandbox-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-test-aarch64.yaml6
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-test-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-debian10-prod-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-debian10-sandbox-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-debian10-test-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-prod-x86_64-jobtemplate.yaml18
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-prod-x86_64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-sandbox-x86_64-jobtemplate.yaml31
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-sandbox-x86_64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-debian9-prod-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-debian9-sandbox-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-debian9-test-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-prod-aarch64.yaml6
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-prod-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-sandbox-aarch64.yaml6
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-sandbox-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-test-aarch64.yaml6
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-test-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-aarch64-jobtemplate.yaml11
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-aarch64.yaml5
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-x86_64-jobtemplate.yaml18
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-x86_64.yaml13
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-aarch64-jobtemplate.yaml24
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-aarch64.yaml5
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-x86_64-jobtemplate.yaml31
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-x86_64.yaml13
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-test-aarch64.yaml7
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-test-x86_64.yaml15
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-aarch64-jobtemplate.yaml11
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-aarch64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-x86_64-jobtemplate.yaml18
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-x86_64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml24
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-aarch64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml31
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-x86_64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-prod-aarch64.yaml13
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-prod-x86_64.yaml14
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-sandbox-aarch64.yaml13
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-sandbox-x86_64.yaml14
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-aarch64-jobtemplate.yaml18
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-aarch64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-x86_64-jobtemplate.yaml18
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-x86_64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml31
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-aarch64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml31
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-x86_64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/defaults.yaml30
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-prod-x86_64-jobtemplate.yaml23
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-prod-x86_64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-sandbox-x86_64-jobtemplate.yaml35
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-sandbox-x86_64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/jobtemplate-default.yaml66
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-aarch64-jobtemplate.yaml14
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-aarch64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-x86_64-jobtemplate.yaml21
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-x86_64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml27
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-aarch64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml34
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-x86_64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/main.yaml9
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-aarch64-jobtemplate.yaml14
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-aarch64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-x86_64-jobtemplate.yaml21
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-x86_64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml27
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-aarch64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml34
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-x86_64.yaml4
-rw-r--r--jenkins-config/clouds/nomad/FDIONOMAD/sandbox.yaml9
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-builder-2c-2g.cfg3
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-builder-4c-4g.cfg3
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-builder-8c-8g.cfg4
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-docker-2c-2g.cfg3
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-docker-4c-4g.cfg3
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/centos8-builder-2c-2g.cfg3
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/cloud.cfg4
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-2c-2g.cfg4
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-4c-4g.cfg4
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-8c-32g.cfg4
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-8c-8g.cfg4
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-docker-4c-4g.cfg4
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-builder-2c-2g.cfg4
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-builder-4c-4g.cfg4
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-builder-8c-8g.cfg4
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-docker-4c-4g.cfg4
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804arm-docker-4c-4g5
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu2004-builder-4c-4g.cfg3
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu2004-builder-arm64-4c-4g3
-rw-r--r--jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu2004-docker-4c-4g.cfg3
-rw-r--r--jenkins-config/global-vars-production.sh13
-rw-r--r--jenkins-config/global-vars-sandbox.sh9
-rw-r--r--jenkins-config/managed-config-files/custom/.packagecloud/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/.packagecloud/content4
l---------jenkins-config/managed-config-files/custom/.packagecloud/customizedCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/custom/.packagecloud/customizedCredentialMappings.yaml4
-rw-r--r--jenkins-config/managed-config-files/custom/ansible-cfg/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/ansible-cfg/content2
-rw-r--r--jenkins-config/managed-config-files/custom/clouds-yaml/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/clouds-yaml/content10
l---------jenkins-config/managed-config-files/custom/clouds-yaml/customizedCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/custom/clouds-yaml/customizedCredentialMappings.yaml4
-rw-r--r--jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/content4
l---------jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/customizedCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/customizedCredentialMappings.yaml4
-rw-r--r--jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/content4
l---------jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/customizedCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/customizedCredentialMappings.yaml4
-rw-r--r--jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/content4
l---------jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/customizedCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/customizedCredentialMappings.yaml4
-rw-r--r--jenkins-config/managed-config-files/custom/jjbini/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/jjbini/content23
l---------jenkins-config/managed-config-files/custom/jjbini/customizedCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/custom/jjbini/customizedCredentialMappings.yaml6
-rw-r--r--jenkins-config/managed-config-files/custom/lftoolsini/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/lftoolsini/content3
l---------jenkins-config/managed-config-files/custom/lftoolsini/customizedCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/custom/lftoolsini/customizedCredentialMappings.yaml4
-rw-r--r--jenkins-config/managed-config-files/custom/npmrc/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/npmrc/content1
-rw-r--r--jenkins-config/managed-config-files/custom/packagecloud-account/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/packagecloud-account/content1
-rw-r--r--jenkins-config/managed-config-files/custom/packagecloud/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/packagecloud/content4
l---------jenkins-config/managed-config-files/custom/packagecloud/customizedCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/custom/packagecloud/customizedCredentialMappings.yaml4
-rw-r--r--jenkins-config/managed-config-files/custom/packagecloud_api/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/packagecloud_api/content3
l---------jenkins-config/managed-config-files/custom/packagecloud_api/customizedCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/custom/packagecloud_api/customizedCredentialMappings.yaml4
-rw-r--r--jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/content10
l---------jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/customizedCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/customizedCredentialMappings.yaml4
-rw-r--r--jenkins-config/managed-config-files/custom/packer-cloud-env/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/packer-cloud-env/content12
l---------jenkins-config/managed-config-files/custom/packer-cloud-env/customizedCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/custom/packer-cloud-env/customizedCredentialMappings.yaml4
-rw-r--r--jenkins-config/managed-config-files/custom/pipconf/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/pipconf/content1
-rw-r--r--jenkins-config/managed-config-files/custom/signing-pubkey/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/signing-pubkey/content36
-rw-r--r--jenkins-config/managed-config-files/custom/sigul-config/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/sigul-config/content14
l---------jenkins-config/managed-config-files/custom/sigul-config/customizedCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/custom/sigul-config/customizedCredentialMappings.yaml4
-rw-r--r--jenkins-config/managed-config-files/custom/sigul-password/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/sigul-password/content1
l---------jenkins-config/managed-config-files/custom/sigul-password/customizedCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/custom/sigul-password/customizedCredentialMappings.yaml4
-rw-r--r--jenkins-config/managed-config-files/custom/sigul-pki/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/custom/sigul-pki/content1
l---------jenkins-config/managed-config-files/custom/sigul-pki/customizedCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/custom/sigul-pki/customizedCredentialMappings.yaml4
-rw-r--r--jenkins-config/managed-config-files/globalMavenSettings/global-settings/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/globalMavenSettings/global-settings/content195
-rw-r--r--jenkins-config/managed-config-files/mavenSettings/cicn-settings/config-params.yaml3
l---------jenkins-config/managed-config-files/mavenSettings/cicn-settings/content1
l---------jenkins-config/managed-config-files/mavenSettings/cicn-settings/serverCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/mavenSettings/cicn-settings/serverCredentialMappings.yaml22
-rw-r--r--jenkins-config/managed-config-files/mavenSettings/csit-settings/config-params.yaml3
l---------jenkins-config/managed-config-files/mavenSettings/csit-settings/content1
l---------jenkins-config/managed-config-files/mavenSettings/csit-settings/serverCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/mavenSettings/csit-settings/serverCredentialMappings.yaml22
-rw-r--r--jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/config-params.yaml3
l---------jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/content1
l---------jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/serverCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/serverCredentialMappings.yaml22
-rw-r--r--jenkins-config/managed-config-files/mavenSettings/hicn-settings/config-params.yaml3
l---------jenkins-config/managed-config-files/mavenSettings/hicn-settings/content1
l---------jenkins-config/managed-config-files/mavenSettings/hicn-settings/serverCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/mavenSettings/hicn-settings/serverCredentialMappings.yaml22
-rw-r--r--jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/config-params.yaml3
l---------jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/content1
l---------jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/serverCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/serverCredentialMappings.yaml4
-rw-r--r--jenkins-config/managed-config-files/mavenSettings/udpi-settings/config-params.yaml3
l---------jenkins-config/managed-config-files/mavenSettings/udpi-settings/content1
l---------jenkins-config/managed-config-files/mavenSettings/udpi-settings/serverCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/mavenSettings/udpi-settings/serverCredentialMappings.yaml22
-rw-r--r--jenkins-config/managed-config-files/mavenSettings/vpp-settings/config-params.yaml3
l---------jenkins-config/managed-config-files/mavenSettings/vpp-settings/content1
l---------jenkins-config/managed-config-files/mavenSettings/vpp-settings/serverCredentialMappings.sandbox.yaml1
-rw-r--r--jenkins-config/managed-config-files/mavenSettings/vpp-settings/serverCredentialMappings.yaml22
-rw-r--r--jenkins-config/managed-config-files/openstackUserData/jenkins-init-system/config-params.yaml3
-rw-r--r--jenkins-config/managed-config-files/openstackUserData/jenkins-init-system/content8
-rw-r--r--jenkins-config/managed-config-templates/mavenSettings-content6
-rw-r--r--jenkins-config/managed-config-templates/serverCredentialMappings.sandbox.yaml34
-rw-r--r--jjb/ci-management/ci-management-jobs.yaml8
-rw-r--r--jjb/ci-management/ci-packer-jobs.yaml11
-rw-r--r--jjb/ci-management/package-list.sh10
-rw-r--r--jjb/ci-management/packagecloud-repo-cleanup.sh49
-rw-r--r--jjb/ci-management/packagecloud-repo-cleanup.yaml32
-rw-r--r--jjb/cicn/cicn.yaml349
-rw-r--r--jjb/cicn/include-raw-cicn-libparc-docs.sh74
-rw-r--r--jjb/cicn/include-raw-cicn-maven-push.sh49
-rw-r--r--jjb/csit/csit-perf.yaml1260
-rw-r--r--jjb/csit/csit-terraform.yaml120
-rw-r--r--jjb/csit/csit-tox.yaml40
-rw-r--r--jjb/csit/csit-vpp-device.yaml180
-rw-r--r--jjb/csit/csit.yaml387
-rw-r--r--jjb/global-defaults.yaml11
-rw-r--r--jjb/global-macros.yaml318
-rw-r--r--jjb/hc2vpp/hc2vpp-csit.yaml421
-rw-r--r--jjb/hc2vpp/hc2vpp.yaml273
-rw-r--r--jjb/hc2vpp/include-raw-hc2vpp-csit-integration-odl.sh34
-rw-r--r--jjb/hc2vpp/include-raw-hc2vpp-csit-integration.sh34
-rw-r--r--jjb/hc2vpp/include-raw-hc2vpp-csit-perf.sh34
-rw-r--r--jjb/hc2vpp/include-raw-hc2vpp-csit-verify-odl.sh42
-rw-r--r--jjb/hc2vpp/include-raw-hc2vpp-csit-verify-prebuild.sh89
-rw-r--r--jjb/hc2vpp/include-raw-hc2vpp-csit-verify.sh42
-rw-r--r--jjb/hc2vpp/include-raw-hc2vpp-integration-prebuild.sh95
-rw-r--r--jjb/hc2vpp/include-raw-hc2vpp-pkg-push.sh83
-rw-r--r--jjb/hicn/hicn-docs.yaml89
-rw-r--r--jjb/hicn/hicn.yaml539
-rw-r--r--jjb/hicn/include-raw-hicn-docs.sh54
-rw-r--r--jjb/hicn/include-raw-hicn-maven-push.sh48
-rw-r--r--jjb/include-raw-deploy-archives.sh121
-rwxr-xr-xjjb/scripts/backup_upload_archives.sh189
-rw-r--r--jjb/scripts/cicn/build-libparc.sh (renamed from jjb/cicn/include-raw-cicn-libparc-build.sh)2
-rw-r--r--jjb/scripts/cicn/build-viper.sh8
-rw-r--r--jjb/scripts/cicn/docs-libparc.sh38
-rw-r--r--jjb/scripts/csit/cpta.sh89
-rwxr-xr-x[-rw-r--r--]jjb/scripts/csit/device-semiweekly.sh4
-rw-r--r--jjb/scripts/csit/docs.sh78
-rw-r--r--jjb/scripts/csit/hc2vpp-verify-func.sh51
-rw-r--r--jjb/scripts/csit/nsh_sfc-functional-virl.sh36
-rw-r--r--jjb/scripts/csit/nsh_sfc-perf-hw.sh34
-rwxr-xr-x[-rw-r--r--]jjb/scripts/csit/perf-timed.sh6
-rw-r--r--jjb/scripts/csit/report.sh78
-rw-r--r--jjb/scripts/csit/terraform-aws-eb-version-deploy.sh (renamed from jjb/scripts/csit/vpp-functional-multilink.sh)19
-rw-r--r--jjb/scripts/csit/terraform-aws-eb-version-verify.sh21
-rw-r--r--jjb/scripts/csit/tldk-functional-virl.sh41
-rw-r--r--jjb/scripts/hicn/build-extras.sh (renamed from jjb/hicn/include-raw-hicn-extras-build.sh)2
-rw-r--r--jjb/scripts/hicn/build-vpp-latest.sh (renamed from jjb/cicn/include-raw-cicn-viper-build.sh)3
-rw-r--r--jjb/scripts/hicn/build.sh (renamed from jjb/hicn/include-raw-hicn-build.sh)2
-rw-r--r--jjb/scripts/hicn/checkstyle.sh (renamed from jjb/hicn/include-raw-hicn-checkstyle.sh)2
-rw-r--r--jjb/scripts/hicn/docs.sh14
-rw-r--r--jjb/scripts/hicn/functest.sh9
-rw-r--r--jjb/scripts/hicn/sonar.sh8
-rwxr-xr-x[-rw-r--r--]jjb/scripts/packagecloud_push.sh64
-rwxr-xr-xjjb/scripts/post_build_deploy_archives.sh37
-rwxr-xr-xjjb/scripts/post_build_executor_info.sh24
-rw-r--r--jjb/scripts/publish_cov.sh51
-rwxr-xr-xjjb/scripts/publish_docs.sh83
-rw-r--r--jjb/scripts/publish_library_py.sh318
-rw-r--r--jjb/scripts/publish_logs.sh30
-rwxr-xr-xjjb/scripts/setup_executor_env.sh12
-rw-r--r--jjb/scripts/setup_jvpp_dev_env.sh74
-rw-r--r--jjb/scripts/setup_vpp_dpdk_dev_env.sh80
-rwxr-xr-xjjb/scripts/setup_vpp_ext_deps.sh67
-rwxr-xr-x[-rw-r--r--]jjb/scripts/setup_vpp_ubuntu_docker_test.sh16
-rw-r--r--jjb/scripts/terraform_s3_docs_ship.sh99
-rw-r--r--jjb/scripts/vpp/build.sh107
-rwxr-xr-x[-rw-r--r--]jjb/scripts/vpp/check_crc.sh5
-rwxr-xr-x[-rw-r--r--]jjb/scripts/vpp/checkstyle.sh19
-rw-r--r--jjb/scripts/vpp/copy_archives.sh38
-rw-r--r--jjb/scripts/vpp/cov-build.sh106
-rw-r--r--jjb/scripts/vpp/csit-bisect.sh38
-rwxr-xr-x[-rw-r--r--]jjb/scripts/vpp/csit-device.sh5
-rwxr-xr-x[-rw-r--r--]jjb/scripts/vpp/csit-perf.sh5
-rw-r--r--jjb/scripts/vpp/debug-build.sh23
-rwxr-xr-x[-rw-r--r--]jjb/scripts/vpp/docs.sh53
-rwxr-xr-x[-rw-r--r--]jjb/scripts/vpp/docs_spell.sh (renamed from jjb/scripts/csit/vpp-functional-virl.sh)17
-rw-r--r--jjb/scripts/vpp/dpdk-rdma-version-mismatch.sh33
-rw-r--r--jjb/scripts/vpp/gcc-build.sh29
-rwxr-xr-xjjb/scripts/vpp/make-test-docs.sh80
-rw-r--r--jjb/scripts/vpp/sphinx-docs.sh76
-rwxr-xr-xjjb/tldk/gtest-build.sh14
-rwxr-xr-xjjb/tldk/include-raw-build.sh58
-rw-r--r--jjb/tldk/include-raw-tldk-csit-functional-virl.sh52
-rw-r--r--jjb/tldk/tldk.yaml266
-rw-r--r--jjb/udpi/include-raw-udpi-build.sh53
-rw-r--r--jjb/udpi/include-raw-udpi-checkstyle.sh7
-rw-r--r--jjb/udpi/udpi.yaml202
-rw-r--r--jjb/vpp/docs.yaml172
-rw-r--r--jjb/vpp/vpp.yaml761
-rw-r--r--jjb/vsap/include-raw-vsap-build.sh21
-rw-r--r--jjb/vsap/vsap.yaml191
-rw-r--r--nodepool/nodepool.yaml4
m---------packer/common-packer0
-rw-r--r--packer/provision/basebuild.sh25
-rw-r--r--packer/provision/local-builder.yaml58
l---------packer/templates/builder.pkr.hcl1
l---------packer/templates/docker.pkr.hcl1
-rw-r--r--packer/vars/ubuntu-16.04-arm64.json12
-rw-r--r--packer/vars/ubuntu-18.04-arm64.json12
324 files changed, 5281 insertions, 7351 deletions
diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 00000000..8700277e
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,25 @@
+root = true
+
+[*]
+end_of_line = lf
+insert_final_newline = true
+trim_trailing_whitespace = true
+indent_style = space
+
+[*.json]
+indent_size = 2
+
+[*.rst]
+indent_size = 4
+
+[*.markdown]
+indent_size = 4
+max_line_length = 80
+
+[*.sh]
+indent_size = 4
+max_line_length = 80
+
+[*.yaml]
+indent_size = 2
+max_line_length = 120
diff --git a/.github/workflows/gerrit-verify.yaml b/.github/workflows/gerrit-verify.yaml
new file mode 100644
index 00000000..3ea946df
--- /dev/null
+++ b/.github/workflows/gerrit-verify.yaml
@@ -0,0 +1,62 @@
+---
+name: Call Gerrit ci-management Verify
+
+# yamllint disable-line rule:truthy
+on:
+ workflow_dispatch:
+ inputs:
+ GERRIT_BRANCH:
+ description: "Branch that change is against"
+ required: true
+ type: string
+ GERRIT_CHANGE_ID:
+ description: "The ID for the change"
+ required: true
+ type: string
+ GERRIT_CHANGE_NUMBER:
+ description: "The Gerrit number"
+ required: true
+ type: string
+ GERRIT_CHANGE_URL:
+ description: "URL to the change"
+ required: true
+ type: string
+ GERRIT_EVENT_TYPE:
+ description: "Type of Gerrit event"
+ required: true
+ type: string
+ GERRIT_PATCHSET_NUMBER:
+ description: "The patch number for the change"
+ required: true
+ type: string
+ GERRIT_PATCHSET_REVISION:
+ description: "The revision sha"
+ required: true
+ type: string
+ GERRIT_PROJECT:
+ description: "Project in Gerrit"
+ required: true
+ type: string
+ GERRIT_REFSPEC:
+ description: "Gerrit refspec of change"
+ required: true
+ type: string
+
+jobs:
+ call-gerrit-ci-management-verify:
+ # yamllint disable rule:line-length
+ uses:
+ lfit/releng-reusable-workflows/.github/workflows/gerrit-ci-management-verify.yaml@6bb945b7d6f815db25d1cde9711f1b084f81e092 # v0.9
+ # yamllint enable rule:line-length
+ with:
+ GERRIT_BRANCH: ${{ inputs.GERRIT_BRANCH }}
+ GERRIT_CHANGE_ID: ${{ inputs.GERRIT_CHANGE_ID }}
+ GERRIT_CHANGE_NUMBER: ${{ inputs.GERRIT_CHANGE_NUMBER }}
+ GERRIT_CHANGE_URL: ${{ inputs.GERRIT_CHANGE_URL }}
+ GERRIT_EVENT_TYPE: ${{ inputs.GERRIT_EVENT_TYPE }}
+ GERRIT_PATCHSET_NUMBER: ${{ inputs.GERRIT_PATCHSET_NUMBER }}
+ GERRIT_PATCHSET_REVISION: ${{ inputs.GERRIT_PATCHSET_REVISION }}
+ GERRIT_PROJECT: ${{ inputs.GERRIT_PROJECT }}
+ GERRIT_REFSPEC: ${{ inputs.GERRIT_REFSPEC }}
+ secrets:
+ GERRIT_SSH_PRIVKEY: ${{ secrets.GERRIT_SSH_PRIVKEY }}
diff --git a/.gitignore b/.gitignore
index 33ea0093..a3eb8862 100644
--- a/.gitignore
+++ b/.gitignore
@@ -21,3 +21,6 @@ target/
# Python Virtualenv
venv/
+
+# VSCode
+.vscode
diff --git a/.gitlint b/.gitlint
new file mode 100644
index 00000000..8d37da19
--- /dev/null
+++ b/.gitlint
@@ -0,0 +1,97 @@
+# All these sections are optional, edit this file as you like.
+[general]
+# Ignore certain rules, you can reference them by their id or by their full
+# name
+# ignore=title-trailing-punctuation, T3
+
+# verbosity should be a value between 1 and 3, the command line -v flags take
+# precedence over this
+# verbosity = 2
+
+# By default gitlint will ignore merge commits. Set to 'false' to disable.
+# ignore-merge-commits=true
+
+# By default gitlint will ignore fixup commits. Set to 'false' to disable.
+# ignore-fixup-commits=true
+
+# By default gitlint will ignore squash commits. Set to 'false' to disable.
+# ignore-squash-commits=true
+
+# Enable debug mode (prints more output). Disabled by default.
+# debug=true
+
+# Set the extra-path where gitlint will search for user defined rules
+# See http://jorisroovers.github.io/gitlint/user_defined_rules for details
+# extra-path=examples/
+
+# contrib=contrib-title-conventional-commits,contrib-body-requires-signed-off-by
+contrib=contrib-body-requires-signed-off-by
+
+# [title-max-length]
+# line-length=80
+
+# [title-must-not-contain-word]
+# Comma-separated list of words that should not occur in the title. Matching is
+# case insensitive. It's fine if the keyword occurs as part of a larger word
+# (so "WIPING" will not cause a violation, but "WIP: my title" will.
+# words=wip
+
+# [title-match-regex]
+# python like regex (https://docs.python.org/2/library/re.html) that the
+# commit-msg title must be matched to.
+# Note that the regex can contradict with other rules if not used correctly
+# (e.g. title-must-not-contain-word).
+# regex=^US[0-9]*
+
+# [B1]
+# B1 = body-max-line-length
+# line-length=120
+
+# [body-min-length]
+# min-length=5
+
+# [body-is-missing]
+# Whether to ignore this rule on merge commits (which typically only have a title)
+# default = True
+# ignore-merge-commits=false
+
+# [body-changed-file-mention]
+# List of files that need to be explicitly mentioned in the body when they are
+# changed This is useful for when developers often erroneously edit certain
+# files or git submodules. By specifying this rule, developers can only change
+# the file when they explicitly reference it in the commit message.
+# files=gitlint/rules.py,README.md
+
+# [author-valid-email]
+# python like regex (https://docs.python.org/2/library/re.html) that the
+# commit author email address should be matched to
+# For example, use the following regex if you only want to allow email
+# addresses from foo.com
+# regex=[^@]+@foo.com
+
+# [ignore-by-title]
+# Ignore certain rules for commits of which the title matches a regex
+# E.g. Match commit titles that start with "Release"
+# regex=^Release(.*)
+#
+# Ignore certain rules, you can reference them by their id or by their full name
+# Use 'all' to ignore all rules
+# ignore=T1,body-min-length
+
+# [ignore-by-body]
+# Ignore certain rules for commits of which the body has a line that matches a
+# regex
+# E.g. Match bodies that have a line that contain "release"
+# regex=(.*)release(.*)
+#
+# Ignore certain rules, you can reference them by their id or by their full name
+# Use 'all' to ignore all rules
+# ignore=T1,body-min-length
+
+# Enable Conventional Commit subject line enforcement
+# https://www.conventionalcommits.org/en/v1.0.0/
+#
+# Since we want all subjects to be well formed, enforce the topics
+# to the following (fairly standard) topics and require them to be Mixed Case
+# [contrib-title-conventional-commits]
+# types=Fix,Feat,Chore,Docs,Style,Refactor,Perf,Test,Revert,CI,Build
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
new file mode 100644
index 00000000..b1080484
--- /dev/null
+++ b/.pre-commit-config.yaml
@@ -0,0 +1,32 @@
+---
+repos:
+ - repo: https://github.com/pre-commit/pre-commit-hooks
+ rev: v4.4.0
+ hooks:
+ - id: trailing-whitespace
+ - id: check-executables-have-shebangs
+ stages: [manual]
+ - id: check-json
+ exclude: (.vscode|.devcontainer)
+ - id: no-commit-to-branch
+ args:
+ - --branch=dev
+ - --branch=master
+ - --branch=main
+ - --branch=rc
+
+ - repo: https://github.com/jorisroovers/gitlint
+ rev: v0.19.1
+ hooks:
+ - id: gitlint
+
+ # - repo: https://github.com/adrienverge/yamllint.git
+ # rev: v1.32.0
+ # hooks:
+ # - id: yamllint
+
+ # - repo: https://github.com/pre-commit/mirrors-prettier
+ # rev: v3.0.0-alpha.9-for-vscode
+ # hooks:
+ # - id: prettier
+ # stages: [commit]
diff --git a/.yamllint b/.yamllint
new file mode 100644
index 00000000..d4497f85
--- /dev/null
+++ b/.yamllint
@@ -0,0 +1,11 @@
+---
+extends: default
+
+rules:
+ empty-lines:
+ max-end: 1
+ line-length:
+ max: 120
+ comments:
+ # prettier forces 1 space comment separator
+ min-spaces-from-content: 1
diff --git a/INFO.yaml b/INFO.yaml
index 3502d6a2..a7a8b45a 100644
--- a/INFO.yaml
+++ b/INFO.yaml
@@ -6,8 +6,8 @@ lifecycle_state: 'Incubation'
project_lead: &ci-management_ptl
name: 'Andrew Grimberg'
email: 'agrimberg@linuxfoundation.org'
- id: 'tykeal'
- company: 'linux foundation'
+ id: 'agrimberg'
+ company: 'Linux Foundation'
timezone: 'America/Los_Angeles'
primary_contact: *ci-management_ptl
issue_tracking:
@@ -34,31 +34,21 @@ repositories:
- 'ci-management'
committers:
- <<: *ci-management_ptl
- - name: 'Andrew Grimberg'
- company: 'linuxfoundation'
- email: 'agrimberg@linuxfoundation.org'
- id: 'agrimberg'
- timezone: 'America/Los_Angeles'
- - name: 'C.J. Collier'
- company: 'colliertech'
- email: 'cjac+cjcollier@colliertech.org'
- id: 'cjcollier'
- timezone: 'Unknown/Unknown'
- name: 'Dave Wallace'
company: 'cisco'
email: 'dwallacelf@gmail.com'
id: 'dwallacelf'
timezone: 'America/New_York'
- - name: 'Ed Kern'
- company: 'cisco'
- email: 'ejk@cisco.com'
- id: 'ejk'
- timezone: 'Unknown/Unknown'
- name: 'Ed Warnicke'
company: 'cisco'
email: 'hagbard@gmail.com'
id: 'hagbard'
timezone: 'America/Chicago'
+ - name: 'Peter Mikus'
+ company: 'cisco'
+ email: 'pmikus@cisco.com'
+ id: 'pmikus'
+ timezone: 'Europe/Bratislava'
- name: 'Vanessa Rene Valderrama'
company: 'linuxfoundation'
email: 'vvalderrama@linuxfoundation.org'
@@ -69,11 +59,6 @@ committers:
email: 'vrpolak@cisco.com'
id: 'vrpolak'
timezone: 'Europe/Bratislava'
- - name: 'Thanh Ha (zxiiro)'
- company: 'Unknown'
- email: 'zxiiro@gmail.com'
- id: 'zxiiro'
- timezone: 'Unknown/Unknown'
- name: 'Eric Ball'
company: 'linuxfoundation'
email: 'eball@linuxfoundation.org'
@@ -84,5 +69,5 @@ tsc:
approval: 'missing'
changes:
- type: 'approval'
- name: 'Dave Wallace'
- link: 'http://ircbot.wl.linuxfoundation.org/meetings/fdio-meeting/2020/fdio-meeting.2020-02-06-16.01.log.html'
+ name: 'Peter Mikus'
+ link: 'https://ircbot.wl.linuxfoundation.org/meetings/fdio-meeting/2021/fd_io_tsc/fdio-meeting-fd_io_tsc.2021-07-22-15.01.log.html'
diff --git a/docker/LICENSE b/docker/LICENSE
index 20f96ba8..e2c1e1a0 100644
--- a/docker/LICENSE
+++ b/docker/LICENSE
@@ -1,36 +1,4 @@
-----------
-MIT License
-
-Copyright (c) 2019 snergfdio
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
------------
-
-The above MIT license applies to all files and their contents at the time
-they were copied from
- https://github.com/snergfdio/csit-shim
- https://github.com/snergfdio/csit-sut
-
-All subsequent changes to the files and/or contents shall be subject to
-the Apache license below:
-
------------
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
diff --git a/docker/scripts/README.md b/docker/scripts/README.md
index 2c98aa95..5fb4cee4 100644
--- a/docker/scripts/README.md
+++ b/docker/scripts/README.md
@@ -24,8 +24,7 @@ the executor image is as follows:
2. For each OS package manager, there is a bash function which generates the
Dockerfile for the specified OS which uses said package manager. For example,
lib_apt.sh contains 'generate_apt_dockerfile()' which is executed for Ubuntu
- and debian OS's. lib_yum.sh and lib_dnf.sh contain similar functions for yum
- (centos-7) and dnf (centos-8).
+ and debian OS's.
3. The Dockerfiles contain the following sections:
- a. Environment setup and copying of project workspace git repos
@@ -56,11 +55,8 @@ bash functions for use by the operational scripts.
- `lib_csit.sh`: CSIT specific functions and environment variables
-- `lib_dnf.sh`: Dockerfile generation functions for dnf package manager.
-
- `lib_vpp.sh`: VPP specific functions and environment variables
-- `lib_yum.sh`: Dockerfile generation functions for yum package manager.
## Bash Scripts
@@ -115,9 +111,7 @@ The following commands are useful to build the initial builder images:
`cd <ci-managment repository directory>`
-`sudo ./docker/scripts/build_executor_docker_image.sh ubuntu-18.04 2>&1 | tee u1804-$(uname -m).log | grep -ve '^+'`
-
-`sudo ./docker/scripts/build_executor_docker_image.sh centos-7 2>&1 | tee centos7-$(uname -m).log | grep -ve '^+'`
+`sudo ./docker/scripts/build_executor_docker_image.sh ubuntu-20.04 2>&1 | tee u2004-$(uname -m).log | grep -ve '^+'`
`sudo ./docker/scripts/build_executor_docker_image.sh -apr sandbox 2>&1 | tee all-sandbox-$(uname -m).log | grep -ve '^+'`
@@ -139,10 +133,10 @@ avoids the pitfalls encountered with Docker-In-Docker environments:
The environment in the docker shell contains all of the necessary
environment variable definitions so the docker scripts can be run
directly on the cli. Here is an example command that would be used in a CI job
-which automates the generation and testing of a new ubuntu-18.04 docker image
-and push it to Docker Hub fdiotools/builder-ubuntu1804:test-<arch>:
+which automates the generation and testing of a new ubuntu-20.04 docker image
+and push it to Docker Hub fdiotools/builder-ubuntu2004:test-<arch>:
-`build_executor_docker_image.sh -pr test ubuntu-18.04`
+`build_executor_docker_image.sh -pr test ubuntu-20.04`
In the future, a fully automated CI/CD pipeline may be created for production
docker images.
@@ -189,8 +183,7 @@ tags, but for now testing is a manual operation.
2. Edit jjb/vpp/vpp.yam (or other project yaml file) and replace '-prod-' with '-sandbox-' for all of the docker image
-3. `jjb-sandbox-env` # This bash function currently lives in ../vpp/extras/bash/functions.sh
- - TODO: move it to ci-management repo.
+3. `jjb-sandbox-env`
4. For each job using one of the docker images:
@@ -256,14 +249,11 @@ script will be written to automate the process.
## DockerHub Repositories
-- fdiotools/builder-centos7
-- fdiotools/builder-centos8
-- fdiotools/builder-debian9
-- fdiotools/builder-debian10
-- fdiotools/builder-ubuntu1804
+- fdiotools/builder-debian11
- fdiotools/builder-ubuntu2004
-- fdiotools/csit_dut-ubuntu1804
-- fdiotools/csit_shim-ubuntu1804
+- fdiotools/builder-ubuntu2204
+- fdiotools/csit_dut-ubuntu2004
+- fdiotools/csit_shim-ubuntu2004
## Docker Image Tags
@@ -279,475 +269,3 @@ a production image to the previous image used in production.
Jenkins-Nomad Label.
- sandbox-aarch64: Tag used to select the aarch64 sandbox image by the
associated Jenkins-Nomad Label.
-- test-x86_64: Tag used to select the x86_64 sandbox image by the associated
-Jenkins-Nomad Label.
-- test-aarch64: Tag used to select the aarch64 sandbox image by the associated
-Jenkins-Nomad Label.
-
-# Jenkins-Nomad Label Definitions
-
-<class>-<os>-<role>-<arch> (e.g. builder-ubuntu1804-prod-x86_64)
-
-- class
--- builder
--- csit_dut
--- csit_shim
-
-- os
--- ubuntu1804
--- centos7
--- ubuntu2004
--- centos8
--- debian9
--- debian10
-
-- role
--- prod
--- test
--- sandbox
-
-- arch
--- x86_64
--- aarch64
-
-## Jenkins Nomad Plugin Node Labels
-
-### Common Attributes of All Jenkins Nomad Plugin Nodes
-- Disk: 3000
-- Priority: 50
-- Idle Termination Time: 10
-- Executors: 1
-- Usage: Only build jobs with label expressions matching this node
-- Workspace root: /w
-- Privileged: Y
-- Network: bridge
-- Force-pull: Y
-
-### Production (prod) Jenkins Nomad Plugin Nodes
-
-#### Node 'builder-ubuntu1804-prod-x86_64'
-- Labels: builder-ubuntu1804-prod-x86_64
-- Job Prefix: builder-ubuntu1804-prod-x86_64
-- Image: fdiotools/builder-ubuntu1804:prod-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-ubuntu1804-prod-aarch64'
-- Labels: builder-ubuntu1804-prod-aarch64
-- Job Prefix: builder-ubuntu1804-prod-aarch64
-- Image: fdiotools/builder-ubuntu1804:prod-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'builder-centos7-prod-x86_64'
-- Labels: builder-centos7-prod-x86_64
-- Job Prefix: builder-centos7-prod-x86_64
-- Image: fdiotools/builder-centos7:prod-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-centos7-prod-aarch64'
-- Labels: builder-centos7-prod-aarch64
-- Job Prefix: builder-centos7-prod-aarch64
-- Image: fdiotools/builder-centos7:prod-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'builder-ubuntu2004-prod-x86_64'
-- Labels: builder-ubuntu2004-prod-x86_64
-- Job Prefix: builder-ubuntu2004-prod-x86_64
-- Image: fdiotools/builder-ubuntu2004:prod-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-ubuntu2004-prod-aarch64'
-- Labels: builder-ubuntu2004-prod-aarch64
-- Job Prefix: builder-ubuntu2004-prod-aarch64
-- Image: fdiotools/builder-ubuntu2004:prod-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'builder-centos8-prod-x86_64'
-- Labels: builder-centos8-prod-x86_64
-- Job Prefix: builder-centos7-prod-x86_64
-- Image: fdiotools/builder-centos8:prod-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-centos8-prod-aarch64'
-- Labels: builder-centos8-prod-aarch64
-- Job Prefix: builder-centos8-prod-aarch64
-- Image: fdiotools/builder-centos8:prod-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'builder-debian9-prod-x86_64'
-- Labels: builder-debian9-prod-x86_64
-- Job Prefix: builder-debian9-prod-x86_64
-- Image: fdiotools/builder-debian9:prod-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-debian9-prod-aarch64'
-- Labels: builder-debian9-prod-aarch64
-- Job Prefix: builder-debian9-prod-aarch64
-- Image: fdiotools/builder-debian9:prod-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'builder-debian10-prod-x86_64'
-- Labels: builder-debian10-prod-x86_64
-- Job Prefix: builder-debian10-prod-x86_64
-- Image: fdiotools/builder-debian10:prod-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-debian10-prod-aarch64'
-- Labels: builder-debian10-prod-aarch64
-- Job Prefix: builder-debian10-prod-aarch64
-- Image: fdiotools/builder-debian10:prod-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'csit_dut-ubuntu1804-prod-x86_64'
-- Labels: csit_dut-ubuntu1804-prod-x86_64
-- Job Prefix: csit_dut-ubuntu1804-prod-x86_64
-- Image: fdiotools/csit_dut-ubuntu1804:prod-x86_64
-- CPU: 10000
-- Memory: 18000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: csit
-
-#### Node 'csit_dut-ubuntu1804-prod-aarch64'
-- Labels: csit_dut-ubuntu1804-prod-aarch64
-- Job Prefix: csit_dut-ubuntu1804-prod-aarch64
-- Image: fdiotools/csit_dut-ubuntu1804:prod-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: csitarm
-
-#### Node 'csit_shim-ubuntu1804-prod-x86_64'
-- Labels: csit_shim-ubuntu1804-prod-x86_64
-- Job Prefix: csit_shim-ubuntu1804-prod-x86_64
-- Image: fdiotools/csit_shim-ubuntu1804:prod-x86_64
-- CPU: 10000
-- Memory: 18000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: csit
-
-#### Node 'csit_shim-ubuntu1804-prod-aarch64'
-- Labels: csit_shim-ubuntu1804-prod-aarch64
-- Job Prefix: csit_shim-ubuntu1804-prod-aarch64
-- Image: fdiotools/csit_shim-ubuntu1804:prod-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: csitarm
-
-### Sandbox (sandbox) Jenkins Nomad Plugin Nodes
-
-#### Node 'builder-ubuntu1804-sandbox-x86_64'
-- Labels: builder-ubuntu1804-sandbox-x86_64
-- Job Prefix: builder-ubuntu1804-sandbox-x86_64
-- Image: fdiotools/builder-ubuntu1804:sandbox-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-ubuntu1804-sandbox-aarch64'
-- Labels: builder-ubuntu1804-sandbox-aarch64
-- Job Prefix: builder-ubuntu1804-sandbox-aarch64
-- Image: fdiotools/builder-ubuntu1804:sandbox-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'builder-centos7-sandbox-x86_64'
-- Labels: builder-centos7-sandbox-x86_64
-- Job Prefix: builder-centos7-sandbox-x86_64
-- Image: fdiotools/builder-centos7:sandbox-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-centos7-sandbox-aarch64'
-- Labels: builder-centos7-sandbox-aarch64
-- Job Prefix: builder-centos7-sandbox-aarch64
-- Image: fdiotools/builder-centos7:sandbox-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'builder-ubuntu2004-sandbox-x86_64'
-- Labels: builder-ubuntu2004-sandbox-x86_64
-- Job Prefix: builder-ubuntu2004-sandbox-x86_64
-- Image: fdiotools/builder-ubuntu2004:sandbox-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-ubuntu2004-sandbox-aarch64'
-- Labels: builder-ubuntu2004-sandbox-aarch64
-- Job Prefix: builder-ubuntu2004-sandbox-aarch64
-- Image: fdiotools/builder-ubuntu2004:sandbox-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'builder-centos8-sandbox-x86_64'
-- Labels: builder-centos8-sandbox-x86_64
-- Job Prefix: builder-centos8-sandbox-x86_64
-- Image: fdiotools/builder-centos8:sandbox-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-centos8-sandbox-aarch64'
-- Labels: builder-centos8-sandbox-aarch64
-- Job Prefix: builder-centos8-sandbox-aarch64
-- Image: fdiotools/builder-centos8:sandbox-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'builder-debian9-sandbox-x86_64'
-- Labels: builder-debian9-sandbox-x86_64
-- Job Prefix: builder-debian9-sandbox-x86_64
-- Image: fdiotools/builder-debian9:sandbox-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-debian9-sandbox-aarch64'
-- Labels: builder-debian9-sandbox-aarch64
-- Job Prefix: builder-debian9-sandbox-aarch64
-- Image: fdiotools/builder-debian9:sandbox-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'builder-debian10-sandbox-x86_64'
-- Labels: builder-debian10-sandbox-x86_64
-- Job Prefix: builder-debian10-sandbox-x86_64
-- Image: fdiotools/builder-debian10:sandbox-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-debian10-sandbox-aarch64'
-- Labels: builder-debian10-sandbox-aarch64
-- Job Prefix: builder-debian10-sandbox-aarch64
-- Image: fdiotools/builder-debian10:sandbox-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'csit_dut-ubuntu1804-sandbox-x86_64'
-- Labels: csit_dut-ubuntu1804-sandbox-x86_64
-- Job Prefix: csit_dut-ubuntu1804-sandbox-x86_64
-- Image: fdiotools/csit_dut-ubuntu1804:sandbox-x86_64
-- CPU: 10000
-- Memory: 18000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: csit
-
-#### Node 'csit_dut-ubuntu1804-sandbox-aarch64'
-- Labels: csit_dut-ubuntu1804-sandbox-aarch64
-- Job Prefix: csit_dut-ubuntu1804-sandbox-aarch64
-- Image: fdiotools/csit_dut-ubuntu1804:sandbox-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: csitarm
-
-#### Node 'csit_shim-ubuntu1804-sandbox-x86_64'
-- Labels: csit_shim-ubuntu1804-sandbox-x86_64
-- Job Prefix: csit_shim-ubuntu1804-sandbox-x86_64
-- Image: fdiotools/csit_shim-ubuntu1804:sandbox-x86_64
-- CPU: 10000
-- Memory: 18000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: csit
-
-#### Node 'csit_shim-ubuntu1804-sandbox-aarch64'
-- Labels: csit_shim-ubuntu1804-sandbox-aarch64
-- Job Prefix: csit_shim-ubuntu1804-sandbox-aarch64
-- Image: fdiotools/csit_shim-ubuntu1804:sandbox-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: csitarm
-
-### Automated Testing (test) Jenkins Nomad Plugin Nodes
-
-#### Node 'builder-ubuntu1804-test-x86_64'
-- Labels: builder-ubuntu1804-test-x86_64
-- Job Prefix: builder-ubuntu1804-test-x86_64
-- Image: fdiotools/builder-ubuntu1804:test-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-ubuntu1804-test-aarch64'
-- Labels: builder-ubuntu1804-test-aarch64
-- Job Prefix: builder-ubuntu1804-test-aarch64
-- Image: fdiotools/builder-ubuntu1804:test-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'builder-centos7-test-x86_64'
-- Labels: builder-centos7-test-x86_64
-- Job Prefix: builder-centos7-test-x86_64
-- Image: fdiotools/builder-centos7:test-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-centos7-test-aarch64'
-- Labels: builder-centos7-test-aarch64
-- Job Prefix: builder-centos7-test-aarch64
-- Image: fdiotools/builder-centos7:test-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'builder-ubuntu2004-test-x86_64'
-- Labels: builder-ubuntu2004-test-x86_64
-- Job Prefix: builder-ubuntu2004-test-x86_64
-- Image: fdiotools/builder-ubuntu2004:test-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-ubuntu2004-test-aarch64'
-- Labels: builder-ubuntu2004-test-aarch64
-- Job Prefix: builder-ubuntu2004-test-aarch64
-- Image: fdiotools/builder-ubuntu2004:test-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'builder-centos8-test-x86_64'
-- Labels: builder-centos8-test-x86_64
-- Job Prefix: builder-centos8-test-x86_64
-- Image: fdiotools/builder-centos8:test-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-centos8-test-aarch64'
-- Labels: builder-centos8-test-aarch64
-- Job Prefix: builder-centos8-test-aarch64
-- Image: fdiotools/builder-centos8:test-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'builder-debian9-test-x86_64'
-- Labels: builder-debian9-test-x86_64
-- Job Prefix: builder-debian9-test-x86_64
-- Image: fdiotools/builder-debian9:test-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-debian9-test-aarch64'
-- Labels: builder-debian9-test-aarch64
-- Job Prefix: builder-debian9-test-aarch64
-- Image: fdiotools/builder-debian9:test-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'builder-debian10-test-x86_64'
-- Labels: builder-debian10-test-x86_64
-- Job Prefix: builder-debian10-test-x86_64
-- Image: fdiotools/builder-debian10:test-x86_64
-- CPU: 14000
-- Memory: 14000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: builder
-
-#### Node 'builder-debian10-test-aarch64'
-- Labels: builder-debian10-test-aarch64
-- Job Prefix: builder-debian10-test-aarch64
-- Image: fdiotools/builder-debian10:test-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: builder
-
-#### Node 'csit_dut-ubuntu1804-sandbox-x86_64'
-- Labels: csit_dut-ubuntu1804-sandbox-x86_64
-- Job Prefix: csit_dut-ubuntu1804-sandbox-x86_64
-- Image: fdiotools/csit_dut-ubuntu1804:sandbox-x86_64
-- CPU: 10000
-- Memory: 18000
-- ${attr.cpu.arch}: amd64
-- ${node.class}: csit
-
-#### Node 'csit_dut-ubuntu1804-test-aarch64'
-- Labels: csit_dut-ubuntu1804-test-aarch64
-- Job Prefix: csit_dut-ubuntu1804-test-aarch64
-- Image: fdiotools/csit_dut-ubuntu1804:test-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: csitarm
-
-#### Node 'csit_shim-ubuntu1804-test-aarch64'
-- Labels: csit_shim-ubuntu1804-test-aarch64
-- Job Prefix: csit_shim-ubuntu1804-test-aarch64
-- Image: fdiotools/csit_shim-ubuntu1804:test-aarch64
-- CPU: 6000
-- Memory: 10000
-- ${attr.cpu.arch}: arm64
-- ${node.class}: csitarm
diff --git a/docker/scripts/build_executor_docker_image.sh b/docker/scripts/build_executor_docker_image.sh
index 17118bec..7a731956 100755
--- a/docker/scripts/build_executor_docker_image.sh
+++ b/docker/scripts/build_executor_docker_image.sh
@@ -25,8 +25,6 @@ export CIMAN_DOCKER_SCRIPTS=${CIMAN_DOCKER_SCRIPTS:-"$(dirname $BASH_SOURCE)"}
. "$CIMAN_DOCKER_SCRIPTS/lib_vpp.sh"
. "$CIMAN_DOCKER_SCRIPTS/lib_csit.sh"
. "$CIMAN_DOCKER_SCRIPTS/lib_apt.sh"
-. "$CIMAN_DOCKER_SCRIPTS/lib_yum.sh"
-. "$CIMAN_DOCKER_SCRIPTS/lib_dnf.sh"
all_os_names=""
ci_tag=""
@@ -120,12 +118,6 @@ for executor_os_name in $os_names ; do
debian*)
generate_apt_dockerfile "$EXECUTOR_CLASS" "$executor_os_name" \
"$docker_from_image" "$executor_docker_image" ;;
- centos-7)
- generate_yum_dockerfile "$EXECUTOR_CLASS" "$executor_os_name" \
- "$docker_from_image" "$executor_docker_image" ;;
- centos-8)
- generate_dnf_dockerfile "$EXECUTOR_CLASS" "$executor_os_name" \
- "$docker_from_image" "$executor_docker_image" ;;
*)
echo "ERROR: Don't know how to generate dockerfile for OS $executor_os_name!"
usage ;;
diff --git a/docker/scripts/dbld_csit_find_ansible_packages.py b/docker/scripts/dbld_csit_find_ansible_packages.py
index 7f34fb9d..52ed4c3b 100755
--- a/docker/scripts/dbld_csit_find_ansible_packages.py
+++ b/docker/scripts/dbld_csit_find_ansible_packages.py
@@ -58,7 +58,7 @@ def is_csit_ansible_yaml_file(filename: str):
(root,ext) = os.path.splitext(filename)
if ext == '.yaml' \
and filename.find('csit/') >= 0 \
- and filename.find('/ansible/') > 0 \
+ and filename.find('ansible/') > 0 \
and os.path.isfile(filename):
return True
else:
@@ -75,8 +75,6 @@ def main(args: List[str]) -> None:
for arg in args:
if arg.lower() == '--ubuntu':
distro = 'ubuntu'
- elif arg.lower() == '--centos':
- distro = 'centos'
elif arg.lower() == '--x86_64':
arch = 'x86_64'
elif arg.lower() == '--aarch64':
diff --git a/docker/scripts/dbld_csit_install_packages.sh b/docker/scripts/dbld_csit_install_packages.sh
index d8ce597f..e303ce28 100755
--- a/docker/scripts/dbld_csit_install_packages.sh
+++ b/docker/scripts/dbld_csit_install_packages.sh
@@ -42,7 +42,19 @@ for vpp_branch in ${VPP_BRANCHES[$OS_NAME]} ; do
csit_install_packages "$csit_branch"
# Install/cache python packages
+ csit_install_hugo "$csit_branch"
+
+ # Install/cache python packages
csit_pip_cache "$csit_branch"
done
+# Install csit OS packages
+csit_install_packages "master"
+
+# Install/cache python packages
+csit_install_hugo "master"
+
+# Install/cache python packages
+csit_pip_cache "master"
+
echo_log -e "Completed $(basename $0)!\n\n=========="
diff --git a/docker/scripts/dbld_lfit_requirements.sh b/docker/scripts/dbld_lfit_requirements.sh
index 278b78ed..ca54edd8 100755
--- a/docker/scripts/dbld_lfit_requirements.sh
+++ b/docker/scripts/dbld_lfit_requirements.sh
@@ -53,11 +53,6 @@ mkdir -p "$LF_VENV"
OLD_PATH="$PATH"
python3 -m venv "$LF_VENV"
PATH="$LF_VENV/bin:$PATH"
-python3 -m pip install --upgrade pip
-# on Debian-9 lftools needs to be installed before it is upgraded
-# in order to get the latest version.
-if [ "$OS_ID" = "debian" ] && [ "$OS_VERSION_ID" = "9" ] ; then
- python3 -m pip install lftools
-fi
+python3 -m pip install pip --upgrade
python3 -m pip install --upgrade --upgrade-strategy eager lftools
PATH="$OLD_PATH"
diff --git a/docker/scripts/dbld_vpp_install_packages.sh b/docker/scripts/dbld_vpp_install_packages.sh
index e0d1f27f..5e1e0f8f 100755
--- a/docker/scripts/dbld_vpp_install_packages.sh
+++ b/docker/scripts/dbld_vpp_install_packages.sh
@@ -18,8 +18,6 @@ set -euxo pipefail
export CIMAN_DOCKER_SCRIPTS=${CIMAN_DOCKER_SCRIPTS:-"$(dirname $BASH_SOURCE)"}
. "$CIMAN_DOCKER_SCRIPTS/lib_vpp.sh"
. "$CIMAN_DOCKER_SCRIPTS/lib_apt.sh"
-. "$CIMAN_DOCKER_SCRIPTS/lib_yum.sh"
-. "$CIMAN_DOCKER_SCRIPTS/lib_dnf.sh"
must_be_run_in_docker_build
@@ -37,37 +35,37 @@ for branch in ${VPP_BRANCHES[$OS_NAME]} ; do
# Install OS packages
make_vpp "install-dep" "$branch"
- make_vpp "centos-pyyaml" "$branch" # VPP Makefile tests for centos versions
- if [ "$OS_ID" = "ubuntu" ] ; then
- # TODO: fix VPP stable/2005 bug in sphinx-make.sh
- # which fails on 'yum install python3-venv'
- # that does not exist.
- # 'Make docs jobs are only run on ubuntu executors
- # so only run for ubuntu build executors until fixed.
- make_vpp "docs-venv" "$branch"
- elif [ "$OS_NAME" = "debian-9" ] ; then
- apt_override_cmake_install_with_pip3_version
- fi
# Download, build, and cache external deps packages
make_vpp "install-ext-deps" "$branch"
- set +e
vpp_ext_dir="$DOCKER_VPP_DIR/build/external"
- [ -d "$vpp_ext_dir/downloads" ] \
- && rsync -ac "$vpp_ext_dir/downloads/." "$DOCKER_DOWNLOADS_DIR"
- [ -n "$(ls $vpp_ext_dir/*.deb)" ] \
- && rsync -ac "$vpp_ext_dir/*.deb" "$DOCKER_DOWNLOADS_DIR"
- [ -n "$(ls $vpp_ext_dir/*.rpm)" ] \
- && rsync -ac "$vpp_ext_dir/*.rpm" "$DOCKER_DOWNLOADS_DIR"
- set -e
+ rsync -ac $vpp_ext_dir/downloads/. $DOCKER_DOWNLOADS_DIR || true
+ if which apt >/dev/null ; then
+ vpp_ext_deps_pkg=$vpp_ext_dir/$(dpkg -l vpp-ext-deps 2>/dev/null | mawk '/vpp-ext-deps/{print $2"_"$3"_"$4".deb"}')
+ else
+ echo "ERROR: Package Manager not installed!"
+ exit 1
+ fi
+ if [ -f "$vpp_ext_deps_pkg" ] ; then
+ cp -f $vpp_ext_deps_pkg $DOCKER_DOWNLOADS_DIR
+ else
+ echo "ERROR: Missing VPP external deps package: '$vpp_ext_deps_pkg'"
+ exit 1
+ fi
+ # TODO: remove this after all supported VPP branches have removed
+ # python3-virtualenv & virtualenv from install-deps which are no longer
+ # used in vpp repo. These packages can mess up csit virtualenv
+ # installation which uses pip3
+ sudo apt remove -y --purge --autoremove python3-virtualenv virtualenv || true
# Install/cache python packages
+ make_vpp_test "test-dep" "$branch"
if [ "$OS_ID" = "ubuntu" ] ; then
- make_vpp_test "test-dep" "$branch"
- make_vpp_test "doc" "$branch"
make_vpp test-wipe "$branch"
- make_vpp "bootstrap-doxygen" "$branch"
fi
+ # Clean up virtual environment
+ git checkout -q -- .
+ git clean -qfdx
# Dump packages installed
case "$DOCKERFILE_FROM" in
@@ -75,10 +73,6 @@ for branch in ${VPP_BRANCHES[$OS_NAME]} ; do
dump_apt_package_list "$branch" ;;
*debian*)
dump_apt_package_list "$branch" ;;
- *centos:7)
- dump_yum_package_list "$branch" ;;
- *centos:8)
- dump_dnf_package_list "$branch" ;;
esac
done
diff --git a/docker/scripts/lib_apt.sh b/docker/scripts/lib_apt.sh
index 099a85a6..6cf37ae7 100644
--- a/docker/scripts/lib_apt.sh
+++ b/docker/scripts/lib_apt.sh
@@ -1,7 +1,7 @@
# lib_apt.sh - Docker build script apt library.
# For import only.
-# Copyright (c) 2021 Cisco and/or its affiliates.
+# Copyright (c) 2023 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -35,27 +35,11 @@ apt_install_packages() {
--allow-change-held-packages $@
}
-# Used for older OS distro's which are incompatible
-# with modern distro cmake vesrion
-apt_override_cmake_install_with_pip3_version() {
- local os_cmake="/usr/bin/cmake"
- local os_cmake_ver="$($os_cmake --version | head -1)"
- local pip3_cmake="/usr/local/bin/cmake"
-
- python3 -m pip --disable-pip-version-check install cmake || true
- local pip3_cmake_ver="$($pip3_cmake --version | head -1)"
- echo_log "Overriding $OS_NAME '$os_cmake_ver' with '$pip3_cmake_ver'!"
- apt-get remove -y cmake --autoremove || true
- update-alternatives --quiet --remove-all cmake || true
- update-alternatives --quiet --install "$os_cmake" cmake "$pip3_cmake" 100
- echo_log "Default cmake ($(which cmake)) version: '$(cmake --version | head -1)'!"
-}
-
generate_apt_dockerfile_common() {
local executor_class="$1"
local executor_image="$2"
- debian_docker_inst_sed="| sed -e 's/has_rootless_extras="1"//g' | sh
-"
+ local dpkg_arch="$(dpkg --print-architecture)"
+
cat <<EOF >>"$DOCKERFILE"
# Create download dir to cache external tarballs
@@ -112,31 +96,14 @@ ENV LANG="en_US.UTF-8" LANGUAGE="en_US" LC_ALL="en_US.UTF-8"
# build-essential
#
# TODO: Fix broken project requirement install targets
-# graphviz for 'make bootstrap-doxygen' (VPP)
-# doxygen for 'make doxygen' (VPP)
-# enchant for 'make docs' (VPP)
+# graphviz for doxygen (HICN)
+# doxygen for doxygen (HICN)
# libffi-dev for python cffi install (Ubuntu20.04/VPP/aarch64)
# liblapack-dev for python numpy/scipy (CSIT/aarch64)
# libopenblas-dev for python numpy/scipy (CSIT/aarch64)
# libpcap-dev for python pypcap install (CSIT)
# sshpass for CSIT jobs
#
-# From .../csit/resources/tools/presentation/run_report_*.sh:
-# libxml2
-# libxml2-dev
-# libxslt-dev
-# build-essential
-# zlib1g-dev
-# unzip
-# xvrb
-# texlive-latex-recommended
-# texlive-fonts-recommended
-# texlive-fonts-extra
-# texlive-latex-extra
-# latexmk
-# wkhtmltopdf
-# inkscape
-#
RUN apt-get update -qq \\
&& apt-get install -y \\
apt-transport-https \\
@@ -146,7 +113,6 @@ RUN apt-get update -qq \\
default-jre \\
dnsutils \\
doxygen \\
- enchant \\
emacs \\
facter \\
gawk \\
@@ -156,21 +122,16 @@ RUN apt-get update -qq \\
git-review \\
gnupg-agent \\
graphviz \\
- inkscape \\
iproute2 \\
iputils-clockdiff \\
iputils-ping \\
iputils-tracepath \\
jq \\
- latexmk \\
libffi-dev \\
liblapack-dev \\
libopenblas-dev \\
libpcap-dev \\
- libxml2 \\
- libxml2-dev \\
libxml-xpath-perl \\
- libxslt-dev \\
make \\
python3-pip \\
python3-venv \\
@@ -180,34 +141,23 @@ RUN apt-get update -qq \\
sshpass \\
sysstat \\
sudo \\
- texlive-fonts-extra \\
- texlive-fonts-recommended \\
- texlive-latex-extra \\
- texlive-latex-recommended \\
traceroute \\
tree \\
- unzip \\
vim \\
wget \\
- wkhtmltopdf \\
xmlstarlet \\
- xvfb \\
xz-utils \\
- zlib1g-dev \\
&& curl -L https://packagecloud.io/fdio/master/gpgkey | apt-key add - \\
&& curl -s https://packagecloud.io/install/repositories/fdio/master/script.deb.sh | bash \\
-EOF
- # Hack to prevent failure on debian-9 build
- head $DOCKERFILE
- if grep -qe 'debian:9' "$DOCKERFILE" ; then
- echo " && curl -fsSL https://get.docker.com | sed -e 's/has_rootless_extras=\"1\"//g' | sh \ " >>"$DOCKERFILE"
- else
- echo " && curl -fsSL https://get.docker.com | sh \ " >>"$DOCKERFILE"
- fi
-
- cat <<EOF >>"$DOCKERFILE"
&& rm -r /var/lib/apt/lists/*
+# Install terraform for CSIT
+#
+RUN wget https://releases.hashicorp.com/terraform/1.7.3/terraform_1.7.3_linux_$dpkg_arch.zip \\
+ && unzip terraform_1.7.3_linux_$dpkg_arch.zip \\
+ && mv terraform /usr/bin \\
+ && rm -f terraform_1.7.3_linux_$dpkg_arch.zip
+
# Install packages for all project branches
#
RUN apt-get update -qq \\
@@ -233,10 +183,6 @@ builder_generate_apt_dockerfile() {
local executor_image="$3"
local vpp_install_skip_sysctl_envvar="";
- if grep -q "debian-9" <<< "$executor_os_name" ; then
- # Workaround to VPP package installation failure on debian-9
- vpp_install_skip_sysctl_envvar="ENV VPP_INSTALL_SKIP_SYSCTL=1"
- fi
generate_apt_dockerfile_common $executor_class $executor_image
csit_builder_generate_docker_build_files
cat <<EOF >>"$DOCKERFILE"
diff --git a/docker/scripts/lib_common.sh b/docker/scripts/lib_common.sh
index 31466844..150441bb 100644
--- a/docker/scripts/lib_common.sh
+++ b/docker/scripts/lib_common.sh
@@ -1,7 +1,7 @@
# lib_common.sh - Docker build script common library.
# For import only.
-# Copyright (c) 2021 Cisco and/or its affiliates.
+# Copyright (c) 2022 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -124,9 +124,6 @@ remove_pyc_files_and_pycache_dirs() {
}
# OS type variables
-# TODO: Investigate if sourcing /etc/os-release and using env vars from it
-# works across all OS variants. If so, clean up copy-pasta...
-# Alternatively use facter as does LF Releng scripts.
export OS_ID="$(grep '^ID=' /etc/os-release | cut -d= -f2 | sed -e 's/\"//g')"
export OS_VERSION_ID="$(grep '^VERSION_ID=' /etc/os-release | cut -d= -f2 | sed -e 's/\"//g')"
export OS_CODENAME="$(grep 'VERSION_CODENAME=' /etc/os-release | cut -d= -f2)"
@@ -156,12 +153,12 @@ export EXECUTOR_CLASS_ARCH="$EXECUTOR_DEFAULT_CLASS-$OS_ARCH"
export EXECUTOR_CLASSES="$EXECUTOR_DEFAULT_CLASS csit_dut csit_shim"
export EXECUTOR_ARCHS="aarch64 x86_64"
declare -A EXECUTOR_CLASS_ARCH_OS_NAMES
-EXECUTOR_CLASS_ARCH_OS_NAMES["builder-aarch64"]="centos-8 ubuntu-18.04 ubuntu-20.04"
-EXECUTOR_CLASS_ARCH_OS_NAMES["builder-x86_64"]="centos-7 centos-8 debian-9 debian-10 ubuntu-18.04 ubuntu-20.04"
-EXECUTOR_CLASS_ARCH_OS_NAMES["csit_dut-aarch64"]="ubuntu-18.04 ubuntu-20.04"
-EXECUTOR_CLASS_ARCH_OS_NAMES["csit_dut-x86_64"]="ubuntu-18.04 ubuntu-20.04"
-EXECUTOR_CLASS_ARCH_OS_NAMES["csit_shim-aarch64"]="ubuntu-18.04 ubuntu-20.04"
-EXECUTOR_CLASS_ARCH_OS_NAMES["csit_shim-x86_64"]="ubuntu-18.04 ubuntu-20.04"
+EXECUTOR_CLASS_ARCH_OS_NAMES["builder-aarch64"]="ubuntu-20.04 ubuntu-22.04"
+EXECUTOR_CLASS_ARCH_OS_NAMES["builder-x86_64"]="debian-11 ubuntu-20.04 ubuntu-22.04"
+EXECUTOR_CLASS_ARCH_OS_NAMES["csit_dut-aarch64"]="ubuntu-22.04"
+EXECUTOR_CLASS_ARCH_OS_NAMES["csit_dut-x86_64"]="ubuntu-22.04"
+EXECUTOR_CLASS_ARCH_OS_NAMES["csit_shim-aarch64"]="ubuntu-22.04"
+EXECUTOR_CLASS_ARCH_OS_NAMES["csit_shim-x86_64"]="ubuntu-22.04"
export EXECUTOR_CLASS_ARCH_OS_NAMES
executor_list_roles() {
diff --git a/docker/scripts/lib_csit.sh b/docker/scripts/lib_csit.sh
index 6c064d0a..2e877f80 100644
--- a/docker/scripts/lib_csit.sh
+++ b/docker/scripts/lib_csit.sh
@@ -1,7 +1,7 @@
# lib_csit.sh - Docker build script CSIT library.
# For import only.
-# Copyright (c) 2021 Cisco and/or its affiliates.
+# Copyright (c) 2023 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -20,11 +20,9 @@ if [ -n "$(alias lib_csit_imported 2> /dev/null)" ] ; then
fi
alias lib_csit_imported=true
-export CIMAN_DOCKER_SCRIPTS="${CIMAN_DOCKER_SCRIPTS:-$(dirname $BASH_SOURCE)}"
+export CIMAN_DOCKER_SCRIPTS="${CIMAN_DOCKER_SCRIPTS:-$(dirname ${BASH_SOURCE[0]})}"
. "$CIMAN_DOCKER_SCRIPTS/lib_common.sh"
. "$CIMAN_DOCKER_SCRIPTS/lib_apt.sh"
-. "$CIMAN_DOCKER_SCRIPTS/lib_yum.sh"
-. "$CIMAN_DOCKER_SCRIPTS/lib_dnf.sh"
CSIT_SUPPORTED_EXECUTOR_CLASSES="builder csit_dut"
csit_supported_executor_class() {
@@ -36,10 +34,7 @@ csit_supported_executor_class() {
csit_supported_os() {
case "$1" in
- # TODO: Remove ubuntu-18.04 once CSIT has completed transition
- # to ubuntu-20.04
- ubuntu-18.04) return 0 ;;
- ubuntu-20.04) return 0 ;;
+ ubuntu-22.04) return 0 ;;
*) ;;
esac
return 1
@@ -55,12 +50,14 @@ csit_checkout_branch_for_vpp() {
&& source "$csit_bash_function_dir/branch.sh"
CSIT_DIR="$csit_dir" checkout_csit_for_vpp "$vpp_branch"
+ # shellcheck disable=SC2034,SC2063
csit_branch="$(git branch | grep -e '^*' | mawk '{print $2}')"
}
csit_install_packages() {
local branch="$1"
- local branchname="$(echo $branch | sed -e 's,/,_,')"
+ local branchname
+ branchname="$(echo $branch | sed -e 's,/,_,')"
local csit_dir="$DOCKER_CSIT_DIR"
local csit_ansible_dir="$csit_dir/fdio.infra.ansible"
if [ ! -d "$csit_ansible_dir" ] ; then
@@ -70,48 +67,28 @@ csit_install_packages() {
bld_log="${bld_log}-$branchname-csit_install_packages-bld.log"
git clean -qfdx
+ python3 -m pip install pyyaml
- # Install PyYAML required by dbld_csit_find_ansible_packages.py
- #
- # Note: Conditional install due to Bug 1696324 -
- # Update to python3.6 breaks PyYAML dependencies
- # Status: CLOSED CANTFIX
- # https://bugzilla.redhat.com/show_bug.cgi?id=1696324
- if [ "$OS_NAME" = "centos-8" ] ; then
- dnf_install_packages python3-pyyaml
- else
- python3 -m pip install pyyaml
- fi
-
- local exclude_roles="-e calibration -e kernel -e mellanox -e nomad -e consul"
+ local exclude_roles="-e calibration -e kernel -e mellanox -e nomad -e consul -e aws -e vpp"
[ "$OS_ARCH" = "aarch64" ] && exclude_roles="$exclude_roles -e iperf"
# Not in double quotes to let bash remove newline characters
- local yaml_files="$(grep -r packages_by $csit_ansible_dir | cut -d: -f1 | sort -u | grep -v $exclude_roles)"
+ local yaml_files
+ yaml_files="$(grep -r packages_by $csit_ansible_dir | cut -d: -f1 | sort -u | grep -v $exclude_roles)"
packages="$(dbld_csit_find_ansible_packages.py --$OS_ID --$OS_ARCH $yaml_files)"
- packages="${packages/bionic /}"
+ packages="${packages/jammy /}"
packages="${packages/focal /}"
+ packages="${packages/libmbedcrypto1/libmbedcrypto3}"
+ packages="${packages/libmbedtls10/libmbedtls12}"
+ packages="$(echo ${packages//python\-/python3\-} | tr ' ' '\n' | sort -u | xargs)"
- # TODO: Fix Ubuntu-18.04 specific package names that fail on Ubuntu-20.04
- # (remove when CSIT is updated)
- if [ "$OS_NAME" = "ubuntu-20.04" ] ; then
- packages="${packages/libmbedcrypto1/libmbedcrypto3}"
- packages="${packages/libmbedtls10/libmbedtls12}"
- packages="$(echo ${packages//python\-/python3\-} | tr ' ' '\n' | sort -u | xargs)"
- fi
if [ -n "$packages" ] ; then
case "$OS_NAME" in
ubuntu*)
- apt_install_packages $packages
+ apt_install_packages "$packages" 2>&1 | tee -a "$bld_log"
;;
debian*)
- apt_install_packages $packages
- ;;
- centos-7)
- yum_install_packages $packages
- ;;
- centos-8)
- dnf_install_packages $packages
+ apt_install_packages "$packages" 2>&1 | tee -a "$bld_log"
;;
*)
echo "Unsupported OS ($OS_ID): CSIT packages NOT INSTALLED!"
@@ -120,9 +97,37 @@ csit_install_packages() {
fi
}
+csit_install_hugo() {
+ local branch="$1"
+ CSIT_DIR="$DOCKER_CSIT_DIR"
+
+ if [ -f "$CSIT_DIR/VPP_REPO_URL" ] \
+ && [ -f "$CSIT_DIR/requirements.txt" ]; then
+
+ local branchname
+ # use bash variable substitution to replace '/' with '_' to convert from
+ # vpp to csit branch name nomenclature
+ branchname="${branch////_}"
+ local csit_bash_function_dir="$CSIT_DIR/resources/libraries/bash/function"
+ local bld_log="$DOCKER_BUILD_LOG_DIR"
+ bld_log="${bld_log}/$FDIOTOOLS_IMAGENAME-$branchname-csit_install_hugo-bld.log"
+
+ description="Install CSIT hugo packages from $branch branch"
+ echo_log " Starting $description..."
+ git clean -qfdx
+
+ source "$csit_bash_function_dir"/hugo.sh
+ go_install 2>&1 | tee -a "$bld_log"
+ hugo_install 2>&1 | tee -a "$bld_log"
+
+ else
+ echo_log "ERROR: Missing or invalid CSIT_DIR: '$CSIT_DIR'!"
+ return 1
+ fi
+}
+
csit_pip_cache() {
local branch="$1"
- local VENV_OPTS=""
# ensure PS1 is defined (used by virtualenv activate script)
PS1=${PS1:-"#"}
CSIT_DIR="$DOCKER_CSIT_DIR"
@@ -130,55 +135,34 @@ csit_pip_cache() {
if [ -f "$CSIT_DIR/VPP_REPO_URL" ] \
&& [ -f "$CSIT_DIR/requirements.txt" ]; then
+ local branchname
+ # use bash variable substitution to replace '/' with '_' to convert from
+ # vpp to csit branch name nomenclature
+ branchname="${branch////_}"
local csit_bash_function_dir="$CSIT_DIR/resources/libraries/bash/function"
- local branchname="$(echo $branch | sed -e 's,/,_,')"
local bld_log="$DOCKER_BUILD_LOG_DIR"
bld_log="${bld_log}/$FDIOTOOLS_IMAGENAME-$branchname-csit_pip_cache-bld.log"
- local pip_cmd="python3 -m pip --disable-pip-version-check"
export PYTHONPATH=$CSIT_DIR
description="Install CSIT python packages from $branch branch"
- echo_log " Starting $description..."
- git clean -qfdx
+ echo_log " Starting $description..." 2>&1 | tee -a "$bld_log"
+ git clean -qfdx 2>&1 | tee -a "$bld_log"
rm -rf "$PYTHONPATH/env"
- # TODO: Update CSIT release branches to avoid build breakage
- # Fixes https://github.com/pypa/pip/issues/8260
- $pip_cmd install pip==21.0.1
- # rls2009_lts-* branches missing cherry-pick of
- # https://gerrit.fd.io/r/c/csit/+/31338
- sed -i 's/scipy==1.1.0/scipy==1.5.4/' "$PYTHONPATH/requirements.txt"
-
- # Virtualenv version is pinned in common.sh in newer csit branches.
- # (note: xargs removes leading/trailing spaces)
+ # Activate / install CSIT python virtualenv ($CSIT_DIR/requirements.txt)
local common_sh="$csit_bash_function_dir/common.sh"
- install_virtualenv="$(grep 'virtualenv' $common_sh | grep pip | grep install | cut -d'|' -f1 | xargs)"
- $install_virtualenv
- virtualenv --no-download --python=$(which python3) "$CSIT_DIR/env"
- source "$CSIT_DIR/env/bin/activate"
-
- if [ "$OS_ARCH" = "aarch64" ] ; then
- local numpy_ver="$(grep numpy $PYTHONPATH/requirements.txt)"
- [ -n "$numpy_ver" ] && $pip_cmd install $numpy_ver 2>&1 | \
- tee -a $bld_log
- fi
+ # shellcheck disable=1090
+ source "$common_sh"
+ activate_virtualenv "${CSIT_DIR}" "${CSIT_DIR}/requirements.txt" 2>&1 | tee -a "$bld_log"
- # Install csit python requirements
- $pip_cmd install -r "$CSIT_DIR/requirements.txt" 2>&1 | \
- tee -a "$bld_log"
# Install tox python requirements
- $pip_cmd install -r "$CSIT_DIR/tox-requirements.txt" 2>&1 | \
+ activate_virtualenv "${CSIT_DIR}" "${CSIT_DIR}/tox-requirements.txt" 2>&1 |\
tee -a "$bld_log"
- # Run tox which installs pylint requirments
- pushd $CSIT_DIR >& /dev/null
- tox || true
- popd >& /dev/null
# Clean up virtualenv directories
- deactivate
git checkout -q -- .
git clean -qfdx
- echo_log " Completed $description!"
+ echo_log " Completed $description!" 2>&1 | tee -a "$bld_log"
else
echo_log "ERROR: Missing or invalid CSIT_DIR: '$CSIT_DIR'!"
return 1
diff --git a/docker/scripts/lib_dnf.sh b/docker/scripts/lib_dnf.sh
deleted file mode 100644
index c6062169..00000000
--- a/docker/scripts/lib_dnf.sh
+++ /dev/null
@@ -1,209 +0,0 @@
-# lib_dnf.sh - Docker build script dnf library.
-# For import only.
-
-# Copyright (c) 2021 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# Don't import more than once.
-if [ -n "$(alias lib_dnf_imported 2> /dev/null)" ] ; then
- return 0
-fi
-alias lib_dnf_imported="true"
-
-export CIMAN_DOCKER_SCRIPTS=${CIMAN_DOCKER_SCRIPTS:-"$(dirname $BASH_SOURCE)"}
-. "$CIMAN_DOCKER_SCRIPTS/lib_common.sh"
-
-dump_dnf_package_list() {
- branchname="$(echo $branch | sed -e 's,/,_,')"
- dnf list installed > \
- "$DOCKER_BUILD_LOG_DIR/$FDIOTOOLS_IMAGENAME-$branchname-dnf-packages.log"
-}
-
-dnf_install_packages() {
- dnf install -y "$@"
-}
-
-generate_dnf_dockerfile_clean() {
- cat <<EOF >>"$DOCKERFILE"
-
-# Clean up
-RUN dbld_dump_build_logs.sh \\
- && rm -rf "/tmp/*" "/root/.ccache"
-EOF
-}
-
-generate_dnf_dockerfile_common() {
- cat <<EOF >>"$DOCKERFILE"
-
-# Build Environment Variables
-ENV FDIOTOOLS_IMAGE="$executor_image"
-ENV FDIOTOOLS_EXECUTOR_CLASS="$executor_class"
-ENV CIMAN_ROOT="$DOCKER_CIMAN_ROOT"
-ENV PATH="\$PATH:$DOCKER_CIMAN_ROOT/docker/scripts"
-
-# Copy-in build tree containing
-# ci-management, vpp, & csit git repos
-WORKDIR $DOCKER_BUILD_DIR
-COPY . .
-
-# Configure locales
-RUN LC_ALL=C.UTF-8 dnf install -y glibc-langpack-en
-ENV LANG="en_US.UTF-8" LANGUAGE="en_US" LC_ALL="en_US.UTF-8"
-
-# Install baseline packages (minimum build & utils).
-#
-# ci-management global-jjb requirements:
-# for lftools:
-# libxml2-devel
-# libxslt-devel
-# xmlstarlet
-# for lf-env.sh:
-# facter
-# from packer/provision/baseline.sh:
-# deltarpm
-# unzip
-# xz
-# python3-pip
-# git
-# git-review
-# perl-XML-XPath
-# make
-# wget
-#
-# TODO: Fix broken project requirement install targets
-# graphviz for 'make bootstrap-doxygen' (VPP)
-# doxygen for 'make doxygen' (VPP)
-# enchant for 'make docs' (VPP)
-# libffi-devel for python cffi install (Ubuntu20.04/VPP/aarch64)
-# libpcap-devel for python pypcap install (CSIT)
-# lapack-devel for python numpy/scipy (CSIT/aarch64)
-# openblas-devel for python numpy/scipy (CSIT/aarch64)
-# sshpass for CSIT
-#
-RUN dnf update -y \\
- && dnf install -y \\
- dnf-plugins-core \\
- epel-release \\
- && dnf config-manager --set-enabled \$(dnf repolist all 2> /dev/null | grep -i powertools | cut -d' ' -f1) --set-enabled epel \\
- && dnf repolist all \\
- && dnf clean all
-RUN dnf install -y \\
- dnf-utils \\
- bind-utils \\
- doxygen \\
- enchant \\
- emacs \\
- facter \\
- gdb \\
- git \\
- git-review \\
- graphviz \\
- iproute \\
- java-1.8.0-openjdk \\
- java-1.8.0-openjdk-devel \\
- jq \\
- lapack-devel \\
- libffi-devel \\
- libpcap-devel \\
- libxml2-devel \\
- libxslt-devel \\
- make \\
- mawk \\
- openblas-devel \\
- perl \\
- perl-XML-XPath \\
- python3-pip \\
- rsync \\
- ruby-devel \\
- sshpass \\
- sysstat \\
- sudo \\
- tree \\
- unzip \\
- vim \\
- wget \\
- xmlstarlet \\
- xz \\
- && curl -s https://packagecloud.io/install/repositories/fdio/master/script.rpm.sh | bash \\
- && curl -fsSL https://get.docker.com | sh \\
- && dnf clean all
-
-# Install OS packages for project branches
-#
-RUN dbld_vpp_install_packages.sh \\
- && dbld_csit_install_packages.sh \\
- && dnf clean all
-EOF
-}
-
-builder_generate_dnf_dockerfile() {
- local executor_class="$1"
- local executor_os_name="$2"
- local from_image="$3"
- local executor_image="$4"
-
- generate_dnf_dockerfile_common "$executor_class" "$executor_image"
- cat <<EOF >>"$DOCKERFILE"
-
-# Install LF-IT requirements
-ENV LF_VENV="/root/lf-venv"
-RUN dbld_lfit_requirements.sh \\
- && dnf clean all
-
-# Install packagecloud requirements
-RUN gem install package_cloud \\
- && curl -s https://packagecloud.io/install/repositories/fdio/master/script.rpm.sh | bash
-
-# CI Runtime Environment
-WORKDIR /
-ENV VPP_ZOMBIE_NOCHECK="1"
-ENV CCACHE_DIR="/scratch/ccache"
-ENV CCACHE_MAXSIZE="10G"
-EOF
- generate_dnf_dockerfile_clean
-}
-
-csit_generate_dnf_dockerfile() {
- echo_log "ERROR: ${FUNCNAME[0]} TBD!"
- exit 1
-}
-
-csit_dut_generate_dnf_dockerfile() {
- echo_log "ERROR: ${FUNCNAME[0]} TBD!"
- exit 1
-}
-
-csit_shim_generate_dnf_dockerfile() {
- echo_log "ERROR: ${FUNCNAME[0]} TBD!"
- exit 1
-}
-
-generate_dnf_dockerfile() {
- local executor_class="$1"
- local executor_os_name="$2"
- local from_image="$3"
- local executor_image="$4"
-
- cat <<EOF >"$DOCKERIGNOREFILE"
-**/__pycache__
-*.pyc
-EOF
- cat <<EOF >"$DOCKERFILE"
-FROM $from_image AS ${executor_class}-executor-image
-LABEL Description="FD.io CI '$executor_class' executor docker image for $executor_os_name/$OS_ARCH"
-LABEL Vendor="fd.io"
-LABEL Version="$DOCKER_TAG"
-EOF
- ${executor_class}_generate_dnf_dockerfile "$executor_class" \
- "$executor_os_name" "$from_image" "$executor_image"
-}
diff --git a/docker/scripts/lib_vpp.sh b/docker/scripts/lib_vpp.sh
index 89ea2b9f..39e2ca19 100644
--- a/docker/scripts/lib_vpp.sh
+++ b/docker/scripts/lib_vpp.sh
@@ -1,7 +1,7 @@
# lib_vpp.sh - Docker build script VPP library.
# For import only.
-# Copyright (c) 2021 Cisco and/or its affiliates.
+# Copyright (c) 2023 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -46,12 +46,9 @@ make_vpp() {
return
fi
git clean -qfdx
- description="'make UNATTENDED=y $target' in $(pwd) ($branch)"
+ description="'make UNATTENDED=yes $target' in $(pwd) ($branch)"
echo_log -e " Starting $description..."
- local force_opts="--allow-downgrades --allow-remove-essential"
- force_opts="$force_opts --allow-change-held-packages"
- make UNATTENDED=y CONFIRM="-y" FORCE="$force_opts" \
- $target 2>&1 | tee -a "$bld_log"
+ make UNATTENDED=yes $target 2>&1 | tee -a "$bld_log"
git checkout -q -- .
echo_log " Completed $description!"
}
@@ -99,10 +96,7 @@ docker_build_setup_vpp() {
# to create an enumerated set of jobs jobs that match the
# definitions here.
declare -A VPP_BRANCHES
-VPP_BRANCHES["centos-7"]="stable/2009"
-VPP_BRANCHES["centos-8"]="stable/2009 stable/2101 stable/2106 master"
-VPP_BRANCHES["debian-9"]="stable/2009"
-VPP_BRANCHES["debian-10"]="stable/2009 stable/2101 stable/2106 master"
-VPP_BRANCHES["ubuntu-18.04"]="stable/2009 stable/2101 stable/2106 master"
-VPP_BRANCHES["ubuntu-20.04"]="stable/2009 stable/2101 stable/2106 master"
+VPP_BRANCHES["debian-11"]="stable/2310 stable/2402 master"
+VPP_BRANCHES["ubuntu-20.04"]="stable/2310 stable/2402 master"
+VPP_BRANCHES["ubuntu-22.04"]="stable/2310 stable/2402 master"
export VPP_BRANCHES
diff --git a/docker/scripts/lib_yum.sh b/docker/scripts/lib_yum.sh
deleted file mode 100644
index fe0bc535..00000000
--- a/docker/scripts/lib_yum.sh
+++ /dev/null
@@ -1,212 +0,0 @@
-# lib_yum.sh - Docker build script yum library.
-# For import only.
-
-# Copyright (c) 2021 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# Don't import more than once.
-if [ -n "$(alias lib_yum_imported 2> /dev/null)" ] ; then
- return 0
-fi
-alias lib_yum_imported="true"
-
-export CIMAN_DOCKER_SCRIPTS=${CIMAN_DOCKER_SCRIPTS:-"$(dirname $BASH_SOURCE)"}
-. "$CIMAN_DOCKER_SCRIPTS/lib_common.sh"
-
-dump_yum_package_list() {
- branchname="$(echo $branch | sed -e 's,/,_,')"
- yum list installed > \
- "$DOCKER_BUILD_LOG_DIR/$FDIOTOOLS_IMAGENAME-$branchname-yum-packages.log"
-}
-
-yum_install_packages() {
- yum install -y "$@"
-}
-
-generate_yum_dockerfile_common() {
- local executor_class="$1"
- local executor_image="$2"
-
- cat <<EOF >>"$DOCKERFILE"
-
-# Create download dir to cache external tarballs
-WORKDIR $DOCKER_DOWNLOADS_DIR
-
-# Copy-in temporary build tree containing
-# ci-management, vpp, & csit git repos
-WORKDIR $DOCKER_BUILD_DIR
-COPY . .
-
-# Build Environment Variables
-ENV FDIOTOOLS_IMAGE=$executor_image
-ENV FDIOTOOLS_EXECUTOR_CLASS=$executor_class
-ENV CIMAN_ROOT="$DOCKER_CIMAN_ROOT"
-ENV PATH=$PATH:$DOCKER_CIMAN_ROOT/docker/scripts
-ENV LF_VENV="/root/lf-venv"
-
-# Configure locales
-ENV LANG=en_US.UTF-8 LANGUAGE=en_US LC_ALL=en_US.UTF-8
-
-# Install baseline packages (minimum build & utils).
-#
-# ci-management global-jjb requirements:
-# for lftools:
-# libxml2-devel
-# libxslt-devel
-# xmlstarlet
-# for lf-env.sh:
-# facter
-# from packer/provision/baseline.sh:
-# deltarpm
-# unzip
-# xz
-# python3-pip
-# git
-# git-review
-# perl-XML-XPath
-# make
-# wget
-#
-# TODO: Fix broken project requirement install targets
-# graphviz for 'make bootstrap-doxygen' (VPP)
-# doxygen for 'make doxygen' (VPP)
-# enchant for 'make docs' (VPP)
-# libffi-devel for python cffi install (Ubuntu20.04/VPP/aarch64)
-# libpcap-devel for python pypcap install (CSIT)
-# liblapack-devel for python numpy/scipy (CSIT/aarch64)
-# libopenblas-devel for python numpy/scipy (CSIT/aarch64)
-# sshpass for CSIT
-#
-RUN yum update -y \\
- && yum install -y epel-release \\
- && yum clean all
-RUN yum install -y \\
- yum-utils \\
- bind-utils \\
- deltarpm \\
- doxygen \\
- enchant \\
- emacs \\
- facter \\
- gdb \\
- git \\
- git-review \\
- graphviz \\
- iproute \\
- java-1.8.0-openjdk \\
- java-1.8.0-openjdk-devel \\
- jq \\
- libffi-devel \\
- liblapack-devel \\
- libopenblas-devel \\
- libpcap-devel \\
- libxml2-devel \\
- libxslt-devel \\
- make \\
- mawk \\
- perl \\
- perl-XML-XPath \\
- python3-pip \\
- rake \\
- ruby-devel \\
- sshpass \\
- sysstat \\
- sudo \\
- tree \\
- unzip \\
- vim \\
- wget \\
- xmlstarlet \\
- xz \\
- && curl -s https://packagecloud.io/install/repositories/fdio/master/script.rpm.sh | bash \\
- && curl -fsSL https://get.docker.com | sh \\
- && yum clean all
-
-# Install packages for all project branches
-#
-RUN dbld_vpp_install_packages.sh \\
- && dbld_csit_install_packages.sh \\
- && yum clean all
-EOF
-}
-
-generate_yum_dockerfile_clean() {
- cat <<EOF >>"$DOCKERFILE"
-
-# Clean up
-RUN dbld_dump_build_logs.sh \\
- && rm -rf "/tmp/*" "/root/.ccache"
-EOF
-}
-
-builder_generate_yum_dockerfile() {
- local executor_class="$1"
- local executor_os_name="$2"
- local from_image="$3"
- local executor_image="$4"
-
- generate_yum_dockerfile_common "$executor_class" "$executor_image"
- cat <<EOF >>"$DOCKERFILE"
-
-# Install LF-IT requirements
-ENV LF_VENV="/root/lf-venv"
-RUN dbld_lfit_requirements.sh \\
- && yum clean all
-
-# Install packagecloud requirements
-RUN gem install package_cloud \\
- && curl -s https://packagecloud.io/install/repositories/fdio/master/script.rpm.sh | bash
-
-# CI Runtime Environment
-WORKDIR /
-ENV VPP_ZOMBIE_NOCHECK="1"
-ENV CCACHE_DIR="/scratch/ccache"
-ENV CCACHE_MAXSIZE="10G"
-EOF
- generate_yum_dockerfile_clean
-}
-
-csit_generate_yum_dockerfile() {
- echo_log "ERROR: ${FUNCNAME[0]} TBD!"
- exit 1
-}
-
-csit_dut_generate_yum_dockerfile() {
- echo_log "ERROR: ${FUNCNAME[0]} TBD!"
- exit 1
-}
-
-csit_shim_generate_yum_dockerfile() {
- echo_log "ERROR: ${FUNCNAME[0]} TBD!"
- exit 1
-}
-
-generate_yum_dockerfile() {
- local executor_class="$1"
- local executor_os_name="$2"
- local from_image="$3"
- local executor_image="$4"
-
- cat <<EOF >"$DOCKERIGNOREFILE"
-**/__pycache__
-*.pyc
-EOF
- cat <<EOF >"$DOCKERFILE"
-FROM $from_image AS ${executor_class}-executor-image
-LABEL Description="FD.io CI '$executor_class' executor docker image for $executor_os_name/$OS_ARCH"
-LABEL Vendor="fd.io"
-LABEL Version="$DOCKER_TAG"
-EOF
- ${executor_class}_generate_yum_dockerfile "$executor_class" \
- "$executor_os_name" "$from_image" "$executor_image"
-}
diff --git a/docker/scripts/update_dockerhub_prod_tags.sh b/docker/scripts/update_dockerhub_prod_tags.sh
index 890beb3e..01dac644 100755
--- a/docker/scripts/update_dockerhub_prod_tags.sh
+++ b/docker/scripts/update_dockerhub_prod_tags.sh
@@ -1,6 +1,6 @@
#! /bin/bash
-# Copyright (c) 2021 Cisco and/or its affiliates.
+# Copyright (c) 2022 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -58,11 +58,11 @@ usage() {
echo " $script i[nspect] <prod image>"
echo
echo " revert: swaps 'prod-<arch>' and 'prod-prev-<arch>' images"
- echo " <prod image>: e.g. fdiotools/builder-ubuntu1804:prod-x86_64"
+ echo " <prod image>: e.g. fdiotools/builder-ubuntu2204:prod-x86_64"
echo
echo " promote: moves 'prod-<arch>' image to 'prod-prev-<arch>' tag and"
echo " tags <new image> with 'prod-<arch>'"
- echo " <new image>: e.g. fdiotools/builder-ubuntu1804:2020_09_23_151655-x86_64"
+ echo " <new image>: e.g. fdiotools/builder-ubuntu2204:2022_07_23_151655-x86_64"
echo " inspect: prints out all tags for prod-<arch> and prod-prev-<arch>"
echo
exit 1
@@ -187,10 +187,8 @@ get_all_tags_from_dockerhub() {
verify_image_version_date_format() {
version="$1"
- # TODO: Remove regex1 when legacy nomenclature is no longer on docker hub.
- local regex1="^[0-9]{4}_[0-1][0-9]_[0-3][0-9]_[0-2][0-9][0-5][0-9][0-5][0-9]$"
- local regex2="^[0-9]{4}_[0-1][0-9]_[0-3][0-9]_[0-2][0-9][0-5][0-9][0-5][0-9]_UTC$"
- if [[ "$version" =~ $regex1 ]] || [[ "$version" =~ $regex2 ]]; then
+ local ver_regex="^[0-9]{4}_[0-1][0-9]_[0-3][0-9]_[0-2][0-9][0-5][0-9][0-5][0-9]_UTC$"
+ if [[ "$version" =~ $ver_regex ]]; then
return 0
fi
return 1
diff --git a/extras/bash/packagecloud_attic_cleanup.sh b/extras/bash/packagecloud_attic_cleanup.sh
new file mode 100755
index 00000000..a9fc8113
--- /dev/null
+++ b/extras/bash/packagecloud_attic_cleanup.sh
@@ -0,0 +1,29 @@
+#! /bin/bash
+
+set -euo pipefail
+
+attic_repo='fdio/attic'
+packages_json='/tmp/pkgs.json'
+packagecloud_user="$HOME/.ssh/.packagecloud.user"
+# shellcheck disable=SC2064
+trap "rm -f $packages_json" SIGHUP SIGINT SIGQUIT EXIT
+
+get_more_packages() {
+ rm -f $packages_json
+ echo "Retrieving packages from packagecloud.io/$attic_repo"
+ # shellcheck disable=SC2086
+ curl -s https://"$(cat $packagecloud_user)"/api/v1/repos/$attic_repo/packages.json | jq . > $packages_json
+}
+
+get_more_packages
+while [ "$(cat $packages_json)" != "[]" ] ; do
+ for pkg in $(cat $packages_json | jq '.[].destroy_url' | xargs) ; do
+ # shellcheck disable=SC2086
+ echo "Deleting $(basename $pkg)"
+ # shellcheck disable=SC2086
+ curl -sX DELETE "https://$(cat $packagecloud_user)$pkg" >& /dev/null
+ done
+ echo
+ get_more_packages
+done
+echo "No more packages in '$attic_repo'!"
diff --git a/extras/bash/sandbox_test_functions.sh b/extras/bash/sandbox_test_functions.sh
index de8a9657..ae37d3a1 100644
--- a/extras/bash/sandbox_test_functions.sh
+++ b/extras/bash/sandbox_test_functions.sh
@@ -29,7 +29,7 @@
jjb-sandbox-env()
{
- local jjb_version=${JJB_VERSION:-"3.5.0"}
+ local jjb_version=${JJB_VERSION:-"6.0.0"}
if [ -z "$WS_ROOT" ] ; then
echo "ERROR: WS_ROOT is not set!"
@@ -72,6 +72,7 @@ jjb-sandbox-env()
rm -rf $VENV_DIR \
&& python3 -m venv $VENV_DIR \
&& source $VENV_DIR/bin/activate \
+ && pip3 install --upgrade pip \
&& pip3 install wheel \
&& pip3 install jenkins-job-builder==$jjb_version
@@ -131,7 +132,8 @@ get_gerrit_refspec() {
local query="$(ssh -p 29418 gerrit.fd.io gerrit query status:merged project:$project branch:$branch limit:1 --format=JSON --current-patch-set | tr ',' '\n' | grep refs | cut -d'"' -f4)"
if [ -z "$query" ] ; then
- echo "ERROR: Invalid project ($1) or branch ($2)"
+ echo "ERROR: Invalid argument(s): branch ($1) project ($2)"
+ echo "Usage: $0 <branch> <project>"
else
echo "$query"
fi
diff --git a/global-jjb b/global-jjb
-Subproject 92449c24828b0dbd582637ce3d1d705390da412
+Subproject b9d610a9e522d71a89d2daeb6f71b2bc2a71cdf
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos7-prod-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos7-prod-x86_64.yaml
deleted file mode 100644
index 446ca3f8..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos7-prod-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-centos7:prod-x86_64"
- labels: "builder-centos7-prod-x86_64"
- memory: 14000
- prefix: "builder-centos7-prod-x86_64"
- hostVolumes: "/tmp/ccache.centos7:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos7-sandbox-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos7-sandbox-x86_64.yaml
deleted file mode 100644
index 0b0b4fcf..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos7-sandbox-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-centos7:sandbox-x86_64"
- labels: "builder-centos7-sandbox-x86_64"
- memory: 14000
- prefix: "builder-centos7-sandbox-x86_64"
- hostVolumes: "/tmp/ccache.centos7:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos7-test-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos7-test-x86_64.yaml
deleted file mode 100644
index 633e78f5..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos7-test-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-centos7:test-x86_64"
- labels: "builder-centos7-test-x86_64"
- memory: 14000
- prefix: "builder-centos7-test-x86_64"
- hostVolumes: "/tmp/ccache.centos7:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-prod-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-prod-aarch64.yaml
deleted file mode 100644
index e24578d6..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-prod-aarch64.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
----
-templates:
- - image: "fdiotools/builder-centos8:prod-aarch64"
- labels: "builder-centos8-prod-aarch64"
- prefix: "builder-centos8-prod-aarch64"
- hostVolumes: "/tmp/ccache.centos8:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-prod-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-prod-x86_64.yaml
deleted file mode 100644
index 7b59d1b9..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-prod-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-centos8:prod-x86_64"
- labels: "builder-centos8-prod-x86_64"
- memory: 14000
- prefix: "builder-centos8-prod-x86_64"
- hostVolumes: "/tmp/ccache.centos8:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-sandbox-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-sandbox-aarch64.yaml
deleted file mode 100644
index b43bf9cb..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-sandbox-aarch64.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
----
-templates:
- - image: "fdiotools/builder-centos8:sandbox-aarch64"
- labels: "builder-centos8-sandbox-aarch64"
- prefix: "builder-centos8-sandbox-aarch64"
- hostVolumes: "/tmp/ccache.centos8:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-sandbox-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-sandbox-x86_64.yaml
deleted file mode 100644
index f91a943e..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-sandbox-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-centos8:sandbox-x86_64"
- labels: "builder-centos8-sandbox-x86_64"
- memory: 14000
- prefix: "builder-centos8-sandbox-x86_64"
- hostVolumes: "/tmp/ccache.centos8:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-test-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-test-aarch64.yaml
deleted file mode 100644
index daf222d1..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-test-aarch64.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
----
-templates:
- - image: "fdiotools/builder-centos8:test-aarch64"
- labels: "builder-centos8-test-aarch64"
- prefix: "builder-centos8-test-aarch64"
- hostVolumes: "/tmp/ccache.centos8:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-test-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-test-x86_64.yaml
deleted file mode 100644
index ac7200c2..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-centos8-test-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-centos8:test-x86_64"
- labels: "builder-centos8-test-x86_64"
- memory: 14000
- prefix: "builder-centos8-test-x86_64"
- hostVolumes: "/tmp/ccache.centos8:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian10-prod-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian10-prod-x86_64.yaml
deleted file mode 100644
index d15a462a..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian10-prod-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-debian10:prod-x86_64"
- labels: "builder-debian10-prod-x86_64"
- memory: 14000
- prefix: "builder-debian10-prod-x86_64"
- hostVolumes: "/tmp/ccache.debian10:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian10-sandbox-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian10-sandbox-x86_64.yaml
deleted file mode 100644
index 8e2293a5..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian10-sandbox-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-debian10:sandbox-x86_64"
- labels: "builder-debian10-sandbox-x86_64"
- memory: 14000
- prefix: "builder-debian10-sandbox-x86_64"
- hostVolumes: "/tmp/ccache.debian10:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian10-test-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian10-test-x86_64.yaml
deleted file mode 100644
index d49a0ba2..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian10-test-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-debian10:test-x86_64"
- labels: "builder-debian10-test-x86_64"
- memory: 14000
- prefix: "builder-debian10-test-x86_64"
- hostVolumes: "/tmp/ccache.debian10:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-prod-x86_64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-prod-x86_64-jobtemplate.yaml
new file mode 100644
index 00000000..178ae9ba
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-prod-x86_64-jobtemplate.yaml
@@ -0,0 +1,18 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: amd64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: builder
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ image: fdiotools/builder-debian11:prod-x86_64
+ volumes:
+ - /tmp/ccache.debian11:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-prod-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-prod-x86_64.yaml
new file mode 100644
index 00000000..3c219a2f
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-prod-x86_64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "builder-debian11-prod-x86_64"
+ labels: "builder-debian11-prod-x86_64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-sandbox-x86_64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-sandbox-x86_64-jobtemplate.yaml
new file mode 100644
index 00000000..b1e5fe1e
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-sandbox-x86_64-jobtemplate.yaml
@@ -0,0 +1,31 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: amd64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: builder
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ args:
+ - -cp
+ - /local/slave.jar
+ - hudson.remoting.jnlp.Main
+ - -headless
+ - -url
+ - https://jenkins.fd.io/sandbox
+ - -workDir
+ - /w/
+ - '%WORKER_SECRET%'
+ - '%WORKER_NAME%'
+ image: fdiotools/builder-debian11:sandbox-x86_64
+ volumes:
+ - /tmp/ccache.debian11:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Artifacts:
+ - GetterSource: https://jenkins.fd.io/sandbox/jnlpJars/slave.jar
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-sandbox-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-sandbox-x86_64.yaml
new file mode 100644
index 00000000..029f44ee
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian11-sandbox-x86_64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "builder-debian11-sandbox-x86_64"
+ labels: "builder-debian11-sandbox-x86_64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian9-prod-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian9-prod-x86_64.yaml
deleted file mode 100644
index edb1482b..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian9-prod-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-debian9:prod-x86_64"
- labels: "builder-debian9-prod-x86_64"
- memory: 14000
- prefix: "builder-debian9-prod-x86_64"
- hostVolumes: "/tmp/ccache.debian9:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian9-sandbox-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian9-sandbox-x86_64.yaml
deleted file mode 100644
index d94dcebe..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian9-sandbox-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-debian9:sandbox-x86_64"
- labels: "builder-debian9-sandbox-x86_64"
- memory: 14000
- prefix: "builder-debian9-sandbox-x86_64"
- hostVolumes: "/tmp/ccache.debian9:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian9-test-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian9-test-x86_64.yaml
deleted file mode 100644
index 66c0604d..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-debian9-test-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-debian9:test-x86_64"
- labels: "builder-debian9-test-x86_64"
- memory: 14000
- prefix: "builder-debian9-test-x86_64"
- hostVolumes: "/tmp/ccache.debian9:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-prod-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-prod-aarch64.yaml
deleted file mode 100644
index 60bee47b..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-prod-aarch64.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
----
-templates:
- - image: "fdiotools/builder-ubuntu1804:prod-aarch64"
- labels: "builder-ubuntu1804-prod-aarch64"
- prefix: "builder-ubuntu1804-prod-aarch64"
- hostVolumes: "/tmp/ccache.ubuntu1804:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-prod-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-prod-x86_64.yaml
deleted file mode 100644
index 8bde8f37..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-prod-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-ubuntu1804:prod-x86_64"
- labels: "builder-ubuntu1804-prod-x86_64"
- memory: 14000
- prefix: "builder-ubuntu1804-prod-x86_64"
- hostVolumes: "/tmp/ccache.ubuntu1804:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-sandbox-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-sandbox-aarch64.yaml
deleted file mode 100644
index af7f2c27..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-sandbox-aarch64.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
----
-templates:
- - image: "fdiotools/builder-ubuntu1804:sandbox-aarch64"
- labels: "builder-ubuntu1804-sandbox-aarch64"
- prefix: "builder-ubuntu1804-sandbox-aarch64"
- hostVolumes: "/tmp/ccache.ubuntu1804:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-sandbox-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-sandbox-x86_64.yaml
deleted file mode 100644
index 58c86ce5..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-sandbox-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-ubuntu1804:sandbox-x86_64"
- labels: "builder-ubuntu1804-sandbox-x86_64"
- memory: 14000
- prefix: "builder-ubuntu1804-sandbox-x86_64"
- hostVolumes: "/tmp/ccache.ubuntu1804:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-test-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-test-aarch64.yaml
deleted file mode 100644
index a1b9011f..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-test-aarch64.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
----
-templates:
- - image: "fdiotools/builder-ubuntu1804:test-aarch64"
- labels: "builder-ubuntu1804-test-aarch64"
- prefix: "builder-ubuntu1804-test-aarch64"
- hostVolumes: "/tmp/ccache.ubuntu1804:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-test-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-test-x86_64.yaml
deleted file mode 100644
index c3ff4524..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu1804-test-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-ubuntu1804:test-x86_64"
- labels: "builder-ubuntu1804-test-x86_64"
- memory: 14000
- prefix: "builder-ubuntu1804-test-x86_64"
- hostVolumes: "/tmp/ccache.ubuntu1804:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-aarch64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-aarch64-jobtemplate.yaml
new file mode 100644
index 00000000..8b0164e9
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-aarch64-jobtemplate.yaml
@@ -0,0 +1,11 @@
+---
+Job:
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ image: fdiotools/builder-ubuntu2004:prod-aarch64
+ volumes:
+ - /tmp/ccache.ubuntu2004:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-aarch64.yaml
index cdb22abf..0643191a 100644
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-aarch64.yaml
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-aarch64.yaml
@@ -1,7 +1,4 @@
---
templates:
- - image: "fdiotools/builder-ubuntu2004:prod-aarch64"
+ - prefix: "builder-ubuntu2004-prod-aarch64"
labels: "builder-ubuntu2004-prod-aarch64"
- prefix: "builder-ubuntu2004-prod-aarch64"
- hostVolumes: "/tmp/ccache.ubuntu2004:/scratch/ccache"
- memory: 16000
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-x86_64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-x86_64-jobtemplate.yaml
new file mode 100644
index 00000000..80a819d0
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-x86_64-jobtemplate.yaml
@@ -0,0 +1,18 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: amd64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: builder
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ image: fdiotools/builder-ubuntu2004:prod-x86_64
+ volumes:
+ - /tmp/ccache.ubuntu2004:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-x86_64.yaml
index 11305584..5e6a7669 100644
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-x86_64.yaml
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-prod-x86_64.yaml
@@ -1,15 +1,4 @@
---
templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 20000
- image: "fdiotools/builder-ubuntu2004:prod-x86_64"
+ - prefix: "builder-ubuntu2004-prod-x86_64"
labels: "builder-ubuntu2004-prod-x86_64"
- memory: 20000
- prefix: "builder-ubuntu2004-prod-x86_64"
- hostVolumes: "/tmp/ccache.ubuntu2004:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-aarch64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-aarch64-jobtemplate.yaml
new file mode 100644
index 00000000..e4e359be
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-aarch64-jobtemplate.yaml
@@ -0,0 +1,24 @@
+---
+Job:
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ args:
+ - -cp
+ - /local/slave.jar
+ - hudson.remoting.jnlp.Main
+ - -headless
+ - -url
+ - https://jenkins.fd.io/sandbox
+ - -workDir
+ - /w/
+ - '%WORKER_SECRET%'
+ - '%WORKER_NAME%'
+ image: fdiotools/builder-ubuntu2004:sandbox-aarch64
+ volumes:
+ - /tmp/ccache.ubuntu2004:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Artifacts:
+ - GetterSource: https://jenkins.fd.io/sandbox/jnlpJars/slave.jar
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-aarch64.yaml
index 11f7c388..3998c53b 100644
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-aarch64.yaml
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-aarch64.yaml
@@ -1,7 +1,4 @@
---
templates:
- - image: "fdiotools/builder-ubuntu2004:sandbox-aarch64"
+ - prefix: "builder-ubuntu2004-sandbox-aarch64"
labels: "builder-ubuntu2004-sandbox-aarch64"
- prefix: "builder-ubuntu2004-sandbox-aarch64"
- hostVolumes: "/tmp/ccache.ubuntu2004:/scratch/ccache"
- memory: 16000
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-x86_64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-x86_64-jobtemplate.yaml
new file mode 100644
index 00000000..f50d367d
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-x86_64-jobtemplate.yaml
@@ -0,0 +1,31 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: amd64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: builder
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ args:
+ - -cp
+ - /local/slave.jar
+ - hudson.remoting.jnlp.Main
+ - -headless
+ - -url
+ - https://jenkins.fd.io/sandbox
+ - -workDir
+ - /w/
+ - '%WORKER_SECRET%'
+ - '%WORKER_NAME%'
+ image: fdiotools/builder-ubuntu2004:sandbox-x86_64
+ volumes:
+ - /tmp/ccache.ubuntu2004:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Artifacts:
+ - GetterSource: https://jenkins.fd.io/sandbox/jnlpJars/slave.jar
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-x86_64.yaml
index b218c615..0afdb7b1 100644
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-x86_64.yaml
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-sandbox-x86_64.yaml
@@ -1,15 +1,4 @@
---
templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-ubuntu2004:sandbox-x86_64"
+ - prefix: "builder-ubuntu2004-sandbox-x86_64"
labels: "builder-ubuntu2004-sandbox-x86_64"
- memory: 14000
- prefix: "builder-ubuntu2004-sandbox-x86_64"
- hostVolumes: "/tmp/ccache.ubuntu2004:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-test-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-test-aarch64.yaml
deleted file mode 100644
index a07af004..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-test-aarch64.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
----
-templates:
- - image: "fdiotools/builder-ubuntu2004:test-aarch64"
- labels: "builder-ubuntu2004-test-aarch64"
- prefix: "builder-ubuntu2004-test-aarch64"
- hostVolumes: "/tmp/ccache.ubuntu2004:/scratch/ccache"
- memory: 16000
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-test-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-test-x86_64.yaml
deleted file mode 100644
index 58f661c8..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2004-test-x86_64.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- cpu: 14000
- image: "fdiotools/builder-ubuntu2004:test-x86_64"
- labels: "builder-ubuntu2004-test-x86_64"
- memory: 14000
- prefix: "builder-ubuntu2004-test-x86_64"
- hostVolumes: "/tmp/ccache.ubuntu2004:/scratch/ccache"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-aarch64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-aarch64-jobtemplate.yaml
new file mode 100644
index 00000000..096f7922
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-aarch64-jobtemplate.yaml
@@ -0,0 +1,11 @@
+---
+Job:
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ image: fdiotools/builder-ubuntu2204:prod-aarch64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-aarch64.yaml
new file mode 100644
index 00000000..aa6ee23e
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-aarch64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "builder-ubuntu2204-prod-aarch64"
+ labels: "builder-ubuntu2204-prod-aarch64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-x86_64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-x86_64-jobtemplate.yaml
new file mode 100644
index 00000000..2bdcc0d8
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-x86_64-jobtemplate.yaml
@@ -0,0 +1,18 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: amd64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: builder
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ image: fdiotools/builder-ubuntu2204:prod-x86_64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-x86_64.yaml
new file mode 100644
index 00000000..b9ca4d3e
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-prod-x86_64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "builder-ubuntu2204-prod-x86_64"
+ labels: "builder-ubuntu2204-prod-x86_64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml
new file mode 100644
index 00000000..ebf33b5f
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml
@@ -0,0 +1,24 @@
+---
+Job:
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ args:
+ - -cp
+ - /local/slave.jar
+ - hudson.remoting.jnlp.Main
+ - -headless
+ - -url
+ - https://jenkins.fd.io/sandbox
+ - -workDir
+ - /w/
+ - '%WORKER_SECRET%'
+ - '%WORKER_NAME%'
+ image: fdiotools/builder-ubuntu2204:sandbox-aarch64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Artifacts:
+ - GetterSource: https://jenkins.fd.io/sandbox/jnlpJars/slave.jar
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-aarch64.yaml
new file mode 100644
index 00000000..4eb5d7d3
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-aarch64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "builder-ubuntu2204-sandbox-aarch64"
+ labels: "builder-ubuntu2204-sandbox-aarch64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml
new file mode 100644
index 00000000..fe2b9161
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml
@@ -0,0 +1,31 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: amd64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: builder
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ args:
+ - -cp
+ - /local/slave.jar
+ - hudson.remoting.jnlp.Main
+ - -headless
+ - -url
+ - https://jenkins.fd.io/sandbox
+ - -workDir
+ - /w/
+ - '%WORKER_SECRET%'
+ - '%WORKER_NAME%'
+ image: fdiotools/builder-ubuntu2204:sandbox-x86_64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Artifacts:
+ - GetterSource: https://jenkins.fd.io/sandbox/jnlpJars/slave.jar
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-x86_64.yaml
new file mode 100644
index 00000000..5a225e2b
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/builder-ubuntu2204-sandbox-x86_64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "builder-ubuntu2204-sandbox-x86_64"
+ labels: "builder-ubuntu2204-sandbox-x86_64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-prod-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-prod-aarch64.yaml
deleted file mode 100644
index 3d9a5519..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-prod-aarch64.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "arm64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "csitarm"
- image: "fdiotools/builder-ubuntu2004:prod-aarch64"
- labels: "csit-builder-ubuntu2004-prod-aarch64"
- memory: 14000
- prefix: "csit-builder-ubuntu2004-prod-aarch64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-prod-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-prod-x86_64.yaml
deleted file mode 100644
index 1a903900..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-prod-x86_64.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "csit"
- cpu: 15000
- image: "fdiotools/builder-ubuntu2004:prod-x86_64"
- labels: "csit-builder-ubuntu2004-prod-x86_64"
- memory: 16000
- prefix: "csit-builder-ubuntu2004-prod-x86_64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-sandbox-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-sandbox-aarch64.yaml
deleted file mode 100644
index ce79143e..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-sandbox-aarch64.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "arm64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "csitarm"
- image: "fdiotools/builder-ubuntu2004:sandbox-aarch64"
- labels: "csit-builder-ubuntu2004-sandbox-aarch64"
- memory: 14000
- prefix: "csit-builder-ubuntu2004-sandbox-aarch64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-sandbox-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-sandbox-x86_64.yaml
deleted file mode 100644
index 1f0249b8..00000000
--- a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2004-sandbox-x86_64.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
----
-templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "amd64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "csit"
- cpu: 15000
- image: "fdiotools/builder-ubuntu2004:sandbox-x86_64"
- labels: "csit-builder-ubuntu2004-sandbox-x86_64"
- memory: 16000
- prefix: "csit-builder-ubuntu2004-sandbox-x86_64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-aarch64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-aarch64-jobtemplate.yaml
new file mode 100644
index 00000000..2118e50b
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-aarch64-jobtemplate.yaml
@@ -0,0 +1,18 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: arm64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: csitarm
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ image: fdiotools/builder-ubuntu2204:prod-aarch64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-aarch64.yaml
new file mode 100644
index 00000000..9c9324ec
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-aarch64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "csit-builder-ubuntu2204-prod-aarch64"
+ labels: "csit-builder-ubuntu2204-prod-aarch64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-x86_64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-x86_64-jobtemplate.yaml
new file mode 100644
index 00000000..3ac4b888
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-x86_64-jobtemplate.yaml
@@ -0,0 +1,18 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: amd64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: csit
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ image: fdiotools/builder-ubuntu2204:prod-x86_64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-x86_64.yaml
new file mode 100644
index 00000000..492353a5
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-prod-x86_64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "csit-builder-ubuntu2204-prod-x86_64"
+ labels: "csit-builder-ubuntu2204-prod-x86_64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml
new file mode 100644
index 00000000..ee0f2549
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml
@@ -0,0 +1,31 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: arm64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: csitarm
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ args:
+ - -cp
+ - /local/slave.jar
+ - hudson.remoting.jnlp.Main
+ - -headless
+ - -url
+ - https://jenkins.fd.io/sandbox
+ - -workDir
+ - /w/
+ - '%WORKER_SECRET%'
+ - '%WORKER_NAME%'
+ image: fdiotools/builder-ubuntu2204:sandbox-aarch64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Artifacts:
+ - GetterSource: https://jenkins.fd.io/sandbox/jnlpJars/slave.jar
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-aarch64.yaml
new file mode 100644
index 00000000..03e45879
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-aarch64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "csit-builder-ubuntu2204-sandbox-aarch64"
+ labels: "csit-builder-ubuntu2204-sandbox-aarch64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml
new file mode 100644
index 00000000..a803e9fd
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml
@@ -0,0 +1,31 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: amd64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: csit
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ args:
+ - -cp
+ - /local/slave.jar
+ - hudson.remoting.jnlp.Main
+ - -headless
+ - -url
+ - https://jenkins.fd.io/sandbox
+ - -workDir
+ - /w/
+ - '%WORKER_SECRET%'
+ - '%WORKER_NAME%'
+ image: fdiotools/builder-ubuntu2204:sandbox-x86_64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Artifacts:
+ - GetterSource: https://jenkins.fd.io/sandbox/jnlpJars/slave.jar
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-x86_64.yaml
new file mode 100644
index 00000000..2390750c
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/csit-builder-ubuntu2204-sandbox-x86_64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "csit-builder-ubuntu2204-sandbox-x86_64"
+ labels: "csit-builder-ubuntu2204-sandbox-x86_64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/defaults.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/defaults.yaml
index 33a3349d..e868998b 100644
--- a/jenkins-config/clouds/nomad/FDIONOMAD/defaults.yaml
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/defaults.yaml
@@ -1,31 +1,7 @@
---
templates:
- - constraints:
- - ltarget: "^${attr.cpu.arch}"
- operand: "="
- rtarget: "arm64"
- - ltarget: "^${node.class}"
- operand: "="
- rtarget: "builder"
- datacenters: "yul1"
- cpu: 6000
- memory: 10000
- disk: 3000
- priority: 50
- idleTerminationInMinutes: 10
+ - idleTerminationInMinutes: 10
numExecutors: 1
- prefixCmd: ""
- forcePull: true
- hostVolumes: ""
- privileged: true
- reusable: false
- useRawExec: false
- network: "bridge"
- region: "global"
remoteFs: "/w"
- username: "fdionomad"
- password: "hidden"
- capAdd: ""
- capDrop: ""
- securityOpt: ""
- extraHosts: ""
+ reusable: false
+ jobTemplate: |-
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-prod-x86_64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-prod-x86_64-jobtemplate.yaml
new file mode 100644
index 00000000..817f0298
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-prod-x86_64-jobtemplate.yaml
@@ -0,0 +1,23 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: amd64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: hst
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ image: fdiotools/builder-ubuntu2204:prod-x86_64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Resources:
+ # Limit scheduling of only 1 job per server by specifying max cpushares and more than half memory
+ CPU: 262144
+ MemoryMB: 128000
+
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-prod-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-prod-x86_64.yaml
new file mode 100644
index 00000000..6fcb5554
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-prod-x86_64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "hst-ubuntu2204-prod-x86_64"
+ labels: "hst-ubuntu2204-prod-x86_64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-sandbox-x86_64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-sandbox-x86_64-jobtemplate.yaml
new file mode 100644
index 00000000..b74f5f54
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-sandbox-x86_64-jobtemplate.yaml
@@ -0,0 +1,35 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: amd64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: hst
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ args:
+ - -cp
+ - /local/slave.jar
+ - hudson.remoting.jnlp.Main
+ - -headless
+ - -url
+ - https://jenkins.fd.io/sandbox
+ - -workDir
+ - /w/
+ - '%WORKER_SECRET%'
+ - '%WORKER_NAME%'
+ image: fdiotools/builder-ubuntu2204:sandbox-x86_64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Artifacts:
+ - GetterSource: https://jenkins.fd.io/sandbox/jnlpJars/slave.jar
+ Resources:
+ # Limit scheduling of only 1 job per server by specifying max cpushares and more than half memory
+ CPU: 262144
+ MemoryMB: 128000
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-sandbox-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-sandbox-x86_64.yaml
new file mode 100644
index 00000000..68554a5d
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/hst-ubuntu2204-sandbox-x86_64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "hst-ubuntu2204-sandbox-x86_64"
+ labels: "hst-ubuntu2204-sandbox-x86_64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/jobtemplate-default.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/jobtemplate-default.yaml
new file mode 100644
index 00000000..5355c611
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/jobtemplate-default.yaml
@@ -0,0 +1,66 @@
+---
+Job:
+ ID: '%WORKER_NAME%'
+ Name: '%WORKER_NAME%'
+ Region: global
+ Type: batch
+ Priority: 50
+ Datacenters:
+ - yul1
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: arm64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: builder
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Count: 1
+ Tasks:
+ - Name: jenkins-worker
+ Driver: docker
+ Config:
+ args:
+ - -cp
+ - /local/slave.jar
+ - hudson.remoting.jnlp.Main
+ - -headless
+ - -url
+ - https://jenkins.fd.io
+ - -workDir
+ - /w/
+ - '%WORKER_SECRET%'
+ - '%WORKER_NAME%'
+ privileged: true
+ image: fdiotools/builder-ubuntu2204:prod-aarch64
+ auth:
+ - password: hidden
+ username: fdionomad
+ network_mode: bridge
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ command: java
+ force_pull: true
+ Resources:
+ CPU: 24000
+ MemoryMB: 24000
+ Networks:
+ - MBits: 1
+ ReservedPorts: []
+ Devices: []
+ LogConfig:
+ MaxFiles: 1
+ MaxFileSizeMB: 10
+ Artifacts:
+ - GetterSource: https://jenkins.fd.io/jnlpJars/slave.jar
+ RestartPolicy:
+ Interval: 10000000000
+ Mode: fail
+ Delay: 1000000000
+ Attempts: 0
+ EphemeralDisk:
+ SizeMB: 3000
+ Migrate: false
+ Sticky: false
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-aarch64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-aarch64-jobtemplate.yaml
new file mode 100644
index 00000000..ffda828d
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-aarch64-jobtemplate.yaml
@@ -0,0 +1,14 @@
+---
+Job:
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ image: fdiotools/builder-ubuntu2204:prod-aarch64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Resources:
+ CPU: 8000
+ MemoryMB: 8192
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-aarch64.yaml
new file mode 100644
index 00000000..c145f630
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-aarch64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "m-builder-ubuntu2204-prod-aarch64"
+ labels: "m-builder-ubuntu2204-prod-aarch64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-x86_64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-x86_64-jobtemplate.yaml
new file mode 100644
index 00000000..d0ade86c
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-x86_64-jobtemplate.yaml
@@ -0,0 +1,21 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: amd64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: builder
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ image: fdiotools/builder-ubuntu2204:prod-x86_64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Resources:
+ CPU: 8000
+ MemoryMB: 8192
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-x86_64.yaml
new file mode 100644
index 00000000..474b8818
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-prod-x86_64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "m-builder-ubuntu2204-prod-x86_64"
+ labels: "m-builder-ubuntu2204-prod-x86_64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml
new file mode 100644
index 00000000..1baef1d7
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml
@@ -0,0 +1,27 @@
+---
+Job:
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ args:
+ - -cp
+ - /local/slave.jar
+ - hudson.remoting.jnlp.Main
+ - -headless
+ - -url
+ - https://jenkins.fd.io/sandbox
+ - -workDir
+ - /w/
+ - '%WORKER_SECRET%'
+ - '%WORKER_NAME%'
+ image: fdiotools/builder-ubuntu2204:sandbox-aarch64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Resources:
+ CPU: 8000
+ MemoryMB: 8192
+ Artifacts:
+ - GetterSource: https://jenkins.fd.io/sandbox/jnlpJars/slave.jar
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-aarch64.yaml
new file mode 100644
index 00000000..b5cba5d9
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-aarch64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "m-builder-ubuntu2204-sandbox-aarch64"
+ labels: "m-builder-ubuntu2204-sandbox-aarch64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml
new file mode 100644
index 00000000..82c33cd9
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml
@@ -0,0 +1,34 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: amd64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: builder
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ args:
+ - -cp
+ - /local/slave.jar
+ - hudson.remoting.jnlp.Main
+ - -headless
+ - -url
+ - https://jenkins.fd.io/sandbox
+ - -workDir
+ - /w/
+ - '%WORKER_SECRET%'
+ - '%WORKER_NAME%'
+ image: fdiotools/builder-ubuntu2204:sandbox-x86_64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Resources:
+ CPU: 8000
+ MemoryMB: 8192
+ Artifacts:
+ - GetterSource: https://jenkins.fd.io/sandbox/jnlpJars/slave.jar
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-x86_64.yaml
new file mode 100644
index 00000000..0c6b4239
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/m-builder-ubuntu2204-sandbox-x86_64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "m-builder-ubuntu2204-sandbox-x86_64"
+ labels: "m-builder-ubuntu2204-sandbox-x86_64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/main.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/main.yaml
index a099532b..65434f3c 100644
--- a/jenkins-config/clouds/nomad/FDIONOMAD/main.yaml
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/main.yaml
@@ -2,12 +2,9 @@
jenkins:
clouds:
- nomad:
- jenkinsUrl: "https://jenkins.fd.io/"
name: "FDIONOMAD"
- nomadUrl: "http://10.30.51.30:4646"
- jenkinsTunnel: ""
- prune: false
- nomadACLCredentialsId: ""
+ nomadUrl: "http://10.30.51.23:4646"
+ prune: "false"
workerTimeout: 5
- workerUrl: "https://jenkins.fd.io/jnlpJars/slave.jar"
+ tlsEnabled: false
templates:
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-aarch64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-aarch64-jobtemplate.yaml
new file mode 100644
index 00000000..0565f10c
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-aarch64-jobtemplate.yaml
@@ -0,0 +1,14 @@
+---
+Job:
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ image: fdiotools/builder-ubuntu2204:prod-aarch64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Resources:
+ CPU: 4000
+ MemoryMB: 4096
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-aarch64.yaml
new file mode 100644
index 00000000..2bbf4f62
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-aarch64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "s-builder-ubuntu2204-prod-aarch64"
+ labels: "s-builder-ubuntu2204-prod-aarch64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-x86_64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-x86_64-jobtemplate.yaml
new file mode 100644
index 00000000..5b196457
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-x86_64-jobtemplate.yaml
@@ -0,0 +1,21 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: amd64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: builder
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ image: fdiotools/builder-ubuntu2204:prod-x86_64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Resources:
+ CPU: 4000
+ MemoryMB: 4096
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-x86_64.yaml
new file mode 100644
index 00000000..74c40ec6
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-prod-x86_64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "s-builder-ubuntu2204-prod-x86_64"
+ labels: "s-builder-ubuntu2204-prod-x86_64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml
new file mode 100644
index 00000000..0bff740d
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-aarch64-jobtemplate.yaml
@@ -0,0 +1,27 @@
+---
+Job:
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ args:
+ - -cp
+ - /local/slave.jar
+ - hudson.remoting.jnlp.Main
+ - -headless
+ - -url
+ - https://jenkins.fd.io/sandbox
+ - -workDir
+ - /w/
+ - '%WORKER_SECRET%'
+ - '%WORKER_NAME%'
+ image: fdiotools/builder-ubuntu2204:sandbox-aarch64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Resources:
+ CPU: 4000
+ MemoryMB: 4096
+ Artifacts:
+ - GetterSource: https://jenkins.fd.io/sandbox/jnlpJars/slave.jar
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-aarch64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-aarch64.yaml
new file mode 100644
index 00000000..624b14d1
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-aarch64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "s-builder-ubuntu2204-sandbox-aarch64"
+ labels: "s-builder-ubuntu2204-sandbox-aarch64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml
new file mode 100644
index 00000000..e189d487
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-x86_64-jobtemplate.yaml
@@ -0,0 +1,34 @@
+---
+Job:
+ Constraints:
+ - LTarget: ^${attr.cpu.arch}
+ Operand: =
+ RTarget: amd64
+ - LTarget: ^${node.class}
+ Operand: =
+ RTarget: builder
+ TaskGroups:
+ - Name: jenkins-worker-taskgroup
+ Tasks:
+ - Name: jenkins-worker
+ Config:
+ args:
+ - -cp
+ - /local/slave.jar
+ - hudson.remoting.jnlp.Main
+ - -headless
+ - -url
+ - https://jenkins.fd.io/sandbox
+ - -workDir
+ - /w/
+ - '%WORKER_SECRET%'
+ - '%WORKER_NAME%'
+ image: fdiotools/builder-ubuntu2204:sandbox-x86_64
+ volumes:
+ - /tmp/ccache.ubuntu2204:/scratch/ccache
+ - /scratch/nomad:/scratch/nomad:ro
+ Resources:
+ CPU: 4000
+ MemoryMB: 4096
+ Artifacts:
+ - GetterSource: https://jenkins.fd.io/sandbox/jnlpJars/slave.jar
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-x86_64.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-x86_64.yaml
new file mode 100644
index 00000000..278a5051
--- /dev/null
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/s-builder-ubuntu2204-sandbox-x86_64.yaml
@@ -0,0 +1,4 @@
+---
+templates:
+ - prefix: "s-builder-ubuntu2204-sandbox-x86_64"
+ labels: "s-builder-ubuntu2204-sandbox-x86_64"
diff --git a/jenkins-config/clouds/nomad/FDIONOMAD/sandbox.yaml b/jenkins-config/clouds/nomad/FDIONOMAD/sandbox.yaml
index 61bafb9c..65434f3c 100644
--- a/jenkins-config/clouds/nomad/FDIONOMAD/sandbox.yaml
+++ b/jenkins-config/clouds/nomad/FDIONOMAD/sandbox.yaml
@@ -2,12 +2,9 @@
jenkins:
clouds:
- nomad:
- jenkinsUrl: "https://jenkins.fd.io/sandbox"
name: "FDIONOMAD"
- nomadUrl: "http://10.30.51.30:4646"
- jenkinsTunnel: ""
- prune: false
- nomadACLCredentialsId: ""
+ nomadUrl: "http://10.30.51.23:4646"
+ prune: "false"
workerTimeout: 5
- workerUrl: "https://jenkins.fd.io/sandbox/jnlpJars/slave.jar"
+ tlsEnabled: false
templates:
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-builder-2c-2g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-builder-2c-2g.cfg
index cf844cd2..af5fa37b 100644
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-builder-2c-2g.cfg
+++ b/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-builder-2c-2g.cfg
@@ -1,4 +1,3 @@
-IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20200115-151843.366
+IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20230415-024622.013
LABELS=centos7-builder-2c-2g
HARDWARE_ID=v3-standard-2
-VOLUME_SIZE=40
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-builder-4c-4g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-builder-4c-4g.cfg
index 0b62d1ab..54928f44 100644
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-builder-4c-4g.cfg
+++ b/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-builder-4c-4g.cfg
@@ -1,4 +1,3 @@
-IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20200115-151843.366
+IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20230415-024622.013
LABELS=centos7-builder-4c-4g
HARDWARE_ID=v3-standard-4
-VOLUME_SIZE=40
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-builder-8c-8g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-builder-8c-8g.cfg
deleted file mode 100644
index 3d0de1e7..00000000
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-builder-8c-8g.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20200115-151843.366
-LABELS=centos7-builder-8c-8g
-HARDWARE_ID=v3-standard-8
-VOLUME_SIZE=40
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-docker-2c-2g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-docker-2c-2g.cfg
index e2362881..5ca4c6c5 100644
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-docker-2c-2g.cfg
+++ b/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-docker-2c-2g.cfg
@@ -1,4 +1,3 @@
-IMAGE_NAME=ZZCI - CentOS 7 - docker - x86_64 - 20200405-094320.230
+IMAGE_NAME=ZZCI - CentOS 7 - docker - x86_64 - 20230505-094222.041
LABELS=centos7-docker-2c-2g
HARDWARE_ID=v3-standard-2
-VOLUME_SIZE=20
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-docker-4c-4g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-docker-4c-4g.cfg
index caae37ae..6d6e88e3 100644
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-docker-4c-4g.cfg
+++ b/jenkins-config/clouds/openstack/FDIOVEX-CI/centos7-docker-4c-4g.cfg
@@ -1,4 +1,3 @@
-IMAGE_NAME=ZZCI - CentOS 7 - docker - x86_64 - 20200405-094320.230
+IMAGE_NAME=ZZCI - CentOS 7 - docker - x86_64 - 20230505-094222.041
LABELS=centos7-docker-4c-4g
HARDWARE_ID=v3-standard-4
-VOLUME_SIZE=20
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/centos8-builder-2c-2g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/centos8-builder-2c-2g.cfg
new file mode 100644
index 00000000..87b4ea90
--- /dev/null
+++ b/jenkins-config/clouds/openstack/FDIOVEX-CI/centos8-builder-2c-2g.cfg
@@ -0,0 +1,3 @@
+IMAGE_NAME=ZZCI - CentOS Stream 8 - builder - x86_64 - 20230501-160107.084
+LABELS=centos8-builder-2c-2g
+HARDWARE_ID=v3-standard-2
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/cloud.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/cloud.cfg
index 80e19418..621190e9 100644
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/cloud.cfg
+++ b/jenkins-config/clouds/openstack/FDIOVEX-CI/cloud.cfg
@@ -6,8 +6,7 @@ CLOUD_ZONE=ca-ymq-1
OS_CLOUD=vexci
# Default Template Configuration
-IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20200115-151843.366
-VOLUME_SIZE=20
+IMAGE_NAME=ZZCI - CentOS 7 - builder - x86_64 - 20230415-024622.013
HARDWARE_ID=v3-standard-2
NETWORK_ID=bcb9a62c-5a82-4293-a8c6-d73e8c2dbd03
USER_DATA_ID=jenkins-init-system
@@ -15,7 +14,6 @@ INSTANCE_CAP=20
SANDBOX_CAP=5
FLOATING_IP_POOL=
SECURITY_GROUPS=default
-AVAILABILITY_ZONE=ca-ymq-2
STARTUP_TIMEOUT=600000
KEY_PAIR_NAME=jenkins
NUM_EXECUTORS=1
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-2c-2g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-2c-2g.cfg
deleted file mode 100644
index 9677c872..00000000
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-2c-2g.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-IMAGE_NAME=ZZCI - Ubuntu 16.04 - builder - x86_64 - 20200213-210225.109
-LABELS=ubuntu1604-builder-2c-2g
-HARDWARE_ID=v3-standard-2
-VOLUME_SIZE=40
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-4c-4g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-4c-4g.cfg
deleted file mode 100644
index 35e7ad98..00000000
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-4c-4g.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-IMAGE_NAME=ZZCI - Ubuntu 16.04 - builder - x86_64 - 20200213-210225.109
-LABELS=ubuntu1604-builder-4c-4g
-HARDWARE_ID=v3-standard-4
-VOLUME_SIZE=40
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-8c-32g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-8c-32g.cfg
deleted file mode 100644
index 0ac5a9ab..00000000
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-8c-32g.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-IMAGE_NAME=ZZCI - Ubuntu 16.04 - builder - x86_64 - 20200213-210225.109
-LABELS=ubuntu1604-builder-8c-32g
-HARDWARE_ID=v3-standard-8
-VOLUME_SIZE=20
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-8c-8g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-8c-8g.cfg
deleted file mode 100644
index ab77b0fa..00000000
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-builder-8c-8g.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-IMAGE_NAME=ZZCI - Ubuntu 16.04 - builder - x86_64 - 20200213-210225.109
-LABELS=ubuntu1604-builder-8c-8g
-HARDWARE_ID=v3-standard-8
-VOLUME_SIZE=40
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-docker-4c-4g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-docker-4c-4g.cfg
deleted file mode 100644
index 0eea568e..00000000
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1604-docker-4c-4g.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-IMAGE_NAME=ZZCI - Ubuntu 16.04 - docker - x86_64 - 20200510-225624.603
-LABELS=ubuntu1604-docker-4c-4g
-HARDWARE_ID=v3-standard-4
-VOLUME_SIZE=20
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-builder-2c-2g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-builder-2c-2g.cfg
deleted file mode 100644
index f608ab4c..00000000
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-builder-2c-2g.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-IMAGE_NAME=ZZCI - Ubuntu 18.04 - builder - x86_64 - 20190410-150820.173
-LABELS=ubuntu1804-builder-2c-2g.cfg
-HARDWARE_ID=v3-standard-2
-VOLUME_SIZE=40
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-builder-4c-4g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-builder-4c-4g.cfg
deleted file mode 100644
index b16259d8..00000000
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-builder-4c-4g.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-IMAGE_NAME=ZZCI - Ubuntu 18.04 - builder - x86_64 - 20190410-150820.173
-LABELS=ubuntu1804-builder-4c-4g
-HARDWARE_ID=v3-standard-4
-VOLUME_SIZE=40
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-builder-8c-8g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-builder-8c-8g.cfg
deleted file mode 100644
index 12ed334a..00000000
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-builder-8c-8g.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-IMAGE_NAME=ZZCI - Ubuntu 18.04 - builder - x86_64 - 20190410-150820.173
-LABELS=ubuntu1804-builder-8c-8g.cfg
-HARDWARE_ID=v3-standard-8
-VOLUME_SIZE=40
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-docker-4c-4g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-docker-4c-4g.cfg
deleted file mode 100644
index eebda9e4..00000000
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804-docker-4c-4g.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-IMAGE_NAME=ZZCI - Ubuntu 18.04 - docker - x86_64 - 20200107-191807.978
-LABELS=ubuntu1804-docker-4c-4g
-HARDWARE_ID=v3-standard-4
-VOLUME_SIZE=20
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804arm-docker-4c-4g b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804arm-docker-4c-4g
deleted file mode 100644
index b2cb3656..00000000
--- a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu1804arm-docker-4c-4g
+++ /dev/null
@@ -1,5 +0,0 @@
-IMAGE_NAME=ZZCI - Ubuntu 18.04 - docker - arm64 - 20191209-185146.016
-LABELS=ubuntu1804arm-docker-4c-4g
-HARDWARE_ID=v3-standard-4
-VOLUME_SIZE=20
-
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu2004-builder-4c-4g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu2004-builder-4c-4g.cfg
new file mode 100644
index 00000000..b7f73cdf
--- /dev/null
+++ b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu2004-builder-4c-4g.cfg
@@ -0,0 +1,3 @@
+IMAGE_NAME=ZZCI - Ubuntu 20.04 - builder - x86_64 - 20220817-125321.417
+LABELS=ubuntu2004-builder-4c-4g
+HARDWARE_ID=v3-standard-4
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu2004-builder-arm64-4c-4g b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu2004-builder-arm64-4c-4g
new file mode 100644
index 00000000..3d828a3b
--- /dev/null
+++ b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu2004-builder-arm64-4c-4g
@@ -0,0 +1,3 @@
+IMAGE_NAME=ZZCI - Ubuntu 20.04 - builder - arm64 - 20211120-085353.738
+LABELS=ubuntu2004-builder-arm64-4c-4g
+HARDWARE_ID=v3-standard-4
diff --git a/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu2004-docker-4c-4g.cfg b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu2004-docker-4c-4g.cfg
new file mode 100644
index 00000000..e37ea1ee
--- /dev/null
+++ b/jenkins-config/clouds/openstack/FDIOVEX-CI/ubuntu2004-docker-4c-4g.cfg
@@ -0,0 +1,3 @@
+IMAGE_NAME=ZZCI - Ubuntu 20.04 - docker - x86_64 - 20230629-181907.194
+LABELS=ubuntu2004-docker-4c-4g
+HARDWARE_ID=v3-standard-4
diff --git a/jenkins-config/global-vars-production.sh b/jenkins-config/global-vars-production.sh
index 58fdfc33..3d8b1f39 100644
--- a/jenkins-config/global-vars-production.sh
+++ b/jenkins-config/global-vars-production.sh
@@ -1,13 +1,12 @@
-DOCKER_REGISTRY=https://jenkins.fd.io/sandbox/
-GERRIT_URL=git://162.253.54.31/mirror/$PROJECT
-GIT_BASE=git://162.253.54.31/mirror/$PROJECT
-GIT_URL=git://162.253.54.31/mirror
+DOCKER_REGISTRY=https://jenkins.fd.io
+GERRIT_URL=git://10.30.48.3/mirror/$PROJECT
+GIT_BASE=git://10.30.48.3/mirror/$PROJECT
+GIT_URL=git://10.30.48.3/mirror
JENKINS_HOSTNAME=vex-yul-rot-jenkins-1
-LOGS_SERVER=https://logs.fd.io
-NEXUS_URL=https://nexus.fd.io
-NEXUSPROXY=https://nexus.fd.io
PACKAGECLOUDPROXY=https://packagecloud.io/fdio
PCIO_CO=fdio
+RELEASE_EMAIL=collab-it+fdio-release@linuxfoundation.org
+RELEASE_USERNAME=fdio-release
S3_BUCKET=fdio-logs-s3-cloudfront-index
CDN_URL=s3-logs.fd.io
SIGUL_KEY=fdio-release-2018
diff --git a/jenkins-config/global-vars-sandbox.sh b/jenkins-config/global-vars-sandbox.sh
index 880e2862..6c2057c6 100644
--- a/jenkins-config/global-vars-sandbox.sh
+++ b/jenkins-config/global-vars-sandbox.sh
@@ -1,11 +1,8 @@
DOCKER_REGISTRY=https://jenkins.fd.io/sandbox/
-GERRIT_URL=git://162.253.54.31/mirror/$PROJECT
-GIT_BASE=git://162.253.54.31/mirror/$PROJECT
-GIT_URL=git://162.253.54.31/mirror
+GERRIT_URL=git://10.30.48.3/mirror/$PROJECT
+GIT_BASE=git://10.30.48.3/mirror/$PROJECT
+GIT_URL=git://10.30.48.3/mirror
JENKINS_HOSTNAME=vex-yul-rot-jenkins-2
-LOGS_SERVER=https://logs.fd.io
-NEXUS_URL=https://nexus.fd.io
-NEXUSPROXY=https://nexus.fd.io
PACKAGECLOUDPROXY=https://packagecloud.io/fdio
PCIO_CO=fdio
S3_BUCKET=fdio-logs-s3-cloudfront-index
diff --git a/jenkins-config/managed-config-files/custom/.packagecloud/config-params.yaml b/jenkins-config/managed-config-files/custom/.packagecloud/config-params.yaml
new file mode 100644
index 00000000..b4f21a76
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/.packagecloud/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "packagecloud"
+comment: "packagecloud" \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/.packagecloud/content b/jenkins-config/managed-config-files/custom/.packagecloud/content
new file mode 100644
index 00000000..4c0f1008
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/.packagecloud/content
@@ -0,0 +1,4 @@
+{
+ "url":"https://packagecloud.io",
+ "token":"$PACKAGECLOUD_TOKEN"
+} \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/.packagecloud/customizedCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/custom/.packagecloud/customizedCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..ba50257e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/.packagecloud/customizedCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+customizedCredentialMappings.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/.packagecloud/customizedCredentialMappings.yaml b/jenkins-config/managed-config-files/custom/.packagecloud/customizedCredentialMappings.yaml
new file mode 100644
index 00000000..538365ed
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/.packagecloud/customizedCredentialMappings.yaml
@@ -0,0 +1,4 @@
+---
+customizedCredentialMappings:
+ - credentialsId: "packagecloud_token"
+ tokenKey: "PACKAGECLOUD_TOKEN" \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/ansible-cfg/config-params.yaml b/jenkins-config/managed-config-files/custom/ansible-cfg/config-params.yaml
new file mode 100644
index 00000000..f9e66ffc
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/ansible-cfg/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "ansible-cfg"
+comment: "ansible config file"
diff --git a/jenkins-config/managed-config-files/custom/ansible-cfg/content b/jenkins-config/managed-config-files/custom/ansible-cfg/content
new file mode 100644
index 00000000..96c91179
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/ansible-cfg/content
@@ -0,0 +1,2 @@
+[defaults]
+remote_tmp = ~/.ansible/tmp
diff --git a/jenkins-config/managed-config-files/custom/clouds-yaml/config-params.yaml b/jenkins-config/managed-config-files/custom/clouds-yaml/config-params.yaml
new file mode 100644
index 00000000..c7f2a932
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/clouds-yaml/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "clouds-yaml"
+comment: "clouds-yaml"
diff --git a/jenkins-config/managed-config-files/custom/clouds-yaml/content b/jenkins-config/managed-config-files/custom/clouds-yaml/content
new file mode 100644
index 00000000..4c6d9b99
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/clouds-yaml/content
@@ -0,0 +1,10 @@
+clouds:
+ vexci:
+ auth:
+ username: "$VEXCI_CLOUD_CREDENTIAL_USR"
+ project_name: "9130c79d-75b8-466e-8e57-4eccce50e28e"
+ password: "$VEXCI_CLOUD_CREDENTIAL_PSW"
+ auth_url: 'https://auth.vexxhost.net/v3/'
+ user_domain_name: Default
+ project_domain_name: Default
+ region_name: ca-ymq-1
diff --git a/jenkins-config/managed-config-files/custom/clouds-yaml/customizedCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/custom/clouds-yaml/customizedCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..ba50257e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/clouds-yaml/customizedCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+customizedCredentialMappings.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/clouds-yaml/customizedCredentialMappings.yaml b/jenkins-config/managed-config-files/custom/clouds-yaml/customizedCredentialMappings.yaml
new file mode 100644
index 00000000..2dce0704
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/clouds-yaml/customizedCredentialMappings.yaml
@@ -0,0 +1,4 @@
+---
+customizedCredentialMappings:
+ - credentialsId: "vexci_cloud_credential"
+ tokenKey: "VEXCI_CLOUD_CREDENTIAL"
diff --git a/jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/config-params.yaml b/jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/config-params.yaml
new file mode 100644
index 00000000..fc1430ae
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "jenkins-s3-docs-ship"
+comment: "jenkins-s3-docs-ship"
diff --git a/jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/content b/jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/content
new file mode 100644
index 00000000..9ba807e5
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/content
@@ -0,0 +1,4 @@
+[default]
+aws_access_key_id = $JENKINS_S3_DOCS_SHIP_USR
+aws_secret_access_key = $JENKINS_S3_DOCS_SHIP_PSW
+region = us-east-1 \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/customizedCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/customizedCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..ba50257e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/customizedCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+customizedCredentialMappings.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/customizedCredentialMappings.yaml b/jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/customizedCredentialMappings.yaml
new file mode 100644
index 00000000..2e90276c
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jenkins-s3-docs-ship/customizedCredentialMappings.yaml
@@ -0,0 +1,4 @@
+---
+customizedCredentialMappings:
+ - credentialsId: "jenkins-s3-docs-ship"
+ tokenKey: "JENKINS_S3_DOCS_SHIP"
diff --git a/jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/config-params.yaml b/jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/config-params.yaml
new file mode 100644
index 00000000..233e8bc8
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "jenkins-s3-log-ship"
+comment: "jenkins-s3-log-ship"
diff --git a/jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/content b/jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/content
new file mode 100644
index 00000000..77873080
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/content
@@ -0,0 +1,4 @@
+[default]
+aws_access_key_id = $JENKINS_S3_LOG_SHIP_USR
+aws_secret_access_key = $JENKINS_S3_LOG_SHIP_PSW
+region = us-east-1 \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/customizedCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/customizedCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..ba50257e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/customizedCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+customizedCredentialMappings.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/customizedCredentialMappings.yaml b/jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/customizedCredentialMappings.yaml
new file mode 100644
index 00000000..8136b503
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jenkins-s3-log-ship/customizedCredentialMappings.yaml
@@ -0,0 +1,4 @@
+---
+customizedCredentialMappings:
+ - credentialsId: "jenkins-s3-log-ship"
+ tokenKey: "JENKINS_S3_LOG_SHIP"
diff --git a/jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/config-params.yaml b/jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/config-params.yaml
new file mode 100644
index 00000000..b4232355
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "jenkins-s3-vpp-docs-ship"
+comment: "jenkins-s3-vpp-docs-ship"
diff --git a/jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/content b/jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/content
new file mode 100644
index 00000000..2745141f
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/content
@@ -0,0 +1,4 @@
+[default]
+aws_access_key_id = $JENKINS_S3_VPP_DOCS_SHIP_USR
+aws_secret_access_key = $JENKINS_S3_VPP_DOCS_SHIP_PSW
+region = us-east-1
diff --git a/jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/customizedCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/customizedCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..ba50257e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/customizedCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+customizedCredentialMappings.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/customizedCredentialMappings.yaml b/jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/customizedCredentialMappings.yaml
new file mode 100644
index 00000000..f370af0e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jenkins-s3-vpp-docs-ship/customizedCredentialMappings.yaml
@@ -0,0 +1,4 @@
+---
+customizedCredentialMappings:
+ - credentialsId: "jenkins-s3-vpp-docs-ship"
+ tokenKey: "JENKINS_S3_VPP_DOCS_SHIP"
diff --git a/jenkins-config/managed-config-files/custom/jjbini/config-params.yaml b/jenkins-config/managed-config-files/custom/jjbini/config-params.yaml
new file mode 100644
index 00000000..10e6e12e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jjbini/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "jjbini"
+comment: "JJB Config"
diff --git a/jenkins-config/managed-config-files/custom/jjbini/content b/jenkins-config/managed-config-files/custom/jjbini/content
new file mode 100644
index 00000000..5fc4572b
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jjbini/content
@@ -0,0 +1,23 @@
+[job_builder]
+ignore_cache=True
+keep_descriptions=False
+include_path=.:scripts:~/git/
+recursive=True
+
+[jenkins]
+user=$JOBBUILDER_PROD_USR
+password=$JOBBUILDER_PROD_PSW
+url=https://jenkins.fd.io
+query_plugins_info=True
+
+[production]
+user=$JOBBUILDER_PROD_USR
+password=$JOBBUILDER_PROD_PSW
+url=https://jenkins.fd.io
+query_plugins_info=True
+
+[sandbox]
+user=$JOBBUILDER_SANDBOX_USR
+password=$JOBBUILDER_SANDBOX_PSW
+url=https://jenkins.fd.io/sandbox
+query_plugins_info=True
diff --git a/jenkins-config/managed-config-files/custom/jjbini/customizedCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/custom/jjbini/customizedCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..ba50257e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jjbini/customizedCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+customizedCredentialMappings.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/jjbini/customizedCredentialMappings.yaml b/jenkins-config/managed-config-files/custom/jjbini/customizedCredentialMappings.yaml
new file mode 100644
index 00000000..cb9cdaf2
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/jjbini/customizedCredentialMappings.yaml
@@ -0,0 +1,6 @@
+---
+customizedCredentialMappings:
+ - credentialsId: "jobbuilder-prod"
+ tokenKey: "JOBBUILDER_PROD"
+ - credentialsId: "jobbuilder-sandbox"
+ tokenKey: "JOBBUILDER_SANDBOX"
diff --git a/jenkins-config/managed-config-files/custom/lftoolsini/config-params.yaml b/jenkins-config/managed-config-files/custom/lftoolsini/config-params.yaml
new file mode 100644
index 00000000..739926bf
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/lftoolsini/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "lftoolsini"
+comment: "lftoolsini"
diff --git a/jenkins-config/managed-config-files/custom/lftoolsini/content b/jenkins-config/managed-config-files/custom/lftoolsini/content
new file mode 100644
index 00000000..b06ad229
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/lftoolsini/content
@@ -0,0 +1,3 @@
+[nexus.opendaylight.org]
+username=$JENKINS_RELEASE_USR
+password=$JENKINS_RELEASE_PSW \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/lftoolsini/customizedCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/custom/lftoolsini/customizedCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..ba50257e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/lftoolsini/customizedCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+customizedCredentialMappings.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/lftoolsini/customizedCredentialMappings.yaml b/jenkins-config/managed-config-files/custom/lftoolsini/customizedCredentialMappings.yaml
new file mode 100644
index 00000000..dccc1078
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/lftoolsini/customizedCredentialMappings.yaml
@@ -0,0 +1,4 @@
+---
+customizedCredentialMappings:
+ - credentialsId: "jenkins-release"
+ tokenKey: "JENKINS_RELEASE"
diff --git a/jenkins-config/managed-config-files/custom/npmrc/config-params.yaml b/jenkins-config/managed-config-files/custom/npmrc/config-params.yaml
new file mode 100644
index 00000000..b0f66d19
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/npmrc/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "npmrc"
+comment: "npmrc"
diff --git a/jenkins-config/managed-config-files/custom/npmrc/content b/jenkins-config/managed-config-files/custom/npmrc/content
new file mode 100644
index 00000000..8b137891
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/npmrc/content
@@ -0,0 +1 @@
+
diff --git a/jenkins-config/managed-config-files/custom/packagecloud-account/config-params.yaml b/jenkins-config/managed-config-files/custom/packagecloud-account/config-params.yaml
new file mode 100644
index 00000000..26a1b5ab
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packagecloud-account/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "packagecloud-account"
+comment: "packagecloud-account"
diff --git a/jenkins-config/managed-config-files/custom/packagecloud-account/content b/jenkins-config/managed-config-files/custom/packagecloud-account/content
new file mode 100644
index 00000000..eacfea68
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packagecloud-account/content
@@ -0,0 +1 @@
+fdio
diff --git a/jenkins-config/managed-config-files/custom/packagecloud/config-params.yaml b/jenkins-config/managed-config-files/custom/packagecloud/config-params.yaml
new file mode 100644
index 00000000..b6eada49
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packagecloud/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "packagecloud"
+comment: "packagecloud"
diff --git a/jenkins-config/managed-config-files/custom/packagecloud/content b/jenkins-config/managed-config-files/custom/packagecloud/content
new file mode 100644
index 00000000..4c0f1008
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packagecloud/content
@@ -0,0 +1,4 @@
+{
+ "url":"https://packagecloud.io",
+ "token":"$PACKAGECLOUD_TOKEN"
+} \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/packagecloud/customizedCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/custom/packagecloud/customizedCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..ba50257e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packagecloud/customizedCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+customizedCredentialMappings.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/packagecloud/customizedCredentialMappings.yaml b/jenkins-config/managed-config-files/custom/packagecloud/customizedCredentialMappings.yaml
new file mode 100644
index 00000000..034ea76f
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packagecloud/customizedCredentialMappings.yaml
@@ -0,0 +1,4 @@
+---
+customizedCredentialMappings:
+ - credentialsId: "packagecloud_token"
+ tokenKey: "PACKAGECLOUD_TOKEN"
diff --git a/jenkins-config/managed-config-files/custom/packagecloud_api/config-params.yaml b/jenkins-config/managed-config-files/custom/packagecloud_api/config-params.yaml
new file mode 100644
index 00000000..173d547c
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packagecloud_api/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "packagecloud_api"
+comment: "packagecloud_api"
diff --git a/jenkins-config/managed-config-files/custom/packagecloud_api/content b/jenkins-config/managed-config-files/custom/packagecloud_api/content
new file mode 100644
index 00000000..e6a4d1fd
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packagecloud_api/content
@@ -0,0 +1,3 @@
+machine packagecloud.io
+login $PACKAGECLOUD_API_LOGIN
+password \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/packagecloud_api/customizedCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/custom/packagecloud_api/customizedCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..ba50257e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packagecloud_api/customizedCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+customizedCredentialMappings.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/packagecloud_api/customizedCredentialMappings.yaml b/jenkins-config/managed-config-files/custom/packagecloud_api/customizedCredentialMappings.yaml
new file mode 100644
index 00000000..dfe63442
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packagecloud_api/customizedCredentialMappings.yaml
@@ -0,0 +1,4 @@
+---
+customizedCredentialMappings:
+ - credentialsId: "packagecloud_api_login"
+ tokenKey: "PACKAGECLOUD_API_LOGIN"
diff --git a/jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/config-params.yaml b/jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/config-params.yaml
new file mode 100644
index 00000000..c66b9cf6
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "packer-cloud-env-hcl"
+comment: "packer-cloud-env-hcl"
diff --git a/jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/content b/jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/content
new file mode 100644
index 00000000..37b4a633
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/content
@@ -0,0 +1,10 @@
+cloud_auth_url = "https://auth.vexxhost.net/v3/"
+cloud_tenant = "ea2ff219-b01b-4ed7-974b-b241dceef107"
+stack_tenant = "ea2ff219-b01b-4ed7-974b-b241dceef107"
+cloud_user = "$PACKER_CLOUD_USER_USR"
+stack_user = "$PACKER_CLOUD_USER_USR"
+cloud_pass = "$PACKER_CLOUD_USER_PSW"
+stack_pass = "$PACKER_CLOUD_USER_PSW"
+cloud_network = "bcb9a62c-5a82-4293-a8c6-d73e8c2dbd03"
+stack_network = "bcb9a62c-5a82-4293-a8c6-d73e8c2dbd03"
+ssh_proxy_host = ""
diff --git a/jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/customizedCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/customizedCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..ba50257e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/customizedCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+customizedCredentialMappings.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/customizedCredentialMappings.yaml b/jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/customizedCredentialMappings.yaml
new file mode 100644
index 00000000..faebff86
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packer-cloud-env-hcl/customizedCredentialMappings.yaml
@@ -0,0 +1,4 @@
+---
+customizedCredentialMappings:
+ - credentialsId: "packer-cloud-user"
+ tokenKey: "PACKER_CLOUD_USER"
diff --git a/jenkins-config/managed-config-files/custom/packer-cloud-env/config-params.yaml b/jenkins-config/managed-config-files/custom/packer-cloud-env/config-params.yaml
new file mode 100644
index 00000000..c98cd000
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packer-cloud-env/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "packer-cloud-env"
+comment: "packer-cloud-env"
diff --git a/jenkins-config/managed-config-files/custom/packer-cloud-env/content b/jenkins-config/managed-config-files/custom/packer-cloud-env/content
new file mode 100644
index 00000000..d0f08efc
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packer-cloud-env/content
@@ -0,0 +1,12 @@
+{
+ "cloud_auth_url": "https://auth.vexxhost.net/v3/",
+ "cloud_tenant": "ea2ff219-b01b-4ed7-974b-b241dceef107",
+ "stack_tenant": "ea2ff219-b01b-4ed7-974b-b241dceef107",
+ "cloud_user": "$PACKER_CLOUD_USER_USR",
+ "stack_user": "$PACKER_CLOUD_USER_USR",
+ "cloud_pass": "$PACKER_CLOUD_USER_PSW",
+ "stack_pass": "$PACKER_CLOUD_USER_PSW",
+ "cloud_network": "bcb9a62c-5a82-4293-a8c6-d73e8c2dbd03",
+ "stack_network": "bcb9a62c-5a82-4293-a8c6-d73e8c2dbd03",
+ "ssh_proxy_host": ""
+}
diff --git a/jenkins-config/managed-config-files/custom/packer-cloud-env/customizedCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/custom/packer-cloud-env/customizedCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..ba50257e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packer-cloud-env/customizedCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+customizedCredentialMappings.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/packer-cloud-env/customizedCredentialMappings.yaml b/jenkins-config/managed-config-files/custom/packer-cloud-env/customizedCredentialMappings.yaml
new file mode 100644
index 00000000..faebff86
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/packer-cloud-env/customizedCredentialMappings.yaml
@@ -0,0 +1,4 @@
+---
+customizedCredentialMappings:
+ - credentialsId: "packer-cloud-user"
+ tokenKey: "PACKER_CLOUD_USER"
diff --git a/jenkins-config/managed-config-files/custom/pipconf/config-params.yaml b/jenkins-config/managed-config-files/custom/pipconf/config-params.yaml
new file mode 100644
index 00000000..39c71ff3
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/pipconf/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "pipconf"
+comment: "pipconf"
diff --git a/jenkins-config/managed-config-files/custom/pipconf/content b/jenkins-config/managed-config-files/custom/pipconf/content
new file mode 100644
index 00000000..8b137891
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/pipconf/content
@@ -0,0 +1 @@
+
diff --git a/jenkins-config/managed-config-files/custom/signing-pubkey/config-params.yaml b/jenkins-config/managed-config-files/custom/signing-pubkey/config-params.yaml
new file mode 100644
index 00000000..eb1d5fd6
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/signing-pubkey/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "signing-pubkey"
+comment: "signing-pubkey"
diff --git a/jenkins-config/managed-config-files/custom/signing-pubkey/content b/jenkins-config/managed-config-files/custom/signing-pubkey/content
new file mode 100644
index 00000000..de4d9e48
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/signing-pubkey/content
@@ -0,0 +1,36 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+mQENBFt8dQsBCADFqhmIcULbF5oEAYENx+Sdgrdc+IvlQoMzYKFkaWTD0eQzSk8i
+yQxsX9Fyzkjdlxx4EYw7urGFtm/tDlLkSMHKuErmp9iY6ihxnsh/Qmjdrq8tGt+8
+6t+SUwOSv+UwH2taqj+mGwZ1NRq5jBC5HmEdfVazDPMU3kyu04wTQgmfKwNEusYK
+iNivbsL91cW233CESfgdg7IrN5BYeWgoc55CSqjwla35pnXV9J3tqDEgQ90mE3UP
+JW72Fp5NjWP4XDREDbhm3jMiMOWy3Ht8ZIkKPwuz2RRwHX3EXkAaHbR4OIze9T3b
+AA3WlrUevMDN+JGJgyw/WxCYN+P9Oj4McIdPABEBAAG0YEZELmlvIFJlbGVhc2Ug
+S2V5ICgyMDE4KSAoRkQuaW8gUmVsZWFzZSBTaWduaW5nIEtleSAoMjAxOCkpIDxj
+b2xsYWItaXQrZmRpb0BsaW51eGZvdW5kYXRpb24ub3JnPokBOAQTAQIAIgUCW3x1
+CwIbAwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQwFS1uVAdUiNmZAf7BsjE
+CwBAaHChBanmy8lXXbmSi9v2hjtv6zOxhNqo41mwKOT2ZjshrgsH6NreLzx3uzOz
+17mVljyC/s6hJzjxY9TsuXngKQyq2mqoN8ZiUxLJPSNNmMRXTUVWEPhmlEfvJgFi
+T3J271KaZx1WchIYK7+ns+9M9fJAUVIvJpSthsoezr9Da9RHLTJDGVu/oGOPagAb
+3fEP3S0If+Ayl8Rfbph+H3tdEhrOzGdXQWY3v5zD5RxVSTD4EMcSvuXzxK4ZSu24
+rYcjqPM3hfe3QSNv7yTTP5WsSu50/qAB2UZsWkBGfYKIO5LiwUFSORn78RdQWeiI
+ZZqEk6qqVeqPZS2gg7kBDQRbfHULAQgAws+kNyq3Uy60xsvL0yZLAF8ZijLJFr2z
+lfsZS/L3WAKhTTc7s+tgxIXj54RnxR0JaQKhaU1gMceBmKP09GeKZ23MYS2ZPUk4
+oK1AT+hN1JgFLvweOsejACCg4dd6YuuH56QnFI6yWbLkz4nnFbz6rA/ECzGwKPC8
+FCAOxwKNTKjJwio6MsK40ZVo8wiVFJ9lKaA4SW2T9H6uNxglHyS4Hu6kdi15tR22
+qES+jZRhCMJNUYHBUeTPQOGiXoIcgg5KSiQ6eG9hSH59EJ0Bu8+ILuvXRueK4IuO
+razDGCc3uvFAEpRAMLFG2n+g1RZjnpkTLeHw6AOJ9vk+D1xDEmIHtQARAQABiQI+
+BBgBAgAJBQJbfHULAhsuASkJEMBUtblQHVIjwF0gBBkBAgAGBQJbfHULAAoJEN1X
+Q3XS3VIK0QkIALpsVX/5iltjsiIJA1uULS56y/hG/xUepTsqNgPwHRfwTM6jT5kP
+fdLrwKEpAP2Bifbzeibuhw1poAkKuod9meZ38tFqBryMCvIbvDt6wg0GCafZ4YGN
+BjdcKRSwuQ5ADxPM3c4uIKZhhOHPukcsjJIJfIXE+CxXGNJlJsWkaEd+TLG/BfUr
+iUcAe7VMDqxhXHcnr+yUeynMuhnwMRY1f4CH4Bx78Rljns2H0AZieIMCarWLGpUS
+4nRFbGDuydgJiJDlGPd8RX4qXlZra+nC8IDNHlmWpjncxG7bN9EE9ZQybMFHN0ro
+QOBLB00TfeViC21iEukh40beKgwTvUMSYypj3ggAihHF+/9aS6nXyMKAhU6Pb/cL
+XUKgFxh97C01JvcwgW8orG96gU7T3bcyK2YaUx+wkh1cs5GRu8hdo52C0rhnm6m6
+d79zHn+Gzsh5w77lxVT9q8FH81lCORS9EaoGEfIyXS5hV5csgIN75LcpMfsFlUmg
+F6vvrYs6s5FiUzo6M1iOkA+qT+qoM/W+wYlLVLjgl8ZyO3OpaUW7mjZzNN9/1RbR
+74zONqJARXPCkdQNm3PC6ma55bpVyPANUhIHVzROYXWnlYT3IvlGjjPFIUvI6D1V
+qVLac2UsuKfqUB4t2JFrvOnm7zc64IvB1xsr/zhdDMjeqSrrczHQPGte4CQutA==
+=XgQ0
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/jenkins-config/managed-config-files/custom/sigul-config/config-params.yaml b/jenkins-config/managed-config-files/custom/sigul-config/config-params.yaml
new file mode 100644
index 00000000..a85f1525
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/sigul-config/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "sigul-config"
+comment: "sigul-config"
diff --git a/jenkins-config/managed-config-files/custom/sigul-config/content b/jenkins-config/managed-config-files/custom/sigul-config/content
new file mode 100644
index 00000000..fbfdbc9d
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/sigul-config/content
@@ -0,0 +1,14 @@
+[client]
+bridge-hostname: sigul-bridge-yul.linuxfoundation.org
+bridge-port: 44334
+client-cert-nickname: $SIGUL_CONFIG_USR
+server-hostname: vex-yul-wl-sigul-server-1.dr.codeaurora.org
+user-name: $SIGUL_CONFIG_USR
+
+[koji]
+
+[nss]
+nss-dir: /home/jenkins/sigul
+nss-password: $SIGUL_CONFIG_PSW
+nss-min-tls: tls1.2
+nss-max-tls: tls1.2
diff --git a/jenkins-config/managed-config-files/custom/sigul-config/customizedCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/custom/sigul-config/customizedCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..ba50257e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/sigul-config/customizedCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+customizedCredentialMappings.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/sigul-config/customizedCredentialMappings.yaml b/jenkins-config/managed-config-files/custom/sigul-config/customizedCredentialMappings.yaml
new file mode 100644
index 00000000..31d1a6ab
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/sigul-config/customizedCredentialMappings.yaml
@@ -0,0 +1,4 @@
+---
+customizedCredentialMappings:
+ - credentialsId: "sigul-config"
+ tokenKey: "SIGUL_CONFIG"
diff --git a/jenkins-config/managed-config-files/custom/sigul-password/config-params.yaml b/jenkins-config/managed-config-files/custom/sigul-password/config-params.yaml
new file mode 100644
index 00000000..192ef882
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/sigul-password/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "sigul-password"
+comment: "sigul-password"
diff --git a/jenkins-config/managed-config-files/custom/sigul-password/content b/jenkins-config/managed-config-files/custom/sigul-password/content
new file mode 100644
index 00000000..b58b9173
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/sigul-password/content
@@ -0,0 +1 @@
+$SIGUL_PASS
diff --git a/jenkins-config/managed-config-files/custom/sigul-password/customizedCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/custom/sigul-password/customizedCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..ba50257e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/sigul-password/customizedCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+customizedCredentialMappings.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/sigul-password/customizedCredentialMappings.yaml b/jenkins-config/managed-config-files/custom/sigul-password/customizedCredentialMappings.yaml
new file mode 100644
index 00000000..c7b09714
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/sigul-password/customizedCredentialMappings.yaml
@@ -0,0 +1,4 @@
+---
+customizedCredentialMappings:
+ - credentialsId: "sigul-pass"
+ tokenKey: "SIGUL_PASS"
diff --git a/jenkins-config/managed-config-files/custom/sigul-pki/config-params.yaml b/jenkins-config/managed-config-files/custom/sigul-pki/config-params.yaml
new file mode 100644
index 00000000..e8220e98
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/sigul-pki/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "sigul-pki"
+comment: "sigul-pki"
diff --git a/jenkins-config/managed-config-files/custom/sigul-pki/content b/jenkins-config/managed-config-files/custom/sigul-pki/content
new file mode 100644
index 00000000..27ce930f
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/sigul-pki/content
@@ -0,0 +1 @@
+$SIGUL_PKI
diff --git a/jenkins-config/managed-config-files/custom/sigul-pki/customizedCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/custom/sigul-pki/customizedCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..ba50257e
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/sigul-pki/customizedCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+customizedCredentialMappings.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/custom/sigul-pki/customizedCredentialMappings.yaml b/jenkins-config/managed-config-files/custom/sigul-pki/customizedCredentialMappings.yaml
new file mode 100644
index 00000000..88a32435
--- /dev/null
+++ b/jenkins-config/managed-config-files/custom/sigul-pki/customizedCredentialMappings.yaml
@@ -0,0 +1,4 @@
+---
+customizedCredentialMappings:
+ - credentialsId: "sigul-pki"
+ tokenKey: "SIGUL_PKI"
diff --git a/jenkins-config/managed-config-files/globalMavenSettings/global-settings/config-params.yaml b/jenkins-config/managed-config-files/globalMavenSettings/global-settings/config-params.yaml
new file mode 100644
index 00000000..cf855033
--- /dev/null
+++ b/jenkins-config/managed-config-files/globalMavenSettings/global-settings/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "global-settings"
+comment: "Maven Global Settings file"
diff --git a/jenkins-config/managed-config-files/globalMavenSettings/global-settings/content b/jenkins-config/managed-config-files/globalMavenSettings/global-settings/content
new file mode 100644
index 00000000..36cc3933
--- /dev/null
+++ b/jenkins-config/managed-config-files/globalMavenSettings/global-settings/content
@@ -0,0 +1,195 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
+
+ <mirrors>
+ <mirror>
+ <id>rotterdam-release-mirror</id>
+ <name>Local Nexus mirror for rotteram builds</name>
+ <url>^${env.NEXUSPROXY}/content/repositories/public/</url>
+ <mirrorOf>central</mirrorOf>
+ </mirror>
+ <mirror>
+ <id>fd-release-mirror</id>
+ <name>Local Nexus mirror for fd.io builds</name>
+ <url>^${env.NEXUSPROXY}/content/repositories/public/</url>
+ <mirrorOf>central</mirrorOf>
+ </mirror>
+ </mirrors>
+
+ <profiles>
+ <profile>
+ <id>rotterdam-release</id>
+ <repositories>
+ <repository>
+ <id>rotterdam-mirror</id>
+ <name>rotterdam-mirror</name>
+ <url>^${env.NEXUSPROXY}/content/repositories/public/</url>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+
+ <pluginRepositories>
+ <pluginRepository>
+ <id>rotterdam-mirror</id>
+ <name>rotterdam-mirror</name>
+ <url>^${env.NEXUSPROXY}/content/repositories/public/</url>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+ </profile>
+
+ <profile>
+ <id>rotterdam-snapshot</id>
+ <repositories>
+ <repository>
+ <id>rotterdam-snapshot</id>
+ <name>rotterdam-snapshot</name>
+ <url>^${env.NEXUSPROXY}/content/repositories/rotterdam.snapshot/</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+
+ <pluginRepositories>
+ <pluginRepository>
+ <id>rotterdam-snapshot</id>
+ <name>rotterdamn-snapshot</name>
+ <url>^${env.NEXUSPROXY}/content/repositories/rotterdam.snapshot/</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+ </profile>
+
+ <profile>
+ <id>fdio-release</id>
+ <repositories>
+ <repository>
+ <id>fdio-mirror</id>
+ <name>fdio-mirror</name>
+ <url>^${env.NEXUSPROXY}/content/repositories/public/</url>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+
+ <pluginRepositories>
+ <pluginRepository>
+ <id>fdio-mirror</id>
+ <name>fdio-mirror</name>
+ <url>^${env.NEXUSPROXY}/content/repositories/public/</url>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+ </profile>
+
+ <profile>
+ <id>fdio-snapshot</id>
+ <repositories>
+ <repository>
+ <id>fdio-snapshot</id>
+ <name>fdio-snapshot</name>
+ <url>^${env.NEXUSPROXY}/content/repositories/fd.io.snapshot/</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+
+ <profile>
+ <id>staging</id>
+ <repositories>
+ <repository>
+ <id>staging</id>
+ <name>staging</name>
+ <url>^${env.NEXUSPROXY}/content/repositories/staging/</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+ </profile>
+
+ <pluginRepositories>
+ <pluginRepository>
+ <id>fdio-snapshot</id>
+ <name>fdio-snapshot</name>
+ <url>^${env.NEXUSPROXY}/content/repositories/fd.io.snapshot/</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+ </profile>
+
+ <profile>
+ <id>site</id>
+ <repositories>
+ <repository>
+ <id>site</id>
+ <name>site</name>
+ <url>^${env.NEXUSPROXY}/content/repositories/site/</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+ </profile>
+
+ </profiles>
+
+ <activeProfiles>
+ <activeProfile>rotterdam-release</activeProfile>
+ <activeProfile>rotterdam-snapshot</activeProfile>
+ <activeProfile>fdio-release</activeProfile>
+ <activeProfile>fdio-snapshot</activeProfile>
+ <activeProfile>staging</activeProfile>
+ <activeProfile>site</activeProfile>
+ </activeProfiles>
+</settings>
diff --git a/jenkins-config/managed-config-files/mavenSettings/cicn-settings/config-params.yaml b/jenkins-config/managed-config-files/mavenSettings/cicn-settings/config-params.yaml
new file mode 100644
index 00000000..64fbebeb
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/cicn-settings/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "cicn-settings"
+comment: "cicn-settings"
diff --git a/jenkins-config/managed-config-files/mavenSettings/cicn-settings/content b/jenkins-config/managed-config-files/mavenSettings/cicn-settings/content
new file mode 120000
index 00000000..e830ebdd
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/cicn-settings/content
@@ -0,0 +1 @@
+../../../managed-config-templates/mavenSettings-content \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/cicn-settings/serverCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/mavenSettings/cicn-settings/serverCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..d7baae2f
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/cicn-settings/serverCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+../../../managed-config-templates/serverCredentialMappings.sandbox.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/cicn-settings/serverCredentialMappings.yaml b/jenkins-config/managed-config-files/mavenSettings/cicn-settings/serverCredentialMappings.yaml
new file mode 100644
index 00000000..a2e19593
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/cicn-settings/serverCredentialMappings.yaml
@@ -0,0 +1,22 @@
+---
+serverCredentialMappings:
+ - serverId: "fdio-dev"
+ credentialsId: "cicn"
+ - serverId: "fdio-snapshot"
+ credentialsId: "cicn"
+ - serverId: "fdio-site"
+ credentialsId: "cicn"
+ - serverId: "fdio-release"
+ credentialsId: "cicn"
+ - serverId: "fdio-yum"
+ credentialsId: "cicn"
+ - serverId: "fd.io.master.centos7"
+ credentialsId: "cicn"
+ - serverId: "fd.io.master.ubuntu.bionic.main"
+ credentialsId: "cicn"
+ - serverId: "fd.io.master.ubunto-arm.bionic.main"
+ credentialsId: "cicn"
+ - serverId: "fd.io.centos7"
+ credentialsId: "cicn"
+ - serverId: "fd.io.ubuntu.bionic.main"
+ credentialsId: "cicn"
diff --git a/jenkins-config/managed-config-files/mavenSettings/csit-settings/config-params.yaml b/jenkins-config/managed-config-files/mavenSettings/csit-settings/config-params.yaml
new file mode 100644
index 00000000..2969616e
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/csit-settings/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "csit-settings"
+comment: "csit-settings"
diff --git a/jenkins-config/managed-config-files/mavenSettings/csit-settings/content b/jenkins-config/managed-config-files/mavenSettings/csit-settings/content
new file mode 120000
index 00000000..e830ebdd
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/csit-settings/content
@@ -0,0 +1 @@
+../../../managed-config-templates/mavenSettings-content \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/csit-settings/serverCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/mavenSettings/csit-settings/serverCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..d7baae2f
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/csit-settings/serverCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+../../../managed-config-templates/serverCredentialMappings.sandbox.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/csit-settings/serverCredentialMappings.yaml b/jenkins-config/managed-config-files/mavenSettings/csit-settings/serverCredentialMappings.yaml
new file mode 100644
index 00000000..9ca62351
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/csit-settings/serverCredentialMappings.yaml
@@ -0,0 +1,22 @@
+---
+serverCredentialMappings:
+ - serverId: "fdio-dev"
+ credentialsId: "csit"
+ - serverId: "fdio-snapshot"
+ credentialsId: "csit"
+ - serverId: "fdio-site"
+ credentialsId: "csit"
+ - serverId: "fdio-release"
+ credentialsId: "csit"
+ - serverId: "fdio-yum"
+ credentialsId: "csit"
+ - serverId: "fd.io.master.centos7"
+ credentialsId: "csit"
+ - serverId: "fd.io.master.ubuntu.bionic.main"
+ credentialsId: "csit"
+ - serverId: "fd.io.master.ubunto-arm.bionic.main"
+ credentialsId: "csit"
+ - serverId: "fd.io.centos7"
+ credentialsId: "csit"
+ - serverId: "fd.io.ubuntu.bionic.main"
+ credentialsId: "csit"
diff --git a/jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/config-params.yaml b/jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/config-params.yaml
new file mode 100644
index 00000000..14ed708d
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "hc2vpp-settings"
+comment: "hc2vpp-settings"
diff --git a/jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/content b/jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/content
new file mode 120000
index 00000000..e830ebdd
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/content
@@ -0,0 +1 @@
+../../../managed-config-templates/mavenSettings-content \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/serverCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/serverCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..d7baae2f
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/serverCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+../../../managed-config-templates/serverCredentialMappings.sandbox.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/serverCredentialMappings.yaml b/jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/serverCredentialMappings.yaml
new file mode 100644
index 00000000..3b72d77c
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/hc2vpp-settings/serverCredentialMappings.yaml
@@ -0,0 +1,22 @@
+---
+serverCredentialMappings:
+ - serverId: "fdio-dev"
+ credentialsId: "hc2vpp"
+ - serverId: "fdio-snapshot"
+ credentialsId: "hc2vpp"
+ - serverId: "fdio-site"
+ credentialsId: "hc2vpp"
+ - serverId: "fdio-release"
+ credentialsId: "hc2vpp"
+ - serverId: "fdio-yum"
+ credentialsId: "hc2vpp"
+ - serverId: "fd.io.master.centos7"
+ credentialsId: "hc2vpp"
+ - serverId: "fd.io.master.ubuntu.bionic.main"
+ credentialsId: "hc2vpp"
+ - serverId: "fd.io.master.ubunto-arm.bionic.main"
+ credentialsId: "hc2vpp"
+ - serverId: "fd.io.centos7"
+ credentialsId: "hc2vpp"
+ - serverId: "fd.io.ubuntu.bionic.main"
+ credentialsId: "hc2vpp"
diff --git a/jenkins-config/managed-config-files/mavenSettings/hicn-settings/config-params.yaml b/jenkins-config/managed-config-files/mavenSettings/hicn-settings/config-params.yaml
new file mode 100644
index 00000000..11c6d9fa
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/hicn-settings/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "hicn-settings"
+comment: "hicn-settings"
diff --git a/jenkins-config/managed-config-files/mavenSettings/hicn-settings/content b/jenkins-config/managed-config-files/mavenSettings/hicn-settings/content
new file mode 120000
index 00000000..e830ebdd
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/hicn-settings/content
@@ -0,0 +1 @@
+../../../managed-config-templates/mavenSettings-content \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/hicn-settings/serverCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/mavenSettings/hicn-settings/serverCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..d7baae2f
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/hicn-settings/serverCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+../../../managed-config-templates/serverCredentialMappings.sandbox.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/hicn-settings/serverCredentialMappings.yaml b/jenkins-config/managed-config-files/mavenSettings/hicn-settings/serverCredentialMappings.yaml
new file mode 100644
index 00000000..aa60636b
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/hicn-settings/serverCredentialMappings.yaml
@@ -0,0 +1,22 @@
+---
+serverCredentialMappings:
+ - serverId: "fdio-dev"
+ credentialsId: "hicn"
+ - serverId: "fdio-snapshot"
+ credentialsId: "hicn"
+ - serverId: "fdio-site"
+ credentialsId: "hicn"
+ - serverId: "fdio-release"
+ credentialsId: "hicn"
+ - serverId: "fdio-yum"
+ credentialsId: "hicn"
+ - serverId: "fd.io.master.centos7"
+ credentialsId: "hicn"
+ - serverId: "fd.io.master.ubuntu.bionic.main"
+ credentialsId: "hicn"
+ - serverId: "fd.io.master.ubunto-arm.bionic.main"
+ credentialsId: "hicn"
+ - serverId: "fd.io.centos7"
+ credentialsId: "hicn"
+ - serverId: "fd.io.ubuntu.bionic.main"
+ credentialsId: "hicn"
diff --git a/jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/config-params.yaml b/jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/config-params.yaml
new file mode 100644
index 00000000..f030b270
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "jenkins-log-archives-settings"
+comment: "jenkins-log-archives-settings"
diff --git a/jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/content b/jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/content
new file mode 120000
index 00000000..e830ebdd
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/content
@@ -0,0 +1 @@
+../../../managed-config-templates/mavenSettings-content \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/serverCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/serverCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..c94d0717
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/serverCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+serverCredentialMappings.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/serverCredentialMappings.yaml b/jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/serverCredentialMappings.yaml
new file mode 100644
index 00000000..2cf7569a
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/jenkins-log-archives-settings/serverCredentialMappings.yaml
@@ -0,0 +1,4 @@
+---
+serverCredentialMappings:
+ - serverId: "logs"
+ credentialsId: "jenkins-log-archives"
diff --git a/jenkins-config/managed-config-files/mavenSettings/udpi-settings/config-params.yaml b/jenkins-config/managed-config-files/mavenSettings/udpi-settings/config-params.yaml
new file mode 100644
index 00000000..abeed14f
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/udpi-settings/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "udpi-settings"
+comment: "udpi-settings"
diff --git a/jenkins-config/managed-config-files/mavenSettings/udpi-settings/content b/jenkins-config/managed-config-files/mavenSettings/udpi-settings/content
new file mode 120000
index 00000000..e830ebdd
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/udpi-settings/content
@@ -0,0 +1 @@
+../../../managed-config-templates/mavenSettings-content \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/udpi-settings/serverCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/mavenSettings/udpi-settings/serverCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..d7baae2f
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/udpi-settings/serverCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+../../../managed-config-templates/serverCredentialMappings.sandbox.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/udpi-settings/serverCredentialMappings.yaml b/jenkins-config/managed-config-files/mavenSettings/udpi-settings/serverCredentialMappings.yaml
new file mode 100644
index 00000000..4df90fa7
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/udpi-settings/serverCredentialMappings.yaml
@@ -0,0 +1,22 @@
+---
+serverCredentialMappings:
+ - serverId: "fdio-dev"
+ credentialsId: "udpi"
+ - serverId: "fdio-snapshot"
+ credentialsId: "udpi"
+ - serverId: "fdio-site"
+ credentialsId: "udpi"
+ - serverId: "fdio-release"
+ credentialsId: "udpi"
+ - serverId: "fdio-yum"
+ credentialsId: "udpi"
+ - serverId: "fd.io.master.centos7"
+ credentialsId: "udpi"
+ - serverId: "fd.io.master.ubuntu.bionic.main"
+ credentialsId: "udpi"
+ - serverId: "fd.io.master.ubunto-arm.bionic.main"
+ credentialsId: "udpi"
+ - serverId: "fd.io.centos7"
+ credentialsId: "udpi"
+ - serverId: "fd.io.ubuntu.bionic.main"
+ credentialsId: "udpi"
diff --git a/jenkins-config/managed-config-files/mavenSettings/vpp-settings/config-params.yaml b/jenkins-config/managed-config-files/mavenSettings/vpp-settings/config-params.yaml
new file mode 100644
index 00000000..8fc6f54b
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/vpp-settings/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "vpp-settings"
+comment: "vpp-settings"
diff --git a/jenkins-config/managed-config-files/mavenSettings/vpp-settings/content b/jenkins-config/managed-config-files/mavenSettings/vpp-settings/content
new file mode 120000
index 00000000..e830ebdd
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/vpp-settings/content
@@ -0,0 +1 @@
+../../../managed-config-templates/mavenSettings-content \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/vpp-settings/serverCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-files/mavenSettings/vpp-settings/serverCredentialMappings.sandbox.yaml
new file mode 120000
index 00000000..d7baae2f
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/vpp-settings/serverCredentialMappings.sandbox.yaml
@@ -0,0 +1 @@
+../../../managed-config-templates/serverCredentialMappings.sandbox.yaml \ No newline at end of file
diff --git a/jenkins-config/managed-config-files/mavenSettings/vpp-settings/serverCredentialMappings.yaml b/jenkins-config/managed-config-files/mavenSettings/vpp-settings/serverCredentialMappings.yaml
new file mode 100644
index 00000000..c65f2e29
--- /dev/null
+++ b/jenkins-config/managed-config-files/mavenSettings/vpp-settings/serverCredentialMappings.yaml
@@ -0,0 +1,22 @@
+---
+serverCredentialMappings:
+ - serverId: "fdio-dev"
+ credentialsId: "vpp"
+ - serverId: "fdio-snapshot"
+ credentialsId: "vpp"
+ - serverId: "fdio-site"
+ credentialsId: "vpp"
+ - serverId: "fdio-release"
+ credentialsId: "vpp"
+ - serverId: "fdio-yum"
+ credentialsId: "vpp"
+ - serverId: "fd.io.master.centos7"
+ credentialsId: "vpp"
+ - serverId: "fd.io.master.ubuntu.bionic.main"
+ credentialsId: "vpp"
+ - serverId: "fd.io.master.ubunto-arm.bionic.main"
+ credentialsId: "vpp"
+ - serverId: "fd.io.centos7"
+ credentialsId: "vpp"
+ - serverId: "fd.io.ubuntu.bionic.main"
+ credentialsId: "vpp"
diff --git a/jenkins-config/managed-config-files/openstackUserData/jenkins-init-system/config-params.yaml b/jenkins-config/managed-config-files/openstackUserData/jenkins-init-system/config-params.yaml
new file mode 100644
index 00000000..365057c4
--- /dev/null
+++ b/jenkins-config/managed-config-files/openstackUserData/jenkins-init-system/config-params.yaml
@@ -0,0 +1,3 @@
+---
+name: "jenkins-init-system"
+comment: "Run ci-management/jenkins-scripts/init_system.sh"
diff --git a/jenkins-config/managed-config-files/openstackUserData/jenkins-init-system/content b/jenkins-config/managed-config-files/openstackUserData/jenkins-init-system/content
new file mode 100644
index 00000000..427d613a
--- /dev/null
+++ b/jenkins-config/managed-config-files/openstackUserData/jenkins-init-system/content
@@ -0,0 +1,8 @@
+#!/bin/bash
+until host github.com &>/dev/null
+do
+ echo "Waiting until github.com is resolvable..."
+done
+git clone https://github.com/lfit/releng-global-jjb.git /opt/ciman/global-jjb
+/opt/ciman/global-jjb/jenkins-init-scripts/init.sh
+rm -rf /opt/ciman/releng-global-jjb/ \ No newline at end of file
diff --git a/jenkins-config/managed-config-templates/mavenSettings-content b/jenkins-config/managed-config-templates/mavenSettings-content
new file mode 100644
index 00000000..ff6191ec
--- /dev/null
+++ b/jenkins-config/managed-config-templates/mavenSettings-content
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
+</settings> \ No newline at end of file
diff --git a/jenkins-config/managed-config-templates/serverCredentialMappings.sandbox.yaml b/jenkins-config/managed-config-templates/serverCredentialMappings.sandbox.yaml
new file mode 100644
index 00000000..a71b8fce
--- /dev/null
+++ b/jenkins-config/managed-config-templates/serverCredentialMappings.sandbox.yaml
@@ -0,0 +1,34 @@
+---
+serverCredentialMappings:
+ - serverId: "fdio-dev"
+ credentialsId: "unused"
+ - serverId: "fdio-snapshot"
+ credentialsId: "unused"
+ - serverId: "fdio-site"
+ credentialsId: "unused"
+ - serverId: "fdio-release"
+ credentialsId: "unused"
+ - serverId: "fdio-yum"
+ credentialsId: "unused"
+ - serverId: "fd.io.master.centos7"
+ credentialsId: "unused"
+ - serverId: "fd.io.master.ubuntu.trusty.main"
+ credentialsId: "unused"
+ - serverId: "fd.io.master.ubuntu.xenial.main"
+ credentialsId: "unused"
+ - serverId: "fd.io.master.ubuntu.bionic.main"
+ credentialsId: "unused"
+ - serverId: "fd.io.master.ubuntu-arm.xenial.main"
+ credentialsId: "unused"
+ - serverId: "fd.io.master.ubunto-arm.bionic.main"
+ credentialsId: "unused"
+ - serverId: "fd.io.centos7"
+ credentialsId: "unused"
+ - serverId: "fd.io.ubuntu.trust.main"
+ credentialsId: "unused"
+ - serverId: "fd.io.ubuntu.xenial.main"
+ credentialsId: "unused"
+ - serverId: "fd.io.ubuntu.bionic.main"
+ credentialsId: "unused"
+ - serverId: "fd.io.ubuntu-arm.xenial.main"
+ credentialsId: "unused"
diff --git a/jjb/ci-management/ci-management-jobs.yaml b/jjb/ci-management/ci-management-jobs.yaml
index 762a4ff9..3380eda7 100644
--- a/jjb/ci-management/ci-management-jobs.yaml
+++ b/jjb/ci-management/ci-management-jobs.yaml
@@ -7,14 +7,14 @@
- gerrit-jenkins-sandbox-cleanup
- gerrit-jjb-deploy-job
- gerrit-jjb-merge:
- build-node: centos7-builder-4c-4g
+ build-node: centos8-builder-2c-2g
- gerrit-jjb-verify
project: ci-management
project-name: ci-management
- build-node: centos7-builder-4c-4g
+ build-node: centos8-builder-2c-2g
build-timeout: 15
- jjb-version: 3.5.0
+ jjb-version: 6.0.0
- project:
name: ci-management
@@ -27,6 +27,6 @@
project-name: ci-management
jobs:
- gerrit-info-yaml-verify
- build-node: centos7-builder-8c-8g
+ build-node: centos8-builder-2c-2g
project: ci-management
branch: master
diff --git a/jjb/ci-management/ci-packer-jobs.yaml b/jjb/ci-management/ci-packer-jobs.yaml
index 1672c935..0496d98e 100644
--- a/jjb/ci-management/ci-packer-jobs.yaml
+++ b/jjb/ci-management/ci-packer-jobs.yaml
@@ -7,16 +7,15 @@
project: ci-management
project-name: ci-management
- build-node: centos7-builder-2c-2g
+ build-node: centos8-builder-2c-2g
openstack-cloud: vexci
- packer-version: 1.4.0
+ packer-version: 1.8.2
platforms:
- centos-7
- - ubuntu-16.04
- - ubuntu-18.04
- - ubuntu-18.04-arm64
- - ubuntu-16.04-arm64
+ - centos-8
+ - ubuntu-20.04
+ - ubuntu-20.04-arm64
templates:
- builder
diff --git a/jjb/ci-management/package-list.sh b/jjb/ci-management/package-list.sh
index 6172b7b5..2b432564 100644
--- a/jjb/ci-management/package-list.sh
+++ b/jjb/ci-management/package-list.sh
@@ -34,16 +34,6 @@ libparc-dev \
libmemif-dev \
longbow-dev"
-export PACKAGE_LIST_CENTOS="libhicnctrl-devel \
-libhicnctrl-memif-devel \
-libhicntransport-memif-devel \
-libhicn-devel \
-libhicntransport-devel \
-hicn-plugin-devel \
-libparc-devel \
-libmemif-devel \
-longbow-devel"
-
export VERSION_WHITELIST="19.01-227 \
19.08-289 \
20.01-73 \
diff --git a/jjb/ci-management/packagecloud-repo-cleanup.sh b/jjb/ci-management/packagecloud-repo-cleanup.sh
index d664ae3a..456b3a36 100644
--- a/jjb/ci-management/packagecloud-repo-cleanup.sh
+++ b/jjb/ci-management/packagecloud-repo-cleanup.sh
@@ -1,13 +1,12 @@
#!/bin/bash
echo "---> jjb/ci-management/packagecloud-repo-cleanup.sh"
-set -euo pipefail
+set -euxo pipefail
# Number of packages to keep.
N_PACKAGES=5
PACKAGECLOUD_REPO_DEB="https://packagecloud.io/install/repositories/fdio/${STREAM}/script.deb.sh"
-PACKAGECLOUD_REPO_RPM="https://packagecloud.io/install/repositories/fdio/${STREAM}/script.rpm.sh"
FACTER_OS=$(/usr/bin/facter operatingsystem)
PACKAGE_LIST=""
@@ -77,46 +76,6 @@ build_package_blacklist_ubuntu () {
echo ${OUTPUT_LIST}
}
-# Params
-# $1: Package list
-build_package_blacklist_centos () {
- PACKAGE_LIST=${@}
- OUTPUT_LIST=""
- VERSIONS=""
- ARCH=$(uname -m)
-
- for package in ${PACKAGE_LIST}; do
- OUTPUT=$(yum --showduplicates list ${package} 2> /dev/null)
- if [[ ${?} -ne 0 || -z "${OUTPUT}" ]]; then
- continue
- fi
-
- VERSIONS="$(echo ${OUTPUT} | grep -Eo "${VERSION_REGEX}" | head -n -${N_PACKAGES})"
-
- for version in ${VERSIONS}; do
- if ! check_version_whitelist ${version}; then
- OUTPUT_LIST+="${package}-${version}.${ARCH}.rpm "
- fi
- done
- done
-
- echo ${OUTPUT_LIST}
-}
-
-promote_attic_repo_centos () {
- FACTER_OSMAJREL=$(/usr/bin/facter operatingsystemmajrelease)
- FACTER_ARCH=$(/usr/bin/facter architecture)
-
- for package in ${@}; do
- echo package_cloud promote \
- ${PCIO_CO}/${STREAM}/el/${FACTER_OSMAJREL}/os/${FACTER_ARCH}/ \
- ${package} ${PCIO_CO}/attic/el/${FACTER_OSMAJREL}/os/${FACTER_ARCH}/
- package_cloud promote \
- ${PCIO_CO}/${STREAM}/el/${FACTER_OSMAJREL}/os/${FACTER_ARCH}/ \
- ${package} ${PCIO_CO}/attic/el/${FACTER_OSMAJREL}/os/${FACTER_ARCH}/
- done
-}
-
promote_attic_repo_ubuntu () {
FACTER_LSBNAME=$(/usr/bin/facter lsbdistcodename)
@@ -140,12 +99,6 @@ setup_fdio_repo () {
FUNCTIONS["promote_attic_repo"]="promote_attic_repo_ubuntu"
PACKAGE_LIST="${PACKAGE_LIST_COMMON} ${PACKAGE_LIST_UBUNTU}"
;;
- CentOS)
- curl -s ${PACKAGECLOUD_REPO_RPM} | sudo bash
- FUNCTIONS["package_blacklist"]="build_package_blacklist_centos"
- FUNCTIONS["promote_attic_repo"]="promote_attic_repo_centos"
- PACKAGE_LIST="${PACKAGE_LIST_COMMON} ${PACKAGE_LIST_CENTOS}"
- ;;
*)
echo_err "Distribution ${FACTER_OS} is not supported."
;;
diff --git a/jjb/ci-management/packagecloud-repo-cleanup.yaml b/jjb/ci-management/packagecloud-repo-cleanup.yaml
index 517c2cc7..1c107c2f 100644
--- a/jjb/ci-management/packagecloud-repo-cleanup.yaml
+++ b/jjb/ci-management/packagecloud-repo-cleanup.yaml
@@ -5,10 +5,7 @@
- 'packagecloud-repo-cleanup-hicn-{os}-{executor-arch}'
project: 'ci-management'
os:
- - ubuntu1804:
- repo-os-part: 'ubuntu.bionic.main'
- - centos7:
- repo-os-part: 'centos7'
+ - ubuntu2004
executor-arch: "x86_64"
@@ -19,8 +16,7 @@
- 'packagecloud-repo-cleanup-hicn-{os}-{executor-arch}'
project: 'ci-management'
os:
- - ubuntu1804:
- repo-os-part: 'ubuntu-arm.bionic.main'
+ - ubuntu2004
executor-arch: "aarch64"
@@ -37,11 +33,9 @@
node: 'builder-{os}-prod-{executor-arch}'
concurrent: true
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: 100
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -52,10 +46,6 @@
os: '{os}'
- stream-parameter:
stream: 'release'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
wrappers:
- fdio-infra-wrappers:
@@ -101,11 +91,9 @@
node: 'builder-{os}-prod-{executor-arch}'
concurrent: true
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: 100
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -116,10 +104,6 @@
os: '{os}'
- stream-parameter:
stream: 'hicn'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
wrappers:
- fdio-infra-wrappers:
diff --git a/jjb/cicn/cicn.yaml b/jjb/cicn/cicn.yaml
deleted file mode 100644
index 24b1c32d..00000000
--- a/jjb/cicn/cicn.yaml
+++ /dev/null
@@ -1,349 +0,0 @@
-# Copyright (c) 2020 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
----
-- project:
- name: cicn-libparc-x86_64
- jobs:
- - "cicn-libparc-verify-{stream}-{os}-{executor-arch}"
- - "cicn-libparc-merge-{stream}-{os}-{executor-arch}"
-
- project: "cicn"
- os:
- - ubuntu1804:
- repo-os-part: "ubuntu.bionic.main"
- - ubuntu2004:
- repo-os-part: "ubuntu.focal.main"
- - centos8:
- repo-os-part: "centos8"
-
- executor-arch: "x86_64"
-
- stream:
- - master:
- branch: "cframework/master"
- repo-stream-part: "master"
-
- type:
- - short
- - long
-
-- project:
- name: cicn-libparc-aarch64
- jobs:
- - "cicn-libparc-verify-{stream}-{os}-{executor-arch}"
- - "cicn-libparc-merge-{stream}-{os}-{executor-arch}"
-
- project: "cicn"
- os:
- - ubuntu1804:
- repo-os-part: "ubuntu-arm.bionic.main"
-
- executor-arch: "aarch64"
-
- stream:
- - master:
- branch: "cframework/master"
- repo-stream-part: "master"
-
- type:
- - short
- - long
-
-- project:
- name: cicn-viper
- jobs:
- - "cicn-viper-verify-{stream}-{os}-{executor-arch}"
- - "cicn-viper-merge-{stream}-{os}-{executor-arch}"
-
- project: "cicn"
- os:
- - ubuntu1804:
- repo-os-part: "ubuntu.bionic.main"
-
- executor-arch: "x86_64"
-
- stream:
- - master:
- branch: "viper/master"
- repo-stream-part: "master"
-
- type:
- - short
- - long
-
-- job-template:
- name: "cicn-libparc-merge-{stream}-{os}-{executor-arch}"
-
- project-type: freestyle
- node: "builder-{os}-prod-{executor-arch}"
-
- build-discarder:
- daysToKeep: "{build-days-to-keep}"
- numToKeep: "{build-num-to-keep}"
- artifactDaysToKeep: "{build-artifact-days-to-keep}"
- artifactNumToKeep: "{build-artifact-num-to-keep}"
-
- parameters:
- - project-parameter:
- project: "{project}"
- - gerrit-parameter:
- branch: "{branch}"
- - os-parameter:
- os: "{os}"
- - maven-project-parameter:
- maven: "mvn33-new"
- - maven-exec:
- maven-version: "mvn33-new"
- - repo-name-parameter:
- repo-name: "{repo-stream-part}.{repo-os-part}"
- - stream-parameter:
- stream: "hicn"
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: "jenkins-gerrit-credentials"
- refspec: ""
- choosing-strategy: "default"
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: "{build-timeout}"
-
- triggers:
- - gerrit-trigger-patch-merged:
- name: "{project}"
- branch: "{branch}"
-
- builders:
- - config-file-provider:
- files:
- - file-id: ".packagecloud"
- target: "/root/.packagecloud"
- - config-file-provider:
- files:
- - file-id: "packagecloud_api"
- target: "/root/packagecloud_api"
- - maven-target:
- maven-version: "mvn33-new"
- goals: "--version"
- settings: "cicn-settings"
- settings-type: cfp
- global-settings: "global-settings"
- global-settings-type: cfp
- - shell: !include-raw-escape:
- - ../scripts/setup_executor_env.sh
- - shell: !include-raw-escape:
- - include-raw-cicn-libparc-build.sh
- - provide-maven-settings:
- settings-file: "cicn-settings"
- global-settings-file: "global-settings"
- - shell: !include-raw-escape:
- - ../scripts/maven_push_functions.sh
- - include-raw-cicn-maven-push.sh
- - shell: !include-raw-escape:
- - ../scripts/packagecloud_push.sh
-
- publishers:
- - fdio-infra-publish
-
-- job-template:
- name: "cicn-libparc-verify-{stream}-{os}-{executor-arch}"
-
- project-type: freestyle
- node: "builder-{os}-prod-{executor-arch}"
- concurrent: true
-
- build-discarder:
- daysToKeep: "{build-days-to-keep}"
- numToKeep: "{build-num-to-keep}"
- artifactDaysToKeep: "{build-artifact-days-to-keep}"
- artifactNumToKeep: "{build-artifact-num-to-keep}"
-
- parameters:
- - project-parameter:
- project: "{project}"
- - gerrit-parameter:
- branch: "{branch}"
- - os-parameter:
- os: "{os}"
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: "jenkins-gerrit-credentials"
- refspec: "$GERRIT_REFSPEC"
- choosing-strategy: "gerrit"
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: "{build-timeout}"
-
- triggers:
- - gerrit-trigger-patch-submitted:
- name: "{project}"
- branch: "{branch}"
-
- builders:
- - shell: !include-raw-escape:
- - ../scripts/setup_executor_env.sh
- - shell: !include-raw-escape:
- - include-raw-cicn-libparc-build.sh
-
- publishers:
- - fdio-infra-publish
-
-- job-template:
- name: "cicn-viper-merge-{stream}-{os}-{executor-arch}"
-
- project-type: freestyle
- node: "builder-{os}-prod-{executor-arch}"
-
- build-discarder:
- daysToKeep: "{build-days-to-keep}"
- numToKeep: "{build-num-to-keep}"
- artifactDaysToKeep: "{build-artifact-days-to-keep}"
- artifactNumToKeep: "{build-artifact-num-to-keep}"
-
- parameters:
- - project-parameter:
- project: "{project}"
- - gerrit-parameter:
- branch: "{branch}"
- - os-parameter:
- os: "{os}"
- - maven-project-parameter:
- maven: "mvn33-new"
- - maven-exec:
- maven-version: "mvn33-new"
- - repo-name-parameter:
- repo-name: "{repo-stream-part}.{repo-os-part}"
- - stream-parameter:
- stream: "hicn"
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: "jenkins-gerrit-credentials"
- refspec: ""
- choosing-strategy: "default"
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: "{build-timeout}"
-
- triggers:
- - gerrit-trigger-patch-merged:
- name: "{project}"
- branch: "{branch}"
- - reverse:
- jobs: "cicn-libicnet-merge-{stream}-{os}"
- result: "failure"
-
- builders:
- - config-file-provider:
- files:
- - file-id: ".packagecloud"
- target: "/root/.packagecloud"
- - config-file-provider:
- files:
- - file-id: "packagecloud_api"
- target: "/root/packagecloud_api"
- - maven-target:
- maven-version: "mvn33-new"
- goals: "--version"
- settings: "cicn-settings"
- settings-type: cfp
- global-settings: "global-settings"
- global-settings-type: cfp
- - shell: !include-raw-escape:
- - ../scripts/setup_executor_env.sh
- - shell: !include-raw-escape:
- - include-raw-cicn-viper-build.sh
- - provide-maven-settings:
- settings-file: "cicn-settings"
- global-settings-file: "global-settings"
- - shell: !include-raw-escape:
- - ../scripts/maven_push_functions.sh
- - include-raw-cicn-maven-push.sh
- - shell: !include-raw-escape:
- - ../scripts/packagecloud_push.sh
-
- publishers:
- - fdio-infra-publish
-
-- job-template:
- name: "cicn-viper-verify-{stream}-{os}-{executor-arch}"
-
- project-type: freestyle
- node: "builder-{os}-prod-{executor-arch}"
- concurrent: true
-
- build-discarder:
- daysToKeep: "{build-days-to-keep}"
- numToKeep: "{build-num-to-keep}"
- artifactDaysToKeep: "{build-artifact-days-to-keep}"
- artifactNumToKeep: "{build-artifact-num-to-keep}"
-
- parameters:
- - project-parameter:
- project: "{project}"
- - gerrit-parameter:
- branch: "{branch}"
- - os-parameter:
- os: "{os}"
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: "jenkins-gerrit-credentials"
- refspec: "$GERRIT_REFSPEC"
- choosing-strategy: "gerrit"
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: "{build-timeout}"
-
- triggers:
- - gerrit-trigger-patch-submitted:
- name: "{project}"
- branch: "{branch}"
-
- builders:
- - shell: !include-raw-escape:
- - ../scripts/setup_executor_env.sh
- - shell: !include-raw-escape:
- - include-raw-cicn-viper-build.sh
-
- publishers:
- - fdio-infra-publish
-
-- project:
- name: cicn-info
- project-name: cicn
- jobs:
- - gerrit-info-yaml-verify
- build-node: centos7-builder-2c-2g
- project: cicn
- branch: master
-
-- project:
- name: cicn-sonar
- project: cicn
- project-name: cicn
- mvn-settings: cicn-settings
- sonarcloud: true
- sonarcloud-project-organization: "{sonarcloud_project_organization}"
- sonarcloud-api-token: "{sonarcloud_api_token}"
- sonarcloud-project-key: "{sonarcloud_project_organization}_{project-name}"
- branch: master
- build-node: centos7-builder-2c-2g
- jobs:
- - gerrit-maven-sonar
diff --git a/jjb/cicn/include-raw-cicn-libparc-docs.sh b/jjb/cicn/include-raw-cicn-libparc-docs.sh
deleted file mode 100644
index cb4d698e..00000000
--- a/jjb/cicn/include-raw-cicn-libparc-docs.sh
+++ /dev/null
@@ -1,74 +0,0 @@
-#!/bin/bash
-set -xe -o pipefail
-
-update_cmake_repo() {
- cat /etc/resolv.conf
- echo "nameserver 8.8.8.8" | sudo tee -a /etc/resolv.conf
- cat /etc/resolv.conf
-
- CMAKE_INSTALL_SCRIPT_URL="https://cmake.org/files/v3.8/cmake-3.8.0-Linux-x86_64.sh"
- CMAKE_INSTALL_SCRIPT="/tmp/install_cmake.sh"
- curl ${CMAKE_INSTALL_SCRIPT_URL} > ${CMAKE_INSTALL_SCRIPT}
-
- sudo mkdir -p /opt/cmake
- sudo bash ${CMAKE_INSTALL_SCRIPT} --skip-license --prefix=/opt/cmake
- export PATH=/opt/cmake/bin:$PATH
-}
-
-cd libparc
-
-[ "$DOCS_REPO_URL" ] || DOCS_REPO_URL="https://nexus.fd.io/content/sites/site"
-[ "$PROJECT_PATH" ] || PROJECT_PATH="io/fd/cicn/libparc"
-[ "$DOC_FILE" ] || DOC_FILE="cicn.libparc.docs.zip"
-[ "$DOC_DIR" ] || DOC_DIR="build/documentation/generated-documentation/html"
-[ "$SITE_DIR" ] || SITE_DIR="build/documentation/deploy-site/"
-[ "$RESOURCES_DIR" ] || RESOURCES_DIR=${SITE_DIR}/src/site/resources
-[ "$MVN" ] || MVN="/opt/apache/maven/bin/mvn"
-[ "$VERSION" ] || VERSION=$(bash scripts/version rpm-version)
-
-echo "Current directory: $(pwd)"
-
-update_cmake_repo
-mkdir -p build
-pushd build
-cmake -DDOC_ONLY=ON ..
-make documentation
-popd
-
-if [[ ${JOB_NAME} == *merge* ]]; then
- mkdir -p $(dirname ${RESOURCES_DIR})
- mv -f ${DOC_DIR} ${RESOURCES_DIR}
- cd ${SITE_DIR}
- find . -type f '(' -name '*.md5' -o -name '*.dot' -o -name '*.map' ')' -delete
- cat > pom.xml << EOF
- <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>io.fd.vpp</groupId>
- <artifactId>docs</artifactId>
- <version>1.0.0</version>
- <packaging>pom</packaging>
-
- <properties>
- <generateReports>false</generateReports>
- </properties>
-
- <build>
- <extensions>
- <extension>
- <groupId>org.apache.maven.wagon</groupId>
- <artifactId>wagon-webdav-jackrabbit</artifactId>
- <version>3.3.3</version>
- </extension>
- </extensions>
- </build>
- <distributionManagement>
- <site>
- <id>fdio-site</id>
- <url>dav:${DOCS_REPO_URL}/${PROJECT_PATH}/${VERSION}</url>
- </site>
- </distributionManagement>
- </project>
-EOF
- ${MVN} site:site site:deploy -gs "${GLOBAL_SETTINGS_FILE}" -s "${SETTINGS_FILE}" -T 4C
- cd -
-fi
diff --git a/jjb/cicn/include-raw-cicn-maven-push.sh b/jjb/cicn/include-raw-cicn-maven-push.sh
deleted file mode 100644
index 65fbd833..00000000
--- a/jjb/cicn/include-raw-cicn-maven-push.sh
+++ /dev/null
@@ -1,49 +0,0 @@
-#!/bin/bash
-set -xe -o pipefail
-echo "*******************************************************************"
-echo "* STARTING PUSH OF PACKAGES TO REPOS"
-echo "* NOTHING THAT HAPPENS BELOW THIS POINT IS RELATED TO BUILD FAILURE"
-echo "*******************************************************************"
-
-[ "$MVN" ] || MVN="/opt/apache/maven/bin/mvn"
-GROUP_ID="io.fd.${PROJECT}"
-BASEURL="${NEXUSPROXY}/content/repositories/fd.io."
-BASEREPOID='fdio-'
-
-if [ "${OS}" == "ubuntu1604" ]; then
- # Find the files
- JARS=$(find . -type f -iname '*.jar')
- DEBS=$(find . -type f -iname '*.deb')
- for i in $JARS
- do
- push_jar "$i"
- done
-
- for i in $DEBS
- do
- push_deb "$i"
- done
-elif [ "${OS}" == "ubuntu1804" ]; then
- # Find the files
- JARS=$(find . -type f -iname '*.jar')
- DEBS=$(find . -type f -iname '*.deb')
- for i in $JARS
- do
- push_jar "$i"
- done
-
- for i in $DEBS
- do
- push_deb "$i"
- done
-elif [ "${OS}" == "centos7" ]; then
- # Find the files
- RPMS=$(find . -type f -iname '*.rpm')
- SRPMS=$(find . -type f -iname '*.srpm')
- SRCRPMS=$(find . -type f -name '*.src.rpm')
- for i in $RPMS $SRPMS $SRCRPMS
- do
- push_rpm "$i"
- done
-fi
-# vim: ts=4 sw=4 sts=4 et ft=sh :
diff --git a/jjb/csit/csit-perf.yaml b/jjb/csit/csit-perf.yaml
index 3c5b2135..20630cae 100644
--- a/jjb/csit/csit-perf.yaml
+++ b/jjb/csit/csit-perf.yaml
@@ -1,5 +1,5 @@
-# Copyright (c) 2021 Cisco and/or its affiliates.
-# Copyright (c) 2019 PANTHEON.tech s.r.o. and/or its affiliates.
+# Copyright (c) 2024 Cisco and/or its affiliates.
+# Copyright (c) 2024 PANTHEON.tech s.r.o. and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -20,288 +20,535 @@
jobs:
- 'csit-dpdk-perf-verify-{stream}-{node-arch}':
node-arch:
- - 2n-clx:
- os: 'ubuntu2004'
+ - 2n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-skx:
- os: 'ubuntu2004'
+ - 2n-clx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-dnv:
- os: 'ubuntu2004'
+ - 2n-spr:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 2n-zn2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 2n-tx2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
- - 3n-skx:
- os: 'ubuntu2004'
- executor-arch: 'x86_64'
- - 3n-dnv:
- os: 'ubuntu2004'
+ - 3n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 3n-tsh:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
+ - 3n-alt:
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ - 3n-snr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-icxd:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3na-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3nb-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
- 'csit-dpdk-perf-mrr-weekly-master-{node-arch}':
node-arch:
+ - 2n-icx:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
- 2n-clx:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-skx:
- os: 'ubuntu2004'
+ - 2n-spr:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 2n-zn2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 2n-tx2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
- - 3n-skx:
- os: 'ubuntu2004'
+ - 3n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 3n-tsh:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
+ - 3n-alt:
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ - 3n-snr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-icxd:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3na-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3nb-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
periodicity: '0 0 * * 6'
+ - 'csit-trex-perf-verify-{stream}-{node-arch}':
+ node-arch:
+ - 1n-aws:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-icx:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
- 'csit-vpp-perf-verify-{stream}-{node-arch}':
node-arch:
- - 2n-clx:
- os: 'ubuntu2004'
+ - 2n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-skx:
- os: 'ubuntu2004'
+ - 2n-clx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-dnv:
- os: 'ubuntu2004'
+ - 2n-spr:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 2n-zn2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 2n-tx2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
- - 3n-skx:
- os: 'ubuntu2004'
- executor-arch: 'x86_64'
- - 3n-dnv:
- os: 'ubuntu2004'
+ - 3n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 3n-tsh:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ - 3n-alt:
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
+ - 3n-snr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-icxd:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3na-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3nb-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
stream:
- master:
branch: 'master'
branch-id: 'oper'
- - '2009':
- branch: 'rls2009'
- branch-id: 'oper-rls2009'
- - '2009_lts':
- branch: 'rls2009_lts'
- branch-id: 'oper-rls2009_lts'
- - '2101':
- branch: 'rls2101'
- branch-id: 'oper-rls2101'
- - '2106':
- branch: 'rls2106'
- branch-id: 'oper-rls2106'
+ - '2402':
+ branch: 'rls2402'
+ branch-id: 'oper-rls2402'
- 'csit-vpp-perf-mrr-daily-master-{node-arch}':
node-arch:
- - 2n-clx:
- os: 'ubuntu2004'
+ - 2n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- periodicity: '0 2 * * 1,3,5'
- - 2n-skx:
- os: 'ubuntu2004'
+ periodicity: '30 22 * * 0-4'
+ - 2n-clx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- periodicity: '0 2 * * 1,3,5'
- - 2n-dnv:
- os: 'ubuntu2004'
+ periodicity: '30 22 * * 0-4'
+ - 2n-spr:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- periodicity: '0 2 * * 1,4'
+ periodicity: '30 22 * * 0-4'
- 2n-zn2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- periodicity: '0 2 * * 1,4'
+ periodicity: '30 22 * * 0-4'
- 2n-tx2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
- periodicity: '0 2 * * 1,4'
- - 3n-skx:
- os: 'ubuntu2004'
+ periodicity: '30 22 * * 0-4'
+ - 3n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- periodicity: '0 2 * * 1,4'
- - 3n-dnv:
- os: 'ubuntu2004'
- executor-arch: 'x86_64'
- periodicity: '0 2 * * 1,4'
+ periodicity: '30 22 * * 0-4'
- 3n-tsh:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ periodicity: '30 22 * * 0-4'
+ - 3n-alt:
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
- periodicity: '0 2 * * 4'
- - 'csit-vpp-perf-mrr-weekly-{stream}-{node-arch}':
+ periodicity: '30 22 * * 0-4'
+ - 3n-snr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ periodicity: '30 22 * * 0-4'
+ - 3n-icxd:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ periodicity: '30 22 * * 0-4'
+ - 3na-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ periodicity: '30 22 * * 0-4'
+ - 3nb-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ periodicity: '30 22 * * 0-4'
+ - 'csit-vpp-perf-hoststack-daily-master-{node-arch}':
node-arch:
+ - 2n-icx:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ periodicity: '30 22 * * 0-4'
+ - 2n-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ periodicity: '30 22 * * 0-4'
+ - 3n-icx:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ periodicity: '30 22 * * 0-4'
+ - 3na-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ periodicity: '30 22 * * 0-4'
+ - 3nb-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ periodicity: '30 22 * * 0-4'
+ - 'csit-vpp-perf-mrr-weekly-master-{node-arch}':
+ node-arch:
+ - 2n-icx:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ periodicity: '0 0 * * 6'
- 2n-clx:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-skx:
- os: 'ubuntu2004'
+ periodicity: '0 0 * * 6'
+ - 2n-aws:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 3n-skx:
- os: 'ubuntu2004'
+ periodicity: '0 0 * * 1'
+ - 2n-c6in:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ periodicity: '0 0 * * 1'
+ - 2n-c7gn:
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ periodicity: '0 0 * * 1'
+ - 'csit-vpp-perf-soak-weekly-master-{node-arch}':
+ node-arch:
+ - 2n-icx:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-clx:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-icx:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-icxd:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- stream:
- - master:
- branch: 'master'
- branch-id: 'oper'
- - '2009_lts':
- branch: 'rls2009_lts'
- branch-id: 'oper-rls2009_lts'
periodicity: '0 0 * * 6'
+ - 'csit-trex-perf-ndrpdr-weekly-master-{node-arch}':
+ node-arch:
+ - 1n-aws:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ periodicity: '0 0 * * 6'
+ - 2n-icx:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ periodicity: '0 0 * * 6'
+ - 2n-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ periodicity: '0 0 * * 6'
- 'csit-vpp-perf-ndrpdr-weekly-master-{node-arch}':
node-arch:
+ - 2n-icx:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
- 2n-clx:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-spr:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-skx:
- os: 'ubuntu2004'
+ - 2n-zn2:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-tx2:
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ - 3n-icx:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-tsh:
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ - 3n-alt:
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ - 3n-snr:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 3n-skx:
- os: 'ubuntu2004'
+ - 3n-icxd:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3na-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3nb-spr:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
periodicity: '0 0 * * 6'
- 'csit-vpp-perf-report-iterative-{stream_report}-{node-arch}':
node-arch:
- - 2n-clx:
- os: 'ubuntu2004'
+ - 2n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-skx:
- os: 'ubuntu2004'
+ - 2n-clx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-dnv:
- os: 'ubuntu2004'
+ - 2n-spr:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 2n-zn2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 2n-tx2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
- - 3n-skx:
- os: 'ubuntu2004'
- executor-arch: 'x86_64'
- - 3n-dnv:
- os: 'ubuntu2004'
+ - 3n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 3n-tsh:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ - 3n-alt:
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ - 2n-aws:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-c6in:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-c7gn:
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
+ - 3n-aws:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-snr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-icxd:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3na-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3nb-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
- 'csit-dpdk-perf-report-iterative-{stream_report}-{node-arch}':
node-arch:
- - 2n-clx:
- os: 'ubuntu2004'
+ - 2n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-skx:
- os: 'ubuntu2004'
+ - 2n-clx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-dnv:
- os: 'ubuntu2004'
+ - 2n-spr:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 2n-zn2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 2n-tx2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
- - 3n-skx:
- os: 'ubuntu2004'
- executor-arch: 'x86_64'
- - 3n-dnv:
- os: 'ubuntu2004'
+ - 3n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 3n-tsh:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
+ - 3n-alt:
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ - 2n-aws:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-aws:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-snr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-icxd:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3na-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3nb-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 'csit-trex-perf-report-iterative-{stream_report}-{node-arch}':
+ node-arch:
+ - 1n-aws:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-icx:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
- 'csit-vpp-perf-report-coverage-{stream_report}-{node-arch}':
node-arch:
- - 2n-clx:
- os: 'ubuntu2004'
+ - 2n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-skx:
- os: 'ubuntu2004'
+ - 2n-clx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-dnv:
- os: 'ubuntu2004'
+ - 2n-spr:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 2n-zn2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 2n-tx2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
- - 3n-skx:
- os: 'ubuntu2004'
- executor-arch: 'x86_64'
- - 3n-dnv:
- os: 'ubuntu2004'
+ - 3n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 3n-tsh:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ - 3n-alt:
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ - 2n-aws:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-c6in:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-c7gn:
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
+ - 3n-aws:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-snr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-icxd:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3na-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3nb-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
- 'csit-dpdk-perf-report-coverage-{stream_report}-{node-arch}':
node-arch:
- - 2n-clx:
- os: 'ubuntu2004'
+ - 2n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-skx:
- os: 'ubuntu2004'
+ - 2n-clx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-dnv:
- os: 'ubuntu2004'
+ - 2n-spr:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 2n-zn2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 2n-tx2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
- - 3n-skx:
- os: 'ubuntu2004'
- executor-arch: 'x86_64'
- - 3n-dnv:
- os: 'ubuntu2004'
+ - 3n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 3n-tsh:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ - 3n-alt:
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ - 2n-aws:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-c6in:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-c7gn:
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
+ - 3n-aws:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-snr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-icxd:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3na-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3nb-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 'csit-trex-perf-report-coverage-{stream_report}-{node-arch}':
+ node-arch:
+ - 1n-aws:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-icx:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 2n-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
project: 'csit'
branch: 'master'
branch-id: 'oper'
- csit-perf-trial-duration: "1.0"
- csit-perf-trial-multiplicity: "10"
+ csit-perf-trial-duration: '1.0'
+ csit-perf-trial-multiplicity: '10'
stream:
- master:
branch: 'master'
branch-id: 'oper'
- - '2009':
- branch: 'rls2009'
- branch-id: 'oper-rls2009'
- - '2009_lts':
- branch: 'rls2009_lts'
- branch-id: 'oper-rls2009_lts'
- - '2101':
- branch: 'rls2101'
- branch-id: 'oper-rls2101'
- - '2106':
- branch: 'rls2106'
- branch-id: 'oper-rls2106'
+ - '2402':
+ branch: 'rls2402'
+ branch-id: 'oper-rls2402'
stream_report:
- - '2106':
- branch: 'rls2106'
- branch-id: 'oper-rls2106'
+ - '2402':
+ branch: 'rls2402'
+ branch-id: 'oper-rls2402'
build-artifact-num-to-keep: 10
@@ -321,10 +568,6 @@
<li>trigger: keyword in comment to csit patch:
<b>csit-{node-arch}-perftest tag_list</b>
</ul>
- <li>executor
- <ul>
- <li>builder-{os}-prod-{executor-arch}
- </ul>
<li>perf test-cases selection
<ul>
<li>test-cases selected using trigger keyword followed by tags
@@ -353,33 +596,27 @@
</ul>
project-type: freestyle
- node: 'builder-{os}-prod-{executor-arch}'
+ node: 'm-builder-{os}-prod-{executor-arch}'
concurrent: true
- archive-artifacts: 'archive/*.*'
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
project: '{project}'
- gerrit-parameter:
branch: '{branch}'
- - gerrit-refspec-parameter
+ - gerrit-refspec-parameter:
+ refspec: '$GERRIT_REFSPEC'
- gerrit-event-type-parameter
- gerrit-event-comment-text-parameter
- csit-perf-trial-duration-parameter:
csit-perf-trial-duration: "{csit-perf-trial-duration}"
- csit-perf-trial-multiplicity-parameter:
csit-perf-trial-multiplicity: "{csit-perf-trial-multiplicity}"
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
# This is a manually-triggered verify job, part of API coverage.
# CRC checking is needed to ensure vpp crc job breaks only when intended.
# Can be removed when this job is no longer needed for full API coverage.
@@ -412,11 +649,6 @@
- ../scripts/csit/perf-verify.sh
publishers:
- - robot:
- output-path: 'archives'
- other-files:
- - '*.*'
-
- fdio-infra-publish
- job-template:
@@ -428,10 +660,6 @@
<ul>
<li>check vpp perf mrr daily
</ul>
- <li>executor
- <ul>
- <li>builder-{os}-prod-{executor-arch}
- </ul>
<li>perf test-cases selection
<ul>
<li>all CSIT VPP MRR perf suites
@@ -445,16 +673,13 @@
</ul>
project-type: freestyle
- node: 'builder-{os}-prod-{executor-arch}'
+ node: 'm-builder-{os}-prod-{executor-arch}'
concurrent: false
- archive-artifacts: 'csit/archive/*.*'
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -465,10 +690,6 @@
csit-perf-trial-duration: "{csit-perf-trial-duration}"
- csit-perf-trial-multiplicity-parameter:
csit-perf-trial-multiplicity: "{csit-perf-trial-multiplicity}"
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
wrappers:
- fdio-infra-wrappers-non-activity-timeout:
@@ -489,25 +710,77 @@
- ../scripts/csit/perf-timed.sh
publishers:
- - robot:
- output-path: 'archives'
- other-files:
- - '*.*'
-
- fdio-infra-publish
- job-template:
- name: 'csit-vpp-perf-mrr-weekly-{stream}-{node-arch}'
+ name: 'csit-vpp-perf-hoststack-daily-master-{node-arch}'
description: |
<ul>
<li>objective
<ul>
- <li>check vpp perf mrr weekly on {node-arch}
+ <li>check vpp perf hoststack daily
</ul>
- <li>executor
+ <li>perf test-cases selection
<ul>
- <li>builder-{os}-prod-{executor-arch}
+ <li>all CSIT VPP HOSTSTACK perf suites
+ </ul>
+ <li>results
+ <ul>
+ <li>jjb verify: PASS/FAIL
+ <li>present: no
+ <li>analyse: csit project (catch malfunctions/degradations)
+ </ul>
+ </ul>
+
+ project-type: freestyle
+ node: 'm-builder-{os}-prod-{executor-arch}'
+ concurrent: false
+ latest-only: false
+
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ - gerrit-parameter:
+ branch: '{branch}'
+ - csit-perf-trial-duration-parameter:
+ csit-perf-trial-duration: "{csit-perf-trial-duration}"
+ - csit-perf-trial-multiplicity-parameter:
+ csit-perf-trial-multiplicity: "{csit-perf-trial-multiplicity}"
+
+ wrappers:
+ - fdio-infra-wrappers-non-activity-timeout:
+ build-timeout: '{build-timeout}'
+
+ triggers:
+ - timed: '{periodicity}'
+
+ builders:
+ - shell: 'echo "BRANCH_ID={branch-id}" > $WORKSPACE/variables.prop'
+ - inject:
+ properties-file: variables.prop
+ - shell:
+ !include-raw-escape:
+ - ../scripts/setup_executor_env.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/csit/perf-timed.sh
+
+ publishers:
+ - fdio-infra-publish
+
+- job-template:
+ name: 'csit-vpp-perf-mrr-weekly-master-{node-arch}'
+
+ description: |
+ <ul>
+ <li>objective
+ <ul>
+ <li>check vpp perf mrr weekly on {node-arch}
</ul>
<li>perf test-cases selection
<ul>
@@ -522,16 +795,13 @@
</ul>
project-type: freestyle
- node: 'builder-{os}-prod-{executor-arch}'
+ node: 'm-builder-{os}-prod-{executor-arch}'
concurrent: false
- archive-artifacts: 'csit/archive/*.*'
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -542,10 +812,6 @@
csit-perf-trial-duration: "{csit-perf-trial-duration}"
- csit-perf-trial-multiplicity-parameter:
csit-perf-trial-multiplicity: "{csit-perf-trial-multiplicity}"
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
wrappers:
- fdio-infra-wrappers-non-activity-timeout:
@@ -566,11 +832,6 @@
- ../scripts/csit/perf-timed.sh
publishers:
- - robot:
- output-path: 'archives'
- other-files:
- - '*.*'
-
- fdio-infra-publish
- job-template:
@@ -582,13 +843,65 @@
<ul>
<li>check vpp perf ndrpdr weekly on {node-arch}
</ul>
- <li>executor
+ <li>perf test-cases selection
+ <ul>
+ <li>pre-selected CSIT VPP NDRPDR perf suites
+ </ul>
+ <li>results
+ <ul>
+ <li>jjb verify: PASS/FAIL
+ <li>present: no
+ <li>analyse: csit project (catch malfunctions/degradations)
+ </ul>
+ </ul>
+ project-type: freestyle
+ node: 'm-builder-{os}-prod-{executor-arch}'
+ concurrent: false
+ latest-only: false
+
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ - gerrit-parameter:
+ branch: '{branch}'
+
+ wrappers:
+ - fdio-infra-wrappers-non-activity-timeout:
+ build-timeout: '{build-timeout}'
+
+ triggers:
+ - timed: '{periodicity}'
+
+ builders:
+ - shell: 'echo "BRANCH_ID={branch-id}" > $WORKSPACE/variables.prop'
+ - inject:
+ properties-file: variables.prop
+ - shell:
+ !include-raw-escape:
+ - ../scripts/setup_executor_env.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/csit/perf-timed.sh
+
+ publishers:
+ - fdio-infra-publish
+
+- job-template:
+ name: 'csit-vpp-perf-soak-weekly-master-{node-arch}'
+
+ description: |
+ <ul>
+ <li>objective
<ul>
- <li>builder-{os}-prod-{executor-arch}
+ <li>check vpp perf soak weekly on {node-arch}
</ul>
<li>perf test-cases selection
<ul>
- <li>pre-selected CSIT VPP NDRPDR perf suites
+ <li>NF Density CSIT VPP SOAK perf suites
</ul>
<li>results
<ul>
@@ -597,27 +910,25 @@
<li>analyse: csit project (catch malfunctions/degradations)
</ul>
</ul>
+
project-type: freestyle
- node: 'builder-{os}-prod-{executor-arch}'
+ node: 'm-builder-{os}-prod-{executor-arch}'
concurrent: false
- archive-artifacts: 'csit/archive/*.*'
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
project: '{project}'
- gerrit-parameter:
branch: '{branch}'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
+ - csit-perf-trial-duration-parameter:
+ csit-perf-trial-duration: "{csit-perf-trial-duration}"
+ - csit-perf-trial-multiplicity-parameter:
+ csit-perf-trial-multiplicity: "{csit-perf-trial-multiplicity}"
wrappers:
- fdio-infra-wrappers-non-activity-timeout:
@@ -638,11 +949,148 @@
- ../scripts/csit/perf-timed.sh
publishers:
- - robot:
- output-path: 'archives'
- other-files:
- - '*.*'
+ - fdio-infra-publish
+- job-template:
+ name: 'csit-trex-perf-ndrpdr-weekly-master-{node-arch}'
+
+ description: |
+ <ul>
+ <li>objective
+ <ul>
+ <li>check trex perf ndrpdr weekly on {node-arch}
+ </ul>
+ <li>perf test-cases selection
+ <ul>
+ <li>pre-selected CSIT TREX NDRPDR perf suites
+ </ul>
+ <li>results
+ <ul>
+ <li>jjb verify: PASS/FAIL
+ <li>present: no
+ <li>analyse: csit project (catch malfunctions/degradations)
+ </ul>
+ </ul>
+ project-type: freestyle
+ node: 'm-builder-{os}-prod-{executor-arch}'
+ concurrent: false
+ latest-only: false
+
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ - gerrit-parameter:
+ branch: '{branch}'
+
+ wrappers:
+ - fdio-infra-wrappers-non-activity-timeout:
+ build-timeout: '{build-timeout}'
+
+ triggers:
+ - timed: '{periodicity}'
+
+ builders:
+ - shell: 'echo "BRANCH_ID={branch-id}" > $WORKSPACE/variables.prop'
+ - inject:
+ properties-file: variables.prop
+ - shell:
+ !include-raw-escape:
+ - ../scripts/setup_executor_env.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/csit/perf-timed.sh
+
+ publishers:
+ - fdio-infra-publish
+
+- job-template:
+ name: 'csit-trex-perf-verify-{stream}-{node-arch}'
+
+ description: |
+ <ul>
+ <li>objective
+ <ul>
+ <li>perf verify - per csit gerrit patch
+ </ul>
+ <li>job
+ <ul>
+ <li>name: <b>csit-trex-perf-verify-{stream}-{node-arch}</b>
+ <li>trigger: keyword in comment to csit patch:
+ <b>csit-trex-{node-arch}-perftest tag_list</b>
+ </ul>
+ <li>perf test-cases selection
+ <ul>
+ <li>test-cases selected using trigger keyword followed by tags
+ <li>all test-cases are labelled with CSIT RF topic tags
+ defined in <i>csit/docs/tag_documentation.rst</i>
+ </ul>
+ <li>proposed keywords
+ <ul>
+ <li>focus on testing specified trex packet processing path
+ <li>format: csit-{node-arch}-perftest tag_list
+ </ul>
+ <li>results
+ <ul>
+ <li>jjb verify: PASS/FAIL
+ <li>present: no
+ <li>analyse: no
+ </ul>
+ </ul>
+
+ project-type: freestyle
+ node: 'm-builder-{os}-prod-{executor-arch}'
+ concurrent: true
+ latest-only: false
+
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ - gerrit-parameter:
+ branch: '{branch}'
+ - gerrit-refspec-parameter:
+ refspec: '$GERRIT_REFSPEC'
+ - gerrit-event-type-parameter
+ - gerrit-event-comment-text-parameter
+ - csit-perf-trial-duration-parameter:
+ csit-perf-trial-duration: "{csit-perf-trial-duration}"
+ - csit-perf-trial-multiplicity-parameter:
+ csit-perf-trial-multiplicity: "{csit-perf-trial-multiplicity}"
+ # This job does not interact with VPP so not setting fail-on-crc-mismatch.
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: 'jenkins-gerrit-credentials'
+ refspec: '$GERRIT_REFSPEC'
+ choosing-strategy: 'gerrit'
+
+ wrappers:
+ - fdio-infra-wrappers-non-activity-timeout:
+ build-timeout: '{build-timeout}'
+
+ triggers:
+ - gerrit-trigger-csit-perftest:
+ project: '{project}'
+ branch: '{branch}'
+ trigger-word: 'csit-trex-{node-arch}-perftest'
+ skip-vote: false
+
+ builders:
+ - shell:
+ !include-raw-escape:
+ - ../scripts/setup_executor_env.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/csit/perf-verify.sh
+
+ publishers:
- fdio-infra-publish
- job-template:
@@ -660,10 +1108,6 @@
<li>trigger: keyword in comment to csit patch:
<b>csit-dpdk-{node-arch}-perftest tag_list</b>
</ul>
- <li>executor
- <ul>
- <li>builder-{os}-prod-{executor-arch}
- </ul>
<li>perf test-cases selection
<ul>
<li>test-cases selected using trigger keyword followed by tags
@@ -687,30 +1131,27 @@
</ul>
project-type: freestyle
- node: 'builder-{os}-prod-{executor-arch}'
+ node: 'm-builder-{os}-prod-{executor-arch}'
concurrent: true
- archive-artifacts: 'archive/*.*'
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
project: '{project}'
- gerrit-parameter:
branch: '{branch}'
+ - gerrit-refspec-parameter:
+ refspec: '$GERRIT_REFSPEC'
+ - gerrit-event-type-parameter
+ - gerrit-event-comment-text-parameter
- csit-perf-trial-duration-parameter:
csit-perf-trial-duration: "{csit-perf-trial-duration}"
- csit-perf-trial-multiplicity-parameter:
csit-perf-trial-multiplicity: "{csit-perf-trial-multiplicity}"
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
scm:
- gerrit-trigger-scm:
@@ -738,11 +1179,6 @@
- ../scripts/csit/perf-verify.sh
publishers:
- - robot:
- output-path: 'archives'
- other-files:
- - '*.*'
-
- fdio-infra-publish
- job-template:
@@ -754,10 +1190,6 @@
<ul>
<li>check dpdk perf mrr weekly
</ul>
- <li>executor
- <ul>
- <li>builder-{os}-prod-{executor-arch}
- </ul>
<li>perf test-cases selection
<ul>
<li>all CSIT DPDK MRR perf suites
@@ -771,16 +1203,13 @@
</ul>
project-type: freestyle
- node: 'builder-{os}-prod-{executor-arch}'
+ node: 'm-builder-{os}-prod-{executor-arch}'
concurrent: false
- archive-artifacts: 'csit/archive/*.*'
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -791,10 +1220,6 @@
csit-perf-trial-duration: "{csit-perf-trial-duration}"
- csit-perf-trial-multiplicity-parameter:
csit-perf-trial-multiplicity: "{csit-perf-trial-multiplicity}"
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
wrappers:
- fdio-infra-wrappers-non-activity-timeout:
@@ -815,11 +1240,6 @@
- ../scripts/csit/perf-timed.sh
publishers:
- - robot:
- output-path: 'archives'
- other-files:
- - '*.*'
-
- fdio-infra-publish
- job-template:
@@ -842,10 +1262,6 @@
<li>trigger example:
csit-vpp-report-iter-{node-arch}-perftest vpp-00
</ul>
- <li>executor
- <ul>
- <li>builder-{os}-prod-{executor-arch}
- </ul>
<li>perf test-cases selection
<ul>
<li>test-cases selected by tags defined in
@@ -862,33 +1278,27 @@
</ul>
project-type: freestyle
- node: 'builder-{os}-prod-{executor-arch}'
+ node: 'm-builder-{os}-prod-{executor-arch}'
concurrent: true
- archive-artifacts: 'archive/*.*'
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
project: '{project}'
- gerrit-parameter:
branch: '{branch}'
- - gerrit-refspec-parameter
+ - gerrit-refspec-parameter:
+ refspec: '$GERRIT_REFSPEC'
- gerrit-event-type-parameter
- gerrit-event-comment-text-parameter
- csit-perf-trial-duration-parameter:
csit-perf-trial-duration: "{csit-perf-trial-duration}"
- csit-perf-trial-multiplicity-parameter:
csit-perf-trial-multiplicity: "{csit-perf-trial-multiplicity}"
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
scm:
- gerrit-trigger-scm:
@@ -916,11 +1326,6 @@
- ../scripts/csit/perf-verify.sh
publishers:
- - robot:
- output-path: 'archives'
- other-files:
- - '*.*'
-
- fdio-infra-publish
- job-template:
@@ -943,10 +1348,6 @@
<li>trigger example:
csit-dpdk-report-iter-{node-arch}-perftest dpdk-00
</ul>
- <li>executor
- <ul>
- <li>builder-{os}-prod-{executor-arch}
- </ul>
<li>perf test-cases selection
<ul>
<li>test-cases selected by tags defined in
@@ -963,33 +1364,27 @@
</ul>
project-type: freestyle
- node: 'builder-{os}-prod-{executor-arch}'
+ node: 'm-builder-{os}-prod-{executor-arch}'
concurrent: true
- archive-artifacts: 'archive/*.*'
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
project: '{project}'
- gerrit-parameter:
branch: '{branch}'
- - gerrit-refspec-parameter
+ - gerrit-refspec-parameter:
+ refspec: '$GERRIT_REFSPEC'
- gerrit-event-type-parameter
- gerrit-event-comment-text-parameter
- csit-perf-trial-duration-parameter:
csit-perf-trial-duration: "{csit-perf-trial-duration}"
- csit-perf-trial-multiplicity-parameter:
csit-perf-trial-multiplicity: "{csit-perf-trial-multiplicity}"
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
scm:
- gerrit-trigger-scm:
@@ -1017,11 +1412,92 @@
- ../scripts/csit/perf-verify.sh
publishers:
- - robot:
- output-path: 'archives'
- other-files:
- - '*.*'
+ - fdio-infra-publish
+
+- job-template:
+ name: 'csit-trex-perf-report-iterative-{stream_report}-{node-arch}'
+
+ description: |
+ <ul>
+ <li>objective
+ <ul>
+ <li>get trex performance iterative data for csit report
+ </ul>
+ <li>job
+ <ul>
+ <li>name:
+ <b>csit-trex-perf-report-iterative-{stream_report}-
+ {node-arch}</b>
+ <li>trigger: keyword in comment to csit patch:
+ <b>csit-trex-report-iter-{node-arch}-perftest
+ test_set_id</b>
+ <li>trigger example:
+ csit-trex-report-iter-{node-arch}-perftest trex-00
+ </ul>
+ <li>perf test-cases selection
+ <ul>
+ <li>test-cases selected by tags defined in
+ <i>csit/docs/job_specs/report_iterative/{node-arch}/
+ test_set_id.md</i>
+ </ul>
+
+ <li>results
+ <ul>
+ <li>jjb verify: PASS/FAIL
+ <li>present: trex performance
+ <li>analyse: trex performance
+ </ul>
+ </ul>
+
+ project-type: freestyle
+ node: 'm-builder-{os}-prod-{executor-arch}'
+ concurrent: true
+ latest-only: false
+
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ - gerrit-parameter:
+ branch: '{branch}'
+ - gerrit-refspec-parameter:
+ refspec: '$GERRIT_REFSPEC'
+ - gerrit-event-type-parameter
+ - gerrit-event-comment-text-parameter
+ - csit-perf-trial-duration-parameter:
+ csit-perf-trial-duration: "{csit-perf-trial-duration}"
+ - csit-perf-trial-multiplicity-parameter:
+ csit-perf-trial-multiplicity: "{csit-perf-trial-multiplicity}"
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: 'jenkins-gerrit-credentials'
+ refspec: '$GERRIT_REFSPEC'
+ choosing-strategy: 'gerrit'
+
+ wrappers:
+ - fdio-infra-wrappers-non-activity-timeout:
+ build-timeout: '{build-timeout}'
+ triggers:
+ - gerrit-trigger-csit-perftest:
+ project: '{project}'
+ branch: '{branch}'
+ trigger-word: 'csit-trex-report-iter-{node-arch}-perftest'
+ skip-vote: false
+
+ builders:
+ - shell:
+ !include-raw-escape:
+ - ../scripts/setup_executor_env.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/csit/perf-verify.sh
+
+ publishers:
- fdio-infra-publish
- job-template:
@@ -1044,10 +1520,6 @@
<li>trigger example:
csit-vpp-report-cov-{node-arch}-perftest ip4-00
</ul>
- <li>executor
- <ul>
- <li>builder-{os}-prod-{executor-arch}
- </ul>
<li>perf test-cases selection
<ul>
<li>test-cases selected by tags defined in
@@ -1064,33 +1536,27 @@
</ul>
project-type: freestyle
- node: 'builder-{os}-prod-{executor-arch}'
+ node: 'm-builder-{os}-prod-{executor-arch}'
concurrent: true
- archive-artifacts: 'archive/*.*'
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
project: '{project}'
- gerrit-parameter:
branch: '{branch}'
- - gerrit-refspec-parameter
+ - gerrit-refspec-parameter:
+ refspec: '$GERRIT_REFSPEC'
- gerrit-event-type-parameter
- gerrit-event-comment-text-parameter
- csit-perf-trial-duration-parameter:
csit-perf-trial-duration: "{csit-perf-trial-duration}"
- csit-perf-trial-multiplicity-parameter:
csit-perf-trial-multiplicity: "{csit-perf-trial-multiplicity}"
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
scm:
- gerrit-trigger-scm:
@@ -1118,11 +1584,6 @@
- ../scripts/csit/perf-verify.sh
publishers:
- - robot:
- output-path: 'archives'
- other-files:
- - '*.*'
-
- fdio-infra-publish
- job-template:
@@ -1145,10 +1606,6 @@
<li>trigger example:
csit-dpdk-report-cov-{node-arch}-perftest dpdk-00
</ul>
- <li>executor
- <ul>
- <li>builder-{os}-prod-{executor-arch}
- </ul>
<li>perf test-cases selection
<ul>
<li>test-cases selected by tags defined in
@@ -1165,33 +1622,27 @@
</ul>
project-type: freestyle
- node: 'builder-{os}-prod-{executor-arch}'
+ node: 'm-builder-{os}-prod-{executor-arch}'
concurrent: true
- archive-artifacts: 'archive/*.*'
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
project: '{project}'
- gerrit-parameter:
branch: '{branch}'
- - gerrit-refspec-parameter
+ - gerrit-refspec-parameter:
+ refspec: '$GERRIT_REFSPEC'
- gerrit-event-type-parameter
- gerrit-event-comment-text-parameter
- csit-perf-trial-duration-parameter:
csit-perf-trial-duration: "{csit-perf-trial-duration}"
- csit-perf-trial-multiplicity-parameter:
csit-perf-trial-multiplicity: "{csit-perf-trial-multiplicity}"
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
scm:
- gerrit-trigger-scm:
@@ -1219,9 +1670,90 @@
- ../scripts/csit/perf-verify.sh
publishers:
- - robot:
- output-path: 'archives'
- other-files:
- - '*.*'
+ - fdio-infra-publish
+
+- job-template:
+ name: 'csit-trex-perf-report-coverage-{stream_report}-{node-arch}'
+
+ description: |
+ <ul>
+ <li>objective
+ <ul>
+ <li>get trex performance coverage data for csit report
+ </ul>
+ <li>job
+ <ul>
+ <li>name:
+ <b>csit-trex-perf-report-coverage-{stream_report}-
+ {node-arch}</b>
+ <li>trigger: keyword in comment to csit patch:
+ <b>csit-trex-report-cov-{node-arch}-perftest
+ test_set_id</b>
+ <li>trigger example:
+ csit-trex-report-cov-{node-arch}-perftest trex-00
+ </ul>
+ <li>perf test-cases selection
+ <ul>
+ <li>test-cases selected by tags defined in
+ <i>csit/docs/job_specs/report_coverage/{node-arch}/
+ test_set_id.md</i>
+ </ul>
+
+ <li>results
+ <ul>
+ <li>jjb verify: PASS/FAIL
+ <li>present: trex performance
+ <li>analyse: trex performance
+ </ul>
+ </ul>
+
+ project-type: freestyle
+ node: 'm-builder-{os}-prod-{executor-arch}'
+ concurrent: true
+ latest-only: false
+
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ - gerrit-parameter:
+ branch: '{branch}'
+ - gerrit-refspec-parameter:
+ refspec: '$GERRIT_REFSPEC'
+ - gerrit-event-type-parameter
+ - gerrit-event-comment-text-parameter
+ - csit-perf-trial-duration-parameter:
+ csit-perf-trial-duration: "{csit-perf-trial-duration}"
+ - csit-perf-trial-multiplicity-parameter:
+ csit-perf-trial-multiplicity: "{csit-perf-trial-multiplicity}"
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: 'jenkins-gerrit-credentials'
+ refspec: '$GERRIT_REFSPEC'
+ choosing-strategy: 'gerrit'
+
+ wrappers:
+ - fdio-infra-wrappers-non-activity-timeout:
+ build-timeout: '{build-timeout}'
+
+ triggers:
+ - gerrit-trigger-csit-perftest:
+ project: '{project}'
+ branch: '{branch}'
+ trigger-word: 'csit-trex-report-cov-{node-arch}-perftest'
+ skip-vote: false
+
+ builders:
+ - shell:
+ !include-raw-escape:
+ - ../scripts/setup_executor_env.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/csit/perf-verify.sh
+
+ publishers:
- fdio-infra-publish
diff --git a/jjb/csit/csit-terraform.yaml b/jjb/csit/csit-terraform.yaml
new file mode 100644
index 00000000..de5998e3
--- /dev/null
+++ b/jjb/csit/csit-terraform.yaml
@@ -0,0 +1,120 @@
+# Copyright (c) 2023 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+- project:
+ name: csit-provision
+ description: 'CSIT Jenkins jobs.'
+
+ jobs:
+ - 'csit-terraform-aws-eb-version-verify-{os}-{executor-arch}'
+ - 'csit-terraform-aws-eb-version-deploy-{os}-{executor-arch}'
+
+ project: 'csit'
+ branch: 'master'
+ os:
+ - 'ubuntu2204'
+ executor-arch: 'x86_64'
+ build-artifact-num-to-keep: 10
+
+- job-template:
+ name: 'csit-terraform-aws-eb-version-verify-{os}-{executor-arch}'
+
+ project-type: freestyle
+ node: 's-builder-{os}-prod-{executor-arch}'
+ concurrent: false
+ latest-only: false
+
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ - gerrit-parameter:
+ branch: '{branch}'
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: 'jenkins-gerrit-credentials'
+ refspec: ''
+ choosing-strategy: 'default'
+
+ wrappers:
+ - fdio-infra-wrappers-non-activity-timeout:
+ build-timeout: '{build-timeout}'
+
+ triggers:
+ - gerrit-trigger-csit-terraform:
+ project: '{project}'
+ branch: '{branch}'
+ trigger-word: 'terraform-cdash-verify'
+ skip-vote: false
+
+ builders:
+ - shell:
+ !include-raw-escape:
+ - ../scripts/setup_executor_env.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/csit/terraform-aws-eb-version-verify.sh
+
+ publishers:
+ - fdio-infra-publish
+
+- job-template:
+ name: 'csit-terraform-aws-eb-version-deploy-{os}-{executor-arch}'
+
+ project-type: freestyle
+ node: 's-builder-{os}-prod-{executor-arch}'
+ concurrent: false
+ latest-only: false
+
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ - gerrit-parameter:
+ branch: '{branch}'
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: 'jenkins-gerrit-credentials'
+ refspec: ''
+ choosing-strategy: 'default'
+
+ wrappers:
+ - fdio-infra-wrappers-non-activity-timeout:
+ build-timeout: '{build-timeout}'
+
+ triggers:
+ - gerrit-trigger-csit-terraform:
+ project: '{project}'
+ branch: '{branch}'
+ trigger-word: 'terraform-cdash-deploy'
+ skip-vote: false
+
+ builders:
+ - shell:
+ !include-raw-escape:
+ - ../scripts/setup_executor_env.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/csit/terraform-aws-eb-version-deploy.sh
+
+ publishers:
+ - fdio-infra-publish
diff --git a/jjb/csit/csit-tox.yaml b/jjb/csit/csit-tox.yaml
index 725d2ff0..0e9d7ffc 100644
--- a/jjb/csit/csit-tox.yaml
+++ b/jjb/csit/csit-tox.yaml
@@ -1,4 +1,4 @@
-# Copyright (c) 2021 Cisco and/or its affiliates.
+# Copyright (c) 2023 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -20,45 +20,33 @@
project: 'csit'
branch: 'master'
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
stream:
- master:
branch: 'master'
- - '2009':
- branch: 'rls2009'
- - '2009_lts':
- branch: 'rls2009_lts'
- - '2101':
- branch: 'rls2101'
- - '2106':
- branch: 'rls2106'
+ - '2402':
+ branch: 'rls2402'
- job-template:
name: 'csit-verify-tox-{stream}-{os}-{executor-arch}'
project-type: freestyle
- node: 'builder-{os}-prod-{executor-arch}'
+ node: 's-builder-{os}-prod-{executor-arch}'
concurrent: true
- archive-artifacts: '*.log'
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
project: '{project}'
- gerrit-parameter:
branch: '{branch}'
- - gerrit-refspec-parameter
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
+ - gerrit-refspec-parameter:
+ refspec: '$GERRIT_REFSPEC'
scm:
- gerrit-trigger-scm:
@@ -112,12 +100,4 @@
- ../scripts/csit/tox.sh
publishers:
- # TODO: Remove this when a voting pylint difference checker
- # with nice enough output is implemented.
- - violations:
- pylint:
- min: 10
- max: 250
- unstable: 250
- pattern: 'pylint.log'
- fdio-infra-publish
diff --git a/jjb/csit/csit-vpp-device.yaml b/jjb/csit/csit-vpp-device.yaml
index 6e619325..dbf3ef93 100644
--- a/jjb/csit/csit-vpp-device.yaml
+++ b/jjb/csit/csit-vpp-device.yaml
@@ -1,4 +1,4 @@
-# Copyright (c) 2021 Cisco and/or its affiliates.
+# Copyright (c) 2023 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -15,48 +15,26 @@
- project:
name: csit-vpp-device
description: 'CSIT jenkins jobs.'
+ jobs:
+ - 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}'
+ - 'csit-vpp-device-semiweekly-{stream}-{os}-{executor-arch}-{node-arch}'
+ - 'csit-vpp-device-weekly-{stream}-{os}-{executor-arch}-{node-arch}'
+ - 'csit-vpp-device-report-coverage-{stream}-{node-arch}':
+ stream:
+ - '2402':
+ branch: 'rls2402'
+ branch-id: 'oper-rls2402'
node-arch:
- - '1n-skx':
- os: 'ubuntu2004'
- executor-arch: 'x86_64'
+ - '1n-alt':
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
make-parallel-jobs: '32'
skip-vote: 'false'
- - '1n-tx2':
- os: 'ubuntu2004'
- executor-arch: 'aarch64'
+ - '1n-spr':
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
make-parallel-jobs: '32'
skip-vote: 'true'
- jobs:
- - 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}'
- - 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}-semiweekly':
- stream:
- - master:
- branch: 'master'
- branch-id: 'oper'
- - '2009_lts':
- branch: 'rls2009_lts'
- branch-id: 'oper-rls2009_lts'
- - '2101':
- branch: 'rls2101'
- branch-id: 'oper-rls2101'
- - '2106':
- branch: 'rls2106'
- branch-id: 'oper-rls2106'
- - 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}-weekly':
- stream:
- - master:
- branch: 'master'
- branch-id: 'oper'
- - '2009_lts':
- branch: 'rls2009_lts'
- branch-id: 'oper-rls2009_lts'
- - '2101':
- branch: 'rls2101'
- branch-id: 'oper-rls2101'
- - '2106':
- branch: 'rls2106'
- branch-id: 'oper-rls2106'
-
project: 'csit'
branch: 'master'
branch-id: 'oper'
@@ -64,15 +42,65 @@
- master:
branch: 'master'
branch-id: 'oper'
- - '2009_lts':
- branch: 'rls2009_lts'
- branch-id: 'oper-rls2009_lts'
- - '2101':
- branch: 'rls2101'
- branch-id: 'oper-rls2101'
- - '2106':
- branch: 'rls2106'
- branch-id: 'oper-rls2106'
+ - '2402':
+ branch: 'rls2402'
+ branch-id: 'oper-rls2402'
+
+- job-template:
+ name: 'csit-vpp-device-report-coverage-{stream}-{node-arch}'
+
+ project-type: freestyle
+ node: 'csit-builder-{os}-prod-{executor-arch}'
+ concurrent: true
+ latest-only: false
+
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ - gerrit-parameter:
+ branch: '{branch}'
+ - make-parallel-jobs-parameter:
+ make-parallel-jobs: '{make-parallel-jobs}'
+ - os-parameter:
+ os: '{os}'
+ - gerrit-refspec-parameter:
+ refspec: '$GERRIT_REFSPEC'
+ - gerrit-event-type-parameter
+ - gerrit-event-comment-text-parameter
+ - csit-fail-on-crc-mismatch-parameter:
+ fail-on-crc-mismatch: 'True'
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: 'jenkins-gerrit-credentials'
+ refspec: '$GERRIT_REFSPEC'
+ choosing-strategy: 'gerrit'
+
+ wrappers:
+ - fdio-infra-wrappers:
+ build-timeout: '{build-timeout}'
+
+ triggers:
+ - gerrit-trigger-csit-perftest:
+ project: '{project}'
+ branch: '{branch}'
+ trigger-word: 'csit-vpp-report-dev-{node-arch}'
+ skip-vote: false
+
+ builders:
+ - shell:
+ !include-raw-escape:
+ - ../scripts/setup_executor_env.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/csit/device-verify.sh
+
+ publishers:
+ - fdio-infra-publish
- job-template:
name: 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}'
@@ -80,14 +108,11 @@
project-type: freestyle
node: 'csit-builder-{os}-prod-{executor-arch}'
concurrent: true
- archive-artifacts: 'archive/*.*'
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -98,13 +123,10 @@
make-parallel-jobs: '{make-parallel-jobs}'
- os-parameter:
os: '{os}'
- - gerrit-refspec-parameter
+ - gerrit-refspec-parameter:
+ refspec: '$GERRIT_REFSPEC'
- gerrit-event-type-parameter
- gerrit-event-comment-text-parameter
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
# This is an automatic verify job, part of API coverage.
# CRC checking is needed to ensure vpp crc job breaks only when intended.
# Unlikely to be removed, as this job is primary source of API coverage.
@@ -136,26 +158,19 @@
- ../scripts/csit/device-verify.sh
publishers:
- - robot:
- output-path: 'archives'
- other-files:
- - '*.*'
- fdio-infra-publish
- job-template:
- name: 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}-semiweekly'
+ name: 'csit-vpp-device-semiweekly-{stream}-{os}-{executor-arch}-{node-arch}'
project-type: freestyle
node: 'csit-builder-{os}-prod-{executor-arch}'
concurrent: false
- archive-artifacts: 'csit/archive/*.*'
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -166,10 +181,6 @@
make-parallel-jobs: '{make-parallel-jobs}'
- os-parameter:
os: '{os}'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
wrappers:
- fdio-infra-wrappers-non-activity-timeout:
@@ -195,26 +206,19 @@
- ../scripts/csit/device-semiweekly.sh
publishers:
- - robot:
- output-path: 'archives'
- other-files:
- - '*.*'
- fdio-infra-publish
- job-template:
- name: 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}-weekly'
+ name: 'csit-vpp-device-weekly-{stream}-{os}-{executor-arch}-{node-arch}'
project-type: freestyle
node: 'csit-builder-{os}-prod-{executor-arch}'
concurrent: false
- archive-artifacts: 'archive/*.*'
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -225,10 +229,6 @@
make-parallel-jobs: '{make-parallel-jobs}'
- os-parameter:
os: '{os}'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
scm:
- git-scm:
@@ -256,8 +256,4 @@
- ../scripts/csit/device-verify.sh
publishers:
- - robot:
- output-path: 'archives'
- other-files:
- - '*.*'
- fdio-infra-publish
diff --git a/jjb/csit/csit.yaml b/jjb/csit/csit.yaml
index 96582923..5bb63fd5 100644
--- a/jjb/csit/csit.yaml
+++ b/jjb/csit/csit.yaml
@@ -1,4 +1,4 @@
-# Copyright (c) 2021 Cisco and/or its affiliates.
+# Copyright (c) 2023 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -13,396 +13,11 @@
---
- project:
- name: csit
- description: 'CSIT Jenkins jobs.'
-
- jobs:
- - 'csit-docs-merge-{stream}-{os}-{executor-arch}'
- - 'csit-report-merge-{stream}-{os}-{executor-arch}'
- - 'csit-trending-daily-master-{os}-{executor-arch}'
- - 'csit-trending-weekly-2009-lts-{os}-{executor-arch}'
-
- project: 'csit'
- branch: 'master'
- os:
- - 'ubuntu2004'
- executor-arch: 'x86_64'
- build-artifact-num-to-keep: 10
- stream:
- - master:
- branch: 'master'
- - '2009_lts':
- branch: 'rls2009_lts'
- - '2101':
- branch: 'rls2101'
- - '2106':
- branch: 'rls2106'
-
-- project:
name: csit-view
views:
- project-view
project-name: csit
-- job-template:
- name: 'csit-docs-merge-{stream}-{os}-{executor-arch}'
-
- project-type: freestyle
- node: 'builder-{os}-prod-{executor-arch}'
- concurrent: true
- allow-empty: 'true'
- fingerprint: false
- only-if-success: true
- default-excludes: false
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
- - maven-exec:
- maven-version: 'mvn33-new'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: ''
- choosing-strategy: 'default'
-
- wrappers:
- - fdio-infra-wrappers-non-activity-timeout:
- build-timeout: '{build-timeout}'
-
- triggers:
- - reverse:
- jobs: 'csit-vpp-device-{stream}-ubuntu1804-1n-skx-weekly'
- result: 'success'
- - gerrit:
- server-name: 'Primary'
- trigger-on:
- - comment-added-contains-event:
- comment-contains-value: 'run-docs'
- projects:
- - project-compare-type: 'ANT'
- project-pattern: '{project}'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- skip-vote:
- successful: true
- failed: true
- unstable: true
- notbuilt: true
-
- builders:
- - maven-target:
- maven-version: 'mvn33-new'
- goals: '--version'
- settings: 'csit-settings'
- settings-type: cfp
- global-settings: 'global-settings'
- global-settings-type: cfp
- - provide-maven-settings:
- settings-file: 'csit-settings'
- global-settings-file: 'global-settings'
- - shell:
- !include-raw-escape:
- - ../scripts/setup_executor_env.sh
- - shell:
- !include-raw-escape:
- - ../scripts/csit/docs.sh
-
- publishers:
- - fdio-infra-publish
-
-- job-template:
- name: 'csit-report-merge-{stream}-{os}-{executor-arch}'
-
- project-type: freestyle
- node: 'builder-{os}-prod-{executor-arch}'
- concurrent: false
- allow-empty: 'true'
- fingerprint: false
- only-if-success: true
- default-excludes: false
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
- - maven-exec:
- maven-version: 'mvn33-new'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'default'
-
- wrappers:
- - fdio-infra-wrappers-non-activity-timeout:
- build-timeout: '{build-timeout}'
-
- triggers:
- - gerrit:
- server-name: 'Primary'
- trigger-on:
- - comment-added-contains-event:
- comment-contains-value: 'run-report'
- projects:
- - project-compare-type: 'ANT'
- project-pattern: '{project}'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- skip-vote:
- successful: true
- failed: true
- unstable: true
- notbuilt: true
-
- builders:
- - maven-target:
- maven-version: 'mvn33-new'
- goals: '--version'
- settings: 'csit-settings'
- settings-type: cfp
- global-settings: 'global-settings'
- global-settings-type: cfp
- - provide-maven-settings:
- settings-file: 'csit-settings'
- global-settings-file: 'global-settings'
- - shell:
- !include-raw-escape:
- - ../scripts/setup_executor_env.sh
- - shell:
- !include-raw-escape:
- - ../scripts/csit/report.sh
-
- publishers:
- - fdio-infra-publish
-
-- job-template:
- name: 'csit-trending-daily-master-{os}-{executor-arch}'
-
- project-type: freestyle
- node: 'builder-{os}-prod-{executor-arch}'
- concurrent: false
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
- - maven-exec:
- maven-version: 'mvn33-new'
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: ''
- choosing-strategy: 'default'
-
- wrappers:
- - fdio-infra-wrappers-non-activity-timeout:
- build-timeout: '{build-timeout}'
-
- triggers:
- - timed: '0 14 * * 1,3,5'
-
- builders:
- - maven-target:
- maven-version: 'mvn33-new'
- goals: '--version'
- settings: 'csit-settings'
- settings-type: cfp
- global-settings: 'global-settings'
- global-settings-type: cfp
- - provide-maven-settings:
- settings-file: 'csit-settings'
- global-settings-file: 'global-settings'
- - shell:
- !include-raw-escape:
- - ../scripts/setup_executor_env.sh
- - shell:
- !include-raw-escape:
- - ../scripts/csit/cpta.sh
-
- publishers:
- - email-ext:
- # yamllint disable-line rule:line-length
- recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
- reply-to: ''
- content-type: 'text'
- subject: 'Failed tests as of $BUILD_TIMESTAMP'
- # yamllint disable-line rule:line-length
- body: |
- Following tests failed in the last trending job runs, listed per testbed type.
-
- ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-failed-tests.txt"}}
-
- always: true
- failure: false
-
- - email-ext:
- # yamllint disable-line rule:line-length
- recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
- reply-to: ''
- content-type: 'text'
- subject: 'Regressions as of $BUILD_TIMESTAMP'
- # yamllint disable-line rule:line-length
- body: |
- Following regressions occured in the last trending job runs, listed per testbed type.
-
- ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-regressions.txt"}}
-
- always: true
- failure: false
-
- - email-ext:
- # yamllint disable-line rule:line-length
- recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
- reply-to: ''
- content-type: 'text'
- subject: 'Progressions as of $BUILD_TIMESTAMP'
- # yamllint disable-line rule:line-length
- body: |
- Following progressions occured in the last trending job runs, listed per testbed type.
-
- ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-progressions.txt"}}
-
- always: true
- failure: false
-
- - fdio-infra-publish
-
-- job-template:
- name: 'csit-trending-weekly-2009-lts-{os}-{executor-arch}'
-
- project-type: freestyle
- node: 'builder-{os}-prod-{executor-arch}'
- concurrent: false
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: 'rls2009_lts'
- - maven-exec:
- maven-version: 'mvn33-new'
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: ''
- choosing-strategy: 'default'
-
- wrappers:
- - fdio-infra-wrappers-non-activity-timeout:
- build-timeout: '{build-timeout}'
-
- triggers:
- - timed: '0 0 * * 1'
-
- builders:
- - maven-target:
- maven-version: 'mvn33-new'
- goals: '--version'
- settings: 'csit-settings'
- settings-type: cfp
- global-settings: 'global-settings'
- global-settings-type: cfp
- - provide-maven-settings:
- settings-file: 'csit-settings'
- global-settings-file: 'global-settings'
- - shell:
- !include-raw-escape:
- - ../scripts/setup_executor_env.sh
- - shell:
- !include-raw-escape:
- - ../scripts/csit/cpta.sh
-
- publishers:
- - email-ext:
- # yamllint disable-line rule:line-length
- recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
- reply-to: ''
- content-type: 'text'
- subject: '2009 LTS: Failed tests as of $BUILD_TIMESTAMP'
- # yamllint disable-line rule:line-length
- body: |
- Following tests failed in the last trending job runs, listed per testbed type.
-
- ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-failed-tests.txt"}}
-
- always: true
- failure: false
-
- - email-ext:
- # yamllint disable-line rule:line-length
- recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
- reply-to: ''
- content-type: 'text'
- subject: '2009 LTS: Regressions as of $BUILD_TIMESTAMP'
- # yamllint disable-line rule:line-length
- body: |
- Following regressions occured in the last trending job runs, listed per testbed type.
-
- ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-regressions.txt"}}
-
- always: true
- failure: false
-
- - email-ext:
- # yamllint disable-line rule:line-length
- recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
- reply-to: ''
- content-type: 'text'
- subject: '2009 LTS: Progressions as of $BUILD_TIMESTAMP'
- # yamllint disable-line rule:line-length
- body: |
- Following progressions occured in the last trending job runs, listed per testbed type.
-
- ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-progressions.txt"}}
-
- always: true
- failure: false
-
- - fdio-infra-publish
-
- project:
name: csit-info
project-name: csit
diff --git a/jjb/global-defaults.yaml b/jjb/global-defaults.yaml
index b4998a3a..aead37a8 100644
--- a/jjb/global-defaults.yaml
+++ b/jjb/global-defaults.yaml
@@ -5,9 +5,6 @@
name: global
build-days-to-keep: 30
- build-num-to-keep: 40
- build-artifact-days-to-keep: -1
- build-artifact-num-to-keep: 5
# Timeout in minutes
build-timeout: 360
build-perf-timeout: 5760
@@ -19,7 +16,6 @@
gerrit-server-name: Primary
jenkins-ssh-credential: jenkins-gerrit-credentials
lftools-version: <1.0.0
- archive-artifacts: ''
# fd.io branch defaults
branch: master
@@ -34,6 +30,13 @@
csit-perf-trial-duration: 1.0
csit-perf-trial-multiplicity: 1
+ # Config for PackageCloud.IO archive of DEB/RPM packages
+ packagecloud-account: fdio
+ packagecloud-repo: staging
+
+ # Release config
+ jenkins-ssh-release-credential: jenkins-release
+
# Sonarcloud
sonarcloud_project_organization: fdio
sonarcloud_api_token: 9ea26e0b0bbe1f436a0df06d61d1e97dc5a3d6e3
diff --git a/jjb/global-macros.yaml b/jjb/global-macros.yaml
index 2fcc4111..2de57c72 100644
--- a/jjb/global-macros.yaml
+++ b/jjb/global-macros.yaml
@@ -25,14 +25,6 @@
description: "Architecture parameter"
- parameter:
- name: archive-artifacts-parameter
- parameters:
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{artifacts}'
- description: "Artifacts to archive on the log server."
-
-- parameter:
name: compiler-parameter
parameters:
- string:
@@ -57,6 +49,14 @@
description: "The OS on which 'make test' is run."
- parameter:
+ name: make-test-multiworker-os-parameter
+ parameters:
+ - string:
+ name: MAKE_TEST_MULTIWORKER_OS
+ default: '{make-test-multiworker-os}'
+ description: "The OS on which 'make test' is run with multiple VPP workers."
+
+- parameter:
name: csit-fail-on-crc-mismatch-parameter
parameters:
- string:
@@ -181,14 +181,6 @@
description: "JJB configured PROJECT parameter to identify a Gerrit project"
- parameter:
- name: repo-name-parameter
- parameters:
- - string:
- name: REPO_NAME
- default: '{repo-name}'
- description: 'Name of repo to which to publish packaging'
-
-- parameter:
name: stream-parameter
parameters:
- string:
@@ -296,6 +288,22 @@
#### TRIGGERS
# Keep 'trigger' entries ordered alphabetically, please.
- trigger:
+ name: gerrit-trigger-build
+ # Comes from hicn, some verify jobs wait for build to pass.
+ triggers:
+ - gerrit:
+ server-name: 'Primary'
+ trigger-on:
+ - comment-added-contains-event:
+ comment-contains-value: 'build_success-{stream}-{os}-{executor-arch}'
+ projects:
+ - project-compare-type: 'ANT'
+ project-pattern: '{name}'
+ branches:
+ - branch-compare-type: 'ANT'
+ branch-pattern: '**/{branch}'
+
+- trigger:
name: gerrit-trigger-checkstyle
# Comes from VPP, some verify jobs wait for checkstyle to pass.
# This macro is to be used for such verify jobs which are voting.
@@ -361,6 +369,27 @@
notbuilt: '{skip-vote}'
- trigger:
+ name: gerrit-trigger-csit-terraform
+ # Manual trigger common for csit-terraform jobs.
+ triggers:
+ - gerrit:
+ server-name: 'Primary'
+ trigger-on:
+ - comment-added-contains-event:
+ comment-contains-value: '{trigger-word}'
+ projects:
+ - project-compare-type: 'ANT'
+ project-pattern: '{project}'
+ branches:
+ - branch-compare-type: 'ANT'
+ branch-pattern: '**/{branch}'
+ skip-vote:
+ successful: '{skip-vote}'
+ failed: '{skip-vote}'
+ unstable: '{skip-vote}'
+ notbuilt: '{skip-vote}'
+
+- trigger:
name: gerrit-trigger-csit-vpp-devicetest-full
# Comes from CSIT, for automatic jobs running device tests with VPP builds.
# The job acts as an automatic verify job for CSIT contributions.
@@ -629,6 +658,103 @@
latest-only: true
- publisher:
+ name: csit-trending-failed
+ publishers:
+ - email-ext:
+ # yamllint disable-line rule:line-length
+ recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
+ reply-to: ''
+ content-type: 'text'
+ subject: '{branch}: Failed tests as of $BUILD_TIMESTAMP'
+ # yamllint disable-line rule:line-length
+ body: |
+ Following tests failed in the last trending job runs, listed per testbed type.
+
+ ${{FILE,path="resources/tools/presentation/_build/_static/vpp/trending-failed-tests.txt"}}
+ failure: false
+ success: true
+
+- publisher:
+ name: csit-trending-failed-job
+ publishers:
+ - email-ext:
+ # yamllint disable-line rule:line-length
+ recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
+ reply-to: ''
+ content-type: 'text'
+ subject: '{branch}: The build number $BUILD_NUMBER of the job $JOB_NAME failed'
+ # yamllint disable-line rule:line-length
+ body: |
+ For more information see $BUILD_URL.
+ failure: true
+ success: false
+
+- publisher:
+ name: csit-trending-progressions
+ publishers:
+ - email-ext:
+ # yamllint disable-line rule:line-length
+ recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
+ reply-to: ''
+ content-type: 'text'
+ subject: '{branch}: Progressions as of $BUILD_TIMESTAMP'
+ # yamllint disable-line rule:line-length
+ body: |
+ Following progressions occured in the last trending job runs, listed per testbed type.
+
+ ${{FILE,path="resources/tools/presentation/_build/_static/vpp/trending-progressions.txt"}}
+ failure: false
+ success: true
+
+- publisher:
+ name: csit-trending-regressions
+ publishers:
+ - email-ext:
+ # yamllint disable-line rule:line-length
+ recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
+ reply-to: ''
+ content-type: 'text'
+ subject: '{branch}: Regressions as of $BUILD_TIMESTAMP'
+ # yamllint disable-line rule:line-length
+ body: |
+ Following regressions occured in the last trending job runs, listed per testbed type.
+
+ ${{FILE,path="resources/tools/presentation/_build/_static/vpp/trending-regressions.txt"}}
+ failure: false
+ success: true
+
+- publisher:
+ name: vpp-dpdk-rdma-version-mismatch
+ publishers:
+ - email-ext:
+ # NOTE: noreply@jenkins.fd.io must be a member of vpp-build@lists.fd.io
+ # for the email to be distributed to the group members.
+ # yamllint disable-line rule:line-length
+ recipients: 'vpp-build@lists.fd.io'
+ reply-to: ''
+ content-type: 'text'
+ subject: '{branch}: vpp-dpdk-rdma-version-mismatch job failed!'
+ # yamllint disable-line rule:line-length
+ body: |
+ Build $BUILD_NUMBER of $JOB_NAME failed.
+ Check $BUILD_URL
+ console log to see if the job failed due to a package version mismatch or
+ a CI infra issue. If the failure was due to a CI infra issue, then
+ there is nothing else to be done.
+
+ However, if there was a package version mismatch, then the MLX driver
+ is NOT being built in the VPP DPDK library. Please push a gerrit change
+ with the updated package version(s) in the version matrix file, resolve
+ any build issues, and merge the change to re-enable the building of the
+ MLX DPDK driver in the VPP DPDK library.
+
+ Thanks,
+ The VPP Build Maintainers
+
+ failure: true
+ success: false
+
+- publisher:
name: email-notification
publishers:
- email-ext:
@@ -648,11 +774,92 @@
- recipients
- publisher:
+ name: fdio-infra-publish-docs
+ # macro to finish up a docs build.
+ #
+ # Handles the following:
+ # - Mapping docs S3 bucket credentials for merge job docs upload
+ # - Cleanup workspace
+ publishers:
+ - postbuildscript:
+ builders:
+ - role: BOTH
+ build-on:
+ - ABORTED
+ - FAILURE
+ - NOT_BUILT
+ - SUCCESS
+ - UNSTABLE
+ build-steps:
+ - fdio-infra-ship-docs
+ mark-unstable-if-failed: true
+ - workspace-cleanup:
+ exclude:
+ # Do not clean up *.jenkins-trigger files for jobs that use a
+ # properties file as input for triggering another build.
+ - "**/*.jenkins-trigger"
+ fail-build: false
+
+- publisher:
+ name: fdio-infra-publish-cov-7day
+ # macro to finish up a verify docs build.
+ #
+ # Handles the following:
+ # - Mapping 7-day retention S3 bucket credentials for verify job docs upload
+ # - Cleanup workspace
+ publishers:
+ - postbuildscript:
+ builders:
+ - role: BOTH
+ build-on:
+ - ABORTED
+ - FAILURE
+ - NOT_BUILT
+ - SUCCESS
+ - UNSTABLE
+ build-steps:
+ - fdio-infra-ship-cov-7day
+ mark-unstable-if-failed: true
+ - workspace-cleanup:
+ exclude:
+ # Do not clean up *.jenkins-trigger files for jobs that use a
+ # properties file as input for triggering another build.
+ - "**/*.jenkins-trigger"
+ fail-build: false
+
+- publisher:
+ name: fdio-infra-publish-docs-7day
+ # macro to finish up a verify docs build.
+ #
+ # Handles the following:
+ # - Mapping 7-day retention S3 bucket credentials for verify job docs upload
+ # - Cleanup workspace
+ publishers:
+ - postbuildscript:
+ builders:
+ - role: BOTH
+ build-on:
+ - ABORTED
+ - FAILURE
+ - NOT_BUILT
+ - SUCCESS
+ - UNSTABLE
+ build-steps:
+ - fdio-infra-ship-docs-7day
+ mark-unstable-if-failed: true
+ - workspace-cleanup:
+ exclude:
+ # Do not clean up *.jenkins-trigger files for jobs that use a
+ # properties file as input for triggering another build.
+ - "**/*.jenkins-trigger"
+ fail-build: false
+
+- publisher:
name: fdio-infra-publish
# macro to finish up a build.
#
# Handles the following:
- # - Shipping logs to Nexus or S3 logs repository
+ # - Shipping logs to S3 logs repository
# - Cleanup workspace
publishers:
- postbuildscript:
@@ -665,9 +872,8 @@
- SUCCESS
- UNSTABLE
build-steps:
- - shell: !include-raw: scripts/post_build_executor_info.sh
- - shell: !include-raw: scripts/post_build_deploy_archives.sh
- - shell: !include-raw: scripts/backup_upload_archives.sh
+ - shell: !include-raw-escape: scripts/post_build_executor_info.sh
+ - shell: !include-raw-escape: scripts/post_build_deploy_archives.sh
- fdio-infra-ship-logs
mark-unstable-if-failed: true
- workspace-cleanup:
@@ -707,6 +913,7 @@
- robot:
output-path: '{output-path}'
other-files: ''
+
# [end] Keep 'publisher' entries ordered alphabetically, please.
#### BUILDERS
@@ -717,40 +924,63 @@
- shell: |
$WORKSPACE/scripts/check-unicode.sh jjb/
-- property:
- name: fdio-infra-properties
- properties:
- - build-discarder:
- days-to-keep: '{build-days-to-keep}'
- num-to-keep: '{build-num-to-keep}'
+- builder:
+ name: fdio-infra-ship-docs
+ builders:
+ - config-file-provider:
+ files:
+ - file-id: "jenkins-s3-docs-ship"
+ target: $HOME/.aws/credentials
+ - shell: !include-raw-escape:
+ - scripts/terraform_s3_docs_ship.sh
+ - shell: !include-raw-escape:
+ - scripts/publish_docs.sh
+ - shell: !include-raw:
+ - ../global-jjb/shell/logs-clear-credentials.sh
+
+- builder:
+ name: fdio-infra-ship-cov-7day
+ builders:
+ - config-file-provider:
+ files:
+ - file-id: "jenkins-s3-vpp-docs-ship"
+ target: $HOME/.aws/credentials
+ - shell: !include-raw-escape:
+ - scripts/terraform_s3_docs_ship.sh
+ - shell: !include-raw-escape:
+ - scripts/publish_cov.sh
+ - shell: !include-raw:
+ - ../global-jjb/shell/logs-clear-credentials.sh
+
+- builder:
+ name: fdio-infra-ship-docs-7day
+ builders:
+ - config-file-provider:
+ files:
+ - file-id: "jenkins-s3-vpp-docs-ship"
+ target: $HOME/.aws/credentials
+ - shell: !include-raw-escape:
+ - scripts/terraform_s3_docs_ship.sh
+ - shell: !include-raw-escape:
+ - scripts/publish_docs.sh
+ - shell: !include-raw:
+ - ../global-jjb/shell/logs-clear-credentials.sh
- builder:
name: fdio-infra-ship-logs
builders:
- # Ensure no pre-existing .netrc files are overriding logs config
- - lf-provide-maven-settings-cleanup
- config-file-provider:
files:
- - file-id: "jenkins-log-archives-settings"
- variable: "SETTINGS_FILE"
- - conditional-step:
- condition-kind: regex-match
- regex: "^.*logs-s3.*"
- label: $S3_BUCKET
- on-evaluation-failure: dont-run
- steps:
- - config-file-provider:
- files:
- - file-id: "jenkins-s3-log-ship"
- target: $HOME/.aws/credentials
- - lf-infra-create-netrc:
- server-id: logs
+ - file-id: "jenkins-s3-log-ship"
+ target: $HOME/.aws/credentials
+ - shell: !include-raw-escape:
+ - scripts/publish_library_py.sh
- shell: !include-raw:
- - ../global-jjb/shell/logs-deploy.sh
+ - scripts/publish_logs.sh
- shell: !include-raw:
- ../global-jjb/shell/logs-clear-credentials.sh
- description-setter:
- regexp: "(^(Nexus|S3) build logs: .*)"
+ regexp: "(^S3 build logs: .*)"
- builder:
name: packer-validate
diff --git a/jjb/hc2vpp/hc2vpp-csit.yaml b/jjb/hc2vpp/hc2vpp-csit.yaml
deleted file mode 100644
index 76ef8741..00000000
--- a/jjb/hc2vpp/hc2vpp-csit.yaml
+++ /dev/null
@@ -1,421 +0,0 @@
----
-- project:
- name: hc2vpp-csit
- description: 'jenkins jobs to test Hc2vpp features.'
- jobs:
- - 'hc2vpp-csit-integration-{stream}-{os}'
- - 'hc2vpp-csit-verify-{stream}-{os}'
- - 'hc2vpp-csit-integration-odl-{odl}-{stream}-{os}'
- - 'hc2vpp-csit-verify-odl-{odl}-{stream}-{os}'
- project: 'hc2vpp'
- build-artifact-num-to-keep: 10
- stream:
- - master:
- branch: 'master'
- repo-stream-part: 'master'
- - '1904':
- branch: 'stable/1904'
- repo-stream-part: 'stable.1904'
-
- os:
- - ubuntu1804:
- repo-os-part: 'ubuntu.bionic.main'
-
- odl: 'neon'
-
-- project:
- name: csit-hc2vpp-perf
- description: 'jenkins jobs to test Hc2vpp performance.'
- jobs:
- - 'hc2vpp-csit-perf-{stream}-{os}'
- project: 'hc2vpp'
- build-artifact-num-to-keep: 10
- stream:
- - master:
- branch: 'master'
- repo-stream-part: 'master'
-
- os:
- - ubuntu1804:
- repo-os-part: 'ubuntu.bionic.main'
-
- odl: 'neon'
-
-- job-template:
- name: 'hc2vpp-csit-integration-{stream}-{os}'
-
- project-type: freestyle
- node: '{os}-builder-4c-4g'
- concurrent: true
- archive-artifacts: '**/csit/archive/*.*'
- latest-only: false
-
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - os-parameter:
- os: '{os}'
- - stream-parameter:
- stream: '{stream}'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
-
- scm:
- - git-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- branch: '{branch}'
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: '{build-timeout}'
-
- triggers:
- - reverse:
- jobs: 'hc2vpp-integration-{stream}-{os}'
- result: 'success'
-
- builders:
- - shell:
- !include-raw-escape: include-raw-hc2vpp-csit-integration.sh
-
- publishers:
- - email-notification:
- email-prefix: '[hc2vpp]'
-
- - robot-report:
- output-path: 'csit/archive'
-
- - lf-infra-publish
-
-- job-template:
- name: 'hc2vpp-csit-verify-{stream}-{os}'
-
- project-type: maven
- node: '{os}-builder-4c-4g'
- jdk: openjdk8-{os}
- concurrent: true
- archive-artifacts: '**/csit/archive/*.*'
- latest-only: false
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
- - os-parameter:
- os: '{os}'
- - maven-project-parameter:
- maven: 'mvn36'
- - maven-exec:
- maven-version: 'mvn36'
- - stream-parameter:
- stream: '{stream}'
- - odl-parameter:
- odl: '{odl}'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: '{build-timeout}'
-
- triggers:
- - gerrit:
- server-name: 'Primary'
- trigger-on:
- - comment-added-contains-event:
- comment-contains-value: 'verify-csit'
- projects:
- - project-compare-type: 'ANT'
- project-pattern: '{project}'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- skip-vote:
- successful: true
- failed: true
- unstable: true
- notbuilt: true
-
- prebuilders:
- - provide-maven-settings:
- settings-file: 'honeycomb-settings'
- global-settings-file: 'global-settings'
- - shell:
- !include-raw-escape: include-raw-hc2vpp-csit-verify-prebuild.sh
-
- maven:
- maven-name: 'mvn36'
- root-pom: 'pom.xml'
- # yamllint disable-line rule:line-length
- goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -DskipTests -Dcheckstyle.skip=true'
- maven-opts: '-Xmx2048m -Dmaven.compile.fork=true'
- settings: 'hc2vpp-settings'
- settings-type: cfp
- global-settings: 'global-settings'
- global-settings-type: cfp
-
- postbuilders:
- - shell:
- !include-raw-escape: include-raw-hc2vpp-csit-verify.sh
-
- publishers:
- - email-notification:
- email-prefix: '[hc2vpp]'
-
- - robot-report:
- output-path: 'csit/archive'
-
- - lf-infra-publish
-
-- job-template:
- name: 'hc2vpp-csit-integration-odl-{odl}-{stream}-{os}'
-
- project-type: freestyle
- node: '{os}-builder-4c-4g'
- concurrent: true
- archive-artifacts: '**/csit/archive/*.*'
- latest-only: false
-
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - os-parameter:
- os: '{os}'
- - stream-parameter:
- stream: '{stream}'
- - odl-parameter:
- odl: '{odl}'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
-
- scm:
- - git-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- branch: '{branch}'
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: '{build-timeout}'
-
- triggers:
- - reverse:
- jobs: 'hc2vpp-integration-{stream}-{os}'
- result: 'success'
-
- builders:
- - shell:
- !include-raw-escape: include-raw-hc2vpp-csit-integration-odl.sh
-
- publishers:
- - email-notification:
- email-prefix: '[hc2vpp]'
-
- - robot-report:
- output-path: 'csit/archive'
-
- - lf-infra-publish
-
-- job-template:
- name: 'hc2vpp-csit-verify-odl-{odl}-{stream}-{os}'
-
- project-type: maven
- node: '{os}-builder-4c-4g'
- jdk: openjdk8-{os}
- concurrent: true
- archive-artifacts: '**/csit/archive/*.*'
- latest-only: false
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
- - os-parameter:
- os: '{os}'
- - maven-project-parameter:
- maven: 'mvn36'
- - maven-exec:
- maven-version: 'mvn36'
- - stream-parameter:
- stream: '{stream}'
- - odl-parameter:
- odl: '{odl}'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: '{build-timeout}'
-
- triggers:
- - gerrit:
- server-name: 'Primary'
- trigger-on:
- - comment-added-contains-event:
- comment-contains-value: 'verify-csit'
- projects:
- - project-compare-type: 'ANT'
- project-pattern: '{project}'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- skip-vote:
- successful: true
- failed: true
- unstable: true
- notbuilt: true
-
- prebuilders:
- - provide-maven-settings:
- settings-file: 'honeycomb-settings'
- global-settings-file: 'global-settings'
- - shell:
- !include-raw-escape: include-raw-hc2vpp-csit-verify-prebuild.sh
-
- maven:
- maven-name: 'mvn36'
- root-pom: 'pom.xml'
- # yamllint disable-line rule:line-length
- goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -DskipTests -Dcheckstyle.skip=true'
- maven-opts: '-Xmx2048m -Dmaven.compile.fork=true'
- settings: 'hc2vpp-settings'
- settings-type: cfp
- global-settings: 'global-settings'
- global-settings-type: cfp
-
- postbuilders:
- - shell:
- !include-raw-escape: include-raw-hc2vpp-csit-verify-odl.sh
-
- publishers:
- - email-notification:
- email-prefix: '[hc2vpp]'
-
- - robot-report:
- output-path: 'csit/archive'
-
- - lf-infra-publish
-
-- job-template:
- name: 'hc2vpp-csit-perf-{stream}-{os}'
-
- project-type: freestyle
- node: '{os}-builder-4c-4g'
- concurrent: false
- archive-artifacts: '**/csit/archive/*.*'
- latest-only: false
-
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - os-parameter:
- os: '{os}'
- - stream-parameter:
- stream: '{stream}'
- - odl-parameter:
- odl: '{odl}'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
- scm:
- - gerrit-trigger-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: '{build-timeout}'
-
- triggers:
- - timed: '@weekly'
-
- - gerrit:
- server-name: 'Primary'
- trigger-on:
- - comment-added-contains-event:
- comment-contains-value: 'verify-perf'
-
- projects:
- - project-compare-type: 'ANT'
- project-pattern: '{project}'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- skip-vote:
- successful: false
- failed: false
- unstable: false
- notbuilt: false
-
- builders:
- - shell:
- !include-raw-escape: include-raw-hc2vpp-csit-perf.sh
-
- publishers:
- - robot-report:
- output-path: 'csit/archive'
-
- - lf-infra-publish
-
-- parameter:
- name: odl-parameter
- parameters:
- - string:
- name: ODL
- default: '{odl}'
- description: "ODL version parameter."
diff --git a/jjb/hc2vpp/hc2vpp.yaml b/jjb/hc2vpp/hc2vpp.yaml
deleted file mode 100644
index c8ac1d81..00000000
--- a/jjb/hc2vpp/hc2vpp.yaml
+++ /dev/null
@@ -1,273 +0,0 @@
----
-- project:
- name: hc2vpp
- jobs:
- - 'hc2vpp-verify-{stream}-{os}'
- - 'hc2vpp-merge-{stream}-{os}'
- - 'hc2vpp-integration-{stream}-{os}'
- project: 'hc2vpp'
- os:
- - ubuntu1804:
- repo-os-part: 'ubuntu.bionic.main'
- skip-site: 'false'
- skip-jar-deploy: 'false'
- - centos7:
- repo-os-part: 'centos7'
- skip-site: 'true'
- skip-jar-deploy: 'true'
- stream:
- - master:
- branch: 'master'
- repo-stream-part: 'master'
- - '1904':
- branch: 'stable/1904'
- repo-stream-part: 'stable.1904'
-
-- project:
- name: hc2vpp-view
- views:
- - project-view
- project-name: hc2vpp
-
-- job-template:
- name: 'hc2vpp-verify-{stream}-{os}'
- project-type: maven
- node: '{os}-builder-4c-4g'
- concurrent: true
- jdk: openjdk8-{os}
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
- - os-parameter:
- os: '{os}'
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: '{build-timeout}'
-
- triggers:
- - gerrit-trigger-patch-submitted:
- name: 'hc2vpp'
- branch: '{branch}'
-
- maven:
- maven-name: 'mvn36'
- root-pom: 'pom.xml'
- # yamllint disable-line rule:line-length
- goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmerge site'
- maven-opts: '-Xmx2048m -Dmaven.compile.fork=true'
- settings: 'hc2vpp-settings'
- settings-type: cfp
- global-settings: 'global-settings'
- global-settings-type: cfp
-
- publishers:
- - email-notification:
- email-prefix: '[hc2vpp]'
- - lf-infra-publish
-
-- job-template:
- name: 'hc2vpp-merge-{stream}-{os}'
- project-type: maven
- node: '{os}-builder-4c-4g'
- jdk: openjdk8-{os}
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - os-parameter:
- os: '{os}'
- - maven-project-parameter:
- maven: 'mvn36'
- - maven-exec:
- maven-version: 'mvn36'
- - repo-name-parameter:
- repo-name: '{repo-stream-part}.{repo-os-part}'
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: ''
- choosing-strategy: 'default'
-
- wrappers:
- - ssh-agent-credentials:
- users:
- - 'jenkins-gerrit-credentials'
- - fdio-infra-wrappers:
- build-timeout: '{build-timeout}'
-
- triggers:
- - gerrit-trigger-patch-merged:
- name: 'hc2vpp'
- branch: '{branch}'
-
- maven:
- maven-name: 'mvn36'
- root-pom: 'pom.xml'
- # yamllint disable-line rule:line-length
- goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmerge -Dsonar -Ddocs.hc.folder=io/fd/hc2vpp -Dmaven.site.skip={skip-site} site -Dmaven.site.deploy.skip={skip-site} site:deploy'
- maven-opts: '-Xmx2048m -Dmaven.compile.fork=true'
- settings: 'hc2vpp-settings'
- settings-type: cfp
- global-settings: 'global-settings'
- global-settings-type: cfp
-
- reporters:
- - findbugs
-
- publishers:
- - sonar:
- jdk: 'openjdk8-{os}'
- language: 'java'
- branch: '{stream}'
- - email-notification:
- email-prefix: '[hc2vpp]'
- - lf-infra-publish
-
-- job-template:
- name: 'hc2vpp-integration-{stream}-{os}'
- project-type: maven
- node: '{os}-builder-4c-4g'
- jdk: openjdk8-{os}
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - os-parameter:
- os: '{os}'
- - stream-parameter:
- stream: '{stream}'
- - maven-project-parameter:
- maven: 'mvn36'
- - maven-exec:
- maven-version: 'mvn36'
- - repo-name-parameter:
- repo-name: '{repo-stream-part}.{repo-os-part}'
- - string:
- name: SKIP_JAR_DEPLOY
- default: '{skip-jar-deploy}'
- # yamllint disable-line rule:line-length
- description: "Skips deployment of hc2vpp jars if variable is set to true"
-
- scm:
- - git-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: ''
- branch: '{branch}'
-
- wrappers:
- - ssh-agent-credentials:
- users:
- - 'jenkins-gerrit-credentials'
- - fdio-infra-wrappers:
- build-timeout: '{build-timeout}'
-
- triggers:
- - reverse:
- jobs: 'jvpp-merge-{stream}-{os},hc2vpp-merge-{stream}-{os}'
- result: 'success'
-
- prebuilders:
- - config-file-provider:
- files:
- - file-id: '.packagecloud'
- target: '/home/jenkins'
- - config-file-provider:
- files:
- - file-id: 'packagecloud_api'
- target: '/home/jenkins'
-
- - shell:
- !include-raw-escape: include-raw-hc2vpp-integration-prebuild.sh
- maven:
- maven-name: 'mvn36'
- root-pom: 'pom.xml'
- # yamllint disable-line rule:line-length
- goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmerge'
- maven-opts: '-Xmx2048m -Dmaven.compile.fork=true'
- settings: 'hc2vpp-settings'
- settings-type: cfp
- global-settings: 'global-settings'
- global-settings-type: cfp
-
- postbuilders:
- - maven-target:
- maven-version: 'mvn36'
- goals: '--version'
- settings: 'hc2vpp-settings'
- settings-type: cfp
- global-settings: 'global-settings'
- global-settings-type: cfp
- - provide-maven-settings:
- settings-file: 'hc2vpp-settings'
- global-settings-file: 'global-settings'
- - shell:
- !include-raw-escape:
- - ../scripts/maven_push_functions.sh
- - include-raw-hc2vpp-pkg-push.sh
- - shell:
- !include-raw-escape:
- - ../scripts/packagecloud_push.sh
- reporters:
- - findbugs
-
- publishers:
- - email-notification:
- email-prefix: '[hc2vpp]'
- - maven-deploy:
- id: ''
- unique-version: true
- deploy-unstable: false
- release-env-var: SKIP_JAR_DEPLOY
- - lf-infra-publish
-
-- project:
- name: hc2vpp-info
- project-name: hc2vpp
- jobs:
- - gerrit-info-yaml-verify
- build-node: centos7-builder-2c-2g
- project: hc2vpp
- branch: master
-
-- project:
- name: hc2vpp-sonar
- project: hc2vpp
- project-name: hc2vpp
- mvn-settings: hc2vpp-settings
- sonarcloud: true
- sonarcloud-project-organization: '{sonarcloud_project_organization}'
- sonarcloud-api-token: '{sonarcloud_api_token}'
- sonarcloud-project-key: '{sonarcloud_project_organization}_{project-name}'
- branch: master
- build-node: centos7-docker-2c-2g
- jobs:
- - gerrit-maven-sonar
diff --git a/jjb/hc2vpp/include-raw-hc2vpp-csit-integration-odl.sh b/jjb/hc2vpp/include-raw-hc2vpp-csit-integration-odl.sh
deleted file mode 100644
index d21d1934..00000000
--- a/jjb/hc2vpp/include-raw-hc2vpp-csit-integration-odl.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/bash
-set -xeu -o pipefail
-
-# Get CSIT branch
-if [[ -f csit-test-branch ]]; then
- chmod +x csit-test-branch
- CSIT_BRANCH=`./csit-test-branch`
-else
- CSIT_BRANCH='master'
-fi
-
-# Clone csit
-git clone https://gerrit.fd.io/r/csit --branch ${CSIT_BRANCH}
-
-# If the git clone fails, complain clearly and exit
-if [[ $? != 0 ]]; then
- echo "Failed to run: git clone https://gerrit.fd.io/r/csit --branch ${CSIT_BRANCH}"
- exit 1
-fi
-
-cd csit
-# execute csit bootstrap script if it exists
-if [[ ! -e bootstrap-hc2vpp-integration-odl.sh ]]
-then
- echo 'ERROR: No bootstrap-hc2vpp-integration.sh found'
- exit 1
-else
- # make sure that bootstrap.sh is executable
- chmod +x bootstrap-hc2vpp-integration-odl.sh
- # run the script
- ./bootstrap-hc2vpp-integration-odl.sh ${STREAM} ${OS} ${ODL}
-fi
-
-# vim: ts=4 ts=4 sts=4 et :
diff --git a/jjb/hc2vpp/include-raw-hc2vpp-csit-integration.sh b/jjb/hc2vpp/include-raw-hc2vpp-csit-integration.sh
deleted file mode 100644
index 84a38183..00000000
--- a/jjb/hc2vpp/include-raw-hc2vpp-csit-integration.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/bash
-set -xeu -o pipefail
-
-# Get CSIT branch
-if [[ -f csit-test-branch ]]; then
- chmod +x csit-test-branch
- CSIT_BRANCH=`./csit-test-branch`
-else
- CSIT_BRANCH='master'
-fi
-
-# Clone csit
-git clone https://gerrit.fd.io/r/csit --branch ${CSIT_BRANCH}
-
-# If the git clone fails, complain clearly and exit
-if [[ $? != 0 ]]; then
- echo "Failed to run: git clone https://gerrit.fd.io/r/csit --branch ${CSIT_BRANCH}"
- exit 1
-fi
-
-cd csit
-# execute csit bootstrap script if it exists
-if [[ ! -e bootstrap-hc2vpp-integration.sh ]]
-then
- echo 'ERROR: No bootstrap-hc2vpp-integration.sh found'
- exit 1
-else
- # make sure that bootstrap.sh is executable
- chmod +x bootstrap-hc2vpp-integration.sh
- # run the script
- ./bootstrap-hc2vpp-integration.sh ${STREAM} ${OS}
-fi
-
-# vim: ts=4 ts=4 sts=4 et :
diff --git a/jjb/hc2vpp/include-raw-hc2vpp-csit-perf.sh b/jjb/hc2vpp/include-raw-hc2vpp-csit-perf.sh
deleted file mode 100644
index bf46af58..00000000
--- a/jjb/hc2vpp/include-raw-hc2vpp-csit-perf.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/bash
-set -xeu -o pipefail
-
-# Get CSIT branch
-if [[ -f csit-test-branch ]]; then
- chmod +x csit-test-branch
- CSIT_BRANCH=`./csit-test-branch`
-else
- CSIT_BRANCH='master'
-fi
-
-# Clone csit
-git clone https://gerrit.fd.io/r/csit --branch ${CSIT_BRANCH}
-
-# If the git clone fails, complain clearly and exit
-if [[ $? != 0 ]]; then
- echo "Failed to run: git clone https://gerrit.fd.io/r/csit --branch ${CSIT_BRANCH}"
- exit 1
-fi
-
-cd csit
-# execute csit bootstrap script if it exists
-if [[ ! -e bootstrap-hc2vpp-perf.sh ]]
-then
- echo 'ERROR: No bootstrap-hc2vpp-perf.sh found'
- exit 1
-else
- # make sure that bootstrap.sh is executable
- chmod +x bootstrap-hc2vpp-perf.sh
- # run the script
- ./bootstrap-hc2vpp-perf.sh ${STREAM} ${OS} ${ODL}
-fi
-
-# vim: ts=4 ts=4 sts=4 et :
diff --git a/jjb/hc2vpp/include-raw-hc2vpp-csit-verify-odl.sh b/jjb/hc2vpp/include-raw-hc2vpp-csit-verify-odl.sh
deleted file mode 100644
index 271668d5..00000000
--- a/jjb/hc2vpp/include-raw-hc2vpp-csit-verify-odl.sh
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/bin/bash
-set -xeu -o pipefail
-
-# Figure out what system we are running on
-if [[ -f /etc/lsb-release ]];then
- . /etc/lsb-release
-elif [[ -f /etc/redhat-release ]];then
- sudo yum install -y redhat-lsb
- DISTRIB_ID=`lsb_release -si`
- DISTRIB_RELEASE=`lsb_release -sr`
- DISTRIB_CODENAME=`lsb_release -sc`
- DISTRIB_DESCRIPTION=`lsb_release -sd`
-fi
-echo "----- OS INFO -----"
-echo DISTRIB_ID: ${DISTRIB_ID}
-echo DISTRIB_RELEASE: ${DISTRIB_RELEASE}
-echo DISTRIB_CODENAME: ${DISTRIB_CODENAME}
-echo DISTRIB_DESCRIPTION: ${DISTRIB_DESCRIPTION}
-DISTRIB_ID="Ubuntu"
-if [[ "$DISTRIB_ID" != "Ubuntu" ]]; then
- echo 'ERROR: Only Ubuntu is supported currently.'
- exit 2
-fi
-
-# create HC .deb packages
-./packaging/deb/${DISTRIB_CODENAME}/debuild.sh
-cp ./packaging/deb/${DISTRIB_CODENAME}/*.deb ${WORKSPACE}/csit
-
-cd ${WORKSPACE}/csit
-# execute csit bootstrap script if it exists
-if [[ ! -e bootstrap-hc2vpp-verify.sh ]]
-then
- echo 'ERROR: No bootstrap-hc2vpp-verify.sh found'
- exit 1
-else
- # make sure that bootstrap.sh is executable
- chmod +x bootstrap-hc2vpp-verify.sh
- # run the script
- ./bootstrap-hc2vpp-verify-odl.sh ${OS} ${ODL}
-fi
-
-# vim: ts=4 ts=4 sts=4 et : \ No newline at end of file
diff --git a/jjb/hc2vpp/include-raw-hc2vpp-csit-verify-prebuild.sh b/jjb/hc2vpp/include-raw-hc2vpp-csit-verify-prebuild.sh
deleted file mode 100644
index 8e0c4ef9..00000000
--- a/jjb/hc2vpp/include-raw-hc2vpp-csit-verify-prebuild.sh
+++ /dev/null
@@ -1,89 +0,0 @@
-#!/bin/bash
-set -xe -o pipefail
-
-# Parse optional arguments from gerrit comment trigger
-for i in ${GERRIT_EVENT_COMMENT_TEXT}; do
- case ${i} in
- *honeycomb=*)
- hc_commit_id=`echo "${i}" | cut -d = -f2-`
- ;;
- *jvpp=*)
- jvpp_commit_id=`echo "${i}" | cut -d = -f2-`
- ;;
- *vpp=*)
- vpp_commit_id=`echo "${i}" | cut -d = -f2-`
- ;;
- *nsh_sfc=*)
- nsh_commit_id=`echo "${i}" | cut -d = -f2-`
- ;;
- *csit=*)
- csit_commit_id=`echo "${i}" | cut -d = -f2-`
- ;;
- *)
- ;;
- esac
-done
-
-# If HC variable is set, clone and build Honeycomb infra from the specified commit
-# Otherwise skip this step, hc2vpp will use Honeycomb snapshots from Nexus
-if [[ -n "${hc_commit_id}" ]]; then
- git clone https://gerrit.fd.io/r/honeycomb
- cd honeycomb
- ref=`git ls-remote -q | grep ${hc_commit_id} | awk '{print $2}'`
- git fetch origin ${ref} && git checkout FETCH_HEAD
- mvn clean install -DskipTests -Dcheckstyle.skip -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -gs "${GLOBAL_SETTINGS_FILE}" -s "${SETTINGS_FILE}"
- if [[ $? != 0 ]]; then
- echo "Honeycomb infra build failed."
- exit 1
- fi
- cd ${WORKSPACE}
- # Clean up when done. Leftover build files interfere with building hc2vpp.
- rm -rf honeycomb
-fi
-
-# TODO: Add option to build custom VPP and NSH packages
-
-# Get CSIT branch from which to test from
-if [[ -f csit-test-branch ]]; then
- chmod +x csit-test-branch
- CSIT_BRANCH=`./csit-test-branch`
-else
- CSIT_BRANCH='master'
-fi
-
-# Clone csit
-git clone https://gerrit.fd.io/r/csit --branch ${CSIT_BRANCH}
-
-# If the git clone fails, complain clearly and exit
-if [[ $? != 0 ]]; then
- echo "Failed to run: git clone https://gerrit.fd.io/r/csit --branch ${CSIT_BRANCH}"
- exit 1
-fi
-
-cd csit
-
-# If CSIT commit ID is given, checkout the specified commit
-if [[ -n "${csit_commit_id}" ]]; then
- # Example:
- # ...
- # e8f326efebb58e28dacb9ebb653baf95aad1448c refs/changes/08/11808/1
- # ...
- ref=`git ls-remote -q | grep ${csit_commit_id} | awk '{print $2}'`
- git fetch origin ${ref} && git checkout FETCH_HEAD
-fi
-
-# Download VPP packages
-if [[ "1807 1810 1901" =~ .*$STREAM.* ]]; then
- # add stable prefix for branches which have older version of package download script
- # This can be removed when support for 1901 branch ends.
- if [[ -n "${jvpp_commit_id}" ]]; then
- echo "Error: Specifying jvpp custom commit is not supported for 1807,1810,1901 stable branches"
- exit 1
- fi
- ./resources/tools/scripts/download_hc_build_pkgs.sh 'stable.'${STREAM} ${OS}
-else
- # master and 1904+ branches use new package-cloud download script
- ./resources/tools/scripts/download_hc_build_pkgs.sh ${STREAM} ${OS} ${jvpp_commit_id}
-fi
-
-cd ${WORKSPACE}
diff --git a/jjb/hc2vpp/include-raw-hc2vpp-csit-verify.sh b/jjb/hc2vpp/include-raw-hc2vpp-csit-verify.sh
deleted file mode 100644
index 21dc80ce..00000000
--- a/jjb/hc2vpp/include-raw-hc2vpp-csit-verify.sh
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/bin/bash
-set -xeu -o pipefail
-
-# Figure out what system we are running on
-if [[ -f /etc/lsb-release ]];then
- . /etc/lsb-release
-elif [[ -f /etc/redhat-release ]];then
- sudo yum install -y redhat-lsb
- DISTRIB_ID=`lsb_release -si`
- DISTRIB_RELEASE=`lsb_release -sr`
- DISTRIB_CODENAME=`lsb_release -sc`
- DISTRIB_DESCRIPTION=`lsb_release -sd`
-fi
-echo "----- OS INFO -----"
-echo DISTRIB_ID: ${DISTRIB_ID}
-echo DISTRIB_RELEASE: ${DISTRIB_RELEASE}
-echo DISTRIB_CODENAME: ${DISTRIB_CODENAME}
-echo DISTRIB_DESCRIPTION: ${DISTRIB_DESCRIPTION}
-
-if [[ "$DISTRIB_ID" != "Ubuntu" ]]; then
- echo 'ERROR: Only Ubuntu is supported currently.'
- exit 2
-fi
-
-# create HC .deb packages
-./packaging/deb/${DISTRIB_CODENAME}/debuild.sh
-cp ./packaging/deb/${DISTRIB_CODENAME}/*.deb ${WORKSPACE}/csit
-
-cd ${WORKSPACE}/csit
-# execute csit bootstrap script if it exists
-if [[ ! -e bootstrap-hc2vpp-verify.sh ]]
-then
- echo 'ERROR: No bootstrap-hc2vpp-verify.sh found'
- exit 1
-else
- # make sure that bootstrap.sh is executable
- chmod +x bootstrap-hc2vpp-verify.sh
- # run the script
- ./bootstrap-hc2vpp-verify.sh ${OS}
-fi
-
-# vim: ts=4 ts=4 sts=4 et : \ No newline at end of file
diff --git a/jjb/hc2vpp/include-raw-hc2vpp-integration-prebuild.sh b/jjb/hc2vpp/include-raw-hc2vpp-integration-prebuild.sh
deleted file mode 100644
index dc4ca43d..00000000
--- a/jjb/hc2vpp/include-raw-hc2vpp-integration-prebuild.sh
+++ /dev/null
@@ -1,95 +0,0 @@
-#!/bin/bash
-
-set -ex
-# Download the latest VPP java API package
-VERSION="RELEASE"
-VERSION=`./jvpp-version`
-
-# Figure out what system we are running on
-if [[ -f /etc/lsb-release ]];then
- . /etc/lsb-release
-elif [[ -f /etc/redhat-release ]];then
- sudo yum install -y redhat-lsb
- DISTRIB_ID=`lsb_release -si`
- DISTRIB_RELEASE=`lsb_release -sr`
- DISTRIB_CODENAME=`lsb_release -sc`
- DISTRIB_DESCRIPTION=`lsb_release -sd`
-fi
-echo "----- OS INFO -----"
-echo DISTRIB_ID: ${DISTRIB_ID}
-echo DISTRIB_RELEASE: ${DISTRIB_RELEASE}
-echo DISTRIB_CODENAME: ${DISTRIB_CODENAME}
-echo DISTRIB_DESCRIPTION: ${DISTRIB_DESCRIPTION}
-
-if [[ "$VERSION" == *"-release" ]]; then
- # at the time when HC2VPP release packages are being build,
- # jvpp release packages are already promoted to release repository.
- # Therefore we need to switch to release repository in order to download
- # correct jvpp package versions
- STREAM="release"
-fi
-
-echo "----- DOWNLOADING PACKAGES -----"
-if ! [[ -z ${REPO_NAME} ]]; then
- REPO_URL="https://packagecloud.io/fdio/${STREAM}"
- echo "REPO_URL: ${REPO_URL}"
- if [[ "$DISTRIB_ID" == "Ubuntu" ]]; then
- if [[ -f /etc/apt/sources.list.d/99fd.io.list ]];then
- echo "Deleting: /etc/apt/sources.list.d/99fd.io.list"
- sudo rm /etc/apt/sources.list.d/99fd.io.list
- fi
- if ! [[ "${STREAM}" == "master" ]]; then
- echo "stable branch - clearing all fdio repos. new one will be installed."
- sudo rm -f /etc/apt/sources.list.d/fdio_*.list
- fi
- curl -s https://packagecloud.io/install/repositories/fdio/${STREAM}/script.deb.sh | sudo bash
- if [[ "${VERSION}" != 'RELEASE' ]]; then
- # download specific version if set
- echo VERSION: ${VERSION}
- apt-get download vpp-api-java=${VERSION} || true
- else
- # download latest version for specified stream
- apt-get download vpp-api-java || true
- fi
-
- elif [[ "$DISTRIB_ID" == "CentOS" ]]; then
- if [[ -f /etc/yum.repos.d/fdio-master.repo ]]; then
- echo "Deleting: /etc/yum.repos.d/fdio-master.repo"
- sudo rm /etc/yum.repos.d/fdio-master.repo
- fi
- curl -s https://packagecloud.io/install/repositories/fdio/${STREAM}/script.rpm.sh | sudo bash
- if [[ "${VERSION}" != 'RELEASE' ]]; then
- # download specific version if set
- echo VERSION: ${VERSION}
- yumdownloader vpp-api-java-${VERSION} || true
- else
- # download latest version for specified stream
- yumdownloader vpp-api-java || true
- fi
- fi
-fi
-
-# install vpp-api-java, this extracts jvpp .jar files into usr/share/java
-if [[ "${OS}" == "centos7" ]]; then
- sudo rpm --nodeps --install vpp-api-java*
-else
- sudo dpkg --ignore-depends=vpp,vpp-plugin-core --install vpp-api-java*
-fi
-sudo rm vpp-api-java*
-
-# install jvpp jars into maven repo, so that maven picks them up when building hc2vpp
-version=`./jvpp/version`
-
-current_dir=`pwd`
-cd /usr/share/java
-
-for item in jvpp*.jar; do
- # Example filename: jvpp-registry-17.01-20161206.125556-1.jar
- # ArtifactId = jvpp-registry
- # Version = 17.01
- basefile=$(basename -s .jar "$item")
- artifactId=$(echo "$basefile" | cut -d '-' -f 1-2)
- mvn install:install-file -Dfile=${item} -DgroupId=io.fd.jvpp -DartifactId=${artifactId} -Dversion=${version} -Dpackaging=jar -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
-done
-
-cd ${current_dir}
diff --git a/jjb/hc2vpp/include-raw-hc2vpp-pkg-push.sh b/jjb/hc2vpp/include-raw-hc2vpp-pkg-push.sh
deleted file mode 100644
index fbf06c02..00000000
--- a/jjb/hc2vpp/include-raw-hc2vpp-pkg-push.sh
+++ /dev/null
@@ -1,83 +0,0 @@
-#!/bin/bash
-set -x
-
-# In case of master branch, update vpp_dependencies file
-# to match vpp-api-java and eliminate Java API mismatches (HC2VPP-102).
-#
-# In order to have control of package dependencies in the release artifacts (HC2VPP-282),
-# the vpp_dependencies file is not modified in case of stable branch
-# (after VPP API freeze, Java API mismatches occur very rarely).
-if [[ "${STREAM}" == "master" ]]; then
- if [[ "${OS}" == "centos7" ]]; then
- # Determine VPP Java API version used in maven build
- JVPP_VERSION=`yum list installed vpp-api-java | grep vpp-api-java | awk '{ printf $2; }'`
- VERSION=`yum deplist vpp-api-java |grep vpp-lib |head -1 | awk '{ print $3}'`
-
- # Write a file that will echo VPP dependencies
- echo -n 'echo' > vpp_dependencies
- echo " \"vpp = ${VERSION}, vpp-plugins = ${VERSION}, vpp-api-java = ${JVPP_VERSION}\"" >> vpp_dependencies
- chmod +x vpp_dependencies
-
- # Overwrite default dependencies file
- mv vpp_dependencies packaging/rpm/
- else
- # Determine VPP Java API version used in maven build
- JVPP_VERSION=`apt list --installed | grep vpp-api-java | awk '{ printf $2; }'`
- # get vpp-api-java package dependencies
- JVPP_DEPS=`apt-cache show vpp-api-java=${JVPP_VERSION} |grep Depends: | sed "s/Depends: //"`
- # separate deps with newline, then find VPP dependency and filter out the version
- VERSION=`echo ${JVPP_DEPS}| sed "s/, /\\n/" |grep "vpp " | sed "s/).*//" |sed "s/.* //"`
-
- # Write a file that will echo VPP dependencies
- echo -n 'echo' > vpp_dependencies
- echo " \"vpp (= ${VERSION}), vpp-plugin-core (= ${VERSION}), vpp-api-java (= ${JVPP_VERSION})\"" >> vpp_dependencies
- chmod +x vpp_dependencies
-
- # Overwrite default dependencies file
- mv vpp_dependencies packaging/deb/common/
- fi
-fi
-
-# Build package
-if [[ "${OS}" == "centos7" ]]; then
-
- # Build the rpms
- ./packaging/rpm/rpmbuild.sh
-
- # Find the files
- RPMS=$(find ./packaging/ -type f -iname '*.rpm')
- SRPMS=$(find ./packaging/ -type f -iname '*.srpm')
- SRCRPMS=$(find ./packaging/ -type f -name '*.src.rpm')
-
- # Publish hc2vpp packages
- for i in ${RPMS} ${SRPMS} ${SRCRPMS}
- do
- push_rpm "$i"
- done
-elif [[ "${OS}" == "ubuntu1604" ]]; then
-
- # Build the debs
- ./packaging/deb/xenial/debuild.sh
-
- # Find the files
- DEBS=$(find ./packaging/ -type f -iname '*.deb')
-
- # Publish hc2vpp packages
- for i in ${DEBS}
- do
- push_deb "$i"
- done
-elif [[ "${OS}" == "ubuntu1804" ]]; then
-
- # Build the debs
- ./packaging/deb/bionic/debuild.sh
-
- # Find the files
- DEBS=$(find ./packaging/ -type f -iname '*.deb')
-
- # Publish hc2vpp packages
- for i in ${DEBS}
- do
- push_deb "$i"
- done
-fi
diff --git a/jjb/hicn/hicn-docs.yaml b/jjb/hicn/hicn-docs.yaml
index 5d748edc..c865faa3 100644
--- a/jjb/hicn/hicn-docs.yaml
+++ b/jjb/hicn/hicn-docs.yaml
@@ -6,18 +6,17 @@
- "hicn-docs-merge-{stream}-{os}-{executor-arch}"
project: "hicn"
- os:
- - ubuntu2004:
- repo-os-part: "ubuntu.focal.main"
-
+ os: ubuntu2004
executor-arch: "x86_64"
-
stream:
- "master":
branch: "master"
+ repo: "hicn"
+ branch-refspec: ""
+ - "2210":
+ branch: "stable/2210"
+ repo: "2210"
branch-refspec: ""
- repo-stream-part: "master"
- repository-name: "hicn"
type:
- short
- long
@@ -28,19 +27,14 @@
project-type: freestyle
node: "builder-{os}-prod-{executor-arch}"
concurrent: true
- archive-artifacts:
- - "**/build-doxygen/lib/doc/html/*"
- - "**/docs/build/html"
allow-empty: "true"
fingerprint: false
only-if-success: true
default-excludes: false
- build-discarder:
- daysToKeep: "{build-days-to-keep}"
- numToKeep: "{build-num-to-keep}"
- artifactDaysToKeep: "{build-artifact-days-to-keep}"
- artifactNumToKeep: "{build-artifact-num-to-keep}"
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -51,14 +45,8 @@
refspec: "{branch-refspec}"
- os-parameter:
os: "{os}"
- - maven-exec:
- maven-version: "mvn33-new"
- stream-parameter:
- stream: "{stream}"
- - string:
- name: ARCHIVE_ARTIFACTS
- default: "{archive-artifacts}"
- description: Artifacts to archive to the logs server.
+ stream: "{repo}"
scm:
- gerrit-trigger-scm:
@@ -71,30 +59,17 @@
build-timeout: "{build-timeout}"
triggers:
- - gerrit-trigger-checkstyle:
+ - gerrit-trigger-checkstyle-nonvoting:
name: "{project}"
branch: "{branch}"
builders:
- - maven-target:
- maven-version: "mvn33-new"
- goals: "--version"
- settings: "hicn-settings"
- settings-type: cfp
- global-settings: "global-settings"
- global-settings-type: cfp
- - provide-maven-settings:
- settings-file: "hicn-settings"
- global-settings-file: "global-settings"
- shell: !include-raw-escape: ../scripts/setup_executor_env.sh
- - shell: !include-raw-escape: include-raw-hicn-docs.sh
+ - shell: !include-raw-escape: ../scripts/hicn/docs.sh
publishers:
+ - fdio-infra-publish-docs-7day
- fdio-infra-publish
- - naginator:
- rerun-unstable-builds: false
- max-failed-builds: 1
- fixed-delay: 90
- job-template:
name: "hicn-docs-merge-{stream}-{os}-{executor-arch}"
@@ -102,19 +77,14 @@
project-type: freestyle
node: "builder-{os}-prod-{executor-arch}"
concurrent: false
- archive-artifacts:
- - "**/build-doxygen/lib/doc/html/*"
- - "**/docs/build/html"
allow-empty: "true"
fingerprint: false
only-if-success: true
default-excludes: false
- build-discarder:
- daysToKeep: "{build-days-to-keep}"
- numToKeep: "{build-num-to-keep}"
- artifactDaysToKeep: "{build-artifact-days-to-keep}"
- artifactNumToKeep: "{build-artifact-num-to-keep}"
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -125,14 +95,8 @@
refspec: "{branch-refspec}"
- os-parameter:
os: "{os}"
- - maven-exec:
- maven-version: "mvn33-new"
- stream-parameter:
- stream: "{stream}"
- - string:
- name: ARCHIVE_ARTIFACTS
- default: "{archive-artifacts}"
- description: Artifacts to archive to the logs server.
+ stream: "{repo}"
scm:
- gerrit-trigger-scm:
@@ -146,7 +110,7 @@
triggers:
- reverse:
- jobs: "hicn-merge-{stream}-ubuntu1804"
+ jobs: "hicn-merge-{stream}-{os}-{executor-arch}"
result: "success"
- gerrit:
server-name: "Primary"
@@ -166,22 +130,9 @@
notbuilt: true
builders:
- - maven-target:
- maven-version: "mvn33-new"
- goals: "--version"
- settings: "hicn-settings"
- settings-type: cfp
- global-settings: "global-settings"
- global-settings-type: cfp
- - provide-maven-settings:
- settings-file: "hicn-settings"
- global-settings-file: "global-settings"
- shell: !include-raw-escape: ../scripts/setup_executor_env.sh
- - shell: !include-raw-escape: include-raw-hicn-docs.sh
+ - shell: !include-raw-escape: ../scripts/hicn/docs.sh
publishers:
+ - fdio-infra-publish-docs
- fdio-infra-publish
- - naginator:
- rerun-unstable-builds: false
- max-failed-builds: 1
- fixed-delay: 90
diff --git a/jjb/hicn/hicn.yaml b/jjb/hicn/hicn.yaml
index 93d3b9de..843d8529 100644
--- a/jjb/hicn/hicn.yaml
+++ b/jjb/hicn/hicn.yaml
@@ -1,4 +1,4 @@
-# Copyright (c) 2020 Cisco and/or its affiliates.
+# Copyright (c) 2021 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -13,193 +13,108 @@
---
- project:
- name: hicn-os-eol-x86_64
- jobs:
- - "hicn-verify-{stream}-{os}-{executor-arch}"
- - "hicn-merge-{stream}-{os}-{executor-arch}"
-
- project: "hicn"
- os:
- - centos7:
- repo-os-part: "centos7"
-
- executor-arch: "x86_64"
-
- stream:
- - "2009":
- branch: "stable/2009"
- repo-stream-part: "stable.2009"
- repository-name: "hicn"
- - "2005":
- branch: "stable/2005"
- repo-stream-part: "stable.2005"
- repository-name: "hicn"
-
-- project:
name: hicn-x86_64
jobs:
- - "hicn-verify-{stream}-{os}-{executor-arch}"
+ - "hicn-verify-build-{stream}-{os}-{executor-arch}"
+ - "hicn-verify-functest-{stream}-{os}-{executor-arch}"
- "hicn-merge-{stream}-{os}-{executor-arch}"
-
project: "hicn"
- os:
- - ubuntu1804:
- repo-os-part: "ubuntu.bionic.main"
- - ubuntu2004:
- repo-os-part: "ubuntu.focal.main"
-
+ os: ubuntu2004
executor-arch: "x86_64"
-
stream:
- "master":
branch: "master"
- repo-stream-part: "master"
- repository-name: "hicn"
- - "2009":
- branch: "stable/2009"
- repo-stream-part: "stable.2009"
- repository-name: "hicn"
- - "2005":
- branch: "stable/2005"
- repo-stream-part: "stable.2005"
- repository-name: "hicn"
+ repo: "hicn"
+ - "2210":
+ branch: "stable/2210"
+ repo: "2210"
- project:
- name: hicn-os-in-master-x86_64
+ name: hicn-aarch64
jobs:
- - "hicn-verify-{stream}-{os}-{executor-arch}"
+ - "hicn-verify-build-{stream}-{os}-{executor-arch}"
- "hicn-merge-{stream}-{os}-{executor-arch}"
-
project: "hicn"
- os:
- - centos8:
- repo-os-part: "centos8"
-
- executor-arch: "x86_64"
-
+ os: ubuntu2004
+ executor-arch: "aarch64"
stream:
- "master":
branch: "master"
- repo-stream-part: "master"
- repository-name: "hicn"
+ repo: "hicn"
+ - "2210":
+ branch: "stable/2210"
+ repo: "2210"
- project:
- name: hicn-aarch64
+ name: hicn-misc
jobs:
- - "hicn-verify-{stream}-{os}-{executor-arch}"
- - "hicn-merge-{stream}-{os}-{executor-arch}"
-
+ - "hicn-checkstyle-verify-{stream}-{os}-{executor-arch}"
project: "hicn"
-
- os:
- - ubuntu1804:
- repo-os-part: "ubuntu-arm.bionic.main"
-
- executor-arch: "aarch64"
-
stream:
- - master:
+ - "master":
branch: "master"
- repo-stream-part: "master"
- repository-name: "hicn"
- - "2005":
- branch: "stable/2005"
- repo-stream-part: "stable.2005"
- repository-name: "hicn"
+ repo: "hicn"
+ - "2210":
+ branch: "stable/2210"
+ repo: "2210"
+ os: ubuntu2004
+ executor-arch: "x86_64"
- project:
- name: hicn-beta-x86_64
+ name: hicn-extras-x86_64
jobs:
- - "hicn-verify-{stream}-{os}-{executor-arch}"
-
+ - "hicn-extras-verify-{stream}-{os}-{executor-arch}"
+ - "hicn-extras-build-{stream}-{os}-{executor-arch}"
project: "hicn"
- os:
- - ubuntu1804:
- repo-os-part: "ubuntu.bionic.main"
- - ubuntu2004:
- repo-os-part: "ubuntu.focal.main"
- - centos8:
- repo-os-part: "centos8"
-
+ os: ubuntu2004
executor-arch: "x86_64"
-
stream:
- - lightng:
- branch: "hicn-light-ng"
- repo-stream-part: "hicn-light-ng"
+ - "master":
+ branch: "master"
+ repo: "hicn"
+ - "2210":
+ branch: "stable/2210"
+ repo: "2210"
- project:
- name: hicn-beta-aarch64
+ name: hicn-extras-aarch64
jobs:
- - "hicn-verify-{stream}-{os}-{executor-arch}"
-
+ - "hicn-extras-verify-{stream}-{os}-{executor-arch}"
+ - "hicn-extras-build-{stream}-{os}-{executor-arch}"
project: "hicn"
- os:
- - ubuntu1804:
- repo-os-part: "ubuntu-arm.bionic.main"
-
+ os: ubuntu2004
executor-arch: "aarch64"
-
- stream:
- - lightng:
- branch: "hicn-light-ng"
- repo-stream-part: "hicn-light-ng"
-
-- project:
- name: hicn-misc
- jobs:
- - "hicn-checkstyle-verify-{stream}-{os}-{executor-arch}"
- project: "hicn"
stream:
- - master:
+ - "master":
branch: "master"
- repo-stream-part: "master"
- - lightng:
- branch: "hicn-light-ng"
- repo-stream-part: "hicn-light-ng"
- os:
- - ubuntu2004:
- repo-os-part: "ubuntu.focal.main"
- executor-arch: "x86_64"
+ repo: "hicn"
+ - "2210":
+ branch: "stable/2210"
+ repo: "2210"
- project:
- name: hicn-extras-x86_64
+ name: hicn-vpp-latest-x86_64
jobs:
- - "hicn-extras-verify-{stream}-{os}-{executor-arch}"
- - "hicn-extras-build-{stream}-{os}-{executor-arch}"
+ - "hicn-vpp-latest-verify-{stream}-{os}-{executor-arch}"
project: "hicn"
- os:
- - ubuntu1804:
- repo-os-part: "ubuntu.bionic.main"
- - ubuntu2004:
- repo-os-part: "ubuntu.focal.main"
- - centos8:
- repo-os-part: "centos8"
-
+ os: ubuntu2004
executor-arch: "x86_64"
-
stream:
- - master:
+ - "master":
branch: "master"
- repo-stream-part: "master"
+ repo: "hicn"
- project:
- name: hicn-extras-aarch64
+ name: hicn-vpp-latest-aarch64
jobs:
- - "hicn-extras-verify-{stream}-{os}-{executor-arch}"
- - "hicn-extras-build-{stream}-{os}-{executor-arch}"
-
+ - "hicn-vpp-latest-verify-{stream}-{os}-{executor-arch}"
project: "hicn"
- os:
- - ubuntu1804:
- repo-os-part: "ubuntu-arm.bionic.main"
-
+ os: ubuntu2004
executor-arch: "aarch64"
-
stream:
- - master:
+ - "master":
branch: "master"
- repo-stream-part: "master"
+ repo: "hicn"
- project:
name: hicn-view
@@ -207,19 +122,73 @@
- project-view
project-name: hicn
+- project:
+ name: hicn-sonar
+ jobs:
+ - "hicn-sonar-scanner-{stream}"
+ project: hicn
+ sonarcloud: true
+ sonarcloud-project-organization: "{sonarcloud_project_organization}"
+ sonarcloud-api-token: "{sonarcloud_api_token}"
+ sonarcloud-project-key: "{sonarcloud_project_organization}-{project}"
+ stream:
+ - "master":
+ branch: "master"
+ repo: "hicn"
+ - "2210":
+ branch: "stable/2210"
+ repo: "2210"
+
+- job-template:
+ name: "hicn-sonar-scanner-{stream}"
+
+ project-type: freestyle
+ node: centos7-docker-4c-4g
+ concurrent: true
+
+ parameters:
+ - project-parameter:
+ project: "{project}"
+ - gerrit-parameter:
+ branch: "{branch}"
+ - stream-parameter:
+ stream: "{repo}"
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: "jenkins-gerrit-credentials"
+ refspec: ""
+ choosing-strategy: "default"
+
+ wrappers:
+ - fdio-infra-wrappers:
+ build-timeout: "{build-timeout}"
+
+ triggers:
+ - gerrit-trigger-patch-merged:
+ name: "{project}"
+ branch: "{branch}"
+
+ builders:
+ - inject:
+ properties-content: |
+ SONAR_HOST_URL=https://sonarcloud.io
+ PROJECT_KEY={sonarcloud-project-key}
+ PROJECT_ORGANIZATION={sonarcloud-project-organization}
+ API_TOKEN={sonarcloud-api-token}
+ - shell: !include-raw-escape:
+ - ../scripts/hicn/sonar.sh
+
- job-template:
name: "hicn-checkstyle-verify-{stream}-{os}-{executor-arch}"
project-type: freestyle
node: "builder-{os}-prod-{executor-arch}"
concurrent: true
- archive-artifacts: "**/tmp/hicn-failed-unittests/*/* **/core"
- build-discarder:
- daysToKeep: "{build-days-to-keep}"
- numToKeep: "{build-num-to-keep}"
- artifactDaysToKeep: "{build-artifact-days-to-keep}"
- artifactNumToKeep: "{build-artifact-num-to-keep}"
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -228,10 +197,6 @@
branch: "{branch}"
- os-parameter:
os: "{os}"
- - repo-name-parameter:
- repo-name: "{repo-stream-part}.ubuntu.bionic.main"
- - archive-artifacts-parameter:
- artifacts: '{archive-artifacts}'
scm:
- gerrit-trigger-scm:
@@ -288,7 +253,7 @@
- shell: !include-raw-escape:
- ../scripts/setup_executor_env.sh
- shell: !include-raw-escape:
- - include-raw-hicn-checkstyle.sh
+ - ../scripts/hicn/checkstyle.sh
publishers:
- fdio-infra-publish
@@ -298,17 +263,15 @@
fixed-delay: 90
- job-template:
- name: "hicn-verify-{stream}-{os}-{executor-arch}"
+ name: "hicn-verify-build-{stream}-{os}-{executor-arch}"
project-type: freestyle
node: "builder-{os}-prod-{executor-arch}"
concurrent: true
- build-discarder:
- daysToKeep: "{build-days-to-keep}"
- numToKeep: 100
- artifactDaysToKeep: "{build-artifact-days-to-keep}"
- artifactNumToKeep: "{build-artifact-num-to-keep}"
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -317,12 +280,8 @@
branch: "{branch}"
- os-parameter:
os: "{os}"
- - repo-name-parameter:
- repo-name: "{repo-stream-part}.{repo-os-part}"
- stream-parameter:
- stream: "{stream}"
- - archive-artifacts-parameter:
- artifacts: '{archive-artifacts}'
+ stream: "{repo}"
scm:
- gerrit-trigger-scm:
@@ -335,22 +294,101 @@
build-timeout: 120
triggers:
- - gerrit-trigger-checkstyle:
- name: "{project}"
- branch: "{branch}"
+ - gerrit:
+ server-name: "Primary"
+ trigger-on:
+ - comment-added-contains-event:
+ comment-contains-value: "checkstyle_success"
+ projects:
+ - project-compare-type: "ANT"
+ project-pattern: "{project}"
+ branches:
+ - branch-compare-type: "ANT"
+ branch-pattern: "**/{branch}"
+ # yamllint disable-line rule:line-length
+ notbuilt-message: "Automatic retry of failed jobs may be in process. A proper vote should be set when retry completes."
+ # yamllint disable-line rule:line-length
+ failed-message: "Build failed. No further verify jobs will be started."
+ successful-message: "build_success-{stream}-{os}-{executor-arch}"
+ skip-vote:
+ successful: true
+ failed: true
+ unstable: true
+ notbuilt: true
+ override-votes: true
+ gerrit-build-successful-verified-value: 1
+ gerrit-build-failed-verified-value: 1
+ gerrit-build-unstable-verified-value: 1
+ gerrit-build-notbuilt-verified-value: 1
builders:
- shell: !include-raw-escape:
- ../scripts/setup_executor_env.sh
- shell: !include-raw-escape:
- - include-raw-hicn-build.sh
+ - ../scripts/hicn/build.sh
publishers:
- fdio-infra-publish
- - naginator:
- rerun-unstable-builds: false
- max-failed-builds: 2
- fixed-delay: 90
+ - archive-artifacts:
+ artifacts: "packages/*.deb, packages/*.rpm"
+ - xunit:
+ thresholdmode: "percent"
+ thresholds:
+ - failed:
+ failure: 0
+ types:
+ - gtest:
+ pattern: "**/reports/*report.xml"
+
+- job-template:
+ name: "hicn-verify-functest-{stream}-{os}-{executor-arch}"
+
+ project-type: freestyle
+ node: "ubuntu2004-docker-4c-4g"
+ concurrent: true
+
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
+
+ parameters:
+ - project-parameter:
+ project: "{project}"
+ - gerrit-parameter:
+ branch: "{branch}"
+ - os-parameter:
+ os: "{os}"
+ - stream-parameter:
+ stream: "{repo}"
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: "jenkins-gerrit-credentials"
+ refspec: "$GERRIT_REFSPEC"
+ choosing-strategy: "gerrit"
+
+ wrappers:
+ - fdio-infra-wrappers:
+ build-timeout: 120
+
+ triggers:
+ - gerrit-trigger-build:
+ name: "{project}"
+ branch: "{branch}"
+ stream: "{stream}"
+ os: "{os}"
+ executor-arch: "{executor-arch}"
+
+ builders:
+ - shell: !include-raw-escape:
+ - ../scripts/hicn/functest.sh
+
+ publishers:
+ - robot:
+ output-path: "tests"
+ pass-threshold: 75.0
+ only-critical: false
+ - fdio-infra-publish
- job-template:
name: "hicn-merge-{stream}-{os}-{executor-arch}"
@@ -358,11 +396,9 @@
project-type: freestyle
node: "builder-{os}-prod-{executor-arch}"
- build-discarder:
- daysToKeep: "{build-days-to-keep}"
- numToKeep: 100
- artifactDaysToKeep: "{build-artifact-days-to-keep}"
- artifactNumToKeep: "{build-artifact-num-to-keep}"
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -371,16 +407,8 @@
branch: "{branch}"
- os-parameter:
os: "{os}"
- - maven-project-parameter:
- maven: "mvn33-new"
- - maven-exec:
- maven-version: "mvn33-new"
- stream-parameter:
- stream: "{repository-name}"
- - repo-name-parameter:
- repo-name: "{repo-stream-part}.{repo-os-part}"
- - archive-artifacts-parameter:
- artifacts: '{archive-artifacts}'
+ stream: "{stream}"
scm:
- gerrit-trigger-scm:
@@ -406,48 +434,25 @@
files:
- file-id: "packagecloud_api"
target: "/root/packagecloud_api"
- - maven-target:
- maven-version: "mvn33-new"
- goals: "--version"
- settings: "hicn-settings"
- settings-type: cfp
- global-settings: "global-settings"
- global-settings-type: cfp
- shell: !include-raw-escape:
- ../scripts/setup_executor_env.sh
- shell: !include-raw-escape:
- - include-raw-hicn-checkstyle.sh
+ - ../scripts/hicn/checkstyle.sh
- shell: !include-raw-escape:
- - include-raw-hicn-build.sh
- - provide-maven-settings:
- settings-file: "hicn-settings"
- global-settings-file: "global-settings"
+ - ../scripts/hicn/build.sh
- shell: !include-raw-escape:
- ../scripts/packagecloud_push.sh
- - shell: !include-raw-escape:
- - ../scripts/maven_push_functions.sh
- - include-raw-hicn-maven-push.sh
publishers:
- fdio-infra-publish
- - naginator:
- rerun-unstable-builds: false
- max-failed-builds: 1
- fixed-delay: 90
-
-- project:
- name: hicn-sonar
- project: hicn
- project-name: hicn
- mvn-settings: hicn-settings
- sonarcloud: true
- sonarcloud-project-organization: "{sonarcloud_project_organization}"
- sonarcloud-api-token: "{sonarcloud_api_token}"
- sonarcloud-project-key: "{sonarcloud_project_organization}_{project-name}"
- branch: master
- build-node: centos7-docker-2c-2g
- jobs:
- - gerrit-maven-sonar
+ - xunit:
+ thresholdmode: "percent"
+ thresholds:
+ - failed:
+ failure: 0
+ types:
+ - gtest:
+ pattern: "**/reports/*report.xml"
- job-template:
name: "hicn-extras-verify-{stream}-{os}-{executor-arch}"
@@ -456,11 +461,9 @@
node: "builder-{os}-prod-{executor-arch}"
concurrent: true
- build-discarder:
- daysToKeep: "{build-days-to-keep}"
- numToKeep: 100
- artifactDaysToKeep: "{build-artifact-days-to-keep}"
- artifactNumToKeep: "{build-artifact-num-to-keep}"
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -469,12 +472,8 @@
branch: "{branch}"
- os-parameter:
os: "{os}"
- - repo-name-parameter:
- repo-name: "{repo-stream-part}.{repo-os-part}"
- stream-parameter:
- stream: "{stream}"
- - archive-artifacts-parameter:
- artifacts: '{archive-artifacts}'
+ stream: "{repo}"
scm:
- gerrit-trigger-scm:
@@ -503,14 +502,10 @@
- shell: !include-raw-escape:
- ../scripts/setup_executor_env.sh
- shell: !include-raw-escape:
- - include-raw-hicn-extras-build.sh
+ - ../scripts/hicn/build-extras.sh
publishers:
- fdio-infra-publish
- - naginator:
- rerun-unstable-builds: false
- max-failed-builds: 2
- fixed-delay: 90
- job-template:
name: "hicn-extras-build-{stream}-{os}-{executor-arch}"
@@ -518,11 +513,9 @@
project-type: freestyle
node: "builder-{os}-prod-{executor-arch}"
- build-discarder:
- daysToKeep: "{build-days-to-keep}"
- numToKeep: 100
- artifactDaysToKeep: "{build-artifact-days-to-keep}"
- artifactNumToKeep: "{build-artifact-num-to-keep}"
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -531,16 +524,8 @@
branch: "{branch}"
- os-parameter:
os: "{os}"
- - maven-project-parameter:
- maven: "mvn33-new"
- - maven-exec:
- maven-version: "mvn33-new"
- stream-parameter:
- stream: "hicn"
- - repo-name-parameter:
- repo-name: "{repo-stream-part}.{repo-os-part}"
- - archive-artifacts-parameter:
- artifacts: '{archive-artifacts}'
+ stream: "{repo}"
scm:
- gerrit-trigger-scm:
@@ -574,32 +559,62 @@
files:
- file-id: "packagecloud_api"
target: "/root/packagecloud_api"
- - maven-target:
- maven-version: "mvn33-new"
- goals: "--version"
- settings: "hicn-settings"
- settings-type: cfp
- global-settings: "global-settings"
- global-settings-type: cfp
- shell: !include-raw-escape:
- ../scripts/setup_executor_env.sh
- shell: !include-raw-escape:
- - include-raw-hicn-extras-build.sh
- - provide-maven-settings:
- settings-file: "hicn-settings"
- global-settings-file: "global-settings"
+ - ../scripts/hicn/build-extras.sh
- shell: !include-raw-escape:
- ../scripts/packagecloud_push.sh
+
+ publishers:
+ - fdio-infra-publish
+
+- job-template:
+ name: "hicn-vpp-latest-verify-{stream}-{os}-{executor-arch}"
+
+ project-type: freestyle
+ node: "builder-{os}-prod-{executor-arch}"
+ concurrent: true
+
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
+
+ parameters:
+ - project-parameter:
+ project: "{project}"
+ - gerrit-parameter:
+ branch: "{branch}"
+ - os-parameter:
+ os: "{os}"
+ - stream-parameter:
+ stream: "{repo}"
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: "jenkins-gerrit-credentials"
+ refspec: "$GERRIT_REFSPEC"
+ choosing-strategy: "gerrit"
+
+ wrappers:
+ - fdio-infra-wrappers:
+ build-timeout: 120
+
+ triggers:
+ - timed: "H H * * *"
+ - gerrit-trigger-manually-triggered:
+ comment-trigger-value: "verify-vpp-latest"
+ name: "{project}"
+ branch: "{branch}"
+
+ builders:
+ - shell: !include-raw-escape:
+ - ../scripts/setup_executor_env.sh
- shell: !include-raw-escape:
- - ../scripts/maven_push_functions.sh
- - include-raw-hicn-maven-push.sh
+ - ../scripts/hicn/build-vpp-latest.sh
publishers:
- fdio-infra-publish
- - naginator:
- rerun-unstable-builds: false
- max-failed-builds: 1
- fixed-delay: 90
- project:
name: hicn-info
diff --git a/jjb/hicn/include-raw-hicn-docs.sh b/jjb/hicn/include-raw-hicn-docs.sh
deleted file mode 100644
index f90c8fe8..00000000
--- a/jjb/hicn/include-raw-hicn-docs.sh
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/bin/bash
-set -xe -o pipefail
-
-[ "$DOCS_REPO_URL" ] || DOCS_REPO_URL="https://nexus.fd.io/content/sites/site"
-[ "$PROJECT_PATH" ] || PROJECT_PATH="io/fd/hicn"
-[ "$DOC_FILE" ] || DOC_FILE="hicn.docs.zip"
-[ "$DOC_DIR" ] || DOC_DIR="build-doxygen/lib/doc/html"
-[ "$SITE_DIR" ] || SITE_DIR="build/doc/deploy-site/"
-[ "$RESOURCES_DIR" ] || RESOURCES_DIR=${SITE_DIR}/src/site/resources
-[ "$MVN" ] || MVN="/opt/apache/maven/bin/mvn"
-[ "$VERSION" ] || VERSION=$(git describe --abbrev=0 | egrep -o "([0-9]{1,}\.)+[0-9]{1,}")
-
-echo "Current directory: $(pwd)"
-
-bash scripts/build-packages.sh sphinx
-bash scripts/build-packages.sh doxygen
-
-if [[ ${JOB_NAME} == *merge* ]]; then
- mkdir -p $(dirname ${RESOURCES_DIR})
- mv -f ${DOC_DIR} ${RESOURCES_DIR}
- cd ${SITE_DIR}
- find . -type f '(' -name '*.md5' -o -name '*.dot' -o -name '*.map' ')' -delete
- cat > pom.xml << EOF
- <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>io.fd.hicn</groupId>
- <artifactId>docs</artifactId>
- <version>1.0.0</version>
- <packaging>pom</packaging>
-
- <properties>
- <generateReports>false</generateReports>
- </properties>
-
- <build>
- <extensions>
- <extension>
- <groupId>org.apache.maven.wagon</groupId>
- <artifactId>wagon-webdav-jackrabbit</artifactId>
- <version>2.10</version>
- </extension>
- </extensions>
- </build>
- <distributionManagement>
- <site>
- <id>fdio-site</id>
- <url>dav:${DOCS_REPO_URL}/${PROJECT_PATH}/${VERSION}</url>
- </site>
- </distributionManagement>
- </project>
-EOF
- ${MVN} -B site:site site:deploy -gs "${GLOBAL_SETTINGS_FILE}" -s "${SETTINGS_FILE}" -T 4C
- cd -
-fi
diff --git a/jjb/hicn/include-raw-hicn-maven-push.sh b/jjb/hicn/include-raw-hicn-maven-push.sh
deleted file mode 100644
index 6e3c9a86..00000000
--- a/jjb/hicn/include-raw-hicn-maven-push.sh
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/bin/bash
-set -xe -o pipefail
-echo "*******************************************************************"
-echo "* STARTING PUSH OF PACKAGES TO REPOS"
-echo "* NOTHING THAT HAPPENS BELOW THIS POINT IS RELATED TO BUILD FAILURE"
-echo "*******************************************************************"
-
-[ "$MVN" ] || MVN="/opt/apache/maven/bin/mvn"
-GROUP_ID="io.fd.${PROJECT}"
-BASEURL="${NEXUSPROXY}/content/repositories/fd.io."
-BASEREPOID='fdio-'
-
-if [ "${OS}" == "ubuntu1604" ]; then
- # Find the files
- JARS=$(find . -type f -iname '*.jar')
- DEBS=$(find . -type f -iname '*.deb')
- for i in $JARS
- do
- push_jar "$i"
- done
-
- for i in $DEBS
- do
- push_deb "$i"
- done
-elif [ "${OS}" == "ubuntu1804" ]; then
- # Find the files
- JARS=$(find . -type f -iname '*.jar')
- DEBS=$(find . -type f -iname '*.deb')
- for i in $JARS
- do
- push_jar "$i"
- done
-
- for i in $DEBS
- do
- push_deb "$i"
- done
-elif [ "${OS}" == "centos7" ]; then
- # Find the files
- RPMS=$(find . -type f -iname '*.rpm')
- SRPMS=$(find . -type f -iname '*.srpm')
- SRCRPMS=$(find . -type f -name '*.src.rpm')
- for i in $RPMS $SRPMS $SRCRPMS
- do
- push_rpm "$i"
- done
-fi
diff --git a/jjb/include-raw-deploy-archives.sh b/jjb/include-raw-deploy-archives.sh
deleted file mode 100644
index c51312a0..00000000
--- a/jjb/include-raw-deploy-archives.sh
+++ /dev/null
@@ -1,121 +0,0 @@
-#!/bin/bash
-
-# Copyright (c) 2020 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-echo "---> jjb/include-raw-deploy-archives.sh"
-
-set +e # Do not affect the build result if some part of archiving fails.
-
-ARCHIVES_DIR="$JENKINS_HOSTNAME/$JOB_NAME/$BUILD_NUMBER"
-[ "$LOGS_SERVER" ] || LOGS_SERVER="https://logs.fd.io"
-[ "$LOGS_REPO_URL" ] || LOGS_REPO_URL="https://nexus.fd.io/service/local/repositories/logs"
-
-echo "Build logs: <a href=\"$LOGS_SERVER/$SILO/$ARCHIVES_DIR\">$LOGS_SERVER/$SILO/$ARCHIVES_DIR</a>"
-
-mkdir .archives
-cd .archives/
-
-cat > deploy-archives.xml <<EOF
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>logs</groupId>
- <artifactId>logs</artifactId>
- <version>1.0.0</version>
- <packaging>pom</packaging>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-deploy-plugin</artifactId>
- <version>2.8.2</version>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.sonatype.plugins</groupId>
- <artifactId>maven-upload-plugin</artifactId>
- <version>0.0.1</version>
- <executions>
- <execution>
- <id>publish-site</id>
- <phase>deploy</phase>
- <goals>
- <goal>upload-file</goal>
- </goals>
- <configuration>
- <serverId>logs</serverId>
- <repositoryUrl>$LOGS_REPO_URL/content-compressed</repositoryUrl>
- <file>archives.zip</file>
- <repositoryPath>$SILO</repositoryPath>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-</project>
-EOF
-
-mkdir -p $ARCHIVES_DIR
-mkdir -p $WORKSPACE/archives
-if [ ! -z "${{ARCHIVE_ARTIFACTS}}" ]; then
- pushd $WORKSPACE
- shopt -s globstar # Enable globstar to copy archives
- archive_artifacts=$(echo ${{ARCHIVE_ARTIFACTS}})
- for f in $archive_artifacts; do
- echo "Archiving $f"
- mkdir -p $WORKSPACE/archives/$(dirname $f)
- mv $f $WORKSPACE/archives/$f
- done
- shopt -u globstar # Disable globstar once archives are copied
- popd
-fi
-
-
-# Ignore logging if archives doesn't exist
-mv $WORKSPACE/archives/ $ARCHIVES_DIR > /dev/null 2>&1
-touch $ARCHIVES_DIR/_build-details.txt
-echo "build-url: ${{BUILD_URL}}" >> $ARCHIVES_DIR/_build-details.txt
-env > $ARCHIVES_DIR/_build-enviroment-variables.txt
-
-# capture system info
-touch $ARCHIVES_DIR/_sys-info.txt
-{{
- echo -e "uname -a:\n `uname -a` \n"
- echo -e "df -h:\n `df -h` \n"
- echo -e "free -m:\n `free -m` \n"
- echo -e "nproc:\n `nproc` \n"
- echo -e "lscpu:\n `lscpu` \n"
- echo -e "ip addr:\n `/sbin/ip addr` \n"
-}} 2>&1 | tee -a $ARCHIVES_DIR/_sys-info.txt
-
-# Magic string used to trim console logs at the appropriate level during wget
-echo "-----END_OF_BUILD-----"
-wget -q --timeout=60 -O $ARCHIVES_DIR/console.log ${{BUILD_URL}}consoleText
-wget -q --timeout=60 -O $ARCHIVES_DIR/console-timestamp.log ${{BUILD_URL}}/timestamps?time=HH:mm:ss\&appendLog
-sed -i '/^-----END_OF_BUILD-----$/,$d' $ARCHIVES_DIR/console.log
-sed -i '/^.*-----END_OF_BUILD-----$/,$d' $ARCHIVES_DIR/console-timestamp.log
-
-gzip $ARCHIVES_DIR/*.txt $ARCHIVES_DIR/*.log
-# find and gzip any 'text' files
-find $ARCHIVES_DIR -type f -print0 \
- | xargs -0r file \
- | egrep -e ':.*text.*' \
- | cut -d: -f1 \
- | xargs -d'\n' -r gzip
-
-zip -r archives.zip $JENKINS_HOSTNAME/
-du -sh archives.zip
diff --git a/jjb/scripts/backup_upload_archives.sh b/jjb/scripts/backup_upload_archives.sh
deleted file mode 100755
index b660f868..00000000
--- a/jjb/scripts/backup_upload_archives.sh
+++ /dev/null
@@ -1,189 +0,0 @@
-#!/bin/bash
-
-# Copyright (c) 2021 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-echo "---> jjb/scripts/backup_upload_archives.sh"
-
-PYTHON_SCRIPT="/w/workspace/test-logs/artifact.py"
-
-# This script uploads the artifacts to a backup upload location
-if [ -f "$PYTHON_SCRIPT" ]; then
- echo "WARNING: $PYTHON_SCRIPT already exists - assume backup archive upload already done"
- exit 0
-fi
-
-# the Python code below needs boto3 installed
-python3 -m pip install boto3
-mkdir -p $(dirname "$PYTHON_SCRIPT")
-
-cat >$PYTHON_SCRIPT <<'END_OF_PYTHON_SCRIPT'
-#!/usr/bin/python3
-
-"""Storage utilities library."""
-
-import argparse
-import gzip
-import os
-from mimetypes import MimeTypes
-
-from boto3 import resource
-from botocore.client import Config
-
-ENDPOINT_URL = u"http://storage.service.consul:9000"
-AWS_ACCESS_KEY_ID = u"storage"
-AWS_SECRET_ACCESS_KEY = u"Storage1234"
-REGION_NAME = u"yul1"
-COMPRESS_MIME = (
- u"text/html",
- u"text/xml",
- u"application/octet-stream"
-)
-
-
-def compress(src_fpath):
- """Compress a single file.
-
- :param src_fpath: Input file path.
- :type src_fpath: str
- """
- with open(src_fpath, u"rb") as orig_file:
- with gzip.open(src_fpath + ".gz", u"wb") as zipped_file:
- zipped_file.writelines(orig_file)
-
-
-def upload(storage, bucket, src_fpath, dst_fpath):
- """Upload single file to destination bucket.
-
- :param storage: S3 storage resource.
- :param bucket: S3 bucket name.
- :param src_fpath: Input file path.
- :param dst_fpath: Destination file path on remote storage.
- :type storage: Object
- :type bucket: str
- :type src_fpath: str
- :type dst_fpath: str
- """
- mime_guess = MimeTypes().guess_type(src_fpath)
- mime = mime_guess[0]
- encoding = mime_guess[1]
- if not mime:
- mime = "application/octet-stream"
-
- if mime in COMPRESS_MIME and bucket in "logs" and encoding != "gzip":
- compress(src_fpath)
- src_fpath = src_fpath + ".gz"
- dst_fpath = dst_fpath + ".gz"
-
- extra_args = dict()
- extra_args['ContentType'] = mime
-
- storage.Bucket(bucket + ".fd.io").upload_file(
- src_fpath,
- dst_fpath,
- ExtraArgs=extra_args
- )
- print("https://" + bucket + ".nginx.service.consul/" + dst_fpath)
-
-
-def upload_recursive(storage, bucket, src_fpath):
- """Recursively uploads input folder to destination.
-
- Example:
- - bucket: logs
- - src_fpath: /home/user
- - dst_fpath: logs.fd.io/home/user
-
- :param storage: S3 storage resource.
- :param bucket: S3 bucket name.
- :param src_fpath: Input folder path.
- :type storage: Object
- :type bucket: str
- :type src_fpath: str
- """
- for path, _, files in os.walk(src_fpath):
- for file in files:
- _path = path.replace(src_fpath, u"")
- _dir = src_fpath[1:] if src_fpath[0] == "/" else src_fpath
- _dst_fpath = os.path.normpath(_dir + "/" + _path + "/" + file)
- _src_fpath = os.path.join(path, file)
- upload(storage, bucket, _src_fpath, _dst_fpath)
-
-
-def main():
- """Main function for storage manipulation."""
-
- parser = argparse.ArgumentParser()
- parser.add_argument(
- u"-d", u"--dir", required=True, type=str,
- help=u"Directory to upload to storage."
- )
- parser.add_argument(
- u"-b", u"--bucket", required=True, type=str,
- help=u"Target bucket on storage."
- )
- args = parser.parse_args()
-
- # Create main storage resource.
- storage = resource(
- u"s3",
- endpoint_url=ENDPOINT_URL,
- aws_access_key_id=AWS_ACCESS_KEY_ID,
- aws_secret_access_key=AWS_SECRET_ACCESS_KEY,
- config=Config(
- signature_version=u"s3v4"
- ),
- region_name=REGION_NAME
- )
-
- upload_recursive(
- storage=storage,
- bucket=args.bucket,
- src_fpath=args.dir
- )
-
-
-if __name__ == u"__main__":
- main()
-
-END_OF_PYTHON_SCRIPT
-
-WS_ARCHIVES_DIR="$WORKSPACE/archives"
-TMP_ARCHIVES_DIR="/tmp/archives"
-JENKINS_BUILD_ARCHIVE_DIR="$TMP_ARCHIVES_DIR/$JENKINS_HOSTNAME/$JOB_NAME/$BUILD_NUMBER"
-
-mkdir -p $JENKINS_BUILD_ARCHIVE_DIR
-
-if [ -e "$WS_ARCHIVES_DIR" ]; then
- echo "Found $WS_ARCHIVES_DIR, uploading its contents"
- cp -r $WS_ARCHIVES_DIR/* $JENKINS_BUILD_ARCHIVE_DIR
-else
- echo "No $WS_ARCHIVES_DIR found. Creating a dummy file."
- echo "No archives found while doing backup upload" > "$JENKINS_BUILD_ARCHIVE_DIR/no-archives-found.txt"
-fi
-
-console_log="$JENKINS_BUILD_ARCHIVE_DIR/console.log"
-echo "Downloading Jenkins console log to '$console_log'"
-wget -qO "$console_log" "$BUILD_URL/consoleText"
-
-console_log="$JENKINS_BUILD_ARCHIVE_DIR/console-timestamp.log"
-echo "Downloading Jenkins console timestamp log to '$console_log'"
-wget -qO "$console_log" "$BUILD_URL/timestamps?time=HH:mm:ss&appendLog"
-
-pushd $TMP_ARCHIVES_DIR
-echo "Contents of the archives dir '$TMP_ARCHIVES_DIR':"
-ls -alR $TMP_ARCHIVES_DIR
-archive_cmd="python3 $PYTHON_SCRIPT -d . -b logs"
-echo -e "\nRunning uploader script '$archive_cmd':\n"
-$archive_cmd || echo "Failed to upload logs"
-popd
diff --git a/jjb/cicn/include-raw-cicn-libparc-build.sh b/jjb/scripts/cicn/build-libparc.sh
index 4943501c..967670e3 100644
--- a/jjb/cicn/include-raw-cicn-libparc-build.sh
+++ b/jjb/scripts/cicn/build-libparc.sh
@@ -1,5 +1,5 @@
#!/bin/bash
-# basic build script example
+echo "---> jjb/scripts/cicn/build-libparc.sh"
set -euxo pipefail
IFS=$'\n\t'
diff --git a/jjb/scripts/cicn/build-viper.sh b/jjb/scripts/cicn/build-viper.sh
new file mode 100644
index 00000000..38018b77
--- /dev/null
+++ b/jjb/scripts/cicn/build-viper.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+echo "---> jjb/scripts/cicn/build-viper.sh"
+set -euxo pipefail
+IFS=$'\n\t'
+
+pushd scripts
+bash build-package.sh
+popd
diff --git a/jjb/scripts/cicn/docs-libparc.sh b/jjb/scripts/cicn/docs-libparc.sh
new file mode 100644
index 00000000..0ca4effb
--- /dev/null
+++ b/jjb/scripts/cicn/docs-libparc.sh
@@ -0,0 +1,38 @@
+#!/bin/bash
+echo "---> jjb/scripts/cicn/docs-libparc.sh"
+set -xe -o pipefail
+
+update_cmake_repo() {
+ cat /etc/resolv.conf
+ echo "nameserver 8.8.8.8" | sudo tee -a /etc/resolv.conf
+ cat /etc/resolv.conf
+
+ CMAKE_INSTALL_SCRIPT_URL="https://cmake.org/files/v3.8/cmake-3.8.0-Linux-x86_64.sh"
+ CMAKE_INSTALL_SCRIPT="/tmp/install_cmake.sh"
+ curl ${CMAKE_INSTALL_SCRIPT_URL} > ${CMAKE_INSTALL_SCRIPT}
+
+ sudo mkdir -p /opt/cmake
+ sudo bash ${CMAKE_INSTALL_SCRIPT} --skip-license --prefix=/opt/cmake
+ export PATH=/opt/cmake/bin:$PATH
+}
+
+cd libparc
+
+[ "$DOC_DIR" ] || DOC_DIR="build/documentation/generated-documentation/html"
+[ "$SITE_DIR" ] || SITE_DIR="build/documentation/deploy-site/"
+[ "$RESOURCES_DIR" ] || RESOURCES_DIR=${SITE_DIR}/src/site/resources
+
+update_cmake_repo
+mkdir -p build
+pushd build
+cmake -DDOC_ONLY=ON ..
+make documentation
+popd
+
+if [[ ${JOB_NAME} == *merge* ]]; then
+ mkdir -p $(dirname ${RESOURCES_DIR})
+ mv -f ${DOC_DIR} ${RESOURCES_DIR}
+ cd ${SITE_DIR}
+ find . -type f '(' -name '*.md5' -o -name '*.dot' -o -name '*.map' ')' -delete
+ cd -
+fi
diff --git a/jjb/scripts/csit/cpta.sh b/jjb/scripts/csit/cpta.sh
deleted file mode 100644
index 512fd03b..00000000
--- a/jjb/scripts/csit/cpta.sh
+++ /dev/null
@@ -1,89 +0,0 @@
-#!/bin/bash
-
-# Copyright (c) 2020 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-echo "---> jjb/scripts/csit/cpta.sh"
-
-set -xe -o pipefail
-
-[ "${DOCS_REPO_URL}" ] || DOCS_REPO_URL="https://nexus.fd.io/content/sites/site"
-[ "${PROJECT_PATH}" ] || PROJECT_PATH="io/fd/csit"
-[ "${DOC_DIR}" ] || DOC_DIR="resources/tools/presentation"
-[ "${BUILD_DIR}" ] || BUILD_DIR="${DOC_DIR}/_build"
-[ "${SITE_DIR}" ] || SITE_DIR="build-root/docs/deploy-site"
-[ "${RESOURCES_DIR}" ] || RESOURCES_DIR="${SITE_DIR}/src/site/resources/trending"
-[ "${STATIC_VPP_DIR}" ] || STATIC_VPP_DIR="${RESOURCES_DIR}/_static/vpp"
-[ "${MVN}" ] || MVN="/opt/apache/maven/bin/mvn"
-[ "${FAILED_TESTS}" ] || FAILED_TESTS="${STATIC_VPP_DIR}/trending-failed-tests.txt"
-[ "${REGRESSIONS}" ] || REGRESSIONS="${STATIC_VPP_DIR}/trending-regressions.txt"
-[ "${PROGRESSIONS}" ] || PROGRESSIONS="${STATIC_VPP_DIR}/trending-progressions.txt"
-
-# Create a text file with email body in case the build fails:
-cd "${WORKSPACE}"
-mkdir -p "${STATIC_VPP_DIR}"
-EMAIL_BODY="ERROR: The build number ${BUILD_NUMBER} of the job ${JOB_NAME} failed. For more information see: ${BUILD_URL}"
-echo "${EMAIL_BODY}" > "${FAILED_TESTS}"
-echo "${EMAIL_BODY}" > "${REGRESSIONS}"
-echo "${EMAIL_BODY}" > "${PROGRESSIONS}"
-
-cd "${DOC_DIR}"
-chmod +x ./run_cpta.sh
-STATUS=$(./run_cpta.sh | tail -1)
-
-cd "${WORKSPACE}"
-rm -rf "${SITE_DIR}/"*
-
-mkdir -p "${RESOURCES_DIR}"
-ls "${RESOURCES_DIR}"
-mv -f "${BUILD_DIR}/"* "${RESOURCES_DIR}"
-
-cd "${SITE_DIR}"
-
-cat > pom.xml << EOF
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>io.fd.csit</groupId>
- <artifactId>docs</artifactId>
- <version>1.0.0</version>
- <packaging>pom</packaging>
- <properties>
- <generateReports>false</generateReports>
- </properties>
- <build>
- <extensions>
- <extension>
- <groupId>org.apache.maven.wagon</groupId>
- <artifactId>wagon-webdav-jackrabbit</artifactId>
- <version>2.10</version>
- </extension>
- </extensions>
- </build>
- <distributionManagement>
- <site>
- <id>fdio-site</id>
- <url>dav:${DOCS_REPO_URL}/${PROJECT_PATH}/${GERRIT_BRANCH}</url>
- </site>
- </distributionManagement>
-</project>
-EOF
-
-${MVN} site:site site:deploy -gs "${GLOBAL_SETTINGS_FILE}" -s "${SETTINGS_FILE}" -T 4C
-
-cd -
-
-if [ "${STATUS}" == "PASS" ]; then
- exit 0
-else
- exit 1
-fi
diff --git a/jjb/scripts/csit/device-semiweekly.sh b/jjb/scripts/csit/device-semiweekly.sh
index ff82cb5c..1086b546 100644..100755
--- a/jjb/scripts/csit/device-semiweekly.sh
+++ b/jjb/scripts/csit/device-semiweekly.sh
@@ -21,13 +21,14 @@ set -exuo pipefail
#
# Variables read:
# - WORKSPACE - Jenkins workspace to create csit subdirectory in.
+# - GIT_URL - Git clone URL
# - BRANCH_ID - CSIT operational branch to be used for test.
# Directories updated:
# - ${WORKSPACE}/csit - Created, holding a checked out CSIT repository.
# - Multiple other side effects by entry script(s), see CSIT repository.
cd "${WORKSPACE}"
-git clone https://gerrit.fd.io/r/csit --depth=1 --no-single-branch --no-checkout
+git clone "${GIT_URL}/csit" --depth=1 --no-single-branch --no-checkout
# Check BRANCH_ID value.
if [[ -z "${BRANCH_ID-}" ]]; then
echo "BRANCH_ID not provided => 'oper' belonging to master will be used."
@@ -47,3 +48,4 @@ git checkout "${BRANCH_NAME}"
popd
csit_entry_dir="${WORKSPACE}/csit/resources/libraries/bash/entry"
source "${csit_entry_dir}/bootstrap_vpp_device.sh"
+cp -R "${WORKSPACE}/csit/archives" "${WORKSPACE}/archives" || true
diff --git a/jjb/scripts/csit/docs.sh b/jjb/scripts/csit/docs.sh
deleted file mode 100644
index 55048f2f..00000000
--- a/jjb/scripts/csit/docs.sh
+++ /dev/null
@@ -1,78 +0,0 @@
-#!/bin/bash
-
-# Copyright (c) 2020 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-echo "---> jjb/scripts/csit/docs.sh"
-
-set -xe -o pipefail
-
-[ "$DOCS_REPO_URL" ] || DOCS_REPO_URL="https://nexus.fd.io/content/sites/site"
-[ "$PROJECT_PATH" ] || PROJECT_PATH=io/fd/csit
-[ "$DOC_DIR" ] || DOC_DIR=resources/tools/doc_gen
-[ "$BUILD_DIR" ] || BUILD_DIR=${DOC_DIR}/_build
-[ "$SITE_DIR" ] || SITE_DIR=build-root/docs/deploy-site
-[ "$RESOURCES_DIR" ] || RESOURCES_DIR=${SITE_DIR}/src/site/resources/doc
-[ "$MVN" ] || MVN="/opt/apache/maven/bin/mvn"
-
-cd ${DOC_DIR}
-chmod +x ./run_doc.sh
-./run_doc.sh ${GERRIT_BRANCH}
-
-retval=$?
-if [ ${retval} -ne "0" ]; then
- echo "Documentation generation failed!"
-exit ${retval}
-fi
-
-if [[ ${JOB_NAME} == *merge* ]]; then
-
- cd ${WORKSPACE}
-
- mkdir -p ${RESOURCES_DIR}
- mv -f ${BUILD_DIR}/* ${RESOURCES_DIR}
- cd ${SITE_DIR}
-
- cat > pom.xml << EOF
- <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>io.fd.csit</groupId>
- <artifactId>docs</artifactId>
- <version>1.0.0</version>
- <packaging>pom</packaging>
- <properties>
- <generateReports>false</generateReports>
- </properties>
- <build>
- <extensions>
- <extension>
- <groupId>org.apache.maven.wagon</groupId>
- <artifactId>wagon-webdav-jackrabbit</artifactId>
- <version>2.10</version>
- </extension>
- </extensions>
- </build>
- <distributionManagement>
- <site>
- <id>fdio-site</id>
- <url>dav:${DOCS_REPO_URL}/${PROJECT_PATH}/${GERRIT_BRANCH}</url>
- </site>
- </distributionManagement>
- </project>
-EOF
-
- ${MVN} site:site site:deploy -gs "${GLOBAL_SETTINGS_FILE}" -s "${SETTINGS_FILE}" -T 4C
-
- cd -
-
-fi
diff --git a/jjb/scripts/csit/hc2vpp-verify-func.sh b/jjb/scripts/csit/hc2vpp-verify-func.sh
deleted file mode 100644
index e5d92647..00000000
--- a/jjb/scripts/csit/hc2vpp-verify-func.sh
+++ /dev/null
@@ -1,51 +0,0 @@
-#!/bin/bash
-
-# Copyright (c) 2020 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-echo "---> jjb/scripts/hc2vpp-verify-func.sh"
-
-# Parse optional arguments from gerrit comment trigger
-for i in ${GERRIT_EVENT_COMMENT_TEXT}; do
- case ${i} in
- *honeycomb=*)
- hc_version=`echo "${i}" | cut -d = -f2-`
- ;;
- *)
- ;;
- esac
-done
-
-# If HC variable is set, check honeycomb version.
-if [[ -n "${hc_version}" ]]; then
- if [[ "${hc_version}" == *"-release" ]]; then
- # we are going to test release build. All release
- # packages should be already present in release repo
- STREAM="release"
- echo "STREAM set to: ${STREAM}"
- fi
-fi
-
-# execute csit bootstrap script if it exists
-if [[ ! -e bootstrap-hc2vpp-integration.sh ]]
-then
- echo 'ERROR: No bootstrap-hc2vpp-integration.sh found'
- exit 1
-else
- # make sure that bootstrap.sh is executable
- chmod +x bootstrap-hc2vpp-integration.sh
- # run the script
- ./bootstrap-hc2vpp-integration.sh ${STREAM} ${OS}
-fi
-
-# vim: ts=4 ts=4 sts=4 et :
diff --git a/jjb/scripts/csit/nsh_sfc-functional-virl.sh b/jjb/scripts/csit/nsh_sfc-functional-virl.sh
deleted file mode 100644
index abf7e875..00000000
--- a/jjb/scripts/csit/nsh_sfc-functional-virl.sh
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/bin/bash
-
-# Copyright (c) 2020 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-echo "---> jjb/scripts/csit/nsh_sfc-functional-virl.sh"
-
-set -xeu -o pipefail
-
-# execute nsh_sfc bootstrap script if it exists
-if [ -e bootstrap-nsh_sfc-functional-virl.sh ]
-then
- # make sure that bootstrap-nsh_sfc-functional-virl.sh is executable
- chmod +x bootstrap-nsh_sfc-functional-virl.sh
- # run the script
- if [ ${STREAM} == 'master' ]; then
- ./bootstrap-nsh_sfc-functional-virl.sh ${STREAM} ${OS}
- else
- ./bootstrap-nsh_sfc-functional-virl.sh 'stable.'${STREAM} ${OS}
- fi
-else
- echo 'ERROR: No bootstrap-nsh_sfc-functional-virl.sh found'
- exit 1
-fi
-
-# vim: ts=4 ts=4 sts=4 et :
diff --git a/jjb/scripts/csit/nsh_sfc-perf-hw.sh b/jjb/scripts/csit/nsh_sfc-perf-hw.sh
deleted file mode 100644
index 306bd55a..00000000
--- a/jjb/scripts/csit/nsh_sfc-perf-hw.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/bash
-
-# Copyright (c) 2020 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-echo "---> jjb/scripts/csit/nsh_sfc-perf-hw.sh"
-
-# execute nsh_sfc bootstrap script if it exists
-if [ ! -e bootstrap-verify-perf-nsh_sfc.sh ]
-then
- echo 'ERROR: No bootstrap-verify-perf-nsh_sfc.sh found'
- exit 1
-fi
-
-# make sure that bootstrap-verify-perf.sh is executable
-chmod +x bootstrap-verify-perf-nsh_sfc.sh
-# run the script
-if [ ${STREAM} == 'master' ]; then
- ./bootstrap-verify-perf-nsh_sfc.sh ${STREAM} ${OS}
-else
- ./bootstrap-verify-perf-nsh_sfc.sh 'stable.'${STREAM} ${OS}
-fi
-
-# vim: ts=4 ts=4 sts=4 et :
diff --git a/jjb/scripts/csit/perf-timed.sh b/jjb/scripts/csit/perf-timed.sh
index 93566550..10925b04 100644..100755
--- a/jjb/scripts/csit/perf-timed.sh
+++ b/jjb/scripts/csit/perf-timed.sh
@@ -21,6 +21,7 @@ set -exuo pipefail
#
# Variables read:
# - WORKSPACE - Jenkins workspace to create csit subdirectory in.
+# - GIT_URL - Git clone URL
# - GERRIT_BRANCH - Jenkins configured GERRIT_BRANCH parameter equal to required
# CSIT branch.
# - CSIT_REF - Override ref of CSIT git repository to checkout.
@@ -29,10 +30,10 @@ set -exuo pipefail
# - Multiple other side effects by entry script(s), see CSIT repository.
cd "${WORKSPACE}"
-git clone https://gerrit.fd.io/r/csit --depth=1 --no-single-branch --no-checkout
+git clone "${GIT_URL}/csit" --depth=1 --no-single-branch --no-checkout
pushd "${WORKSPACE}/csit"
if [[ -n "${CSIT_REF-}" ]]; then
- git fetch --depth=1 https://gerrit.fd.io/r/csit "${CSIT_REF}"
+ git fetch --depth=1 "${GIT_URL}/csit" "${CSIT_REF}"
git checkout FETCH_HEAD
else
git checkout "${GERRIT_BRANCH}"
@@ -40,3 +41,4 @@ fi
popd
csit_entry_dir="${WORKSPACE}/csit/resources/libraries/bash/entry"
source "${csit_entry_dir}/with_oper_for_vpp.sh" "bootstrap_verify_perf.sh"
+cp -R "${WORKSPACE}/csit/archives" "${WORKSPACE}/archives" || true
diff --git a/jjb/scripts/csit/report.sh b/jjb/scripts/csit/report.sh
deleted file mode 100644
index 16018fdc..00000000
--- a/jjb/scripts/csit/report.sh
+++ /dev/null
@@ -1,78 +0,0 @@
-#!/bin/bash
-
-# Copyright (c) 2020 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-echo "---> jjb/scripts/csit/report.sh"
-
-set -xe -o pipefail
-
-[ "$DOCS_REPO_URL" ] || DOCS_REPO_URL="https://nexus.fd.io/content/sites/site"
-[ "$PROJECT_PATH" ] || PROJECT_PATH=io/fd/csit
-[ "$DOC_DIR" ] || DOC_DIR=resources/tools/presentation
-[ "$BUILD_DIR" ] || BUILD_DIR=${DOC_DIR}/_build
-[ "$SITE_DIR" ] || SITE_DIR=build-root/docs/deploy-site
-[ "$RESOURCES_DIR" ] || RESOURCES_DIR=${SITE_DIR}/src/site/resources/report
-[ "$MVN" ] || MVN="/opt/apache/maven/bin/mvn"
-
-cd ${DOC_DIR}
-chmod +x ./run_report.sh
-./run_report.sh ${GERRIT_BRANCH}
-
-retval=$?
-if [ ${retval} -ne "0" ]; then
- echo "Report generation failed!"
-exit ${retval}
-fi
-
-if [[ ${JOB_NAME} == *merge* ]]; then
-
- cd ${WORKSPACE}
-
- mkdir -p ${RESOURCES_DIR}
- mv -f ${BUILD_DIR}/* ${RESOURCES_DIR}
- cd ${SITE_DIR}
-
- cat > pom.xml << EOF
- <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>io.fd.csit</groupId>
- <artifactId>docs</artifactId>
- <version>1.0.0</version>
- <packaging>pom</packaging>
- <properties>
- <generateReports>false</generateReports>
- </properties>
- <build>
- <extensions>
- <extension>
- <groupId>org.apache.maven.wagon</groupId>
- <artifactId>wagon-webdav-jackrabbit</artifactId>
- <version>2.10</version>
- </extension>
- </extensions>
- </build>
- <distributionManagement>
- <site>
- <id>fdio-site</id>
- <url>dav:${DOCS_REPO_URL}/${PROJECT_PATH}/${GERRIT_BRANCH}</url>
- </site>
- </distributionManagement>
- </project>
-EOF
-
- ${MVN} site:site site:deploy -gs "${GLOBAL_SETTINGS_FILE}" -s "${SETTINGS_FILE}" -T 4C
-
- cd -
-
-fi
diff --git a/jjb/scripts/csit/vpp-functional-multilink.sh b/jjb/scripts/csit/terraform-aws-eb-version-deploy.sh
index a076d875..3bc683b9 100644
--- a/jjb/scripts/csit/vpp-functional-multilink.sh
+++ b/jjb/scripts/csit/terraform-aws-eb-version-deploy.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright (c) 2020 Cisco and/or its affiliates.
+# Copyright (c) 2023 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -13,18 +13,9 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-echo "---> jjb/scripts/csit/vpp-functional-multilink.sh"
+echo "---> jjb/scripts/csit/terraform-aws-eb-version-deploy.sh"
-# execute csit bootstrap script if it exists
-if [ -e bootstrap-multilink.sh ]
-then
- # make sure that bootstrap.sh is executable
- chmod +x bootstrap-multilink.sh
- # run the script
- ./bootstrap-multilink.sh
-else
- echo 'ERROR: No bootstrap-multilink.sh found'
- exit 1
-fi
+set -exuo pipefail
-# vim: ts=4 ts=4 sts=4 et :
+csit_entry_dir="${WORKSPACE}/resources/libraries/bash/entry"
+source "${csit_entry_dir}/bootstrap_aws_eb_version_deploy.sh"
diff --git a/jjb/scripts/csit/terraform-aws-eb-version-verify.sh b/jjb/scripts/csit/terraform-aws-eb-version-verify.sh
new file mode 100644
index 00000000..7a9f1626
--- /dev/null
+++ b/jjb/scripts/csit/terraform-aws-eb-version-verify.sh
@@ -0,0 +1,21 @@
+#!/bin/bash
+
+# Copyright (c) 2023 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+echo "---> jjb/scripts/csit/terraform-aws-eb-version-verify.sh"
+
+set -exuo pipefail
+
+csit_entry_dir="${WORKSPACE}/resources/libraries/bash/entry"
+source "${csit_entry_dir}/bootstrap_aws_eb_version_verify.sh"
diff --git a/jjb/scripts/csit/tldk-functional-virl.sh b/jjb/scripts/csit/tldk-functional-virl.sh
deleted file mode 100644
index 5f309013..00000000
--- a/jjb/scripts/csit/tldk-functional-virl.sh
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/bin/bash
-
-# Copyright (c) 2020 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-echo "---> jjb/scripts/csit/tldk-functional-virl.sh"
-
-set -xeu -o pipefail
-
-# Clone tldk and start tests
-git clone https://gerrit.fd.io/r/tldk
-
-# If the git clone fails, complain clearly and exit
-if [ $? != 0 ]; then
- echo "Failed to run: git clone https://gerrit.fd.io/r/tldk"
- exit 1
-fi
-
-# execute tldk bootstrap script if it exists
-if [ -e bootstrap-TLDK.sh ]
-then
- # make sure that bootstrap-TLDK.sh is executable
- chmod +x bootstrap-TLDK.sh
- # run the script
- ./bootstrap-TLDK.sh
-else
- echo 'ERROR: No bootstrap-TLDK.sh found'
- exit 1
-fi
-
-# vim: ts=4 ts=4 sts=4 et :
diff --git a/jjb/hicn/include-raw-hicn-extras-build.sh b/jjb/scripts/hicn/build-extras.sh
index bcf913be..c1e0e3e1 100644
--- a/jjb/hicn/include-raw-hicn-extras-build.sh
+++ b/jjb/scripts/hicn/build-extras.sh
@@ -2,6 +2,8 @@
# basic build script example
set -euxo pipefail
+echo "---> jjb/scripts/hicn/build-extras.sh"
+
pushd scripts
bash ./build-extras.sh
popd
diff --git a/jjb/cicn/include-raw-cicn-viper-build.sh b/jjb/scripts/hicn/build-vpp-latest.sh
index 92bf809e..444f9b69 100644
--- a/jjb/cicn/include-raw-cicn-viper-build.sh
+++ b/jjb/scripts/hicn/build-vpp-latest.sh
@@ -1,8 +1,7 @@
#!/bin/bash
# basic build script example
set -euxo pipefail
-IFS=$'\n\t'
pushd scripts
-bash build-package.sh
+bash ./build-packages.sh vpp_master
popd
diff --git a/jjb/hicn/include-raw-hicn-build.sh b/jjb/scripts/hicn/build.sh
index e1d20a48..8dd150a7 100644
--- a/jjb/hicn/include-raw-hicn-build.sh
+++ b/jjb/scripts/hicn/build.sh
@@ -2,6 +2,8 @@
# basic build script example
set -euxo pipefail
+echo "---> jjb/scripts/hicn/build.sh"
+
pushd scripts
bash ./build-packages.sh
popd
diff --git a/jjb/hicn/include-raw-hicn-checkstyle.sh b/jjb/scripts/hicn/checkstyle.sh
index 636590e7..451950eb 100644
--- a/jjb/hicn/include-raw-hicn-checkstyle.sh
+++ b/jjb/scripts/hicn/checkstyle.sh
@@ -1,5 +1,7 @@
#!/bin/bash
+echo "---> jjb/scripts/hicn/checkstyle.sh"
+
if [ -f ./scripts/checkstyle.sh ];then
bash scripts/checkstyle.sh
else
diff --git a/jjb/scripts/hicn/docs.sh b/jjb/scripts/hicn/docs.sh
new file mode 100644
index 00000000..e927f0bb
--- /dev/null
+++ b/jjb/scripts/hicn/docs.sh
@@ -0,0 +1,14 @@
+#!/bin/bash
+set -xe -o pipefail
+
+DOC_DIR="docs/build/html"
+SITE_DIR_ROOT="build/doc"
+SITE_DIR="${SITE_DIR_ROOT}/deploy-site"
+
+echo "---> jjb/scripts/hicn/docs.sh"
+
+bash scripts/build-packages.sh sphinx
+
+mkdir -p "${SITE_DIR_ROOT}"
+mv -f "${DOC_DIR}" "${SITE_DIR}"
+find "${SITE_DIR}" -type f '(' -name '*.md5' -o -name '*.dot' -o -name '*.map' ')' -delete
diff --git a/jjb/scripts/hicn/functest.sh b/jjb/scripts/hicn/functest.sh
new file mode 100644
index 00000000..e520c78c
--- /dev/null
+++ b/jjb/scripts/hicn/functest.sh
@@ -0,0 +1,9 @@
+#!/bin/bash
+# basic build script example
+set -euxo pipefail
+
+echo "---> jjb/scripts/hicn/functest.sh"
+
+pushd scripts
+bash ./functional-tests.sh
+popd
diff --git a/jjb/scripts/hicn/sonar.sh b/jjb/scripts/hicn/sonar.sh
new file mode 100644
index 00000000..2f2060cc
--- /dev/null
+++ b/jjb/scripts/hicn/sonar.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+set -euxo pipefail
+
+echo "---> jjb/scripts/hicn/sonar.sh"
+
+pushd scripts
+bash ./build-sonar.sh
+popd
diff --git a/jjb/scripts/packagecloud_push.sh b/jjb/scripts/packagecloud_push.sh
index a4ae9b16..80226aa0 100644..100755
--- a/jjb/scripts/packagecloud_push.sh
+++ b/jjb/scripts/packagecloud_push.sh
@@ -40,38 +40,53 @@ sleep 10
FACTER_OS=$(/usr/bin/facter operatingsystem)
push_cmd=""
push_ext_deps_cmd=""
+ext_deps_pkg=""
+downloads_dir="/root/Downloads"
+
+create_deb_push_cmds()
+{
+ local distro="$1"
+
+ if [ "$distro" = "debian" ] || [ "$distro" = "ubuntu" ] ; then
+ FACTER_LSBNAME=$(/usr/bin/facter lsbdistcodename)
+ DEBS=$(find . -type f -iname '*.deb' | grep -v vpp-ext-deps | xargs || true)
+ push_cmd="package_cloud push ${PCIO_CO}/${STREAM}/${distro}/${FACTER_LSBNAME}/main/ ${DEBS}"
+ ext_deps_ver="$(dpkg -l vpp-ext-deps | mawk '/vpp-ext-deps/{print $3}' || true)"
+ ext_deps_pkg="$(find . -type f -iname 'vpp-ext-deps*.deb' | grep $ext_deps_ver || find $downloads_dir -type f -iname 'vpp-ext-deps*.deb' | grep $ext_deps_ver || true)"
+ if [ -n "$ext_deps_pkg}" ] ; then
+ push_ext_deps_cmd="package_cloud push ${PCIO_CO}/${STREAM}/${distro}/${FACTER_LSBNAME}/main/ ${ext_deps_pkg}"
+ fi
+ else
+ echo "ERROR: Unknown distro: '$distro'"
+ return 1
+ fi
+}
+
+create_rpm_push_cmds()
+{
+ FACTER_OSMAJREL=$(/usr/bin/facter operatingsystemmajrelease)
+ FACTER_ARCH=$(/usr/bin/facter architecture)
+ RPMS=$(find . -type f -iregex '.*/.*\.\(s\)?rpm' | grep -v vpp-ext-deps | xargs || true)
+ push_cmd="package_cloud push ${PCIO_CO}/${STREAM}/el/${FACTER_OSMAJREL}/os/${FACTER_ARCH}/ ${RPMS}"
+ ext_deps_ver="$(dnf list vpp-ext-deps | mawk '/vpp-ext-deps/{print $2}' || true)"
+ ext_deps_pkg="$(find . -type f -iname 'vpp-ext-deps*.rpm' | grep $ext_deps_ver || find $downloads_dir -type f -iname 'vpp-ext-deps*.rpm' | grep $ext_deps_ver || true)"
+ if [ -n "$ext_deps_pkg" ] ; then
+ push_ext_deps_cmd="package_cloud push ${PCIO_CO}/${STREAM}/el/${FACTER_OSMAJREL}/os/${FACTER_ARCH}/ ${ext_deps_pkg}"
+ fi
+}
# PCIO_CO and SILO are Jenkins Global Environment variables defined in
# .../ci-management/jenkins-config/global-vars-*.sh
if [ -f ~/.packagecloud ]; then
case "$FACTER_OS" in
Debian)
- FACTER_LSBNAME=$(/usr/bin/facter lsbdistcodename)
- DEBS=$(find . -type f -iname '*.deb' | grep -v vpp-ext-deps)
- push_cmd="package_cloud push ${PCIO_CO}/${STREAM}/debian/${FACTER_LSBNAME}/main/ ${DEBS}"
- EXT_DEPS_DEB=$(find . -type f -iname 'vpp-ext-deps*.deb')
- if [ -n "$EXT_DEPS_DEB" ] ; then
- push_ext_deps_cmd="package_cloud push ${PCIO_CO}/${STREAM}/debian/${FACTER_LSBNAME}/main/ ${EXT_DEPS_DEB}"
- fi
+ create_deb_push_cmds debian
;;
Ubuntu)
- FACTER_LSBNAME=$(/usr/bin/facter lsbdistcodename)
- DEBS=$(find . -type f -iname '*.deb' | grep -v vpp-ext-deps)
- push_cmd="package_cloud push ${PCIO_CO}/${STREAM}/ubuntu/${FACTER_LSBNAME}/main/ ${DEBS}"
- EXT_DEPS_DEB=$(find . -type f -iname 'vpp-ext-deps*.deb')
- if [ -n "$EXT_DEPS_DEB" ] ; then
- push_ext_deps_cmd="package_cloud push ${PCIO_CO}/${STREAM}/ubuntu/${FACTER_LSBNAME}/main/ ${EXT_DEPS_DEB}"
- fi
+ create_deb_push_cmds ubuntu
;;
CentOS)
- FACTER_OSMAJREL=$(/usr/bin/facter operatingsystemmajrelease)
- FACTER_ARCH=$(/usr/bin/facter architecture)
- RPMS=$(find . -type f -iregex '.*/.*\.\(s\)?rpm' | grep -v vpp-ext-deps)
- push_cmd="package_cloud push ${PCIO_CO}/${STREAM}/el/${FACTER_OSMAJREL}/os/${FACTER_ARCH}/ ${RPMS}"
- EXT_DEPS_RPM=$(find . -type f -iname 'vpp-ext-deps*.rpm')
- if [ -n "$EXT_DEPS_RPM" ] ; then
- push_ext_deps_cmd="package_cloud push ${PCIO_CO}/${STREAM}/el/${FACTER_OSMAJREL}/os/${FACTER_ARCH}/ ${EXT_DEPS_RPM}"
- fi
+ create_rpm_push_cmds
;;
*)
echo -e "\n$line\n* ERROR: Unsupported OS '$FACTER_OS'\n* PACKAGECLOUD PUSH FAILED!\n$line\n"
@@ -86,10 +101,7 @@ if [ -f ~/.packagecloud ]; then
else
$push_cmd
if [ -n "$push_ext_deps_cmd" ] ; then
- # Don't fail script if vpp-ext-deps push fails.
- set +e
- $push_ext_deps_cmd
- set -e
+ $push_ext_deps_cmd || true
fi
fi
else
diff --git a/jjb/scripts/post_build_deploy_archives.sh b/jjb/scripts/post_build_deploy_archives.sh
index 355d6fd4..a332f21e 100755
--- a/jjb/scripts/post_build_deploy_archives.sh
+++ b/jjb/scripts/post_build_deploy_archives.sh
@@ -19,6 +19,10 @@ set +e # Do not affect the build result if some part of archiving fails.
WS_ARCHIVES_DIR="$WORKSPACE/archives"
BUILD_ENV_LOG="$WS_ARCHIVES_DIR/_build-enviroment-variables.log"
+if curl --output robot-plugin.zip "$BUILD_URL/robot/report/*zip*/robot-plugin.zip"; then
+ unzip -d ./archives robot-plugin.zip
+fi
+
# Generate gdb-command script to output vpp stack traceback from core files.
gdb_cmdfile="/tmp/gdb-commands"
cat >$gdb_cmdfile <<'__END__'
@@ -75,39 +79,6 @@ generate_vpp_stacktrace_and_delete_core() {
mkdir -p "$WS_ARCHIVES_DIR"
-# Log the build environment variables
-echo "Logging build environment variables in '$BUILD_ENV_LOG'..."
-env > $BUILD_ENV_LOG
-
-echo "ARCHIVE_ARTIFACTS = '$ARCHIVE_ARTIFACTS'"
-if [ -n "${ARCHIVE_ARTIFACTS:-}" ] ; then
- pushd "$WORKSPACE"
- shopt -s globstar # Enable globstar to copy archives
- for file in $ARCHIVE_ARTIFACTS ; do
- if [ -f "$file" ] ; then
- echo "Archiving '$file' to '$destfile'"
- destfile="$WS_ARCHIVE_DIR$file"
- destdir="$(dirname $destfile)"
- mkdir -p $destdir
- mv -f $file $destfile
- else
- echo "Not archiving '$file'"
- if ! grep -qe '*' <<<"$file" ; then
- echo "WARNING: No artifacts detected in ARCHIVE_ARTIFACTS '$ARCHIVE_ARTIFACTS'!"
- fi
- fi
- done
- shopt -u globstar # Disable globstar
- popd
-fi
-
-# find and gzip any 'text' files
-find $WS_ARCHIVES_DIR -type f -print0 \
- | xargs -0r file \
- | egrep -e ':.*text.*' \
- | cut -d: -f1 \
- | xargs -d'\n' -r gzip
-
# generate stack trace for VPP core files for upload instead of core file.
if [ -d "$WORKSPACE/build-root" ] ; then
for file in $(find $WS_ARCHIVES_DIR -type f -name 'core*.gz') ; do
diff --git a/jjb/scripts/post_build_executor_info.sh b/jjb/scripts/post_build_executor_info.sh
index fef79814..d81b613e 100755
--- a/jjb/scripts/post_build_executor_info.sh
+++ b/jjb/scripts/post_build_executor_info.sh
@@ -21,13 +21,24 @@ long_line="*********************************************************************
OS_ID=$(grep '^ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
OS_VERSION_ID=$(grep '^VERSION_ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
OS_ARCH=$(uname -m)
+
+# Requires all nomad client machines to run the following command
+# and mount /scratch/nomad into the docker container:
+# sudo mkdir -p /scratch/nomad && echo "$(hostname)-$(uname -m)" | sudo tee /scratch/nomad/nomad-client
+nomad_client_file="/scratch/nomad/nomad-client"
+if [ -f "$nomad_client_file" ] ; then
+ NOMAD_CLIENT="$(cat $nomad_client_file)"
+else
+ NOMAD_CLIENT="Unknown"
+fi
+
echo "$long_line"
echo "Executor Runtime Attributes:"
echo "OS: $OS_ID-$OS_VERSION_ID"
echo " $(uname -a)"
echo "Number CPUs: $(nproc)"
echo "Arch: $OS_ARCH"
-echo "Nomad Hostname: $(grep search /etc/resolv.conf | cut -d' ' -f2 | head -1)"
+echo "Nomad Client Hostname: $NOMAD_CLIENT"
echo "Container ID: $(hostname)"
echo "$long_line"
echo -e "lscpu:\n$(lscpu)"
@@ -45,14 +56,3 @@ if [ -n "$(which ccache)" ] ; then
fi
echo "$long_line"
-
-# Avoid sar anomaly on centos-7 in global-jjb/shell/logs-deploy.sh
-#
-# Note: VPP 20.09 will be removed in the next release cycle (21.10),
-# therefore this hack is better than polluting the docker image
-# build scripts with code to avoid installing sysstat on centos-7.
-#
-# TODO: Remove when vpp-*-2009-centos7-x86_64 jobs are removed
-if [ "$OS_ID" = "centos" ] && [ "$OS_VERSION_ID" = "7" ] ; then
- sudo yum remove -y sysstat >& /dev/null || true
-fi
diff --git a/jjb/scripts/publish_cov.sh b/jjb/scripts/publish_cov.sh
new file mode 100644
index 00000000..cdbbcdd8
--- /dev/null
+++ b/jjb/scripts/publish_cov.sh
@@ -0,0 +1,51 @@
+#!/bin/bash
+
+# Copyright (c) 2023 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+echo "---> publish_cov.sh"
+
+set -exuo pipefail
+
+CDN_URL="s3-docs-7day.fd.io"
+bucket="vpp-docs-7day-retention"
+# Use the same bucket path as logs so that the code coverage report can be viewed by
+# s/s3-logs/s3-docs-7day/ in the URL after selecting the logs URL from
+# the jenkins job page.
+bucket_path="$JENKINS_HOSTNAME/$JOB_NAME/$BUILD_NUMBER/"
+
+if [[ ${JOB_NAME} == *verify* ]]; then
+ case "${JOB_NAME}" in
+ *"vpp-cov"*)
+ workspace_dir="${WORKSPACE}/build-root/test-coverage/html"
+ ;;
+ *)
+ die "Unknown job: ${JOB_NAME}"
+ esac
+else
+ die "Unknown job: ${JOB_NAME}"
+fi
+
+export TF_VAR_workspace_dir="$workspace_dir"
+export TF_VAR_bucket_path="$bucket_path"
+export TF_VAR_bucket="$bucket"
+export AWS_SHARED_CREDENTIALS_FILE=$HOME/.aws/credentials
+export AWS_DEFAULT_REGION="us-east-1"
+
+echo "INFO: archiving test coverage to S3 bucket '$bucket'"
+pushd ..
+terraform init -no-color
+terraform apply -no-color -auto-approve
+popd
+
+echo "S3 Test Coverage: <a href=\"https://${CDN_URL}/${bucket_path}\">https://${CDN_URL}/${bucket_path}</a>"
diff --git a/jjb/scripts/publish_docs.sh b/jjb/scripts/publish_docs.sh
new file mode 100755
index 00000000..63bb5bc8
--- /dev/null
+++ b/jjb/scripts/publish_docs.sh
@@ -0,0 +1,83 @@
+#!/bin/bash
+
+# Copyright (c) 2022 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+echo "---> publish_docs.sh"
+
+set -exuo pipefail
+
+CDN_URL="s3-docs.fd.io"
+bucket="fdio-docs-s3-cloudfront-index"
+
+if [[ ${JOB_NAME} == *merge* ]]; then
+ case "${JOB_NAME}" in
+ *"csit-trending"*)
+ workspace_dir="${WORKSPACE}/resources/tools/presentation/_build"
+ bucket_path="/csit/${GERRIT_BRANCH}/trending/"
+ ;;
+ *"csit-report"*)
+ workspace_dir="${WORKSPACE}/resources/tools/presentation/_build"
+ bucket_path="/csit/${GERRIT_BRANCH}/report/"
+ ;;
+ *"csit-docs"*)
+ workspace_dir="${WORKSPACE}/resources/tools/doc_gen/_build"
+ bucket_path="/csit/${GERRIT_BRANCH}/docs/"
+ ;;
+ *"hicn-docs"*)
+ hicn_release="$(git describe --long --match "v*" | cut -d- -f1 | sed -e 's/^v//')"
+ workspace_dir="${WORKSPACE}/build/doc/deploy-site"
+ bucket_path="/hicn/${hicn_release}/"
+ ;;
+ *"vpp-docs"*)
+ vpp_release="$(${WORKSPACE}/build-root/scripts/version rpm-version)"
+ workspace_dir="${WORKSPACE}/build-root/docs/html"
+ bucket_path="/vpp/${vpp_release}/"
+ ;;
+ *)
+ die "Unknown job: ${JOB_NAME}"
+ esac
+elif [[ ${JOB_NAME} == *verify* ]]; then
+ bucket="vpp-docs-7day-retention"
+ # Use the same bucket path as logs so that the docs can be viewed by
+ # s/s3-logs/s3-docs-7day/ in the URL after selecting the logs URL from
+ # the jenkins job page.
+ bucket_path="$JENKINS_HOSTNAME/$JOB_NAME/$BUILD_NUMBER/"
+ case "${JOB_NAME}" in
+ *"hicn-docs"*)
+ workspace_dir="${WORKSPACE}/build/doc/deploy-site"
+ ;;
+ *"vpp-docs"*)
+ CDN_URL="s3-docs-7day.fd.io"
+ workspace_dir="${WORKSPACE}/build-root/docs/html"
+ ;;
+ *)
+ die "Unknown job: ${JOB_NAME}"
+ esac
+else
+ die "Unknown job: ${JOB_NAME}"
+fi
+
+export TF_VAR_workspace_dir="$workspace_dir"
+export TF_VAR_bucket_path="$bucket_path"
+export TF_VAR_bucket="$bucket"
+export AWS_SHARED_CREDENTIALS_FILE=$HOME/.aws/credentials
+export AWS_DEFAULT_REGION="us-east-1"
+
+echo "INFO: archiving docs to S3 bucket '$bucket'"
+pushd ..
+terraform init -no-color
+terraform apply -no-color -auto-approve
+popd
+
+echo "S3 docs: <a href=\"https://${CDN_URL}/${bucket_path}\">https://${CDN_URL}/${bucket_path}</a>"
diff --git a/jjb/scripts/publish_library_py.sh b/jjb/scripts/publish_library_py.sh
new file mode 100644
index 00000000..1cbeb23c
--- /dev/null
+++ b/jjb/scripts/publish_library_py.sh
@@ -0,0 +1,318 @@
+#!/bin/bash
+
+# Copyright (c) 2021 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+echo "---> publish_library_py.sh"
+
+set -exuo pipefail
+
+PYTHON_SCRIPT="/w/workspace/publish_library.py"
+
+pip3 install boto3
+mkdir -p $(dirname "$PYTHON_SCRIPT")
+
+cat >$PYTHON_SCRIPT <<'END_OF_PYTHON_SCRIPT'
+#!/usr/bin/python3
+
+"""S3 publish library."""
+
+import glob
+import gzip
+import logging
+import os
+import shutil
+import subprocess
+import sys
+import tempfile
+
+import boto3
+from botocore.exceptions import ClientError
+import requests
+import six
+
+
+logging.basicConfig(
+ format=u"%(levelname)s: %(message)s",
+ stream=sys.stdout,
+ level=logging.INFO
+)
+logging.getLogger(u"botocore").setLevel(logging.INFO)
+
+
+FILE_TYPE = {
+ u"xml": u"application/xml",
+ u"html": u"text/html",
+ u"txt": u"text/plain",
+ u"log": u"text/plain",
+ u"css": u"text/css",
+ u"md": u"text/markdown",
+ u"rst": u"text/x-rst",
+ u"csv": u"text/csv",
+ u"svg": u"image/svg+xml",
+ u"jpg": u"image/jpeg",
+ u"png": u"image/png",
+ u"gif": u"image/gif",
+ u"js": u"application/javascript",
+ u"pdf": u"application/pdf",
+ u"json": u"application/json",
+ u"otf": u"font/otf",
+ u"ttf": u"font/ttf",
+ u"woff": u"font/woff",
+ u"woff2": u"font/woff2"
+}
+
+
+def compress_text(src_dpath):
+ """Compress all text files in directory.
+
+ :param src_dpath: Input dir path.
+ :type src_dpath: str
+ """
+ save_dir = os.getcwd()
+ os.chdir(src_dpath)
+
+ compress_types = [
+ "**/*.html",
+ "**/*.log",
+ "**/*.txt",
+ "**/*.xml",
+ "**/*.json"
+ ]
+ paths = []
+ for _type in compress_types:
+ search = os.path.join(src_dpath, _type)
+ paths.extend(glob.glob(search, recursive=True))
+
+ for _file in paths:
+ # glob may follow symlink paths that open can't find
+ if os.path.exists(_file):
+ gz_file = u"{}.gz".format(_file)
+ with open(_file, "rb") as src, gzip.open(gz_file, "wb") as dest:
+ shutil.copyfileobj(src, dest)
+ os.remove(_file)
+
+ os.chdir(save_dir)
+
+
+def copy_archives(workspace):
+ """Copy files or directories in a $WORKSPACE/archives to the current
+ directory.
+
+ :params workspace: Workspace directery with archives directory.
+ :type workspace: str
+ """
+ archives_dir = os.path.join(workspace, u"archives")
+ dest_dir = os.getcwd()
+
+ logging.debug(u"Copying files from " + archives_dir + u" to " + dest_dir)
+
+ if os.path.exists(archives_dir):
+ if os.path.isfile(archives_dir):
+ logging.error(u"Target is a file, not a directory.")
+ raise RuntimeError(u"Not a directory.")
+ else:
+ logging.debug("Archives dir {} does exist.".format(archives_dir))
+ for item in os.listdir(archives_dir):
+ src = os.path.join(archives_dir, item)
+ dst = os.path.join(dest_dir, item)
+ try:
+ if os.path.isdir(src):
+ shutil.copytree(src, dst, symlinks=False, ignore=None)
+ else:
+ shutil.copy2(src, dst)
+ except shutil.Error as e:
+ logging.error(e)
+ raise RuntimeError(u"Could not copy " + src)
+ else:
+ logging.error(u"Archives dir does not exist.")
+ raise RuntimeError(u"Missing directory " + archives_dir)
+
+
+def upload(s3_resource, s3_bucket, src_fpath, s3_path):
+ """Upload single file to destination bucket.
+
+ :param s3_resource: S3 storage resource.
+ :param s3_bucket: S3 bucket name.
+ :param src_fpath: Input file path.
+ :param s3_path: Destination file path on remote storage.
+ :type s3_resource: Object
+ :type s3_bucket: str
+ :type src_fpath: str
+ :type s3_path: str
+ """
+ def is_gzip_file(filepath):
+ with open(filepath, u"rb") as test_f:
+ return test_f.read(2) == b"\x1f\x8b"
+
+ if os.path.isdir(src_fpath):
+ return
+ if os.path.isfile(src_fpath):
+ file_name, file_extension = os.path.splitext(src_fpath)
+ content_encoding = u""
+ content_type = u"application/octet-stream"
+ if is_gzip_file(src_fpath):
+ file_name, file_extension = os.path.splitext(file_name)
+ content_encoding = "gzip"
+ content_type = FILE_TYPE.get(
+ file_extension.strip("."),
+ u"application/octet-stream"
+ )
+
+ extra_args = dict()
+ extra_args[u"ContentType"] = content_type
+ if content_encoding:
+ extra_args[u"ContentEncoding"] = content_encoding
+
+ try:
+ s3_resource.Bucket(s3_bucket).upload_file(
+ src_fpath, s3_path, ExtraArgs=extra_args
+ )
+ logging.info(u"Successfully uploaded to " + s3_path)
+ except ClientError as e:
+ logging.error(e)
+
+
+def upload_recursive(s3_resource, s3_bucket, src_fpath, s3_path):
+ """Recursively uploads input folder to destination.
+
+ Example:
+ - s3_bucket: logs.fd.io
+ - src_fpath: /workspace/archives.
+ - s3_path: /hostname/job/id/
+
+ :param s3_resource: S3 storage resource.
+ :param s3_bucket: S3 bucket name.
+ :param src_fpath: Input folder path.
+ :param s3_path: S3 destination path.
+ :type s3_resource: Object
+ :type s3_bucket: str
+ :type src_fpath: str
+ :type s3_path: str
+ """
+ for path, _, files in os.walk(src_fpath):
+ for file in files:
+ _path = path.replace(src_fpath, u"")
+ _src_fpath = path + u"/" + file
+ _s3_path = os.path.normpath(s3_path + u"/" + _path + u"/" + file)
+ upload(
+ s3_resource=s3_resource,
+ s3_bucket=s3_bucket,
+ src_fpath=_src_fpath,
+ s3_path=_s3_path
+ )
+
+
+def deploy_docs(s3_bucket, s3_path, docs_dir):
+ """Ship docs dir content to S3 bucket. Requires the s3 bucket to exist.
+
+ :param s3_bucket: Name of S3 bucket. Eg: lf-project-date
+ :param s3_path: Path on S3 bucket to place the docs. Eg:
+ csit/${GERRIT_BRANCH}/report
+ :param docs_dir: Directory in which to recursively upload content.
+ :type s3_bucket: Object
+ :type s3_path: str
+ :type docs_dir: str
+ """
+ try:
+ s3_resource = boto3.resource(
+ u"s3",
+ endpoint_url=os.environ[u"AWS_ENDPOINT_URL"]
+ )
+ except KeyError:
+ s3_resource = boto3.resource(
+ u"s3"
+ )
+
+ upload_recursive(
+ s3_resource=s3_resource,
+ s3_bucket=s3_bucket,
+ src_fpath=docs_dir,
+ s3_path=s3_path
+ )
+
+
+def deploy_s3(s3_bucket, s3_path, build_url, workspace):
+ """Add logs and archives to temp directory to be shipped to S3 bucket.
+ Fetches logs and system information and pushes them and archives to S3
+ for log archiving.
+ Requires the s3 bucket to exist.
+
+ :param s3_bucket: Name of S3 bucket. Eg: lf-project-date
+ :param s3_path: Path on S3 bucket place the logs and archives. Eg:
+ $JENKINS_HOSTNAME/$JOB_NAME/$BUILD_NUMBER
+ :param build_url: URL of the Jenkins build. Jenkins typically provides this
+ via the $BUILD_URL environment variable.
+ :param workspace: Directory in which to search, typically in Jenkins this is
+ $WORKSPACE
+ :type s3_bucket: Object
+ :type s3_path: str
+ :type build_url: str
+ :type workspace: str
+ """
+ try:
+ s3_resource = boto3.resource(
+ u"s3",
+ endpoint_url=os.environ[u"AWS_ENDPOINT_URL"]
+ )
+ except KeyError:
+ s3_resource = boto3.resource(
+ u"s3"
+ )
+
+ previous_dir = os.getcwd()
+ work_dir = tempfile.mkdtemp(prefix="backup-s3.")
+ os.chdir(work_dir)
+
+ # Copy archive files to tmp dir.
+ copy_archives(workspace)
+
+ # Create additional build logs.
+ with open(u"_build-details.log", u"w+") as f:
+ f.write(u"build-url: " + build_url)
+
+ # Magic string used to trim console logs at the appropriate level during
+ # wget.
+ MAGIC_STRING = u"-----END_OF_BUILD-----"
+ logging.info(MAGIC_STRING)
+
+ resp = requests.get(build_url + u"/consoleText")
+ with open(u"console.log", u"w+", encoding=u"utf-8") as f:
+ f.write(
+ six.text_type(resp.content.decode(u"utf-8").split(MAGIC_STRING)[0])
+ )
+
+ query = u"time=HH:mm:ss&appendLog"
+ resp = requests.get(build_url + u"/timestamps?" + query)
+ with open(u"console-timestamp.log", u"w+", encoding=u"utf-8") as f:
+ f.write(
+ six.text_type(resp.content.decode(u"utf-8").split(MAGIC_STRING)[0])
+ )
+
+ compress_text(work_dir)
+
+ upload_recursive(
+ s3_resource=s3_resource,
+ s3_bucket=s3_bucket,
+ src_fpath=work_dir,
+ s3_path=s3_path
+ )
+
+ os.chdir(previous_dir)
+ shutil.rmtree(work_dir)
+
+
+if __name__ == u"__main__":
+ globals()[sys.argv[1]](*sys.argv[2:])
+
+END_OF_PYTHON_SCRIPT
diff --git a/jjb/scripts/publish_logs.sh b/jjb/scripts/publish_logs.sh
new file mode 100644
index 00000000..a567106a
--- /dev/null
+++ b/jjb/scripts/publish_logs.sh
@@ -0,0 +1,30 @@
+#!/bin/bash
+
+# Copyright (c) 2021 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+echo "---> publish_logs.sh"
+
+PYTHON_SCRIPT="/w/workspace/publish_library.py"
+
+mkdir -p "$WORKSPACE/archives"
+
+s3_path="$JENKINS_HOSTNAME/$JOB_NAME/$BUILD_NUMBER/"
+
+echo "INFO: S3 path $s3_path"
+
+echo "INFO: archiving logs to S3"
+python3 $PYTHON_SCRIPT deploy_s3 "$S3_BUCKET" "$s3_path" \
+ "$BUILD_URL" "$WORKSPACE"
+
+echo "S3 build logs: <a href=\"https://$CDN_URL/$s3_path\">https://$CDN_URL/$s3_path</a>"
diff --git a/jjb/scripts/setup_executor_env.sh b/jjb/scripts/setup_executor_env.sh
index 4d3cb6ec..72782490 100755
--- a/jjb/scripts/setup_executor_env.sh
+++ b/jjb/scripts/setup_executor_env.sh
@@ -25,12 +25,22 @@ file_delimiter="----- %< -----"
long_line="************************************************************************"
downloads_cache="/root/Downloads"
+# Requires all nomad client machines to run the following command
+# and mount /scratch/nomad into the docker container:
+# sudo mkdir -p /scratch/nomad && echo "$(hostname)-$(uname -m)" | sudo tee /scratch/nomad/nomad-client
+nomad_client_file="/scratch/nomad/nomad-client"
+if [ -f "$nomad_client_file" ] ; then
+ NOMAD_CLIENT="$(cat $nomad_client_file)"
+else
+ NOMAD_CLIENT="Unknown"
+fi
+
# Node info
echo "$long_line"
echo "Executor Runtime Attributes:"
echo "OS: $OS_ID-$OS_VERSION_ID"
echo "Arch: $OS_ARCH"
-echo "Nomad Hostname: $(grep search /etc/resolv.conf | cut -d' ' -f2 | head -1)"
+echo "Nomad Client Hostname: $NOMAD_CLIENT"
echo "Container ID: $(hostname)"
echo "$long_line"
diff --git a/jjb/scripts/setup_jvpp_dev_env.sh b/jjb/scripts/setup_jvpp_dev_env.sh
deleted file mode 100644
index c489a547..00000000
--- a/jjb/scripts/setup_jvpp_dev_env.sh
+++ /dev/null
@@ -1,74 +0,0 @@
-#!/bin/bash
-
-# Copyright (c) 2020 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-echo "---> jjb/scripts/setup_jvpp_dev_env.sh"
-
-set -e -o pipefail
-
-# Figure out what system we are running on
-if [[ -f /etc/lsb-release ]];then
- . /etc/lsb-release
-elif [[ -f /etc/redhat-release ]];then
- sudo yum install -y redhat-lsb
- DISTRIB_ID=`lsb_release -si`
- DISTRIB_RELEASE=`lsb_release -sr`
- DISTRIB_CODENAME=`lsb_release -sc`
- DISTRIB_DESCRIPTION=`lsb_release -sd`
-fi
-echo DISTRIB_ID: $DISTRIB_ID
-echo DISTRIB_RELEASE: $DISTRIB_RELEASE
-echo DISTRIB_CODENAME: $DISTRIB_CODENAME
-echo DISTRIB_DESCRIPTION: $DISTRIB_DESCRIPTION
-
-JVPP_VERSION=`./version`
-echo JVPP_VERSION: $JVPP_VERSION
-# Check release version
-if [[ "$JVPP_VERSION" == *"-release" ]]; then
- # at the time when JVPP release packages are being build,
- # vpp release packages are already promoted to release repository.
- # Therefore we need to switch to release repository in order to download
- # correct vpp package versions
- STREAM="release"
-fi
-
-function setup {
- if ! [[ -z ${REPO_NAME} ]]; then
- echo "INSTALLING VPP-DPKG-DEV from apt/yum repo"
- REPO_URL="https://packagecloud.io/fdio/${STREAM}"
- echo "REPO_URL: ${REPO_URL}"
- # Setup by installing vpp-dev and vpp-lib
- if [[ "$DISTRIB_ID" == "Ubuntu" ]]; then
- if ! [[ "${STREAM}" == "master" ]]; then
- echo "stable branch - clearing all fdio repos. new one will be installed."
- sudo rm -f /etc/apt/sources.list.d/fdio_*.list
- fi
- if [[ -f /etc/apt/sources.list.d/99fd.io.list ]];then
- echo "Deleting: /etc/apt/sources.list.d/99fd.io.list"
- sudo rm /etc/apt/sources.list.d/99fd.io.list
- fi
- curl -s https://packagecloud.io/install/repositories/fdio/${STREAM}/script.deb.sh | sudo bash
- sudo apt-get -y --force-yes install libvppinfra libvppinfra-dev vpp vpp-dev vpp-plugin-core || true
- elif [[ "$DISTRIB_ID" == "CentOS" ]]; then
- if [[ -f /etc/yum.repos.d/fdio-master.repo ]]; then
- echo "Deleting: /etc/yum.repos.d/fdio-master.repo"
- sudo rm /etc/yum.repos.d/fdio-master.repo
- fi
- curl -s https://packagecloud.io/install/repositories/fdio/${STREAM}/script.rpm.sh | sudo bash
- sudo yum -y install vpp-devel vpp-lib vpp-plugins || true
- fi
- fi
-}
-
-setup
diff --git a/jjb/scripts/setup_vpp_dpdk_dev_env.sh b/jjb/scripts/setup_vpp_dpdk_dev_env.sh
deleted file mode 100644
index 2c55f166..00000000
--- a/jjb/scripts/setup_vpp_dpdk_dev_env.sh
+++ /dev/null
@@ -1,80 +0,0 @@
-#!/bin/bash
-
-# Copyright (c) 2020 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-echo "---> jjb/scripts/setup_vpp_dpdk_dev_env.sh"
-
-set -e -o pipefail
-
-OS_ID=$(grep '^ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
-OS_VERSION_ID=$(grep '^VERSION_ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
-
-function setup {
- if [ -n "$REPO_NAME" ] ; then
- echo "Installing vpp-ext-deps..."
- REPO_URL="https://packagecloud.io/fdio/${STREAM}"
- echo "REPO_URL: $REPO_URL"
- INSTALL_URL="https://packagecloud.io/install/repositories/fdio/${STREAM}"
- echo "INSTALL_URL: $INSTALL_URL"
- # Setup by installing vpp-dev and vpp-lib
- if [ "${OS_ID,,}" == "ubuntu" ] || [ "${OS_ID,,}" == "debian" ] ; then
- if [ "${STREAM}" != "master" ]; then
- echo "stream '${STREAM}' is not master: replacing packagecloud apt sources list with stream specific list"
- sudo apt-get -y remove vpp-ext-deps || true
- sudo rm -f /etc/apt/sources.list.d/fdio_master.list
- curl -s $INSTALL_URL/script.deb.sh | sudo bash
- fi
- sudo apt-get update -qq || true
- local vpp_ext_deps_version="$(apt-cache show vpp-ext-deps | mawk '/Version/ {print $2}' | head -1)"
- local vpp_ext_deps_arch="$(apt-cache show vpp-ext-deps | mawk '/Architecture/ {print $2}' | head -1)"
- local vpp_ext_deps_pkg="/root/Downloads/vpp-ext-deps_${vpp_ext_deps_version}_${vpp_ext_deps_arch}.deb"
- if [ -f "$vpp_ext_deps_pkg" ] ; then
- echo "Installing cached vpp-ext-deps pkg: $vpp_ext_deps_pkg"
- sudo dpkg -i $vpp_ext_deps_pkg
- else
- echo "Installing vpp-ext-deps from packagecloud.io"
- local force_opts="--allow-downgrades --allow-remove-essential"
- force_opts="$force_opts --allow-change-held-packages"
- sudo apt-get -y $force_opts install vpp-ext-deps || true
- fi
- echo "Removing packagecloud.io repository references and running apt-get update"
- sudo rm -f /etc/apt/sources.list.d/fdio_*.list
- sudo apt-get update -qq || true
- elif [ "${OS_ID,,}" == "centos" ] ; then
- if [ "${STREAM}" != "master" ] ; then
- echo "stream '${STREAM}' is not master: replacing packagecloud repo list with stream specific list"
- sudo yum -y erase vpp-ext-deps || true
- sudo yum clean all || true
- sudo rm -f /etc/yum.repos.d/fdio_master.repo
- curl -s $INSTALL_URL/script.rpm.sh | sudo bash
- fi
- local vpp_ext_deps_version="$(yum -q list vpp-ext-deps 2> /dev/null | mawk '/vpp-ext-deps/{print $2}')"
- local vpp_ext_deps_pkg="$(yum -q list vpp-ext-deps 2> /dev/null | mawk '/vpp-ext-deps/{print $1}')"
- vpp_ext_deps_pkg="/root/Downloads/${vpp_ext_deps_pkg/./-${vpp_ext_deps_version}.}.rpm"
- if [ -f "$vpp_ext_deps_pkg" ] ; then
- echo "Installing cached vpp-ext-deps pkg: $vpp_ext_deps_pkg"
- sudo yum -y localinstall $vpp_ext_deps_pkg || true
- else
- echo "Installing vpp-ext-deps from packagecloud.io"
- sudo yum -y install vpp-ext-deps || true
- fi
- else
- echo "ERROR: Unsupported OS '$OS_ID'!"
- fi
- else
- echo "ERROR: REPO_NAME not found!"
- fi
-}
-
-setup
diff --git a/jjb/scripts/setup_vpp_ext_deps.sh b/jjb/scripts/setup_vpp_ext_deps.sh
new file mode 100755
index 00000000..077dca16
--- /dev/null
+++ b/jjb/scripts/setup_vpp_ext_deps.sh
@@ -0,0 +1,67 @@
+#!/bin/bash
+
+# Copyright (c) 2022 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+echo "---> jjb/scripts/setup_vpp_ext_deps.sh"
+
+# Normally we would have the settings in any bash script stricter:
+# set -e -o pipefail
+#
+# But there is a corner case scenario that triggers an error,
+# namely when a new packagecloud repo is created, it is completely
+# empty. Then the installation fails. However, since this
+# script is an optimization, it is okay for it to fail without failing
+# the entire job.
+#
+# Therefore, we do not use the "-e" here.
+
+set -o pipefail
+
+OS_ID=$(grep '^ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
+OS_VERSION_ID=$(grep '^VERSION_ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
+
+echo "Installing vpp-ext-deps..."
+REPO_URL="https://packagecloud.io/fdio/${STREAM}"
+echo "REPO_URL: $REPO_URL"
+INSTALL_URL="https://packagecloud.io/install/repositories/fdio/${STREAM}"
+echo "INSTALL_URL: $INSTALL_URL"
+
+downloads_dir="/root/Downloads"
+
+# Setup by installing vpp-dev and vpp-lib
+if [ "${OS_ID,,}" == "ubuntu" ] || [ "${OS_ID,,}" == "debian" ] ; then
+ if [ "${STREAM}" != "master" ]; then
+ echo "stream '${STREAM}' is not master: replacing packagecloud apt sources list with stream specific list"
+ sudo apt-get -y remove vpp-ext-deps || true
+ sudo rm -f /etc/apt/sources.list.d/fdio_master.list
+ curl -s $INSTALL_URL/script.deb.sh | sudo bash || true
+ fi
+ sudo apt-get update -qq || true
+ vpp_ext_deps_version="$(apt-cache show vpp-ext-deps | mawk '/Version/ {print $2}' | head -1)"
+ vpp_ext_deps_arch="$(apt-cache show vpp-ext-deps | mawk '/Architecture/ {print $2}' | head -1)"
+ vpp_ext_deps_pkg="vpp-ext-deps_${vpp_ext_deps_version}_${vpp_ext_deps_arch}.deb"
+ if [ -f "$downloads_dir/$vpp_ext_deps_pkg" ] ; then
+ echo "Installing cached vpp-ext-deps pkg: $downloads_dir/$vpp_ext_deps_pkg"
+ sudo dpkg -i "$downloads_dir/$vpp_ext_deps_pkg" || true
+ else
+ echo "Installing vpp-ext-deps from packagecloud.io"
+ force_opts="--allow-downgrades --allow-remove-essential --allow-change-held-packages"
+ sudo apt-get -y $force_opts install vpp-ext-deps || true
+ fi
+ echo "Removing packagecloud.io repository references and running apt-get update"
+ sudo rm -f /etc/apt/sources.list.d/fdio_*.list
+ sudo apt-get update -qq || true
+else
+ echo "ERROR: Unsupported OS '$OS_ID'!"
+fi
diff --git a/jjb/scripts/setup_vpp_ubuntu_docker_test.sh b/jjb/scripts/setup_vpp_ubuntu_docker_test.sh
index 8ed0acae..548ac566 100644..100755
--- a/jjb/scripts/setup_vpp_ubuntu_docker_test.sh
+++ b/jjb/scripts/setup_vpp_ubuntu_docker_test.sh
@@ -1,7 +1,7 @@
#!/bin/bash
##############################################################################
-# Copyright (c) 2018 The Linux Foundation and others.
+# Copyright (c) 2021 The Linux Foundation and others.
#
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
@@ -30,17 +30,3 @@ if [ -n ${DOCKER_TEST} ] ; then
sudo mount -o remount /dev/shm -o size=${MEM} || true
echo "/dev/shm remounted with size='${MEM}'"
fi
-
-# This will remove any previously installed external packages
-# for old branch builds
-if [ "${GERRIT_BRANCH}" != "master" ]; then
- echo "Removing $OS_ID-$OS_VERSION_ID package 'vpp-ext-deps'"
- if [ "${OS_ID,,}" == "ubuntu" ] || [ "${OS_ID,,}" == "debian" ] ; then
- sudo apt-get -y remove vpp-ext-deps || true
- elif [ "${OS_ID,,}" == "centos" ]; then
- sudo yum -y erase vpp-ext-deps || true
- sudo yum clean all || true
- else
- echo "ERROR: Unsupported OS '$OS_ID'!"
- fi
-fi
diff --git a/jjb/scripts/terraform_s3_docs_ship.sh b/jjb/scripts/terraform_s3_docs_ship.sh
new file mode 100644
index 00000000..7b2542ae
--- /dev/null
+++ b/jjb/scripts/terraform_s3_docs_ship.sh
@@ -0,0 +1,99 @@
+#!/bin/bash
+
+# Copyright (c) 2021 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+echo "---> terraform_s3_docs_ship.sh"
+
+set -exuo pipefail
+
+cat >"/w/workspace/main.tf" <<'END_OF_TERRAFORM_SCRIPT'
+terraform {
+ required_providers {
+ aws = {
+ source = "hashicorp/aws"
+ version = "5.18.1"
+ }
+ }
+}
+
+provider "aws" {
+ region = "us-east-1"
+ profile = "default"
+ s3_use_path_style = false
+ skip_credentials_validation = true
+ skip_metadata_api_check = true
+ skip_requesting_account_id = true
+}
+
+locals {
+ mime_types = {
+ xml = "application/xml",
+ html = "text/html",
+ txt = "text/plain",
+ log = "text/plain",
+ css = "text/css",
+ md = "text/markdown",
+ rst = "text/x-rst",
+ csv = "text/csv",
+ svg = "image/svg+xml",
+ jpg = "image/jpeg",
+ png = "image/png",
+ gif = "image/gif",
+ js = "application/javascript",
+ pdf = "application/pdf"
+ json = "application/json",
+ otf = "font/otf",
+ ttf = "font/ttf",
+ woff = "font/woff",
+ woff2 = "font/woff2"
+ }
+}
+
+variable "workspace_dir" {
+ description = "Workspace base directory"
+ type = string
+}
+
+variable "file_match_pattern" {
+ description = "File matching pattern"
+ type = string
+ default = "**/*"
+}
+
+variable "bucket" {
+ description = "S3 bucket name"
+ type = string
+}
+
+variable "bucket_path" {
+ description = "S3 bucket path to key"
+ type = string
+}
+
+resource "aws_s3_bucket_object" "object" {
+ for_each = fileset(var.workspace_dir, var.file_match_pattern)
+
+ bucket = var.bucket
+ key = "${var.bucket_path}${each.value}"
+ source = "${var.workspace_dir}/${each.value}"
+
+ cache_control = "no-store,max-age=0,s-maxage=0"
+ etag = filemd5("${var.workspace_dir}/${each.value}")
+ content_type = lookup(
+ local.mime_types,
+ regex("\\.(?P<extension>[A-Za-z0-9]+)$", each.value).extension,
+ "application/octet-stream"
+ )
+}
+END_OF_TERRAFORM_SCRIPT
diff --git a/jjb/scripts/vpp/build.sh b/jjb/scripts/vpp/build.sh
index bfeaacea..850d6100 100644
--- a/jjb/scripts/vpp/build.sh
+++ b/jjb/scripts/vpp/build.sh
@@ -33,37 +33,22 @@ DRYRUN="${DRYRUN:-}"
IS_CSIT_VPP_JOB="${IS_CSIT_VPP_JOB:-}"
MAKE_PARALLEL_FLAGS="${MAKE_PARALLEL_FLAGS:-}"
MAKE_PARALLEL_JOBS="${MAKE_PARALLEL_JOBS:-}"
-MAKE_TEST_OS="${MAKE_TEST_OS:-ubuntu-18.04}"
-MAKE_TEST_MULTIWORKER_OS="${MAKE_TEST_MULTIWORKER_OS:-debian-10}"
+MAKE_TEST_OS="${MAKE_TEST_OS:-ubuntu-22.04}"
+MAKE_TEST_MULTIWORKER_OS="${MAKE_TEST_MULTIWORKER_OS:-debian-11}"
VPPAPIGEN_TEST_OS="${VPPAPIGEN_TEST_OS:-${MAKE_TEST_OS}}"
BUILD_RESULT="SUCCESSFULLY COMPLETED"
BUILD_ERROR=""
RETVAL="0"
-echo "sha1sum of this script: ${0}"
-sha1sum $0
-
-# TODO: Mount ccache volume into docker container, then enable this.
-#
-#export CCACHE_DIR=/scratch/docker-build/ccache
-#if [ -d $CCACHE_DIR ];then
-# echo "ccache size:"
-# du -sh $CCACHE_DIR
-#else
-# echo $CCACHE_DIR does not exist.
-#fi
-
-if [ -n "${MAKE_PARALLEL_FLAGS}" ]
-then
+if [ -n "${MAKE_PARALLEL_FLAGS}" ] ; then
echo "Building VPP. Number of cores for build set with" \
"MAKE_PARALLEL_FLAGS='${MAKE_PARALLEL_FLAGS}'."
-elif [ -n "${MAKE_PARALLEL_JOBS}" ]
-then
+elif [ -n "${MAKE_PARALLEL_JOBS}" ] ; then
echo "Building VPP. Number of cores for build set with" \
"MAKE_PARALLEL_JOBS='${MAKE_PARALLEL_JOBS}'."
else
- echo "Building VPP. Number of cores not set, " \
- "using build default ($(grep -c ^processor /proc/cpuinfo))."
+ echo "Building VPP. Number of cores not set," \
+ "using build default ($(grep -c ^processor /proc/cpuinfo))."
fi
make_build_test() {
@@ -75,45 +60,70 @@ make_build_test() {
BUILD_ERROR="FAILED 'make install-ext-deps'"
return
fi
+ if [ -f extras/scripts/build_static_vppctl.sh ]; then
+ if ! extras/scripts/build_static_vppctl.sh ; then
+ BUILD_ERROR="FAILED 'extras/scripts/build_static_vppctl.sh'"
+ return
+ fi
+ fi
+ if ! make UNATTENDED=yes test-dep ; then
+ BUILD_ERROR="FAILED 'make test-dep'"
+ return
+ fi
if ! make UNATTENDED=yes pkg-verify ; then
BUILD_ERROR="FAILED 'make pkg-verify'"
- return
+ return
fi
- if [ "${IS_CSIT_VPP_JOB,,}" == "true" ]; then
- # CSIT jobs don't need to run make test
- return
+ if [ "${IS_CSIT_VPP_JOB,,}" == "true" ] ; then
+ # CSIT jobs don't need to run make test
+ return
fi
- if [ -n "${MAKE_PARALLEL_JOBS}" ]; then
- export TEST_JOBS="${MAKE_PARALLEL_JOBS}"
+ if [ -n "${MAKE_PARALLEL_JOBS}" ] ; then
+ TEST_JOBS="${MAKE_PARALLEL_JOBS}"
echo "Testing VPP with ${TEST_JOBS} cores."
else
- export TEST_JOBS="auto"
+ TEST_JOBS="auto"
echo "Testing VPP with automatically calculated number of cores. " \
"See test logs for the exact number."
fi
- if [ "${OS_ID}-${OS_VERSION_ID}" == "${VPPAPIGEN_TEST_OS}" ]; then
- if ! src/tools/vppapigen/test_vppapigen.py; then
- BUILD_ERROR="FAILED src/tools/vppapigen/test_vppapigen.py"
- return
- fi
+ if grep -q "${OS_ID}-${OS_VERSION_ID}" <<< "${VPPAPIGEN_TEST_OS}"; then
+ if ! src/tools/vppapigen/test_vppapigen.py ; then
+ BUILD_ERROR="FAILED src/tools/vppapigen/test_vppapigen.py"
+ return
+ fi
fi
- if [ "${OS_ID}-${OS_VERSION_ID}" == "${MAKE_TEST_OS}" ]; then
- if ! make COMPRESS_FAILED_TEST_LOGS=yes RETRIES=3 test; then
- BUILD_ERROR="FAILED 'make test'"
- return
- fi
+ if grep -q "${OS_ID}-${OS_VERSION_ID}" <<< "${MAKE_TEST_OS}"; then
+ if ! make COMPRESS_FAILED_TEST_LOGS=yes TEST_JOBS="$TEST_JOBS" RETRIES=3 test ; then
+ BUILD_ERROR="FAILED 'make test'"
+ return
+ fi
else
- echo "Skip running 'make test' on ${OS_ID}-${OS_VERSION_ID}"
+ echo "Skip running 'make test' on ${OS_ID}-${OS_VERSION_ID}"
fi
- if [ "${OS_ID}-${OS_VERSION_ID}" == "${MAKE_TEST_MULTIWORKER_OS}" ] && git grep VPP_WORKER_CONFIG; then
- if ! make VPP_WORKER_CONFIG="workers 2" COMPRESS_FAILED_TEST_LOGS=yes RETRIES=3 test; then
- BUILD_ERROR="FAILED 'make test' with VPP_WORKER_CONFIG='workers 2'"
- return
- else
- echo -e "\n* VPP ${OS_ID^^}-${OS_VERSION_ID}-${OS_ARCH^^} MULTIWORKER MAKE TEST SUCCESSFULLY COMPLETED\n"
- fi
+ if grep -q "${OS_ID}-${OS_VERSION_ID}" <<< "${MAKE_TEST_MULTIWORKER_OS}"; then
+ if git grep -q VPP_WORKER_CONFIG ; then
+ if ! make VPP_WORKER_CONFIG="workers 2" COMPRESS_FAILED_TEST_LOGS=yes \
+ RETRIES=3 TEST_JOBS="$TEST_JOBS" test ; then
+ BUILD_ERROR="FAILED 'make test' with VPP_WORKER_CONFIG='workers 2'"
+ return
+ else
+ echo -e "\n* VPP ${OS_ID^^}-${OS_VERSION_ID}-${OS_ARCH^^}" \
+ "MULTIWORKER MAKE TEST SUCCESSFULLY COMPLETED\n"
+ fi
+ elif git grep -q VPP_WORKER_COUNT ; then
+ if ! make VPP_WORKER_COUNT="2" COMPRESS_FAILED_TEST_LOGS=yes \
+ RETRIES=3 TEST_JOBS="$TEST_JOBS" test ; then
+ BUILD_ERROR="FAILED 'make test' with VPP_WORKER_CONFIG='workers 2'"
+ return
+ else
+ echo -e "\n* VPP ${OS_ID^^}-${OS_VERSION_ID}-${OS_ARCH^^}" \
+ "MULTIWORKER MAKE TEST SUCCESSFULLY COMPLETED\n"
+ fi
+ else
+ echo "Skip running MULTIWORKER MAKE TEST on ${OS_ID}-${OS_VERSION_ID}"
+ fi
else
- echo "Skip running 'make test' with VPP_WORKER_CONFIG='workers 2' on ${OS_ID}-${OS_VERSION_ID}"
+ echo "Skip running MULTIWORKER MAKE TEST on ${OS_ID}-${OS_VERSION_ID}"
fi
}
@@ -124,5 +134,6 @@ if [ -n "$BUILD_ERROR" ] ; then
BUILD_RESULT="$BUILD_ERROR"
RETVAL="1"
fi
-echo -e "\n$line\n* VPP ${OS_ID^^}-${OS_VERSION_ID}-${OS_ARCH^^} BUILD $BUILD_RESULT\n$line\n"
+echo -e "\n$line\n* VPP ${OS_ID^^}-${OS_VERSION_ID}-${OS_ARCH^^}" \
+ "BUILD $BUILD_RESULT\n$line\n"
exit $RETVAL
diff --git a/jjb/scripts/vpp/check_crc.sh b/jjb/scripts/vpp/check_crc.sh
index 2e07c2b5..c0a9d507 100644..100755
--- a/jjb/scripts/vpp/check_crc.sh
+++ b/jjb/scripts/vpp/check_crc.sh
@@ -21,16 +21,17 @@ set -exuo pipefail
#
# Variables read:
# - WORKSPACE - Jenkins workspace to create csit subdirectory in.
+# - GIT_URL - Git clone URL
# - CSIT_REF - Override ref of CSIT git repository to checkout.
# Directories updated:
# - ${WORKSPACE}/csit - Created, holding a checked out CSIT repository.
# - Multiple other side effects by entry script(s), see CSIT repository.
cd "${WORKSPACE}"
-git clone https://gerrit.fd.io/r/csit --depth=1 --no-single-branch --no-checkout
+git clone "${GIT_URL}/csit" --depth=1 --no-single-branch --no-checkout
pushd "${WORKSPACE}/csit"
if [[ -n "${CSIT_REF-}" ]]; then
- git fetch --depth=1 https://gerrit.fd.io/r/csit "${CSIT_REF}"
+ git fetch --depth=1 "${GIT_URL}/csit" "${CSIT_REF}"
git checkout FETCH_HEAD
else
git checkout HEAD
diff --git a/jjb/scripts/vpp/checkstyle.sh b/jjb/scripts/vpp/checkstyle.sh
index 55aa62a5..00fc8bdb 100644..100755
--- a/jjb/scripts/vpp/checkstyle.sh
+++ b/jjb/scripts/vpp/checkstyle.sh
@@ -15,6 +15,25 @@
echo "---> jjb/scripts/vpp/checkstyle.sh"
+# If mlx_rdma_dpdk_matrix.txt file has been updated in the current changeset,
+# verify the current rdma-core_version and dpdk_version exist in the matrix
+# file
+LINE="*******************************************************************"
+BUILD_EXT_DIR="build/external"
+MATRIX_FILE="$BUILD_EXT_DIR/mlx_rdma_dpdk_matrix.txt"
+PKGS_DIR="$BUILD_EXT_DIR/packages"
+if git show --stat | grep -q "$MATRIX_FILE" ; then
+ RDMA_CORE_VERSION="$(grep rdma-core_version $PKGS_DIR/rdma-core.mk | grep -v '(' | mawk '{print $3}')"
+ DPDK_VERSION="$(grep dpdk_version $PKGS_DIR/dpdk.mk | grep -v '(' | mawk '{print $3}')"
+ CURRENT_MATRIX="rdma=$RDMA_CORE_VERSION dpdk=$DPDK_VERSION"
+ if grep -q "$CURRENT_MATRIX" "$MATRIX_FILE"; then
+ echo -e "$LINE\n* DPDK/RDMA-CORE matrix file update successfully verified\n$LINE"
+ else
+ echo -e "$LINE\n* ERROR: 'rdma=$RDMA_CORE_VERSION dpdk=$DPDK_VERSION' not found in $MATRIX_FILE!\n$LINE"
+ exit 1
+ fi
+fi
+
if [ -n "$(grep -E '^checkstyle:' Makefile)" ]
then
make checkstyle
diff --git a/jjb/scripts/vpp/copy_archives.sh b/jjb/scripts/vpp/copy_archives.sh
new file mode 100644
index 00000000..dafcd4ae
--- /dev/null
+++ b/jjb/scripts/vpp/copy_archives.sh
@@ -0,0 +1,38 @@
+#!/usr/bin/env bash
+
+# Copyright (c) 2023 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+echo "---> jjb/scripts/vpp/copy_archives.sh"
+
+set -xuo pipefail
+set +e
+
+# Copy robot archives from perf job to where archive macro needs them.
+#
+# This has to be a script separate from csit-perf.sh, run as publisher,
+# because otherwise it is not easily possible to ensure this is executed
+# also when there is a test case failure.
+#
+# This can be removed when all CSIT branches use correct archive directory.
+# For fixed CSIT, the copy will fail, so errors are ignored everywhere.
+#
+# Variables read:
+# - WORKSPACE - Jenkins workspace to create csit subdirectory in.
+# Directories updated:
+# - ${WORKSPACE}/archives/csit_* - Test results for various VPP builds are here.
+# e.g. csit_current and csit_parent for vpp per-patch perf job.
+
+mkdir -p "${WORKSPACE}/archives"
+# Using asterisk as bisect job creates variable number of directories.
+cp -Rv "${WORKSPACE}/csit_"* "${WORKSPACE}/archives"
diff --git a/jjb/scripts/vpp/cov-build.sh b/jjb/scripts/vpp/cov-build.sh
new file mode 100644
index 00000000..15f86c3b
--- /dev/null
+++ b/jjb/scripts/vpp/cov-build.sh
@@ -0,0 +1,106 @@
+#!/bin/bash
+
+# Copyright (c) 2023 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+echo "---> jjb/scripts/vpp/cov-build.sh"
+
+set -euxo pipefail
+
+line="*************************************************************************"
+# Don't build anything if this is a merge job.
+if [[ ${JOB_NAME} == *merge* ]] ; then
+ echo -e "\n$line\nSkipping build."
+ exit 0
+fi
+
+OS_ID=$(grep '^ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
+OS_VERSION_ID=$(grep '^VERSION_ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
+OS_ARCH=$(uname -m)
+DRYRUN="${DRYRUN:-}"
+IS_CSIT_VPP_JOB="${IS_CSIT_VPP_JOB:-}"
+MAKE_PARALLEL_FLAGS="${MAKE_PARALLEL_FLAGS:-}"
+MAKE_PARALLEL_JOBS="${MAKE_PARALLEL_JOBS:-}"
+MAKE_TEST_OS="${MAKE_TEST_OS:-ubuntu-22.04}"
+MAKE_TEST_MULTIWORKER_OS="${MAKE_TEST_MULTIWORKER_OS:-debian-11}"
+VPPAPIGEN_TEST_OS="${VPPAPIGEN_TEST_OS:-${MAKE_TEST_OS}}"
+BUILD_RESULT="SUCCESSFULLY COMPLETED"
+BUILD_ERROR=""
+RETVAL="0"
+
+if [ -n "${MAKE_PARALLEL_FLAGS}" ] ; then
+ echo "Building VPP. Number of cores for build set with" \
+ "MAKE_PARALLEL_FLAGS='${MAKE_PARALLEL_FLAGS}'."
+elif [ -n "${MAKE_PARALLEL_JOBS}" ] ; then
+ echo "Building VPP. Number of cores for build set with" \
+ "MAKE_PARALLEL_JOBS='${MAKE_PARALLEL_JOBS}'."
+else
+ echo "Building VPP. Number of cores not set," \
+ "using build default ($(grep -c ^processor /proc/cpuinfo))."
+fi
+
+make_test_coverage_report() {
+ if ! make UNATTENDED=yes install-dep ; then
+ BUILD_ERROR="FAILED 'make install-dep'"
+ return
+ fi
+ if ! make UNATTENDED=yes install-ext-deps ; then
+ BUILD_ERROR="FAILED 'make install-ext-deps'"
+ return
+ fi
+ if ! make UNATTENDED=yes test-dep ; then
+ BUILD_ERROR="FAILED 'make test-dep'"
+ return
+ fi
+ if ! make UNATTENDED=yes CCACHE_DISABLE=1 pkg-verify ; then
+ BUILD_ERROR="FAILED 'make pkg-verify'"
+ return
+ fi
+ if [ "${IS_CSIT_VPP_JOB,,}" == "true" ] ; then
+ # CSIT jobs don't need to run make test
+ return
+ fi
+ if [ -n "${MAKE_PARALLEL_JOBS}" ] ; then
+ TEST_JOBS="${MAKE_PARALLEL_JOBS}"
+ echo "Testing VPP with ${TEST_JOBS} cores."
+ else
+ TEST_JOBS="auto"
+ echo "Testing VPP with automatically calculated number of cores. " \
+ "See test logs for the exact number."
+ fi
+ if grep -q "${OS_ID}-${OS_VERSION_ID}" <<< "${VPPAPIGEN_TEST_OS}"; then
+ if ! src/tools/vppapigen/test_vppapigen.py ; then
+ BUILD_ERROR="FAILED src/tools/vppapigen/test_vppapigen.py"
+ return
+ fi
+ fi
+ if grep -q "${OS_ID}-${OS_VERSION_ID}" <<< "${MAKE_TEST_OS}"; then
+ if ! make COMPRESS_FAILED_TEST_LOGS=yes TEST_JOBS="$TEST_JOBS" CCACHE_DISABLE=1 test-cov ; then
+ BUILD_ERROR="FAILED 'make test-cov'"
+ return
+ fi
+ else
+ echo "Skip running 'make test-cov' on ${OS_ID}-${OS_VERSION_ID}"
+ fi
+}
+
+if [ "${DRYRUN,,}" != "true" ] ; then
+ make_test_coverage_report
+fi
+if [ -n "$BUILD_ERROR" ] ; then
+ BUILD_RESULT="$BUILD_ERROR"
+ RETVAL="1"
+fi
+echo -e "\n$line\n* VPP ${OS_ID^^}-${OS_VERSION_ID}-${OS_ARCH^^}" \
+ "TEST COVERAGE REPORT $BUILD_RESULT\n$line\n"
+exit $RETVAL
diff --git a/jjb/scripts/vpp/csit-bisect.sh b/jjb/scripts/vpp/csit-bisect.sh
new file mode 100644
index 00000000..0a264dbc
--- /dev/null
+++ b/jjb/scripts/vpp/csit-bisect.sh
@@ -0,0 +1,38 @@
+#!/usr/bin/env bash
+
+# Copyright (c) 2023 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+set -exuo pipefail
+
+# Clone CSIT git repository and proceed with entry script located there.
+#
+# Variables read:
+# - WORKSPACE - Jenkins workspace to create csit subdirectory in.
+# - CSIT_REF - Override ref of CSIT git repository to checkout.
+# Directories updated:
+# - ${WORKSPACE}/csit - Created, holding a checked out CSIT repository.
+# - Multiple other side effects by entry script(s), see CSIT repository.
+
+cd "${WORKSPACE}"
+git clone https://gerrit.fd.io/r/csit --depth=1 --no-single-branch --no-checkout
+pushd "${WORKSPACE}/csit"
+if [[ -n "${CSIT_REF-}" ]]; then
+ git fetch --depth=1 https://gerrit.fd.io/r/csit "${CSIT_REF}"
+ git checkout FETCH_HEAD
+else
+ git checkout HEAD
+fi
+popd
+csit_entry_dir="${WORKSPACE}/csit/resources/libraries/bash/entry"
+source "${csit_entry_dir}/with_oper_for_vpp.sh" "bisect.sh"
diff --git a/jjb/scripts/vpp/csit-device.sh b/jjb/scripts/vpp/csit-device.sh
index 6d4beb80..98919300 100644..100755
--- a/jjb/scripts/vpp/csit-device.sh
+++ b/jjb/scripts/vpp/csit-device.sh
@@ -21,16 +21,17 @@ set -exuo pipefail
#
# Variables read:
# - WORKSPACE - Jenkins workspace to create csit subdirectory in.
+# - GIT_URL - Git clone URL
# - CSIT_REF - Override ref of CSIT git repository to checkout.
# Directories updated:
# - ${WORKSPACE}/csit - Created, holding a checked out CSIT repository.
# - Multiple other side effects by entry script(s), see CSIT repository.
cd "${WORKSPACE}"
-git clone https://gerrit.fd.io/r/csit --depth=1 --no-single-branch --no-checkout
+git clone "${GIT_URL}/csit" --depth=1 --no-single-branch --no-checkout
pushd "${WORKSPACE}/csit"
if [[ -n "${CSIT_REF-}" ]]; then
- git fetch --depth=1 https://gerrit.fd.io/r/csit "${CSIT_REF}"
+ git fetch --depth=1 "${GIT_URL}/csit" "${CSIT_REF}"
git checkout FETCH_HEAD
else
git checkout HEAD
diff --git a/jjb/scripts/vpp/csit-perf.sh b/jjb/scripts/vpp/csit-perf.sh
index e5730665..ee0b500c 100644..100755
--- a/jjb/scripts/vpp/csit-perf.sh
+++ b/jjb/scripts/vpp/csit-perf.sh
@@ -21,16 +21,17 @@ set -exuo pipefail
#
# Variables read:
# - WORKSPACE - Jenkins workspace to create csit subdirectory in.
+# - GIT_URL - Git clone URL
# - CSIT_REF - Override ref of CSIT git repository to checkout.
# Directories updated:
# - ${WORKSPACE}/csit - Created, holding a checked out CSIT repository.
# - Multiple other side effects by entry script(s), see CSIT repository.
cd "${WORKSPACE}"
-git clone https://gerrit.fd.io/r/csit --depth=1 --no-single-branch --no-checkout
+git clone "${GIT_URL}/csit" --depth=1 --no-single-branch --no-checkout
pushd "${WORKSPACE}/csit"
if [[ -n "${CSIT_REF-}" ]]; then
- git fetch --depth=1 https://gerrit.fd.io/r/csit "${CSIT_REF}"
+ git fetch --depth=1 "${GIT_URL}/csit" "${CSIT_REF}"
git checkout FETCH_HEAD
else
git checkout HEAD
diff --git a/jjb/scripts/vpp/debug-build.sh b/jjb/scripts/vpp/debug-build.sh
index 414a8116..68338df5 100644
--- a/jjb/scripts/vpp/debug-build.sh
+++ b/jjb/scripts/vpp/debug-build.sh
@@ -22,13 +22,11 @@ OS_ID=$(grep '^ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
OS_VERSION_ID=$(grep '^VERSION_ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
OS_ARCH=$(uname -m)
DRYRUN="${DRYRUN:-}"
+MAKE_PARALLEL_JOBS="${MAKE_PARALLEL_JOBS:-}"
BUILD_RESULT="SUCCESSFULLY COMPLETED"
BUILD_ERROR=""
RETVAL="0"
-echo "sha1sum of this script: ${0}"
-sha1sum $0
-
# run with ASAN on
# disable ASAN for now in the debug build - it's broken with PAPI
# in make test transitioning to unix sockets
@@ -47,9 +45,22 @@ make_build_test_debug() {
BUILD_ERROR="FAILED 'make build'"
return
fi
- if ! make UNATTENDED=yes TEST_JOBS=auto test-debug ; then
- BUILD_ERROR="FAILED 'make test-debug'"
- return
+ if grep -q "${OS_ID}-${OS_VERSION_ID}" <<< "${MAKE_TEST_OS}"; then
+ if [ -n "${MAKE_PARALLEL_JOBS}" ] ; then
+ TEST_JOBS="${MAKE_PARALLEL_JOBS}"
+ echo "Testing VPP with ${TEST_JOBS} cores."
+ else
+ TEST_JOBS="auto"
+ echo "Testing VPP with automatically calculated number of cores. " \
+ "See test logs for the exact number."
+ fi
+ if ! make UNATTENDED=yes COMPRESS_FAILED_TEST_LOGS=yes \
+ TEST_JOBS="$TEST_JOBS" test-debug ; then
+ BUILD_ERROR="FAILED 'make UNATTENDED=yes COMPRESS_FAILED_TEST_LOGS=yes TEST_JOBS=$TEST_JOBS test-debug'"
+ return
+ fi
+ else
+ echo "Skip running 'make test-debug' on ${OS_ID}-${OS_VERSION_ID}"
fi
}
diff --git a/jjb/scripts/vpp/docs.sh b/jjb/scripts/vpp/docs.sh
index 866b3221..52b920e3 100644..100755
--- a/jjb/scripts/vpp/docs.sh
+++ b/jjb/scripts/vpp/docs.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright (c) 2021 Cisco and/or its affiliates.
+# Copyright (c) 2022 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -22,55 +22,8 @@ line="*************************************************************************"
# the git HEAD id is not the same as the Gerrit New Revision id.
if [[ ${JOB_NAME} == *merge* ]] && [ -n "${GERRIT_NEWREV:-}" ] &&
[ "$GERRIT_NEWREV" != "$GIT_COMMIT" ] ; then
- echo -e "\n$line\nSkipping doxygen docs build. A newer patch has been merged.\n$line\n"
+ echo -e "\n$line\nSkipping docs build. A newer patch has been merged.\n$line\n"
exit 0
fi
-
-DOCS_REPO_URL=${DOCS_REPO_URL:-"https://nexus.fd.io/content/sites/site"}
-PROJECT_PATH=${PROJECT_PATH:-"io/fd/vpp"}
-DOC_FILE=${DOC_FILE:-"vpp.docs.zip"}
-DOC_DIR=${DOC_DIR:-"build-root/docs/html"}
-SITE_DIR=${SITE_DIR:-"build-root/docs/deploy-site"}
-RESOURCES_DIR=${RESOURCES_DIR:-"${SITE_DIR}/src/site/resources"}
-MVN=${MVN:-"/opt/apache/maven/bin/mvn"}
-VERSION=${VERSION:-"$(./build-root/scripts/version rpm-version)"}
-make doxygen
-
-if [[ ${JOB_NAME} == *merge* ]] ; then
- mkdir -p $(dirname ${RESOURCES_DIR})
- mv -f ${DOC_DIR} ${RESOURCES_DIR}
- cd ${SITE_DIR}
- find . -type f '(' -name '*.md5' -o -name '*.dot' -o -name '*.map' ')' -delete
- cat > pom.xml << EOF
- <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>io.fd.vpp</groupId>
- <artifactId>docs</artifactId>
- <version>1.0.0</version>
- <packaging>pom</packaging>
-
- <properties>
- <generateReports>false</generateReports>
- </properties>
-
- <build>
- <extensions>
- <extension>
- <groupId>org.apache.maven.wagon</groupId>
- <artifactId>wagon-webdav-jackrabbit</artifactId>
- <version>2.10</version>
- </extension>
- </extensions>
- </build>
- <distributionManagement>
- <site>
- <id>fdio-site</id>
- <url>dav:${DOCS_REPO_URL}/${PROJECT_PATH}/${VERSION}</url>
- </site>
- </distributionManagement>
- </project>
-EOF
- ${MVN} -B site:site site:deploy -gs "${GLOBAL_SETTINGS_FILE}" -s "${SETTINGS_FILE}" -T 4C
- cd -
-fi
+make UNATTENDED=yes docs
diff --git a/jjb/scripts/csit/vpp-functional-virl.sh b/jjb/scripts/vpp/docs_spell.sh
index 21333aa6..4b6a9785 100644..100755
--- a/jjb/scripts/csit/vpp-functional-virl.sh
+++ b/jjb/scripts/vpp/docs_spell.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright (c) 2020 Cisco and/or its affiliates.
+# Copyright (c) 2022 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -13,18 +13,11 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-echo "---> jjb/scripts/csit/vpp-functional-virl.sh"
+echo "---> jjb/scripts/vpp/docs_spell.sh"
-# execute csit bootstrap script if it exists
-if [ -e bootstrap.sh ]
+if grep -qE '^docs\-%' Makefile && grep -qE '^spell' docs/Makefile
then
- # make sure that bootstrap.sh is executable
- chmod +x bootstrap.sh
- # run the script
- ./bootstrap.sh
+ make docs-spell
else
- echo 'ERROR: No bootstrap.sh found'
- exit 1
+ echo "Can't find docs-spell target in Makefile - skipping docs-spell"
fi
-
-# vim: ts=4 ts=4 sts=4 et :
diff --git a/jjb/scripts/vpp/dpdk-rdma-version-mismatch.sh b/jjb/scripts/vpp/dpdk-rdma-version-mismatch.sh
new file mode 100644
index 00000000..b2248064
--- /dev/null
+++ b/jjb/scripts/vpp/dpdk-rdma-version-mismatch.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+# Copyright (c) 2022 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+echo "---> jjb/scripts/vpp/dpdk-rdma-version-mismatch.sh"
+
+set -euxo pipefail
+
+line="*************************************************************************"
+EXTERNAL_BUILD_DIR="$WORKSPACE/build/external"
+RETVAL="0"
+MISMATCH_RESULT="INCLUDED IN"
+
+make -C "$EXTERNAL_BUILD_DIR" build-deb
+source "$EXTERNAL_BUILD_DIR/dpdk_mlx_default.sh" || true
+
+if [ "${DPDK_MLX_DEFAULT-}" = "n" ] ; then
+ MISMATCH_RESULT="MISSING FROM"
+ RETVAL="1"
+fi
+echo -e "\n$line\n* MLX DPDK DRIVER $MISMATCH_RESULT VPP-EXT-DEPS PACKAGE\n$line\n"
+exit $RETVAL
diff --git a/jjb/scripts/vpp/gcc-build.sh b/jjb/scripts/vpp/gcc-build.sh
index 488e8d7d..9bd6d4ff 100644
--- a/jjb/scripts/vpp/gcc-build.sh
+++ b/jjb/scripts/vpp/gcc-build.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright (c) 2021 Cisco and/or its affiliates.
+# Copyright (c) 2022 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -25,9 +25,6 @@ DRYRUN="${DRYRUN:-}"
BUILD_RESULT="SUCCESSFULLY COMPLETED"
BUILD_ERROR=""
RETVAL="0"
-
-echo "sha1sum of this script: ${0}"
-sha1sum $0
export CC=gcc
make_build_release_build_test_gcov_sanity() {
@@ -39,24 +36,32 @@ make_build_release_build_test_gcov_sanity() {
BUILD_ERROR="FAILED 'make install-ext-deps'"
return
fi
- if ! make UNATTENDED=yes build-release ; then
- BUILD_ERROR="FAILED 'make build'"
+ if ! make UNATTENDED=yes CCACHE_DISABLE=1 build-release ; then
+ BUILD_ERROR="FAILED 'make build-release'"
return
fi
- if ! make UNATTENDED=yes build ; then
+ if ! make UNATTENDED=yes CCACHE_DISABLE=1 build ; then
BUILD_ERROR="FAILED 'make build'"
return
fi
+ if [ -n "${MAKE_PARALLEL_JOBS}" ] ; then
+ TEST_JOBS="${MAKE_PARALLEL_JOBS}"
+ echo "Testing VPP with ${TEST_JOBS} cores."
+ else
+ TEST_JOBS="auto"
+ echo "Testing VPP with automatically calculated number of cores. " \
+ "See test logs for the exact number."
+ fi
# TODO: Add 'smoke test' env var to select smoke test cases
# then update this accordingly. For now pick a few basic suites...
- MAKE_TEST_SUITES="vlib vppinfra vpe_api vapi vom bihash"
+ MAKE_TEST_SUITES="vlib vppinfra vpe_api vapi cli bihash"
for suite in $MAKE_TEST_SUITES ; do
- if ! make UNATTENDED=yes GCOV_TESTS=1 TEST_JOBS=auto TEST=$suite test ; then
- BUILD_ERROR="FAILED 'make GCOV_TESTS=1 TEST_JOBS=auto TEST=$suite test'!"
+ if ! make UNATTENDED=yes CCACHE_DISABLE=1 TESTS_GCOV=1 TEST_JOBS="$TEST_JOBS" TEST=$suite test ; then
+ BUILD_ERROR="FAILED 'make TEST=$suite test'!"
return
fi
- if ! make UNATTENDED=yes GCOV_TESTS=1 TEST_JOBS=auto TEST=$suite test-debug ; then
- BUILD_ERROR="FAILED 'make GCOV_TESTS=1 TEST_JOBS=auto TEST=$suite test-debug'!"
+ if ! make UNATTENDED=yes CCACHE_DISABLE=1 TESTS_GCOV=1 TEST_JOBS="$TEST_JOBS" TEST=$suite test-debug ; then
+ BUILD_ERROR="FAILED 'make TEST=$suite test-debug'!"
return
fi
done
diff --git a/jjb/scripts/vpp/make-test-docs.sh b/jjb/scripts/vpp/make-test-docs.sh
deleted file mode 100755
index 1e390a8b..00000000
--- a/jjb/scripts/vpp/make-test-docs.sh
+++ /dev/null
@@ -1,80 +0,0 @@
-#!/bin/bash
-
-# Copyright (c) 2021 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-echo "---> jjb/scripts/vpp/make-test-docs.sh"
-
-set -euxo pipefail
-
-line="*************************************************************************"
-# Don't build anything if this is a merge job being run when
-# the git HEAD id is not the same as the Gerrit New Revision id.
-if [[ ${JOB_NAME} == *merge* ]] && [ -n "${GERRIT_NEWREV:-}" ] &&
- [ "$GERRIT_NEWREV" != "$GIT_COMMIT" ] ; then
- echo -e "\n$line\nSkipping 'make test' doxygen docs build. A newer patch has been merged.\n$line\n"
- exit 0
-fi
-
-DOCS_REPO_URL=${DOCS_REPO_URL:-"https://nexus.fd.io/content/sites/site"}
-PROJECT_PATH=${PROJECT_PATH:-"io/fd/vpp"}
-DOC_DIR=${DOC_DIR:-"test/doc/build/html"}
-SITE_DIR=${SITE_DIR:-"build-root/docs/deploy-site"}
-RESOURCES_DIR=${RESOURCES_DIR:-"${SITE_DIR}/src/site/resources/vpp_make_test"}
-MVN=${MVN:-"/opt/apache/maven/bin/mvn"}
-VERSION=${VERSION:-"$(./build-root/scripts/version rpm-version)"}
-
-if [[ ${JOB_NAME} == *2009* ]] || [[ ${JOB_NAME} == *2101* ]] ; then
- DOC_DIR="build-root/build-test/doc/html"
-fi
-
-make test-doc
-
-if [[ ${JOB_NAME} == *merge* ]]; then
- mkdir -p ${RESOURCES_DIR}
- mv -f ${DOC_DIR} ${RESOURCES_DIR}
- ls -alR ${RESOURCES_DIR}
- cd ${SITE_DIR}
-
- cat > pom.xml << EOF
- <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>io.fd.vpp</groupId>
- <artifactId>docs</artifactId>
- <version>1.0.0</version>
- <packaging>pom</packaging>
-
- <properties>
- <generateReports>false</generateReports>
- </properties>
-
- <build>
- <extensions>
- <extension>
- <groupId>org.apache.maven.wagon</groupId>
- <artifactId>wagon-webdav-jackrabbit</artifactId>
- <version>2.10</version>
- </extension>
- </extensions>
- </build>
- <distributionManagement>
- <site>
- <id>fdio-site</id>
- <url>dav:${DOCS_REPO_URL}/${PROJECT_PATH}/${VERSION}</url>
- </site>
- </distributionManagement>
- </project>
-EOF
- ${MVN} -B site:site site:deploy -gs "${GLOBAL_SETTINGS_FILE}" -s "${SETTINGS_FILE}" -T 4C
- cd -
-fi
diff --git a/jjb/scripts/vpp/sphinx-docs.sh b/jjb/scripts/vpp/sphinx-docs.sh
deleted file mode 100644
index d80b4cd3..00000000
--- a/jjb/scripts/vpp/sphinx-docs.sh
+++ /dev/null
@@ -1,76 +0,0 @@
-#!/bin/bash
-
-# Copyright (c) 2021 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-echo "---> jjb/scripts/vpp/sphinx-docs.sh"
-
-set -euxo pipefail
-
-line="*************************************************************************"
-# Don't build anything if this is a merge job being run when
-# the git HEAD id is not the same as the Gerrit New Revision id.
-if [[ ${JOB_NAME} == *merge* ]] && [ -n "${GERRIT_NEWREV:-}" ] &&
- [ "$GERRIT_NEWREV" != "$GIT_COMMIT" ] ; then
- echo -e "\n$line\nSkipping sphinx docs build. A newer patch has been merged.\n$line\n"
- exit 0
-fi
-
-DOCS_REPO_URL=${DOCS_REPO_URL:-"https://nexus.fd.io/content/sites/site"}
-PROJECT_PATH=${PROJECT_PATH:-"io/fd/vpp"}
-DOC_FILE=${DOC_FILE:-"vpp.docs.zip"}
-DOC_DIR=${DOC_DIR:-"./docs/_build/html"}
-SITE_DIR=${SITE_DIR:-"build-root/docs/deploy-site"}
-RESOURCES_DIR=${RESOURCES_DIR:-"${SITE_DIR}/src/site/resources"}
-MVN=${MVN:-"/opt/apache/maven/bin/mvn"}
-VERSION=${VERSION:-"$(./build-root/scripts/version rpm-version)"}
-
-make docs-venv
-CONFIRM=-y FORCE=--force-yes make docs
-
-if [[ ${JOB_NAME} == *merge* ]]; then
- mkdir -p $(dirname ${RESOURCES_DIR})
- mv -f ${DOC_DIR} ${RESOURCES_DIR}
- cd ${SITE_DIR}
- cat > pom.xml << EOF
- <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>io.fd.vpp</groupId>
- <artifactId>docs</artifactId>
- <version>1.0.0</version>
- <packaging>pom</packaging>
-
- <properties>
- <generateReports>false</generateReports>
- </properties>
-
- <build>
- <extensions>
- <extension>
- <groupId>org.apache.maven.wagon</groupId>
- <artifactId>wagon-webdav-jackrabbit</artifactId>
- <version>2.10</version>
- </extension>
- </extensions>
- </build>
- <distributionManagement>
- <site>
- <id>fdio-site</id>
- <url>dav:${DOCS_REPO_URL}/${PROJECT_PATH}/v${VERSION}</url>
- </site>
- </distributionManagement>
- </project>
-EOF
- ${MVN} -B site:site site:deploy -gs "${GLOBAL_SETTINGS_FILE}" -s "${SETTINGS_FILE}" -T 4C
- cd -
-fi
diff --git a/jjb/tldk/gtest-build.sh b/jjb/tldk/gtest-build.sh
deleted file mode 100755
index f5a27e0f..00000000
--- a/jjb/tldk/gtest-build.sh
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/bin/bash
-set -e -o pipefail
-echo $WORKSPACE
-git clone -v https://github.com/google/googletest.git --branch release-1.10.0 \
-$WORKSPACE/googletest
-cmake $WORKSPACE/googletest/CMakeLists.txt
-make -C $WORKSPACE/googletest
-echo GTEST_DIR=$WORKSPACE/googletest/googletest > gtest-env.prop
-echo GMOCK_DIR=$WORKSPACE/googletest/googlemock >> gtest-env.prop
-
-echo "*******************************************************************"
-echo "* GTEST BUILD SUCCESSFULLY COMPLETED"
-echo "*******************************************************************"
-
diff --git a/jjb/tldk/include-raw-build.sh b/jjb/tldk/include-raw-build.sh
deleted file mode 100755
index d2baf0cf..00000000
--- a/jjb/tldk/include-raw-build.sh
+++ /dev/null
@@ -1,58 +0,0 @@
-#!/bin/bash
-# basic build script example
-set -e -o pipefail
-# do nothing but print the current slave hostname
-hostname
-export CCACHE_DIR=/tmp/ccache
-if [ -d $CCACHE_DIR ];then
- echo $CCACHE_DIR exists
- du -sk $CCACHE_DIR
-else
- echo $CCACHE_DIR does not exist. This must be a new slave.
-fi
-
-echo "cat /etc/bootstrap.sha"
-if [ -f /etc/bootstrap.sha ];then
- cat /etc/bootstrap.sha
-else
- echo "Cannot find /etc/bootstrap.sha"
-fi
-
-echo "cat /etc/bootstrap-functions.sha"
-if [ -f /etc/bootstrap-functions.sha ];then
- cat /etc/bootstrap-functions.sha
-else
- echo "Cannot find /etc/bootstrap-functions.sha"
-fi
-
-echo "sha1sum of this script: ${0}"
-sha1sum $0
-
-# Make TLDK
-make
-
-echo "*******************************************************************"
-echo "* TLDK BUILD SUCCESSFULLY COMPLETED"
-echo "*******************************************************************"
-
-# Run unit tests application
-sudo $WORKSPACE/x86_64-native-linuxapp-gcc/app/gtest-rfc --lcores=0 -n 2
-
-echo "*******************************************************************"
-echo "* TLDK UNIT TESTS SUCCESSFUL"
-echo "*******************************************************************"
-
-if [ -f "$WORKSPACE/examples/l4fwd/test/run_test.sh" ]
-then
- export ETH_DEV="tap"
- export L4FWD_PATH=$WORKSPACE/x86_64-native-linuxapp-gcc/app/l4fwd
- export L4FWD_FECORE=0
- export L4FWD_BECORE=1
-
- sudo -E /bin/bash $WORKSPACE/examples/l4fwd/test/run_test.sh -46a
-
- echo "*****************************************************************"
- echo "* TLDK OFO/LOST SEGMENT TESTS SUCCESSFUL"
- echo "*****************************************************************"
-fi
-
diff --git a/jjb/tldk/include-raw-tldk-csit-functional-virl.sh b/jjb/tldk/include-raw-tldk-csit-functional-virl.sh
deleted file mode 100644
index 547a000f..00000000
--- a/jjb/tldk/include-raw-tldk-csit-functional-virl.sh
+++ /dev/null
@@ -1,52 +0,0 @@
-#!/bin/bash
-# Copyright (c) 2017 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-set -xeu -o pipefail
-
-# Clone tldk and start tests
-git clone https://gerrit.fd.io/r/tldk
-
-# If the git clone fails, complain clearly and exit
-if [ $? != 0 ]; then
- echo "Failed to run: git clone https://gerrit.fd.io/r/tldk"
- exit 1
-fi
-
-# Clone csit and start tests
-git clone https://gerrit.fd.io/r/csit
-
-# If the git clone fails, complain clearly and exit
-if [ $? != 0 ]; then
- echo "Failed to run: git clone https://gerrit.fd.io/r/csit"
- exit 1
-fi
-
-# Move the tldk to the csit dir
-sudo mv -f ./tldk/ ./csit/
-
-cd csit
-
-# execute nsh_sfc bootstrap script if it exists
-if [ -e bootstrap-TLDK.sh ]
-then
- # make sure that bootstrap-TLDK.sh is executable
- chmod +x bootstrap-TLDK.sh
- # run the script
- ./bootstrap-TLDK.sh
-else
- echo 'ERROR: No bootstrap-TLDK.sh found'
- exit 1
-fi
-
-# vim: ts=4 ts=4 sts=4 et :
diff --git a/jjb/tldk/tldk.yaml b/jjb/tldk/tldk.yaml
deleted file mode 100644
index 191b5920..00000000
--- a/jjb/tldk/tldk.yaml
+++ /dev/null
@@ -1,266 +0,0 @@
-# Copyright (c) 2017 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
----
-- project:
- name: tldk
- jobs:
- - '{project}-verify-{stream}-{os}'
- - '{project}-merge-{stream}-{os}'
- - '{project}-verify-image-{stream}-{os}'
- - 'tldk-csit-verify-func-{stream}-{os}-virl'
-
- project: 'tldk'
- os:
- - ubuntu1604
- stream:
- - master:
- branch: 'master'
- - dev-next-socket:
- branch: 'dev-next-socket'
- - dev-mitm-proxy:
- branch: 'dev-mitm-proxy'
-
-- project:
- name: tldk-view
- view:
- - project-view
- project-name: tldk
-
-- job-template:
- name: '{project}-verify-{stream}-{os}'
-
- project-type: freestyle
- node: '{os}-builder-4c-4g'
- concurrent: true
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
- - os-parameter:
- os: '{os}'
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: '{build-timeout}'
-
- triggers:
- - gerrit-trigger-patch-submitted:
- name: '{project}'
- branch: '{branch}'
-
- builders:
- - shell:
- !include-raw-escape: gtest-build.sh
- - inject:
- properties-file: gtest-env.prop
- - shell:
- !include-raw-escape: include-raw-build.sh
-
- publishers:
- - lf-infra-publish
-
-- job-template:
- name: '{project}-verify-image-{stream}-{os}'
-
- project-type: freestyle
- node: '{os}-builder-4c-4g'
- concurrent: true
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
- - os-parameter:
- os: '{os}'
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: '{build-timeout}'
-
- triggers:
- - gerrit:
- server-name: 'Primary'
- trigger-on:
- - comment-added-contains-event:
- comment-contains-value: 'verify-images'
- projects:
- - project-compare-type: 'ANT'
- project-pattern: '{project}'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- skip-vote:
- successful: true
- failed: true
- unstable: true
- notbuilt: true
-
- builders:
- - shell:
- !include-raw-escape: gtest-build.sh
- - inject:
- properties-file: gtest-env.prop
- - shell:
- !include-raw-escape: include-raw-build.sh
-
- publishers:
- - lf-infra-publish
-
-- job-template:
- name: '{project}-merge-{stream}-{os}'
-
- project-type: freestyle
- node: '{os}-builder-4c-4g'
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
- - os-parameter:
- os: '{os}'
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: ''
- choosing-strategy: 'default'
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: '{build-timeout}'
-
- triggers:
- - gerrit-trigger-patch-merged:
- name: '{project}'
- branch: '{branch}'
-
- builders:
- - shell:
- !include-raw-escape: gtest-build.sh
- - inject:
- properties-file: gtest-env.prop
- - shell:
- !include-raw-escape: include-raw-build.sh
-
- publishers:
- - lf-infra-publish
-
-- job-template:
- name: 'tldk-csit-verify-func-{stream}-{os}-virl'
-
- project-type: freestyle
- node: '{os}-builder-4c-4g'
- concurrent: true
- archive-artifacts: >
- **/csit/report.html
- **/csit/log.html
- **/csit/output.xml
- latest-only: false
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: '{build-timeout}'
-
- triggers:
- - gerrit-trigger-manually-triggered:
- name: '{project}'
- branch: '{branch}'
- comment-trigger-value: 'verify-tldk-func'
-
- builders:
- - shell:
- !include-raw-escape: include-raw-tldk-csit-functional-virl.sh
-
- publishers:
- - robot-report:
- output-path: ''
- - lf-infra-publish
-
-- project:
- name: tldk-info
- project-name: tldk
- jobs:
- - gerrit-info-yaml-verify
- build-node: centos7-builder-2c-2g
- project: tldk
- branch: master
-
-- project:
- name: tldk-sonar
- project: tldk
- project-name: tldk
- mvn-settings: tldk-settings
- sonarcloud: true
- sonarcloud-project-organization: '{sonarcloud_project_organization}'
- sonarcloud-api-token: '{sonarcloud_api_token}'
- sonarcloud-project-key: '{sonarcloud_project_organization}_{project-name}'
- branch: master
- build-node: centos7-docker-2c-2g
- jobs:
- - gerrit-maven-sonar
diff --git a/jjb/udpi/include-raw-udpi-build.sh b/jjb/udpi/include-raw-udpi-build.sh
deleted file mode 100644
index 7e9b3c0c..00000000
--- a/jjb/udpi/include-raw-udpi-build.sh
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/bin/bash
-# basic build script example
-set -xe -o pipefail
-
-##container server node detection
-grep search /etc/resolv.conf || true
-
-OS_ID=$(grep '^ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
-OS_VERSION_ID=$(grep '^VERSION_ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
-
-echo OS_ID: $OS_ID
-echo OS_VERSION_ID: $OS_VERSION_ID
-
-function setup {
- if ! [ -z ${REPO_NAME} ]; then
- echo "INSTALLING VPP-DPKG-DEV from apt/yum repo"
- REPO_URL="https://packagecloud.io/fdio/${STREAM}"
- echo "REPO_URL: ${REPO_URL}"
- # Setup by installing vpp-dev and vpp-lib
- if [ "$OS_ID" == "ubuntu" ]; then
- if [ -f /etc/apt/sources.list.d/99fd.io.list ];then
- echo "Deleting: /etc/apt/sources.list.d/99fd.io.list"
- sudo rm /etc/apt/sources.list.d/99fd.io.list
- fi
- if [ -f /etc/apt/sources.list.d/fdio_master.list ];then
- echo "Deleting: /etc/apt/sources.list.d/fdio_master.list"
- sudo rm /etc/apt/sources.list.d/fdio_master.list
- fi
- curl -s https://packagecloud.io/install/repositories/fdio/${STREAM}/script.deb.sh | sudo bash
- elif [ "$OS_ID" == "centos" ]; then
- if [ -f /etc/yum.repos.d/fdio-master.repo ]; then
- echo "Deleting: /etc/yum.repos.d/fdio-master.repo"
- sudo rm /etc/yum.repos.d/fdio-master.repo
- fi
- if [ -f /etc/yum.repos.d/fdio_master.repo ]; then
- echo "Deleting: /etc/yum.repos.d/fdio_master.repo"
- sudo rm /etc/yum.repos.d/fdio_master.repo
- fi
- curl -s https://packagecloud.io/install/repositories/fdio/${STREAM}/script.rpm.sh | sudo bash
- fi
- fi
-}
-
-setup
-
-echo "Building using \"make build-root/build.sh\""
-[ "x${DRYRUN}" == "xTrue" ] || make UNATTENDED=yes install-dep
-[ "x${DRYRUN}" == "xTrue" ] || make UNATTENDED=yes build-install-package-hyperscan
-[ "x${DRYRUN}" == "xTrue" ] || make UNATTENDED=yes build-package
-
-echo "*******************************************************************"
-echo "* UDPI BUILD SUCCESSFULLY COMPLETED"
-echo "*******************************************************************"
diff --git a/jjb/udpi/include-raw-udpi-checkstyle.sh b/jjb/udpi/include-raw-udpi-checkstyle.sh
deleted file mode 100644
index 8f9dd1af..00000000
--- a/jjb/udpi/include-raw-udpi-checkstyle.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/bash
-
-if [ -f scripts/checkstyle.sh ];then
- scripts/checkstyle.sh
-else
- echo "Cannot find cat build-root/scripts/checkstyle.sh - skipping checkstyle"
-fi
diff --git a/jjb/udpi/udpi.yaml b/jjb/udpi/udpi.yaml
deleted file mode 100644
index 7086f4d5..00000000
--- a/jjb/udpi/udpi.yaml
+++ /dev/null
@@ -1,202 +0,0 @@
----
-#########################################################################
-#
-# Copyright (c) 2019 Intel and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#########################################################################
-
-- project:
- name: udpi
- jobs:
- - 'udpi-verify-{stream}-{os}'
- - 'udpi-merge-{stream}-{os}'
-
- project: 'udpi'
- os:
- - ubuntu1604:
- repo-os-part: 'ubuntu.xenial.main'
- - centos7:
- repo-os-part: 'centos7'
- stream:
- - master:
- branch: 'master'
- repo-stream-part: 'master'
- - '2001':
- branch: 'stable/2001'
- repo-stream-part: 'stable.2001'
-
-- project:
- name: udpi-view
- views:
- - project-view
- project-name: udpi
-
-- job-template:
- name: 'udpi-verify-{stream}-{os}'
-
- project-type: freestyle
- node: 'builder-{os}-prod-x86_64'
- concurrent: true
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: 100
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
- - os-parameter:
- os: '{os}'
- - repo-name-parameter:
- repo-name: '{repo-stream-part}.{repo-os-part}'
- - stream-parameter:
- stream: '{stream}'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: 120
-
- triggers:
- - gerrit-trigger-checkstyle:
- name: '{project}'
- branch: '{branch}'
- - gerrit-trigger-patch-submitted:
- name: '{project}'
- branch: '{branch}'
-
- builders:
- - config-file-provider:
- files:
- - file-id: '.packagecloud'
- target: '/root'
- - config-file-provider:
- files:
- - file-id: 'packagecloud_api'
- target: '/root'
- - shell:
- !include-raw-escape: include-raw-udpi-checkstyle.sh
- - shell:
- !include-raw-escape:
- - include-raw-udpi-build.sh
-
- publishers:
- - fdio-infra-publish
- - naginator:
- rerun-unstable-builds: false
- max-failed-builds: 1
- fixed-delay: 90
-
-- job-template:
- name: 'udpi-merge-{stream}-{os}'
-
- project-type: freestyle
- node: 'builder-{os}-prod-x86_64'
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: 100
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
- - os-parameter:
- os: '{os}'
- - stream-parameter:
- stream: '{stream}'
- - repo-name-parameter:
- repo-name: '{repo-stream-part}.{repo-os-part}'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: ''
- choosing-strategy: 'default'
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: '{build-timeout}'
-
- triggers:
- - gerrit-trigger-patch-merged:
- name: '{project}'
- branch: '{branch}'
-
- builders:
- - config-file-provider:
- files:
- - file-id: '.packagecloud'
- target: '/root'
- - config-file-provider:
- files:
- - file-id: 'packagecloud_api'
- target: '/root'
- - shell:
- !include-raw-escape: include-raw-udpi-checkstyle.sh
- - shell:
- !include-raw-escape:
- - include-raw-udpi-build.sh
- - shell:
- !include-raw-escape:
- - ../scripts/packagecloud_push.sh
-
- publishers:
- - fdio-infra-publish
- - naginator:
- rerun-unstable-builds: false
- max-failed-builds: 1
- fixed-delay: 90
-
-- project:
- name: udpi-info
- project-name: udpi
- jobs:
- - gerrit-info-yaml-verify
- build-node: centos7-builder-2c-2g
- project: udpi
- branch: master
-
-- project:
- name: udpi-sonar
- project: udpi
- project-name: udpi
- mvn-settings: udpi-settings
- sonarcloud: true
- sonarcloud-project-organization: '{sonarcloud_project_organization}'
- sonarcloud-api-token: '{sonarcloud_api_token}'
- sonarcloud-project-key: '{sonarcloud_project_organization}_{project-name}'
- branch: master
- build-node: centos7-docker-2c-2g
- jobs:
- - gerrit-maven-sonar
diff --git a/jjb/vpp/docs.yaml b/jjb/vpp/docs.yaml
index 94de3dea..006801f4 100644
--- a/jjb/vpp/docs.yaml
+++ b/jjb/vpp/docs.yaml
@@ -2,31 +2,25 @@
- project:
name: docs
jobs:
- - 'vpp-docs-merge-{stream}-{os}-{executor-arch}'
- 'vpp-docs-verify-{stream}-{os}-{executor-arch}'
- - 'vpp-make-test-docs-merge-{stream}-{os}-{executor-arch}'
- - 'vpp-make-test-docs-verify-{stream}-{os}-{executor-arch}'
+ - 'vpp-docs-merge-{stream}-{os}-{executor-arch}'
+ - 'vpp-docsonly-verify-{stream}-{os}-{executor-arch}'
+ - 'vpp-docsonly-merge-{stream}-{os}-{executor-arch}'
project: 'vpp'
executor-arch: 'x86_64'
-
+ os:
+ - 'ubuntu2204'
stream:
- - master:
+ - 'master':
branch: 'master'
branch-refspec: ''
- os: 'ubuntu2004'
- - '2009':
- branch: 'stable/2009'
+ - '2310':
+ branch: 'stable/2310'
branch-refspec: ''
- os: 'ubuntu1804'
- - '2101':
- branch: 'stable/2101'
+ - '2402':
+ branch: 'stable/2402'
branch-refspec: ''
- os: 'ubuntu1804'
- - '2106':
- branch: 'stable/2106'
- branch-refspec: ''
- os: 'ubuntu1804'
- job-template:
name: 'vpp-docs-verify-{stream}-{os}-{executor-arch}'
@@ -39,11 +33,9 @@
only-if-success: true
default-excludes: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -52,8 +44,6 @@
branch: '{branch}'
- os-parameter:
os: '{os}'
- - maven-exec:
- maven-version: 'mvn33-new'
- stream-parameter:
stream: '{stream}'
- gerrit-refspec-parameter:
@@ -75,16 +65,6 @@
branch: '{branch}'
builders:
- - maven-target:
- maven-version: 'mvn33-new'
- goals: '--version'
- settings: 'vpp-settings'
- settings-type: cfp
- global-settings: 'global-settings'
- global-settings-type: cfp
- - provide-maven-settings:
- settings-file: 'vpp-settings'
- global-settings-file: 'global-settings'
- shell:
!include-raw-escape:
- ../scripts/setup_executor_env.sh
@@ -94,11 +74,9 @@
- shell:
!include-raw-escape:
- ../scripts/vpp/docs.sh
- - shell:
- !include-raw-escape:
- - ../scripts/vpp/sphinx-docs.sh
publishers:
+ - fdio-infra-publish-docs-7day
- fdio-infra-publish
- job-template:
@@ -112,11 +90,9 @@
only-if-success: true
default-excludes: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
parameters:
- project-parameter:
@@ -125,8 +101,6 @@
branch: '{branch}'
- os-parameter:
os: '{os}'
- - maven-exec:
- maven-version: 'mvn33-new'
- stream-parameter:
stream: '{stream}'
@@ -162,16 +136,6 @@
notbuilt: true
builders:
- - maven-target:
- maven-version: 'mvn33-new'
- goals: '--version'
- settings: 'vpp-settings'
- settings-type: cfp
- global-settings: 'global-settings'
- global-settings-type: cfp
- - provide-maven-settings:
- settings-file: 'vpp-settings'
- global-settings-file: 'global-settings'
- shell:
!include-raw-escape:
- ../scripts/setup_executor_env.sh
@@ -183,11 +147,11 @@
- ../scripts/vpp/docs.sh
publishers:
+ - fdio-infra-publish-docs
- fdio-infra-publish
-
- job-template:
- name: 'vpp-make-test-docs-verify-{stream}-{os}-{executor-arch}'
+ name: 'vpp-docsonly-verify-{stream}-{os}-{executor-arch}'
project-type: freestyle
node: 'builder-{os}-prod-{executor-arch}'
@@ -197,12 +161,6 @@
only-if-success: true
default-excludes: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
parameters:
- project-parameter:
project: '{project}'
@@ -210,8 +168,6 @@
branch: '{branch}'
- os-parameter:
os: '{os}'
- - maven-exec:
- maven-version: 'mvn33-new'
- stream-parameter:
stream: '{stream}'
- gerrit-refspec-parameter:
@@ -228,51 +184,61 @@
build-timeout: '{build-timeout}'
triggers:
- - gerrit-trigger-checkstyle:
- name: '{project}'
- branch: '{branch}'
+ - gerrit:
+ server-name: 'Primary'
+ trigger-on:
+ - patchset-created-event:
+ exclude-drafts: 'true'
+ exclude-trivial-rebase: 'false'
+ exclude-no-code-change: 'false'
+ - draft-published-event
+ - comment-added-contains-event:
+ comment-contains-value: 'recheck-docsonly'
+ projects:
+ - project-compare-type: 'ANT'
+ project-pattern: '{project}'
+ branches:
+ - branch-compare-type: 'ANT'
+ branch-pattern: '**/{branch}'
+ file-paths:
+ - compare-type: 'REG_EXP'
+ pattern: '.*docs/.*'
+ override-votes: true
+ gerrit-build-notbuilt-verified-value: 0
+ gerrit-build-successful-verified-value: 1
builders:
- - maven-target:
- maven-version: 'mvn33-new'
- goals: '--version'
- settings: 'vpp-settings'
- settings-type: cfp
- global-settings: 'global-settings'
- global-settings-type: cfp
- - provide-maven-settings:
- settings-file: 'vpp-settings'
- global-settings-file: 'global-settings'
- shell:
!include-raw-escape:
- ../scripts/setup_executor_env.sh
- shell:
!include-raw-escape:
+ - ../scripts/vpp/commitmsg.sh
+ - shell:
+ !include-raw-escape:
- ../scripts/setup_vpp_ubuntu_docker_test.sh
- shell:
!include-raw-escape:
- - ../scripts/vpp/make-test-docs.sh
+ - ../scripts/vpp/docs.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/vpp/docs_spell.sh
publishers:
+ - fdio-infra-publish-docs-7day
- fdio-infra-publish
- job-template:
- name: 'vpp-make-test-docs-merge-{stream}-{os}-{executor-arch}'
+ name: 'vpp-docsonly-merge-{stream}-{os}-{executor-arch}'
project-type: freestyle
node: 'builder-{os}-prod-{executor-arch}'
- concurrent: false
+ concurrent: true
allow-empty: 'true'
fingerprint: false
only-if-success: true
default-excludes: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
parameters:
- project-parameter:
project: '{project}'
@@ -280,8 +246,6 @@
branch: '{branch}'
- os-parameter:
os: '{os}'
- - maven-exec:
- maven-version: 'mvn33-new'
- stream-parameter:
stream: '{stream}'
@@ -296,46 +260,44 @@
build-timeout: '{build-timeout}'
triggers:
- - reverse:
- jobs: 'vpp-merge-{stream}-{os}-{executor-arch}'
- result: 'success'
- gerrit:
server-name: 'Primary'
trigger-on:
+ - change-merged-event
- comment-added-contains-event:
- comment-contains-value: 'run-docs'
+ comment-contains-value: 'remerge-docsonly'
projects:
- project-compare-type: 'ANT'
project-pattern: '{project}'
branches:
- branch-compare-type: 'ANT'
branch-pattern: '**/{branch}'
+ file-paths:
+ - compare-type: 'REG_EXP'
+ pattern: '.*docs/.*'
skip-vote:
successful: true
- failed: true
- unstable: true
- notbuilt: true
+ failed: false
+ unstable: false
+ notbuilt: false
builders:
- - maven-target:
- maven-version: 'mvn33-new'
- goals: '--version'
- settings: 'vpp-settings'
- settings-type: cfp
- global-settings: 'global-settings'
- global-settings-type: cfp
- - provide-maven-settings:
- settings-file: 'vpp-settings'
- global-settings-file: 'global-settings'
- shell:
!include-raw-escape:
- ../scripts/setup_executor_env.sh
- shell:
!include-raw-escape:
+ - ../scripts/vpp/commitmsg.sh
+ - shell:
+ !include-raw-escape:
- ../scripts/setup_vpp_ubuntu_docker_test.sh
- shell:
!include-raw-escape:
- - ../scripts/vpp/make-test-docs.sh
+ - ../scripts/vpp/docs.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/vpp/docs_spell.sh
publishers:
+ - fdio-infra-publish-docs
- fdio-infra-publish
diff --git a/jjb/vpp/vpp.yaml b/jjb/vpp/vpp.yaml
index 6ab98658..62975f00 100644
--- a/jjb/vpp/vpp.yaml
+++ b/jjb/vpp/vpp.yaml
@@ -1,4 +1,4 @@
-# Copyright (c) 2021 Cisco and/or its affiliates.
+# Copyright (c) 2023 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -33,29 +33,20 @@
jobs:
- 'vpp-checkstyle-verify-{stream}-{os}-{executor-arch}'
project: 'vpp'
+ os:
+ - ubuntu2204
stream:
- - master:
+ - 'master':
branch: 'master'
branch-refspec: ''
- os: 'ubuntu2004'
- repo-stream-part: 'master'
- - '2009':
- branch: 'stable/2009'
- branch-refspec: ''
- os: 'ubuntu1804'
- repo-stream-part: 'stable.2009'
- os: 'ubuntu1804'
- - '2101':
- branch: 'stable/2101'
+ - '2310':
+ branch: 'stable/2310'
branch-refspec: ''
- os: 'ubuntu1804'
- repo-stream-part: 'stable.2101'
- - '2106':
- branch: 'stable/2106'
+ - '2402':
+ branch: 'stable/2402'
branch-refspec: ''
- os: 'ubuntu1804'
- repo-stream-part: 'stable.2106'
executor-arch: 'x86_64'
+
# [end] VPP-CHECKSTYLE-X86_64 PROJECT
# VPP-X86_64 PROJECT
@@ -74,65 +65,56 @@
- 'vpp-merge-{stream}-{os}-{executor-arch}'
project: 'vpp'
make-parallel-jobs: '4'
- make-test-os: 'ubuntu-20.04'
stream:
- - master:
+ - 'master':
branch: 'master'
branch-refspec: ''
- repo-stream-part: 'master'
- - '2009':
- branch: 'stable/2009'
- branch-refspec: ''
- make-test-os: 'ubuntu-18.04'
- repo-stream-part: 'stable.2009'
- - '2101':
- branch: 'stable/2101'
+ make-test-os: 'ubuntu-20.04 ubuntu-22.04'
+ make-test-multiworker-os: 'debian-11'
+ - '2310':
+ branch: 'stable/2310'
branch-refspec: ''
- make-test-os: 'ubuntu-18.04'
- repo-stream-part: 'stable.2101'
- - '2106':
- branch: 'stable/2106'
+ make-test-os: 'ubuntu-20.04 ubuntu-22.04'
+ make-test-multiworker-os: 'debian-11'
+ - '2402':
+ branch: 'stable/2402'
branch-refspec: ''
- repo-stream-part: 'stable.2106'
+ make-test-os: 'ubuntu-20.04 ubuntu-22.04'
+ make-test-multiworker-os: 'debian-11'
os:
- - centos7:
- repo-os-part: 'centos7'
- - centos8:
- repo-os-part: 'centos8'
- - debian9:
- repo-os-part: 'stretch'
- - debian10:
- repo-os-part: 'buster'
- - ubuntu1804:
- repo-os-part: 'ubuntu.bionic.main'
- - ubuntu2004:
- repo-os-part: 'ubuntu.focal.main'
+ - debian11
+ - ubuntu2004
+ - ubuntu2204
executor-arch: 'x86_64'
- exclude:
- # OS deprecated in master
- - stream: 'master'
- os: 'centos7'
- - stream: 'master'
- os: 'centos8'
- - stream: 'master'
- os: 'debian9'
- # OS deprecated on 2106
- - stream: '2106'
- os: 'centos7'
- - stream: '2106'
- os: 'debian9'
- # 2009 LTS supports all OS variants
- # OS deprecated in 2101
- - stream: '2101'
- os: 'centos7'
- - stream: '2101'
- os: 'debian9'
# [end] VPP-X86_64 PROJECT
+# VPP-GCC-X86_64 PROJECT
+- project:
+ name: vpp-gcc-x86_64
+ jobs:
+ - 'vpp-gcc-verify-{stream}-{os}-{executor-arch}'
+ project: 'vpp'
+ make-parallel-jobs: '4'
+ os:
+ - ubuntu2204
+ executor-arch: 'x86_64'
+ stream:
+ - 'master':
+ branch: 'master'
+ branch-refspec: ''
+ - '2310':
+ branch: 'stable/2310'
+ branch-refspec: ''
+ - '2402':
+ branch: 'stable/2402'
+ branch-refspec: ''
+
+# [end] VPP-GCC-X86_64 PROJECT
+
# VPP-DEBUG-X86_64 PROJECT
#
# Currently a periodic job due to intermittent failures.
-# Limiting branches to master and 2009, since other branches
+# Limiting branches to master, since other branches
# may not get fixes for the intermittent failures.
#
- project:
@@ -141,56 +123,66 @@
- 'vpp-debug-verify-{stream}-{os}-{executor-arch}'
project: 'vpp'
make-parallel-jobs: '4'
- make-test-os: 'ubuntu-20.04'
+ make-test-os: 'ubuntu-20.04 ubuntu-22.04'
comment-trigger-value: 'debug-verify'
stream:
- - master:
+ - 'master':
branch: 'master'
branch-refspec: ''
- # Once per hour
- periodicity: 'H * * * *'
- repo-stream-part: 'master'
- - '2009':
- branch: 'stable/2009'
- branch-refspec: ''
- make-test-os: 'ubuntu-18.04'
- # Once per day
- periodicity: 'H H * * *'
- repo-stream-part: 'stable.2009'
- os:
- - ubuntu2004:
- repo-os-part: 'ubuntu.focal.main'
+ make-test-os: 'ubuntu-20.04 ubuntu-22.04'
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
+
# [end] VPP-DEBUG-X86_64 PROJECT
-# VPP-GCC-X86_64 PROJECT
+# VPP-DPDK-RDMA-VERSION-MISMATCH-X86_64 PROJECT
+#
+# Currently a periodic job due to intermittent failures.
+# Limiting branches to master, since other branches
+# may not get fixes for the intermittent failures.
+#
- project:
- name: vpp-gcc-x86_64
+ name: vpp-dpdk-rdma-version-mismatch-x86_64
jobs:
- - 'vpp-gcc-verify-{stream}-{os}-{executor-arch}'
+ - 'vpp-dpdk-rdma-version-mismatch-{stream}-{os}-{executor-arch}'
project: 'vpp'
+ make-test-os: 'ubuntu-20.04 ubuntu-22.04'
+ comment-trigger-value: 'dpdk-rdma-version-mismatch'
+ stream:
+ - 'master':
+ branch: 'master'
+ # Once per day at 00:15
+ periodicity: '15 0 * * 0-6'
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- os:
- - ubuntu2004:
- repo-os-part: 'ubuntu.focal.main'
+
+# [end] VPP-DPDK-RDMA-VERSION-MISMATCH-X86_64 PROJECT
+
+# VPP-COV-X86_64 PROJECT
+#
+# A per-patch job to produce code coverage.
+#
+# TODO: switch OS to ubuntu-22.04 once the skipping of intermittently failing
+# tests are removed
+#
+- project:
+ name: vpp-cov-x86_64
+ jobs:
+ - 'vpp-cov-verify-{stream}-{os}-{executor-arch}'
+ project: 'vpp'
+ make-parallel-jobs: '4'
+ make-test-os: 'ubuntu-20.04 ubuntu-22.04'
+ comment-trigger-value: 'gcov-report'
stream:
- - master:
+ - 'master':
branch: 'master'
branch-refspec: ''
- repo-stream-part: 'master'
- - '2009':
- branch: 'stable/2009'
- branch-refspec: ''
- repo-stream-part: 'stable.2009'
- - '2101':
- branch: 'stable/2101'
- branch-refspec: ''
- repo-stream-part: 'stable.2101'
- - '2106':
- branch: 'stable/2106'
- branch-refspec: ''
- repo-stream-part: 'stable.2106'
-# [end] VPP-GCC-X86_64 PROJECT
+ # Once per day at 00:25
+ periodicity: '25 0 * * 0-6'
+ os: 'ubuntu2004'
+ executor-arch: 'x86_64'
+
+# [end] VPP-COV-X86_64 PROJECT
# VPP-AARCH64 PROJECT
#
@@ -207,96 +199,61 @@
- 'vpp-verify-{stream}-{os}-{executor-arch}'
- 'vpp-merge-{stream}-{os}-{executor-arch}'
project: 'vpp'
- make-parallel-jobs: '16'
- make-test-os: 'ubuntu-20.04'
+ make-parallel-jobs: '4'
stream:
- - master:
+ - 'master':
branch: 'master'
branch-refspec: ''
- repo-stream-part: 'master'
- - '2009':
- branch: 'stable/2009'
- branch-refspec: ''
- make-test-os: 'ubuntu-18.04'
- repo-stream-part: 'stable.2009'
- - '2101':
- branch: 'stable/2101'
+ make-test-os: 'ubuntu-20.04 ubuntu-22.04'
+ make-test-multiworker-os: ''
+ - '2310':
+ branch: 'stable/2310'
branch-refspec: ''
- make-test-os: 'ubuntu-18.04'
- repo-stream-part: 'stable.2101'
- - '2106':
- branch: 'stable/2106'
+ make-test-os: 'ubuntu-20.04 ubuntu-22.04'
+ make-test-multiworker-os: ''
+ - '2402':
+ branch: 'stable/2402'
branch-refspec: ''
- repo-stream-part: 'stable.2106'
+ make-test-os: 'ubuntu-20.04 ubuntu-22.04'
+ make-test-multiworker-os: ''
os:
- - centos8:
- repo-os-part: 'centos8'
- - ubuntu1804:
- repo-os-part: 'ubuntu-arm.bionic.main'
- - ubuntu2004:
- repo-os-part: 'ubuntu.focal.main'
+ - ubuntu2004
+ - ubuntu2204
executor-arch: 'aarch64'
- exclude:
- # OS deprecated in master
- - stream: 'master'
- os: 'centos8'
- - stream: 'master'
- # OS introduced after 2009
- - stream: '2009'
- os: 'centos8'
- - stream: '2009'
- os: 'ubuntu2004'
- # OS introduced after 2101
- - stream: '2101'
- os: 'centos8'
- - stream: '2101'
- os: 'ubuntu2004'
# [end] VPP-AARCH64 PROJECT
# VPP-CSIT-VERIFY-DEVICE PROJECT
- project:
name: vpp-csit-verify-device
jobs:
- - 'vpp-csit-verify-device-perpatch':
- make-parallel-jobs: '32'
- exclude:
- - testbed-arch: '1n-tx2'
- - 'vpp-csit-verify-device-periodic':
+ - 'vpp-csit-verify-device-{stream}-{os}-{executor-arch}-{testbed-arch}':
make-parallel-jobs: '32'
- periodicity: 'H * * * *'
- skip-vote: 'true'
- comment-trigger-value: 'devicetest-periodic'
- exclude:
- - stream: '2009'
- - stream: '2101'
- - testbed-arch: '1n-skx'
project: 'vpp'
skip-vote: 'false'
stream:
- - master:
+ - 'master':
branch: 'master'
branch-refspec: ''
- repo-stream-part: 'master'
- - '2009':
- branch: 'stable/2009'
- branch-refspec: ''
- repo-stream-part: 'stable.2009'
- - '2101':
- branch: 'stable/2101'
+ - '2310':
+ branch: 'stable/2310'
branch-refspec: ''
- repo-stream-part: 'stable.2101'
- - '2106':
- branch: 'stable/2106'
+ - '2402':
+ branch: 'stable/2402'
branch-refspec: ''
- repo-stream-part: 'stable.2106'
testbed-arch:
- - 1n-skx:
- os: 'ubuntu2004'
+ - 1n-spr:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 1n-tx2:
- os: 'ubuntu2004'
+ skip-vote: 'true'
+ - 1n-alt:
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
-
+ skip-vote: 'true'
+ exclude:
+ # 1n-alt testbed not supported
+ # in CSIT prior to 2402
+ - testbed-arch: 1n-alt
+ stream: '2310'
# [end] VPP-CSIT-VERIFY-DEVICE PROJECT
# VPP-CSIT-VERIFY-PERF PROJECT
@@ -304,53 +261,53 @@
name: vpp-csit-verify-perf
jobs:
- 'vpp-csit-verify-perf-{stream}-{os}-{executor-arch}-{testbed-arch}'
+ - 'vpp-csit-bisect-{stream}-{os}-{executor-arch}-{testbed-arch}'
project: 'vpp'
skip-vote: 'false'
stream:
- - master:
+ - 'master':
branch: 'master'
branch-refspec: ''
- repo-stream-part: 'master'
- - '2009':
- branch: 'stable/2009'
- branch-refspec: ''
- repo-stream-part: 'stable.2009'
- - '2101':
- branch: 'stable/2101'
- branch-refspec: ''
- repo-stream-part: 'stable.2101'
- - '2106':
- branch: 'stable/2106'
- branch-refspec: ''
- repo-stream-part: 'stable.2106'
testbed-arch:
+ - 2n-icx:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
- 2n-clx:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 2n-skx:
- os: 'ubuntu2004'
+ - 2n-spr:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 2n-zn2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- - 3n-skx:
- os: 'ubuntu2004'
- executor-arch: 'x86_64'
- - 2n-dnv:
- os: 'ubuntu2004'
- executor-arch: 'x86_64'
- - 3n-dnv:
- os: 'ubuntu2004'
+ - 3n-icx:
+ os: 'ubuntu2204'
executor-arch: 'x86_64'
- 3n-tsh:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
+ executor-arch: 'aarch64'
+ make-parallel-jobs: '16'
+ - 3n-alt:
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
make-parallel-jobs: '16'
- 2n-tx2:
- os: 'ubuntu2004'
+ os: 'ubuntu2204'
executor-arch: 'aarch64'
make-parallel-jobs: '16'
-
+ - 3n-snr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3n-icxd:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3na-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
+ - 3nb-spr:
+ os: 'ubuntu2204'
+ executor-arch: 'x86_64'
# [end] VPP-CSIT-VERIFY-PERF PROJECT
# VPP-CSIT-API-CRC PROJECT
@@ -365,22 +322,17 @@
executor-arch: 'x86_64'
skip-vote: 'false'
stream:
- - master:
+ - 'master':
branch: 'master'
branch-refspec: ''
- - '2009':
- branch: 'stable/2009'
- branch-refspec: ''
- repo-stream-part: 'stable.2009'
- - '2101':
- branch: 'stable/2101'
+ - '2310':
+ branch: 'stable/2310'
branch-refspec: ''
- repo-stream-part: 'stable.2101'
- - '2106':
- branch: 'stable/2106'
+ - '2402':
+ branch: 'stable/2402'
branch-refspec: ''
- repo-stream-part: 'stable.2106'
- os: ubuntu2004
+ os:
+ - 'ubuntu2204'
# [end] VPP-CSIT-API-CRC PROJECT
# LF RELENG VPP PROJECTS
@@ -414,16 +366,12 @@
node: 'builder-{os}-prod-{executor-arch}'
concurrent: true
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
# Please keep parameters in alphabetical order
parameters:
- - archive-artifacts-parameter:
- artifacts: '{archive-artifacts}'
- gerrit-parameter:
branch: '{branch}'
- gerrit-refspec-parameter:
@@ -432,8 +380,6 @@
os: '{os}'
- project-parameter:
project: '{project}'
- - repo-name-parameter:
- repo-name: '{repo-stream-part}.ubuntu.bionic.main'
scm:
- gerrit-trigger-scm:
@@ -461,8 +407,6 @@
- comment-added-contains-event:
comment-contains-value: 'checkstylecheck'
- comment-added-contains-event:
- comment-contains-value: 'docsonly'
- - comment-added-contains-event:
comment-contains-value: 'recheck'
- comment-added-contains-event:
comment-contains-value: 'reverify'
@@ -483,8 +427,6 @@
pattern: ^((?!\/COMMIT_MSG|docs|_abc|_def[\/\.]).)*$
forbidden-file-paths:
- compare-type: REG_EXP
- pattern: .*docs\/.*
- - compare-type: REG_EXP
pattern: .*extras\/emacs\/.*
disable-strict-forbidden-file-verification: 'true'
override-votes: true
@@ -517,6 +459,9 @@
- shell:
!include-raw-escape:
- ../scripts/vpp/commitmsg.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/vpp/docs_spell.sh
publishers:
- fdio-infra-publish
@@ -531,16 +476,12 @@
node: 'builder-{os}-prod-{executor-arch}'
concurrent: true
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: 100
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
# Please keep parameters in alphabetical order
parameters:
- - archive-artifacts-parameter:
- artifacts: '{archive-artifacts}'
- gerrit-parameter:
branch: '{branch}'
- gerrit-refspec-parameter:
@@ -549,12 +490,12 @@
make-parallel-jobs: '{make-parallel-jobs}'
- make-test-os-parameter:
make-test-os: '{make-test-os}'
+ - make-test-multiworker-os-parameter:
+ make-test-multiworker-os: '{make-test-multiworker-os}'
- os-parameter:
os: '{os}'
- project-parameter:
project: '{project}'
- - repo-name-parameter:
- repo-name: '{repo-stream-part}.{repo-os-part}'
- stream-parameter:
stream: '{stream}'
@@ -582,7 +523,7 @@
- ../scripts/setup_vpp_ubuntu_docker_test.sh
- shell:
!include-raw-escape:
- - ../scripts/setup_vpp_dpdk_dev_env.sh
+ - ../scripts/setup_vpp_ext_deps.sh
- shell:
!include-raw-escape:
- ../scripts/vpp/build.sh
@@ -599,16 +540,12 @@
node: 'builder-{os}-prod-{executor-arch}'
concurrent: true
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
# Please keep parameters in alphabetical order
parameters:
- - archive-artifacts-parameter:
- artifacts: '{archive-artifacts}'
- gerrit-parameter:
branch: '{branch}'
- gerrit-refspec-parameter:
@@ -618,11 +555,9 @@
- make-test-os-parameter:
make-test-os: '{make-test-os}'
- os-parameter:
- os: 'ubuntu1804'
+ os: '{os}'
- project-parameter:
project: '{project}'
- - repo-name-parameter:
- repo-name: '{repo-stream-part}.ubuntu.bionic.main'
- stream-parameter:
stream: '{stream}'
@@ -637,9 +572,7 @@
build-timeout: '{build-timeout}'
triggers:
- - timed: '{periodicity}'
- - gerrit-trigger-manually-triggered:
- comment-trigger-value: '{comment-trigger-value}'
+ - gerrit-trigger-checkstyle-nonvoting:
name: '{project}'
branch: '{branch}'
@@ -652,14 +585,75 @@
- ../scripts/setup_vpp_ubuntu_docker_test.sh
- shell:
!include-raw-escape:
- - ../scripts/setup_vpp_dpdk_dev_env.sh
+ - ../scripts/setup_vpp_ext_deps.sh
- shell:
!include-raw-escape:
- ../scripts/vpp/debug-build.sh
publishers:
- fdio-infra-publish
-# [end] VPP-DEBUG-VERIFY-PERIODIC JOB TEMPLATE
+# [end] VPP-DEBUG-VERIFY JOB TEMPLATE
+
+# VPP-DPDK-RDMA-VERSION-MISMATCH PERIODIC JOB TEMPLATE
+- job-template:
+ name: 'vpp-dpdk-rdma-version-mismatch-{stream}-{os}-{executor-arch}'
+
+ project-type: freestyle
+ node: 'builder-{os}-prod-{executor-arch}'
+ concurrent: true
+
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
+
+ # Please keep parameters in alphabetical order
+ parameters:
+ - gerrit-parameter:
+ branch: '{branch}'
+ - make-parallel-jobs-parameter:
+ make-parallel-jobs: '{make-parallel-jobs}'
+ - make-test-os-parameter:
+ make-test-os: '{make-test-os}'
+ - os-parameter:
+ os: '{os}'
+ - project-parameter:
+ project: '{project}'
+ - stream-parameter:
+ stream: '{stream}'
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: 'jenkins-gerrit-credentials'
+ refspec: ''
+ choosing-strategy: 'default'
+
+ wrappers:
+ - fdio-infra-wrappers:
+ build-timeout: '{build-timeout}'
+
+ triggers:
+ - timed: '{periodicity}'
+ - gerrit-trigger-manually-triggered:
+ comment-trigger-value: '{comment-trigger-value}'
+ name: '{project}'
+ branch: '{branch}'
+
+ builders:
+ - shell:
+ !include-raw-escape:
+ - ../scripts/setup_executor_env.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/setup_vpp_ubuntu_docker_test.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/vpp/dpdk-rdma-version-mismatch.sh
+
+ publishers:
+ - vpp-dpdk-rdma-version-mismatch:
+ branch: '{branch}'
+ - fdio-infra-publish
+# [end] VPP-DPDK-RDMA-VERSION-MISMATCH PERIODIC JOB TEMPLATE
# VPP-MERGE JOB TEMPLATE
- job-template:
@@ -668,11 +662,9 @@
project-type: freestyle
node: 'builder-{os}-prod-{executor-arch}'
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: 100
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
# Please keep parameters in alphabetical order
parameters:
@@ -682,16 +674,14 @@
make-parallel-jobs: '{make-parallel-jobs}'
- make-test-os-parameter:
make-test-os: '{make-test-os}'
+ - make-test-multiworker-os-parameter:
+ make-test-multiworker-os: '{make-test-multiworker-os}'
- os-parameter:
os: '{os}'
- project-parameter:
project: '{project}'
- - repo-name-parameter:
- repo-name: '{repo-stream-part}.{repo-os-part}'
- stream-parameter:
stream: '{stream}'
- - archive-artifacts-parameter:
- artifacts: '{archive-artifacts}'
scm:
- gerrit-trigger-scm:
@@ -712,27 +702,26 @@
- config-file-provider:
files:
- file-id: '.packagecloud'
- target: '/root'
+ target: '/root/.packagecloud'
- config-file-provider:
files:
- file-id: 'packagecloud_api'
- target: '/root'
+ target: '/root/packagecloud_api'
- shell:
!include-raw-escape:
- ../scripts/setup_executor_env.sh
- shell:
!include-raw-escape:
+ - ../scripts/vpp/commitmsg.sh
+ - shell:
+ !include-raw-escape:
- ../scripts/setup_vpp_ubuntu_docker_test.sh
- shell:
!include-raw-escape:
- - ../scripts/setup_vpp_dpdk_dev_env.sh
+ - ../scripts/setup_vpp_ext_deps.sh
- shell:
!include-raw-escape:
- ../scripts/vpp/build.sh
-
- - provide-maven-settings:
- settings-file: 'vpp-settings'
- global-settings-file: 'global-settings'
- shell:
!include-raw-escape:
- ../scripts/packagecloud_push.sh
@@ -749,11 +738,9 @@
node: 'builder-{os}-prod-{executor-arch}'
concurrent: true
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: 100
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
# Please keep parameters in alphabetical order
parameters:
@@ -767,12 +754,8 @@
os: '{os}'
- project-parameter:
project: '{project}'
- - repo-name-parameter:
- repo-name: '{repo-stream-part}.{repo-os-part}'
- stream-parameter:
stream: '{stream}'
- - archive-artifacts-parameter:
- artifacts: '{archive-artifacts}'
scm:
- gerrit-trigger-scm:
@@ -798,7 +781,7 @@
- ../scripts/setup_vpp_ubuntu_docker_test.sh
- shell:
!include-raw-escape:
- - ../scripts/setup_vpp_dpdk_dev_env.sh
+ - ../scripts/setup_vpp_ext_deps.sh
- shell:
!include-raw-escape:
- ../scripts/vpp/gcc-build.sh
@@ -807,65 +790,42 @@
- fdio-infra-publish
# [end] VPP-GCC-VERIFY JOB TEMPLATE
-# VPP-CSIT-VERIFY-DEVICE-PERIODIC JOB TEMPLATE
+# VPP-COV-VERIFY JOB TEMPLATE
- job-template:
- name: 'vpp-csit-verify-device-{stream}-{os}-{executor-arch}-{testbed-arch}'
- id: 'vpp-csit-verify-device-periodic'
- description: |
- <ul>
- <li>executor
- <ul>
- <li>csit-builder-{os}-prod-{executor-arch}
- </ul>
- <li>testbed architecture
- <ul>
- <li>{testbed-arch}
- </ul>
- </ul>
+ name: 'vpp-cov-verify-{stream}-{os}-{executor-arch}'
project-type: freestyle
- node: 'csit-builder-{os}-prod-{executor-arch}'
+ node: 'builder-{os}-prod-{executor-arch}'
concurrent: true
- archive-artifacts: '**/csit_current/**/*.*'
- latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: 100
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
# Please keep parameters in alphabetical order
parameters:
- - archive-artifacts-parameter:
- artifacts: '{archive-artifacts}'
- - gerrit-csit-refspec-parameter
- - gerrit-event-comment-text-parameter
- - gerrit-event-type-parameter
- gerrit-parameter:
branch: '{branch}'
- - gerrit-refspec-parameter:
- refspec: '{branch-refspec}'
- make-parallel-jobs-parameter:
make-parallel-jobs: '{make-parallel-jobs}'
+ - make-test-os-parameter:
+ make-test-os: '{make-test-os}'
- os-parameter:
os: '{os}'
- project-parameter:
project: '{project}'
- - repo-name-parameter:
- repo-name: '{repo-stream-part}.ubuntu.bionic.main'
- stream-parameter:
stream: '{stream}'
scm:
- gerrit-trigger-scm:
credentials-id: 'jenkins-gerrit-credentials'
- refspec: '$GERRIT_REFSPEC'
+ refspec: ''
choosing-strategy: 'default'
wrappers:
- fdio-infra-wrappers:
- build-timeout: '90'
+ build-timeout: '{build-timeout}'
triggers:
- timed: '{periodicity}'
@@ -883,22 +843,19 @@
- ../scripts/setup_vpp_ubuntu_docker_test.sh
- shell:
!include-raw-escape:
- - ../scripts/setup_vpp_dpdk_dev_env.sh
+ - ../scripts/setup_vpp_ext_deps.sh
- shell:
!include-raw-escape:
- - ../scripts/vpp/csit-device.sh
+ - ../scripts/vpp/cov-build.sh
publishers:
- - robot-report:
- output-path: 'archives'
-
+ - fdio-infra-publish-cov-7day
- fdio-infra-publish
-# [end] VPP-CSIT-VERIFY-DEVICE-PERIODIC JOB TEMPLATE
+# [end] VPP-COV-VERIFY JOB TEMPLATE
# VPP-CSIT-VERIFY-DEVICE-PERPATCH JOB TEMPLATE
- job-template:
name: 'vpp-csit-verify-device-{stream}-{os}-{executor-arch}-{testbed-arch}'
- id: 'vpp-csit-verify-device-perpatch'
description: |
<ul>
<li>executor
@@ -914,19 +871,14 @@
project-type: freestyle
node: 'csit-builder-{os}-prod-{executor-arch}'
concurrent: true
- archive-artifacts: '**/csit_current/**/*.*'
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: 100
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
# Please keep parameters in alphabetical order
parameters:
- - archive-artifacts-parameter:
- artifacts: '{archive-artifacts}'
- gerrit-csit-refspec-parameter
- gerrit-event-comment-text-parameter
- gerrit-event-type-parameter
@@ -940,8 +892,6 @@
os: '{os}'
- project-parameter:
project: '{project}'
- - repo-name-parameter:
- repo-name: '{repo-stream-part}.ubuntu.bionic.main'
- stream-parameter:
stream: '{stream}'
@@ -970,15 +920,12 @@
- ../scripts/setup_vpp_ubuntu_docker_test.sh
- shell:
!include-raw-escape:
- - ../scripts/setup_vpp_dpdk_dev_env.sh
+ - ../scripts/setup_vpp_ext_deps.sh
- shell:
!include-raw-escape:
- ../scripts/vpp/csit-device.sh
publishers:
- - robot-report:
- output-path: 'archives'
-
- fdio-infra-publish
# [end] VPP-CSIT-VERIFY-DEVICE-PERPATCH JOB TEMPLATE
@@ -1004,21 +951,14 @@
project-type: freestyle
node: 'builder-{os}-prod-{executor-arch}'
concurrent: true
- archive-artifacts: >
- **/csit_current/**/*.*
- **/csit_parent/**/*.*
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: 100
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
# Please keep parameters in alphabetical order
parameters:
- - archive-artifacts-parameter:
- artifacts: '{archive-artifacts}'
- csit-perf-trial-duration-parameter:
csit-perf-trial-duration: "10.0"
- csit-perf-trial-multiplicity-parameter:
@@ -1036,8 +976,6 @@
os: '{os}'
- project-parameter:
project: '{project}'
- - repo-name-parameter:
- repo-name: '{repo-stream-part}.ubuntu.bionic.main'
- stream-parameter:
stream: '{stream}'
@@ -1067,18 +1005,126 @@
- ../scripts/setup_vpp_ubuntu_docker_test.sh
- shell:
!include-raw-escape:
- - ../scripts/setup_vpp_dpdk_dev_env.sh
+ - ../scripts/setup_vpp_ext_deps.sh
- shell:
!include-raw-escape:
- ../scripts/vpp/csit-perf.sh
publishers:
- - robot-report:
- output-path: 'csit_current/0/'
-
+ - postbuildscript:
+ # Can be removed when all CSIT branches use correct archive directory.
+ builders:
+ - build-on:
+ - ABORTED
+ - FAILURE
+ - NOT_BUILT
+ - SUCCESS
+ - UNSTABLE
+ build-steps:
+ - shell:
+ !include-raw-escape:
+ - ../scripts/vpp/copy_archives.sh
- fdio-infra-publish
# [end] VPP-CSIT-VERIFY-PERF JOB TEMPLATE
+# VPP-CSIT-BISECT JOB TEMPLATE
+- job-template:
+ name: 'vpp-csit-bisect-{stream}-{os}-{executor-arch}-{testbed-arch}'
+ description: |
+ <ul>
+ <li>executor
+ <ul>
+ <li>builder-{os}-prod-{executor-arch}
+ </ul>
+ <li>testbed architecture
+ <ul>
+ <li>{testbed-arch}
+ </ul>
+ <li>Objective
+ <ul>
+ <li>Find a cause of VPP performance jump among VPP commits.
+ </ul>
+ </ul>
+
+ project-type: freestyle
+ node: 'builder-{os}-prod-{executor-arch}'
+ concurrent: true
+ latest-only: false
+
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
+
+ # Please keep parameters in alphabetical order
+ parameters:
+ - csit-perf-trial-duration-parameter:
+ csit-perf-trial-duration: "1.0"
+ - csit-perf-trial-multiplicity-parameter:
+ csit-perf-trial-multiplicity: "60"
+ - gerrit-csit-refspec-parameter
+ - gerrit-event-comment-text-parameter
+ - gerrit-event-type-parameter
+ - gerrit-refspec-parameter:
+ refspec: '{branch-refspec}'
+ - gerrit-parameter:
+ branch: '{branch}'
+ - make-parallel-jobs-parameter:
+ make-parallel-jobs: '{make-parallel-jobs}'
+ - os-parameter:
+ os: '{os}'
+ - project-parameter:
+ project: '{project}'
+ - stream-parameter:
+ stream: '{stream}'
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: 'jenkins-gerrit-credentials'
+ refspec: '$GERRIT_REFSPEC'
+ choosing-strategy: 'gerrit'
+
+ wrappers:
+ - fdio-infra-wrappers-non-activity-timeout:
+ build-timeout: 300
+
+ triggers:
+ - gerrit-trigger-csit-perftest:
+ project: '{project}'
+ branch: '{branch}'
+ trigger-word: 'bisecttest-{testbed-arch}'
+ skip-vote: true
+
+ builders:
+ - shell:
+ !include-raw-escape:
+ - ../scripts/setup_executor_env.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/setup_vpp_ubuntu_docker_test.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/setup_vpp_ext_deps.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/vpp/csit-bisect.sh
+
+ publishers:
+ - postbuildscript:
+ # Can be removed when all CSIT branches use correct archive directory.
+ builders:
+ - build-on:
+ - ABORTED
+ - FAILURE
+ - NOT_BUILT
+ - SUCCESS
+ - UNSTABLE
+ build-steps:
+ - shell:
+ !include-raw-escape:
+ - ../scripts/vpp/copy_archives.sh
+ - fdio-infra-publish
+# [end] VPP-CSIT-BISECT JOB TEMPLATE
+
# VPP-CSIT-VERIFY-API-CRC JOB TEMPLATE
- job-template:
name: 'vpp-csit-verify-api-crc-{stream}-{os}-{executor-arch}'
@@ -1088,16 +1134,12 @@
concurrent: true
latest-only: false
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: 100
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
# Please keep parameters in alphabetical order
parameters:
- - archive-artifacts-parameter:
- artifacts: '{archive-artifacts}'
# Not sure whether not failing has any useful usage,
# but it does not hurt to have some flexibility for future.
- csit-fail-on-crc-mismatch-parameter:
@@ -1137,9 +1179,28 @@
- shell:
!include-raw-escape:
- ../scripts/vpp/check_crc.sh
- # TODO: Add sending e-mail notifications to vpp-api-dev@lists.fd.io
+ # TODO: Add sending e-mail notifications to vpp-api-dev@lists.fd.io
publishers:
- fdio-infra-publish
# [end] VPP-CSIT-VERIFY-API-CRC JOB TEMPLATE
# [end] JOB TEMPLATE DEFINITIONS
+
+- project:
+ name: vpp-release
+ project: vpp
+ project-name: vpp
+ build-node: centos8-builder-2c-2g
+ mvn-settings: vpp-settings
+ jobs:
+ - "gerrit-packagecloud-release-verify"
+
+- project:
+ name: vpp-packagecloud-release
+ project: vpp
+ project-name: vpp
+ build-node: centos8-builder-2c-2g
+ mvn-settings: vpp-settings
+ jobs:
+ - "gerrit-packagecloud-release-merge"
+ - "{project-name}-gerrit-release-jobs"
diff --git a/jjb/vsap/include-raw-vsap-build.sh b/jjb/vsap/include-raw-vsap-build.sh
deleted file mode 100644
index 0f1c6d5d..00000000
--- a/jjb/vsap/include-raw-vsap-build.sh
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/bash
-# vsap build script
-set -xe -o pipefail
-
-# container server node detection
-grep search /etc/resolv.conf || true
-
-OS_ID=$(grep '^ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
-OS_VERSION_ID=$(grep '^VERSION_ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
-
-echo OS_ID: $OS_ID
-echo OS_VERSION_ID: $OS_VERSION_ID
-
-echo "Building using \"make deb-${MODE} openssl3_enable=1 vpp=${STREAM}\""
-
-make deb-${MODE} openssl3_enable=1 vpp=${STREAM}
-make verify-${MODE} openssl3_enable=1
-
-echo "*******************************************************************"
-echo "* VSAP ${MODE} ${STREAM} BUILD SUCCESSFULLY COMPLETED"
-echo "*******************************************************************"
diff --git a/jjb/vsap/vsap.yaml b/jjb/vsap/vsap.yaml
deleted file mode 100644
index 31c4b432..00000000
--- a/jjb/vsap/vsap.yaml
+++ /dev/null
@@ -1,191 +0,0 @@
----
-#########################################################################
-#
-# Copyright (c) 2019 Intel and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#########################################################################
-
-- project:
- name: vsap
- jobs:
- - 'vsap-verify-{stream}-{os}-{mode}'
- - 'vsap-merge-{stream}-{os}-{mode}'
-
- project: 'vsap'
- os:
- - ubuntu1804:
- repo-os-part: 'ubuntu.bionic.main'
- stream:
- - '2005':
- branch: 'stable/2005'
- repo-stream-part: 'stable.2005'
- mode:
- - vcl:
- repo-mode-part: 'vcl'
- - ldp:
- repo-mode-part: 'ldp'
-
-- project:
- name: vsap-view
- views:
- - project-view
- project-name: vsap
-
-- job-template:
- name: 'vsap-verify-{stream}-{os}-{mode}'
-
- project-type: freestyle
- node: 'builder-{os}-prod-x86_64'
- concurrent: true
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: 100
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
- - gerrit-refspec-parameter
- - os-parameter:
- os: '{os}'
- - repo-name-parameter:
- repo-name: '{repo-stream-part}.{repo-os-part}.{repo-mode-part}'
- - stream-parameter:
- stream: '{stream}'
- - mode-parameter:
- mode: '{mode}'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
-
- scm:
- - gerrit-trigger-scm-recursive:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
- submodule-recursive: true
- submodule:
- recursive: true
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: 120
-
- triggers:
- - gerrit-trigger-patch-submitted:
- name: '{project}'
- branch: '{branch}'
-
- builders:
- - shell:
- !include-raw-escape:
- - include-raw-vsap-build.sh
-
- publishers:
- - fdio-infra-publish
-
-- job-template:
- name: 'vsap-merge-{stream}-{os}-{mode}'
-
- project-type: freestyle
- node: 'builder-{os}-prod-x86_64'
-
- build-discarder:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: 100
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
- - gerrit-refspec-parameter
- - os-parameter:
- os: '{os}'
- - stream-parameter:
- stream: '{stream}'
- - mode-parameter:
- mode: '{mode}'
- - repo-name-parameter:
- repo-name: '{repo-stream-part}.{repo-os-part}.{repo-mode-part}'
- - string:
- name: ARCHIVE_ARTIFACTS
- default: '{archive-artifacts}'
- description: Artifacts to archive to the logs server.
-
- scm:
- - gerrit-trigger-scm-recursive:
- credentials-id: 'jenkins-gerrit-credentials'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
- submodule-recursive: true
- submodule:
- recursive: true
-
- wrappers:
- - fdio-infra-wrappers:
- build-timeout: '{build-timeout}'
-
- triggers:
- - gerrit-trigger-patch-merged:
- name: '{project}'
- branch: '{branch}'
-
- builders:
- - config-file-provider:
- files:
- - file-id: '.packagecloud'
- target: '/root'
- - config-file-provider:
- files:
- - file-id: 'packagecloud_api'
- target: '/root'
- - shell:
- !include-raw-escape:
- - include-raw-vsap-build.sh
- - shell:
- !include-raw-escape:
- - ../scripts/packagecloud_push.sh
-
- publishers:
- - fdio-infra-publish
-
-- project:
- name: vsap-info
- project-name: vsap
- jobs:
- - gerrit-info-yaml-verify
- build-node: centos7-builder-2c-2g
- project: vsap
- branch: master
-
-- project:
- name: vsap-sonar
- project: vsap
- project-name: vsap
- mvn-settings: vsap-settings
- sonarcloud: true
- sonarcloud-project-organization: '{sonarcloud_project_organization}'
- sonarcloud-api-token: '{sonarcloud_api_token}'
- sonarcloud-project-key: '{sonarcloud_project_organization}_{project-name}'
- branch: master
- build-node: centos7-docker-4c-4g
- jobs:
- - gerrit-maven-sonar
diff --git a/nodepool/nodepool.yaml b/nodepool/nodepool.yaml
index 408cfc16..5af2443e 100644
--- a/nodepool/nodepool.yaml
+++ b/nodepool/nodepool.yaml
@@ -28,8 +28,6 @@ providers:
- name: 'verify-merge'
cloud: vexxhost
max-servers: 10
- availability-zones:
- - 'ca-ymq-2'
template-hostname: 'np-verify-merge-{timestamp}-nodepool-template'
keypair: 'jenkins'
networks:
@@ -46,8 +44,6 @@ providers:
- name: 'multilink'
cloud: vexxhost
max-servers: 16
- availability-zones:
- - 'ca-ymq-2'
template-hostname: 'np-multi-link-{timestamp}-nodepool-template'
keypair: 'jenkins'
networks:
diff --git a/packer/common-packer b/packer/common-packer
-Subproject 74b6be7301b5c407d1ccf4cf6093b3b8cd308ad
+Subproject 09cb3bcf48185afdc5af0a548be904491ae215d
diff --git a/packer/provision/basebuild.sh b/packer/provision/basebuild.sh
index 75b9148e..62f3af55 100644
--- a/packer/provision/basebuild.sh
+++ b/packer/provision/basebuild.sh
@@ -111,9 +111,9 @@ ubuntu_systems() {
# DEB Install Python dependencies
echo "---> Installing Python dependencies $(date +'%Y%m%dT%H%M%S')"
- PYTHON_PKGS="python-all python-dev python-virtualenv python-setuptools \
- python-pip libssl-dev libmysqlclient-dev python2.7 libffi-dev \
- python-cffi"
+ PYTHON_PKGS="python-all python-dev python3-virtualenv python-setuptools \
+ python3-pip libssl-dev libmysqlclient-dev python2.7 \
+ libffi-dev python-cffi"
apt install -y ${PYTHON_PKGS}
# Memory leakage checks
@@ -158,11 +158,10 @@ ubuntu_systems() {
# DEB Install deb_dpdk packages to shorten build times
###REMOVED sphinx-rtd-theme
echo "---> Installing deb_dpdk packages $(date +'%Y%m%dT%H%M%S')"
- DEB_DPDK_PKGS="google-mock lsb-release dpkg-dev debian-xcontrol devscripts \
- pristine-tar dh-python python-sphinx libpcap0.8-dev libstdc++5 \
- python-scapy inkscape libxen-dev libxenstore3.0 python-sphinx-rtd-theme \
- python3 python3-sphinx python3-sphinx-rtd-theme libnuma-dev \
- libibverbs-dev"
+ DEB_DPDK_PKGS="google-mock lsb-release dpkg-dev devscripts pristine-tar \
+ dh-python sphinx-doc sphinx-common libpcap0.8-dev libstdc++5 \
+ python3-scapy inkscape libxen-dev libxenstore3.0 python3 \
+ python3-sphinx python3-sphinx-rtd-theme libibverbs-dev libnuma-dev"
apt install -y ${DEB_DPDK_PKGS}
sudo apt install -y libcap-dev libpcap-dev
@@ -182,6 +181,16 @@ ubuntu_systems() {
echo "---> Forcing CA certificate update $(date +'%Y%m%dT%H%M%S')"
sudo update-ca-certificates -f > /dev/null 2>&1
echo "<--- Forcing CA certificate update $(date +'%Y%m%dT%H%M%S')"
+
+ # Install TLDK development tools
+ echo "---> Installing TLDK packages $(date +'%Y%m%dT%H%M%S')"
+ TLDK_PKGS="libaprutil1-dev libc-dev-bin libc6-dev libcrypt-dev \
+ libexpat1-dev libldap2-dev libsctp-dev libsctp1 libserf-1-1 libsvn1 \
+ linux-libc-dev python3-pyelftools libnuma-dev"
+ apt install -y ${TLDK_PKGS}
+
+ pip3 install meson ninja
+
}
opensuse_systems() {
diff --git a/packer/provision/local-builder.yaml b/packer/provision/local-builder.yaml
index a42049c7..ef904075 100644
--- a/packer/provision/local-builder.yaml
+++ b/packer/provision/local-builder.yaml
@@ -14,13 +14,65 @@
name: vm.nr_hugepages
value: '128'
reload: no
- # yamllint disable-line rule:line-length
- when: ansible_distribution == 'Ubuntu' and ansible_distribution_version == '16.04'
+ when: ansible_distribution == 'Ubuntu'
become: true
- name: 'Install PackageCloud'
command: 'gem install package_cloud'
- # yamllint disable-line rule:line-length
+ when: ansible_distribution == 'Ubuntu'
+ become: true
+
+ - apt_repository:
+ repo: ppa:deadsnakes/ppa
+ state: present
+ become: true
+ when: ansible_distribution == 'Ubuntu'
+
+ - name: Update and upgrade apt packages
+ apt:
+ upgrade: 'yes'
+ update_cache: yes
+ become: true
+ when: ansible_distribution == 'Ubuntu'
+
+ - name: Install python-tox and deps
+ pip:
+ name:
+ - tox
+ - tox-pyenv
+ - python-virtualenv
+ state: present
+ become: true
+ when: ansible_distribution == 'Ubuntu'
+
+ - name: 'Apt Install TLDK Packages'
+ apt:
+ name:
+ - libaprutil1-dev
+ - libc-dev-bin
+ - libc6-dev
+ - libcap-dev
+ - libcrypt-dev
+ - libexpat1-dev
+ - libldap2-dev
+ - libsctp-dev
+ - libsctp1
+ - libserf-1-1
+ - libsvn1
+ - linux-libc-dev
+ - python3-pyelftools
+ - python3-scapy
+ - libnuma-dev
+ state: present
+ when: ansible_distribution == 'Ubuntu'
+ become: true
+
+ - name: Pip Install TLDK Packages
+ pip:
+ name:
+ - meson==0.59.0
+ - ninja
+ state: present
when: ansible_distribution == 'Ubuntu'
become: true
diff --git a/packer/templates/builder.pkr.hcl b/packer/templates/builder.pkr.hcl
new file mode 120000
index 00000000..8ea2d872
--- /dev/null
+++ b/packer/templates/builder.pkr.hcl
@@ -0,0 +1 @@
+../common-packer/templates/builder.pkr.hcl \ No newline at end of file
diff --git a/packer/templates/docker.pkr.hcl b/packer/templates/docker.pkr.hcl
new file mode 120000
index 00000000..08567dfd
--- /dev/null
+++ b/packer/templates/docker.pkr.hcl
@@ -0,0 +1 @@
+../common-packer/templates/docker.pkr.hcl \ No newline at end of file
diff --git a/packer/vars/ubuntu-16.04-arm64.json b/packer/vars/ubuntu-16.04-arm64.json
deleted file mode 100644
index ad161dc4..00000000
--- a/packer/vars/ubuntu-16.04-arm64.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "arch": "arm64",
- "base_image": "Ubuntu 16.04 LTS (arm64) [2020-03-11]",
- "cloud_user_data": "common-packer/provision/ubuntu-user_data.sh",
- "distro": "Ubuntu 16.04",
- "flavor": "v2-standard-1",
- "source_ami_filter_name": "*ubuntu*16.04*",
- "source_ami_filter_owner": "099720109477",
- "ssh_user": "ubuntu",
- "vm_use_block_storage": "true",
- "vm_image_disk_format": "raw"
-}
diff --git a/packer/vars/ubuntu-18.04-arm64.json b/packer/vars/ubuntu-18.04-arm64.json
deleted file mode 100644
index 38315f86..00000000
--- a/packer/vars/ubuntu-18.04-arm64.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "arch": "arm64",
- "base_image": "Ubuntu 18.04 LTS (arm64) [2020-02-18]",
- "cloud_user_data": "common-packer/provision/ubuntu-user_data.sh",
- "distro": "Ubuntu 18.04",
- "flavor": "v2-standard-1",
- "source_ami_filter_name": "*ubuntu*18.04*",
- "source_ami_filter_owner": "099720109477",
- "ssh_user": "ubuntu",
- "vm_use_block_storage": "true",
- "vm_image_disk_format": "raw"
-}