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
3 changes: 2 additions & 1 deletion .ci/Dockerfile.debian12
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,8 @@ RUN apt-get update && \
linux-headers-generic \
pkg-config nasm \
libnuma-dev \
libfuse3-dev
libfuse3-dev \
lsb-release

RUN echo "deb [trusted=yes] http://nbu-nfs.gtm.nvidia.com/auto/mswg/release/MLNX_OFED/MLNX_OFED_LINUX-${MOFED_VER}/MLNX_OFED_LINUX-${MOFED_VER}-debian12.1-$(dpkg-architecture -qDEB_HOST_GNU_CPU)/DEBS/ ./" > /etc/apt/sources.list.d/ofed.list && \
apt update && KVERSION=$(ls /lib/modules) apt install -y mlnx-ofed-basic-user-only
Expand Down
3 changes: 2 additions & 1 deletion .ci/Dockerfile.ubuntu20.04
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,8 @@ RUN apt-get update && \
linux-headers-generic \
pkg-config nasm \
libnuma-dev \
libfuse3-dev
libfuse3-dev \
lsb-release

RUN echo "deb [trusted=yes] https://urm.nvidia.com/artifactory/sw-nbu-swx-ci-debian-local focal liburing1" > /etc/apt/sources.list.d/liburing.list && \
apt update && apt install -y liburing-dev
Expand Down
3 changes: 2 additions & 1 deletion .ci/Dockerfile.ubuntu22.04
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,8 @@ RUN apt-get update && \
linux-headers-generic \
pkg-config nasm \
libnuma-dev \
libfuse3-dev
libfuse3-dev \
lsb-release

RUN wget -qO - https://www.mellanox.com/downloads/ofed/RPM-GPG-KEY-Mellanox | \
sudo apt-key add - && \
Expand Down
57 changes: 57 additions & 0 deletions .ci/Dockerfile.ubuntu24.04
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
FROM ubuntu:24.04
ARG _UID=6213
ARG _GID=11429
ARG _LOGIN=swx-jenkins
ARG _HOME=/var/home/$_LOGIN
ARG DEBIAN_FRONTEND=noninteractive
ARG MOFED_VER
ENV TZ=Etc/UTC
USER root

RUN apt-get update && \
apt-get install -y \
git \
vim \
wget \
curl \
python3 \
dpkg-dev \
sudo \
debhelper \
debsigs \
autotools-dev \
dh-python \
libiscsi-dev \
meson \
uuid-dev \
libssl-dev \
libaio-dev \
libncurses-dev \
libcunit1-dev \
patchelf \
python3-pyelftools \
python3-requests \
python3-pip \
liburing-dev \
linux-headers-generic \
pkg-config nasm \
libnuma-dev \
libfuse3-dev \
lsb-release

RUN wget -qO - https://www.mellanox.com/downloads/ofed/RPM-GPG-KEY-Mellanox | \
sudo apt-key add - && \
echo "deb [trusted=yes] http://nbu-nfs.gtm.nvidia.com/auto/mswg/release/MLNX_OFED/MLNX_OFED_LINUX-${MOFED_VER}/MLNX_OFED_LINUX-${MOFED_VER}-ubuntu24.04-$(dpkg-architecture -qDEB_HOST_GNU_CPU)/DEBS/ ./" > /etc/apt/sources.list.d/ofed.list && \
apt update && KVERSION=$(ls /lib/modules) apt install -y mlnx-ofed-basic-user-only && \
apt-get download libxlio-dev && dpkg --force-all -i libxlio-dev*

RUN echo "${_LOGIN} ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
RUN mkdir -p $_HOME
RUN groupadd -f -g "$_GID" "$_LOGIN"
RUN useradd -u "$_UID" -g "$_GID" -s /bin/bash -m -d ${_HOME} "$_LOGIN"
RUN chown $_LOGIN $_HOME

SHELL ["/bin/bash"]

USER "${_LOGIN}"
ENTRYPOINT [ "/bin/bash", "--login", "--rcfile", "/etc/bashrc", "-c" ]
8 changes: 7 additions & 1 deletion .ci/build_deb.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,12 @@ if [ -z "$VER" ]; then
export VER=$(echo $branch | grep -o '[0-9]\+\(\.[0-9]\+\)*')
fi

if test -n "$ghprbPullId" ; then
REV="pr${ghprbPullId}"
else
REV="${BUILD_NUMBER:-1}"
fi

