diff --git a/ci-scripts/Jenkinsfile-GitLab-Container b/ci-scripts/Jenkinsfile-GitLab-Container index 57d6b1651e..4bdb20d371 100644 --- a/ci-scripts/Jenkinsfile-GitLab-Container +++ b/ci-scripts/Jenkinsfile-GitLab-Container @@ -175,6 +175,28 @@ pipeline { } } } + stage ("Ubuntu-Jetson-Image-Builder") { + steps { + script { + triggerSlaveJob ('RAN-Ubuntu-Jetson-Image-Builder', 'Ubuntu-Jetson-Image-Builder') + } + } + post { + always { + script { + // Using a unique variable name for each test stage to avoid overwriting on a global variable + // due to parallel-time concurrency + ubuntuJetsonBuildStatus = finalizeSlaveJob('RAN-Ubuntu-Jetson-Image-Builder') + } + } + failure { + script { + currentBuild.result = 'FAILURE' + failingStages += ubuntuJetsonBuildStatus + } + } + } + } stage ("RHEL-Cluster-Image-Builder") { steps { script { diff --git a/ci-scripts/cls_containerize.py b/ci-scripts/cls_containerize.py index 8b5a817ac6..965ff6a6db 100644 --- a/ci-scripts/cls_containerize.py +++ b/ci-scripts/cls_containerize.py @@ -304,13 +304,18 @@ class Containerize(): result = re.search('build_cross_arm64', self.imageKind) if result is not None: self.dockerfileprefix = '.ubuntu.cross-arm64' - result = re.search('native_arm', self.imageKind) + result = re.search('native_armv9', self.imageKind) if result is not None: imageNames.append(('oai-gnb', 'gNB', 'oai-gnb', '')) imageNames.append(('ran-build-fhi72', 'build.fhi72.native_arm', 'ran-build-fhi72', '')) imageNames.append(('oai-nr-cuup', 'nr-cuup', 'oai-nr-cuup', '')) imageNames.append(('oai-nr-ue', 'nrUE', 'oai-nr-ue', '')) imageNames.append(('oai-gnb-aerial', 'gNB.aerial', 'oai-gnb-aerial', '')) + result = re.search('native_armv8', self.imageKind) + if result is not None: + imageNames.append(('oai-gnb', 'gNB', 'oai-gnb', '')) + imageNames.append(('oai-nr-cuup', 'nr-cuup', 'oai-nr-cuup', '')) + imageNames.append(('oai-nr-ue', 'nrUE', 'oai-nr-ue', '')) cmd.cd(lSourcePath) # if asterix, copy the entitlement and subscription manager configurations diff --git a/ci-scripts/xml_files/container_image_build_arm.xml b/ci-scripts/xml_files/container_image_build_arm.xml index 7c731fd3a1..f5daa348aa 100644 --- a/ci-scripts/xml_files/container_image_build_arm.xml +++ b/ci-scripts/xml_files/container_image_build_arm.xml @@ -40,7 +40,7 @@ Build_Image Build all Images gracehopper3-oai - native_arm + native_armv9 diff --git a/ci-scripts/xml_files/container_image_build_jetson.xml b/ci-scripts/xml_files/container_image_build_jetson.xml new file mode 100644 index 0000000000..3cdac5efcb --- /dev/null +++ b/ci-scripts/xml_files/container_image_build_jetson.xml @@ -0,0 +1,53 @@ + + + build-tab + Build Container Images for ARM + wrench + + 800813 + 000001 + 000010 + + + + + Create_Workspace + Create new Workspace for server 0 + jetson3-oai + + + Build_Image + Build all Images + jetson3-oai + native_armv8 + + + + Push_Local_Registry + Push Images to Local Registry + jetson3-oai + armv8_ + + + diff --git a/doc/TESTBenches.md b/doc/TESTBenches.md index d7881fb993..e7564b8678 100644 --- a/doc/TESTBenches.md +++ b/doc/TESTBenches.md @@ -113,7 +113,7 @@ information on how the images are built. - [RAN-Ubuntu18-Image-Builder](https://jenkins-oai.eurecom.fr/job/RAN-Ubuntu18-Image-Builder/) ~BUILD-ONLY ~4G-LTE ~5G-NR ~nrUE - run formatting check from `ci-scripts/docker/Dockerfile.formatting.ubuntu` - - obelix: Ubuntu 22 image build using docker (Note: builds U22 images while pipeline is named U18!) + - obelix: Ubuntu image build using docker (Note: builds Ubuntu images of newer version while pipeline is named U18!) - base image from `Dockerfile.base.ubuntu` - build image from `Dockerfile.build.ubuntu`, followed by - target image from `Dockerfile.eNB.ubuntu` @@ -128,13 +128,21 @@ information on how the images are built. - build unit tests from `ci-scripts/docker/Dockerfile.unittest.ubuntu`, and run them - [RAN-Ubuntu-ARM-Image-Builder](https://jenkins-oai.eurecom.fr/job/RAN-Ubuntu-ARM-Image-Builder/) ~BUILD-ONLY ~4G-LTE ~5G-NR - - gracehopper3-oai: ARM Ubuntu 22 image build using docker + - gracehopper3-oai: ARM Ubuntu image build using docker - base image from `Dockerfile.base.ubuntu` - build image from `Dockerfile.build.ubuntu`, followed by - target image from `Dockerfile.gNB.ubuntu` - target image from `Dockerfile.nr-cuup.ubuntu` - target image from `Dockerfile.nrUE.ubuntu` - target image from `Dockerfile.gNB.aerial.ubuntu` +- [RAN-Ubuntu-Jetson-Image-Builder](https://jenkins-oai.eurecom.fr/job/RAN-Ubuntu-Jetson-Image-Builder/) + ~BUILD-ONLY ~4G-LTE ~5G-NR + - jetson3-oai: ARMv8 Ubuntu image build using docker + - base image from `Dockerfile.base.ubuntu` + - build image from `Dockerfile.build.ubuntu`, followed by + - target image from `Dockerfile.gNB.ubuntu` + - target image from `Dockerfile.nr-cuup.ubuntu` + - target image from `Dockerfile.nrUE.ubuntu` #### Image Test pipelines