Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 11 additions & 8 deletions Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -553,7 +553,7 @@ pipeline {
}
}
}
stage('Build RPM on Leap 15.5') {
stage('Build RPM on Leap 15.6') {
when {
beforeAgent true
expression { !skipStage() }
Expand All @@ -566,8 +566,7 @@ pipeline {
' --cap-add=SYS_ADMIN' +
' --privileged=true' +
' -v /scratch:/scratch'
additionalBuildArgs dockerBuildArgs() +
'--build-arg FVERSION=37'
additionalBuildArgs dockerBuildArgs()
}
}
steps {
Expand Down Expand Up @@ -707,10 +706,10 @@ pipeline {
}
}
}
stage('Build on Leap 15.5') {
stage('Build on Leap 15.6') {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't this be Leap 15 to be inline with EL 9 and with what master has?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The stage name adjustments in master where initially made in 92503f0. The Leap 15.6 build changes occurred after that commit. In my opinion the Build on Leap 15 satge name is more closely tied to commit 92503f0.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I disagree. The name simplification was not because we updated to use EL9 but because we changed the stage names at all. Build on Leap 15.6 was never a stage on master. Master went from Leap 15.5 -> Leap 15 and now in 2.6 we went from Leap 15.5 -> Leap 15.6, which is an unnecessary divergence

Copy link
Copy Markdown
Contributor

@phender phender Apr 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The 92503f0 commit simplified 13 build and test stage names - including Build on Leap 15.5 -> Build on Leap 15.

Since 4643b39 came after (what primarily this PR is based upon) it already had the Build on Leap 15 stage name.

The release/2.6 version of the Jenkinsfile still has many of these stage names with the specific distro major.minor version included, so just updating the Leap 15.6 build stage names would be odd.

I'm not opposed to updating the stage names in the release/2.6 Jenkinsfile, but I think its out of scope for this specific PR and more closely tied to commit 92503f0 - which is where its merge approval should be based.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's not about which PR came first. It's just simply that if we are updating the stage name then let's simplify it so we don't have to keep changing the merge requirements each time. All 2.6 PRs with this commit will now require force landing until the merge requirements are updated. But if we update the merge requirements then all 2.6 PRs without this commit will require force landing. That is the entire motivation for simplifying the names when we have to change them for any reason.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in #17942

when {
beforeAgent true
expression { !params.CI_leap15_NOBUILD && !skipStage() }
expression { !params.CI_leap15_NOBUILD && !skipStage() }
}
agent {
dockerfile {
Expand All @@ -719,15 +718,19 @@ pipeline {
additionalBuildArgs dockerBuildArgs(repo_type: 'stable',
parallel_build: true,
deps_build: true) +
" -t ${sanitized_JOB_NAME()}-leap15-gcc"
" -t ${sanitized_JOB_NAME()}-leap15-gcc" +
' --build-arg POINT_RELEASE=.6 ' +
' --build-arg REPOS="' + prRepos() + '"'
}
}
steps {
job_step_update(
sconsBuild(parallel_build: true,
stash_files: 'ci/test_files_to_stash.txt',
build_deps: 'no',
stash_opt: true,
scons_args: sconsFaultsArgs() +
' PREFIX=/opt/daos TARGET_TYPE=release',
build_deps: 'yes'))
' PREFIX=/opt/daos TARGET_TYPE=release'))
}
post {
unsuccessful {
Expand Down
4 changes: 2 additions & 2 deletions ci/parse_ci_envs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ if [ -n "${STAGE_NAME:?}" ]; then
: "${REPO_SPEC:=el-9}"
;;
*Leap\ 15.6*|*leap15.6*|*opensuse15.6*|*sles15.6*)
: "${CHROOT_NAME:=opensuse-leap-15.5-x86_64}"
: "${CHROOT_NAME:=opensuse-leap-15.6-x86_64}"
: "${TARGET:=leap15.6}"
;;
*Leap\ 15.5*|*leap15.5*|*opensuse15.5*|*sles15.5*)
Expand All @@ -39,7 +39,7 @@ if [ -n "${STAGE_NAME:?}" ]; then
: "${TARGET:=leap15.3}"
;;
*Leap\ 15*|*leap15*|*opensuse15*|*sles15*)
: "${CHROOT_NAME:=opensuse-leap-15.5-x86_64}"
: "${CHROOT_NAME:=opensuse-leap-15.6-x86_64}"
: "${TARGET:=leap15}"
: "${REPO_SPEC:=sl-15}"
;;
Expand Down
4 changes: 2 additions & 2 deletions ci/provisioning/post_provision_config_nodes_LEAP.sh
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
#!/bin/bash
#
# Copyright 2021-2024 Intel Corporation.
# Copyright 2025 Hewlett Packard Enterprise Development LP
# Copyright 2025-2026 Hewlett Packard Enterprise Development LP
#
# SPDX-License-Identifier: BSD-2-Clause-Patent

bootstrap_dnf() {
rm -rf "$REPOS_DIR"
ln -s ../zypp/repos.d "$REPOS_DIR"
dnf -y remove lua54 lua-lmod
dnf -y remove lua-lmod
dnf -y --nogpgcheck install lua-lmod --repo '*lua*' --repo '*network-cluster*' --repo '*oss-proxy*'
}

Expand Down
14 changes: 14 additions & 0 deletions utils/docker/Dockerfile.leap.15
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,20 @@ RUN if [ -n "$REPO_FILE_URL" ]; then direct="${REPO_FILE_URL##*//}; "\
dnf clean all && \
rm -f /tmp/install.sh

# According to https://pkgs.org/search/?q=lua-lmod, Leap 15.6 only has lua-lmod-8.7.34.
# This version has a problem with loading modules, as described in https://github.com/TACC/Lmod/issues/687.
# This affects MPI detection in scons, so DAOS cannot be built with MPI support.
# A custom source of the package is required in CI to install a valid version
# of lua-lmod and its dependencies:
# opensuse-network-cluster for lua-lmod (>=8.7.55)
# opensuse-oss for lua53, lua53-luaterm,, sqlite3-tcl, tcl
# opensuse-devel-languages-lua for lua53-luafilesystem, lua53-luaposix
ARG JENKINS_URL
RUN if [ -n "$JENKINS_URL" ]; then \
dnf -y remove lua-lmod; \
dnf -y --nogpgcheck install lua-lmod --repo '*lua*' --repo '*network-cluster*' --repo '*oss-proxy*'; \
fi

# Add DAOS users
ARG UID=1000
COPY ./utils/scripts/helpers/daos-server-user-setup.sh \
Expand Down
25 changes: 25 additions & 0 deletions utils/rpms/packaging/rpm_chrootbuild
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,14 @@ EOF
repo_adds=()
repo_dels=()

# Only for Leap 15.6 chroot
# see ../../docker/Dockerfile.leap.15 for more details
if [[ "${CHROOT_NAME}" == *opensuse-leap-15.6* ]]; then
repo_adds+=("--enablerepo=*opensuse-devel-languages-lua-*")
repo_adds+=("--enablerepo=*opensuse-network-cluster-*")
repo_adds+=("--enablerepo=*opensuse-oss-*")
fi

echo -e "config_opts['yum.conf'] += \"\"\"\n" >> mock.cfg

if [ -n "${ARTIFACTORY_URL:-}" ] && "$LOCAL_REPOS"; then
Expand Down Expand Up @@ -121,6 +129,23 @@ enabled=1\n" >> mock.cfg
done
echo "\"\"\"" >> mock.cfg

# Only for Leap 15.6 chroot
# see ../../docker/Dockerfile.leap.15 for more details
if [[ "${CHROOT_NAME}" == *opensuse-leap-15.6* ]]; then
# Ensure lua-lmod is installed in the chroot
cat >> mock.cfg <<'EOF'

_pkgs = config_opts.get('chroot_additional_packages')
if _pkgs is None:
config_opts['chroot_additional_packages'] = ['lua-lmod']
elif isinstance(_pkgs, str):
config_opts['chroot_additional_packages'] = f"{_pkgs} lua-lmod".strip()
else:
config_opts['chroot_additional_packages'] = list(_pkgs) + ['lua-lmod']
EOF

fi

if [ -n "$DISTRO_VERSION" ]; then
releasever_opt=("--config-opts=releasever=$DISTRO_VERSION")
fi
Expand Down
Loading