function pack_dist() {
git submodule init
git submodule update
Expand All @@ -38,7 +44,7 @@ function pack_dist() {

function generate_changelog() {
today=$(date +"%a, %d %b %Y %T %z")
sed -e "s/@PACKAGE_VERSION@/$VER/" -e "s/@PACKAGE_REVISION@/${BUILD_NUMBER:-1}/" \
sed -e "s/@PACKAGE_VERSION@/$VER/" -e "s/@PACKAGE_REVISION@/${REV}/" \
-e 's/@PACKAGE_BUGREPORT@/[email protected]/' -e "s/@BUILD_DATE_CHANGELOG@/$today/" \
debian/changelog.in > debian/changelog
}
Expand Down
4 changes: 3 additions & 1 deletion .ci/job_matrix.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ kubernetes:
privileged: true

env:
MOFED_VER: 25.01-0.5.6.0
MOFED_VER: 25.04-0.6.1.0
REGISTRY_AUTH_FILE: '/mnt/secret_podman/config_podman.json'
GIT_SSH_COMMAND: 'ssh -o StrictHostKeyChecking=no'

Expand All @@ -32,6 +32,7 @@ secret_volumes:
runs_on_dockers:
- {file: '.ci/Dockerfile.ubuntu20.04', name: 'ubuntu20_04', arch: 'aarch64', build_args: '--build-arg MOFED_VER=$MOFED_VER', tag: '$MOFED_VER'}
- {file: '.ci/Dockerfile.ubuntu22.04', name: 'ubuntu22_04', arch: 'aarch64', build_args: '--build-arg MOFED_VER=$MOFED_VER', tag: '$MOFED_VER'}
- {file: '.ci/Dockerfile.ubuntu24.04', name: 'ubuntu24_04', arch: 'aarch64', build_args: '--build-arg MOFED_VER=$MOFED_VER', tag: '$MOFED_VER'}
# - {file: '.ci/Dockerfile.centos7.9.2009', name: 'centos7_9', arch: 'aarch64', build_args: '--build-arg MOFED_VER=$MOFED_VER', tag: '$MOFED_VER'}
- {file: '.ci/Dockerfile.centos8', name: 'centos8_stream', arch: 'aarch64', build_args: '--build-arg MOFED_VER=$MOFED_VER', tag: '$MOFED_VER'}
- {file: '.ci/Dockerfile.openeuler.20.03', name: 'openeuler20_03', arch: 'aarch64', build_args: '--build-arg MOFED_VER=$MOFED_VER', tag: '$MOFED_VER'}
Expand Down Expand Up @@ -69,6 +70,7 @@ steps:
containerSelector:
- "{name: 'ubuntu20_04', variant:1}"
- "{name: 'ubuntu22_04', variant:1}"
- "{name: 'ubuntu24_04', variant:1}"
- "{name: 'centos7_9', variant:1}"
- "{name: 'centos8_stream', variant:1}"
- "{name: 'openeuler20_03', variant:1}"
Expand Down
13 changes: 8 additions & 5 deletions .ci/upload.sh
Original file line number Diff line number Diff line change
Expand Up @@ -41,11 +41,14 @@ upload_deb_urm() {
test -e $deb_pkg
echo "INFO: Signing package ${deb_pkg##*/}"
# Debian 12 doesn't have dpkg-sig, so use debsigs
if [[ "$(get_os_name)" == "debian_12" ]]; then
debsigs --sign=origin -k ${gpg_key_name} ${deb_pkg}
else
dpkg-sig -k ${gpg_key_name} -s builder ${deb_pkg}
fi
case "$(get_os_name)" in
debian_12|ubuntu_24.04)
debsigs --sign=origin -k ${gpg_key_name} ${deb_pkg}
;;
*)
dpkg-sig -k ${gpg_key_name} -s builder ${deb_pkg}
;;
esac
MD5=$(md5sum $deb_pkg | awk '{print $1}')
SHA1=$(shasum -a 1 $deb_pkg | awk '{ print $1 }')
SHA256=$(shasum -a 256 $deb_pkg | awk '{ print $1 }')
Expand Down
10 changes: 7 additions & 3 deletions debian/rules
Original file line number Diff line number Diff line change
Expand Up @@ -68,9 +68,6 @@ override_dh_auto_install:
install -m 644 include/spdk/pci_ids.h debian/tmp$(install_datadir)/include/spdk
install -p -m 644 scripts/bash-completion/spdk debian/tmp/etc/bash_completion.d
sed -i -e 's/ rpc.py/ spdk_rpc.py/' debian/tmp/etc/bash_completion.d/spdk
for so in debian/tmp$(pkg_prefix)/lib/lib*so.*; do \
patchelf --set-rpath $(pkg_prefix)/lib --force-rpath $$so || true; \
done
rm -rf debian/tmp$(pkg_prefix)/share/dpdk/examples
(cd scripts ; python3 setup.py install --install-layout=deb --root=../debian/tmp )
mv debian/tmp/usr/bin/spdkcli.py debian/tmp/usr/bin/spdkcli
Expand All @@ -82,6 +79,13 @@ override_dh_installdeb:
dh_installdeb
rm debian/*/DEBIAN/conffiles

# Run patchelf after strip to avoid corruption with patchelf > 0.14 (RM 4406077)
override_dh_strip:
dh_strip
for so in debian/*/$(pkg_prefix)/lib/lib*so.*; do \
patchelf --set-rpath $(pkg_prefix)/lib --force-rpath $$so || true; \
done

override_dh_shlibdeps:
dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info -l$(shell pwd)/debian/tmp$(pkg_prefix)/lib

Expand Down