Merge topic 'ci-fedora41-dnf-cache'
f398a517be
ci: Update to rebuilt Fedora base imagese9fb64f3b7
Source: Drop incorrect class documentation that had typos2844296c7b
FindMPI: Fix typo in comment72cce810ce
ci(fedora41-hip): update the image in sync w/ `fedora41`fa08bd803d
ci(fedora41): refactor tests removal from Python packages0e5159656a
ci(fedora41): split install prerequisites and build for Rust packages88c5cf809a
ci(fedora41): split install prerequisites and build RBEnv into separate phases86e96322eb
ci(fedora41): tune RVM build to speedup and minimize the final image ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !10283
This commit is contained in:
commit
568a9795a6
@ -3,25 +3,10 @@
|
||||
ARG BASE_IMAGE=fedora:41
|
||||
|
||||
FROM ${BASE_IMAGE} AS dnf-cache
|
||||
# Populate DNF cache w/ the fresh metadata and prefetch packages.
|
||||
RUN --mount=type=bind,source=deps_packages.lst,target=/root/deps_packages.lst \
|
||||
--mount=type=tmpfs,target=/var/log \
|
||||
--mount=type=tmpfs,target=/tmp \
|
||||
dnf install \
|
||||
--setopt=install_weak_deps=False \
|
||||
--setopt=fastestmirror=True \
|
||||
--setopt=max_parallel_downloads=10 \
|
||||
--downloadonly \
|
||||
-y \
|
||||
$(grep -h '^[^#]\+$' /root/*.lst)
|
||||
|
||||
FROM ${BASE_IMAGE}
|
||||
LABEL maintainer="Brad King <brad.king@kitware.com>"
|
||||
|
||||
RUN --mount=type=bind,source=install_deps.sh,target=/root/install_deps.sh \
|
||||
RUN --mount=type=bind,source=dnf.conf,target=/etc/dnf/dnf.conf \
|
||||
--mount=type=bind,source=deps_packages.lst,target=/root/deps_packages.lst \
|
||||
--mount=type=cache,from=dnf-cache,source=/var/lib/dnf,target=/var/lib/dnf,sharing=private \
|
||||
--mount=type=cache,target=/var/cache/pip \
|
||||
--mount=type=cache,target=/var/lib/dnf \
|
||||
--mount=type=tmpfs,target=/var/log \
|
||||
--mount=type=tmpfs,target=/tmp \
|
||||
sh /root/install_deps.sh
|
||||
dnf install -y $(grep -h '^[^#]\+$' /root/*.lst)
|
||||
|
32
.gitlab/ci/docker/fedora41-hip/dnf.conf
Normal file
32
.gitlab/ci/docker/fedora41-hip/dnf.conf
Normal file
@ -0,0 +1,32 @@
|
||||
[main]
|
||||
autocheck_running_kernel=0
|
||||
debuglevel=2
|
||||
diskspacecheck=0
|
||||
fastestmirror=1
|
||||
gpgcheck=1
|
||||
installonly_limit=5
|
||||
install_weak_deps=0
|
||||
keepcache=1
|
||||
log_rotate=0
|
||||
max_parallel_downloads=10
|
||||
metadata_expire=90m
|
||||
multilib_policy=best
|
||||
plugins=1
|
||||
tsflags=nodocs
|
||||
|
||||
# Enable color for all output
|
||||
color=always
|
||||
|
||||
# Default color options according to yum.conf(5)
|
||||
color_list_installed_older=bold,black
|
||||
color_list_installed_newer=bold,yellow
|
||||
color_list_installed_reinstall=normal
|
||||
color_list_installed_extra=bold,red
|
||||
color_list_available_upgrade=bold,blue
|
||||
color_list_available_downgrade=dim,yellow
|
||||
color_list_available_install=normal
|
||||
color_list_available_reinstall =bold,underline,green
|
||||
color_search_match=bold,magenta
|
||||
color_update_installed=green
|
||||
color_update_local=cyan
|
||||
color_update_remote=yellow
|
@ -1,10 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
dnf install \
|
||||
--setopt=install_weak_deps=False \
|
||||
--setopt=fastestmirror=True \
|
||||
--setopt=max_parallel_downloads=10 \
|
||||
-y \
|
||||
$(grep '^[^#]\+$' /root/deps_packages.lst)
|
@ -4,51 +4,107 @@ ARG BASE_IMAGE=fedora:41
|
||||
|
||||
FROM ${BASE_IMAGE} AS dnf-cache
|
||||
# Populate DNF cache w/ the fresh metadata and prefetch packages.
|
||||
RUN --mount=type=bind,source=deps_packages.lst,target=/root/deps_packages.lst \
|
||||
RUN --mount=type=bind,source=dnf.conf,target=/etc/dnf/dnf.conf \
|
||||
--mount=type=bind,source=deps_packages.lst,target=/root/deps_packages.lst \
|
||||
--mount=type=bind,source=iwyu_packages.lst,target=/root/iwyu_packages.lst \
|
||||
--mount=type=bind,source=rbenv_packages.lst,target=/root/rbenv_packages.lst \
|
||||
--mount=type=bind,source=rust_packages.lst,target=/root/rust_packages.lst \
|
||||
--mount=type=bind,source=rvm_packages.lst,target=/root/rvm_packages.lst \
|
||||
--mount=type=tmpfs,target=/var/log \
|
||||
--mount=type=tmpfs,target=/tmp \
|
||||
dnf install \
|
||||
--setopt=install_weak_deps=False \
|
||||
--setopt=fastestmirror=True \
|
||||
--setopt=max_parallel_downloads=10 \
|
||||
--downloadonly \
|
||||
-y \
|
||||
$(grep -h '^[^#]\+$' /root/*.lst)
|
||||
dnf install --downloadonly -y $(grep -h '^[^#]\+$' /root/*.lst)
|
||||
|
||||
|
||||
FROM ${BASE_IMAGE} AS rust-build
|
||||
FROM ${BASE_IMAGE} AS rust-build-env
|
||||
LABEL maintainer="Ben Boeckel <ben.boeckel@kitware.com>"
|
||||
|
||||
RUN --mount=type=bind,source=install_rust.sh,target=/root/install_rust.sh \
|
||||
# Pre-install prerequisites to build Rust projects.
|
||||
RUN --mount=type=bind,source=dnf.conf,target=/etc/dnf/dnf.conf \
|
||||
--mount=type=bind,source=rust_packages.lst,target=/root/rust_packages.lst \
|
||||
--mount=type=cache,from=dnf-cache,source=/var/lib/dnf,target=/var/lib/dnf,sharing=private \
|
||||
--mount=type=cache,from=dnf-cache,source=/var/cache/libdnf5,target=/var/cache/libdnf5,sharing=private \
|
||||
--mount=type=tmpfs,target=/var/log \
|
||||
--mount=type=tmpfs,target=/tmp \
|
||||
sh /root/install_rust.sh
|
||||
dnf install -y $(grep '^[^#]\+$' /root/rust_packages.lst)
|
||||
|
||||
FROM ${BASE_IMAGE} AS rvm-build
|
||||
|
||||
FROM rust-build-env AS rust-build
|
||||
LABEL maintainer="Ben Boeckel <ben.boeckel@kitware.com>"
|
||||
# Build the needed Rust packages.
|
||||
# https://doc.rust-lang.org/cargo/guide/cargo-home.html?highlight=.cargo#caching-the-cargo-home-in-ci
|
||||
RUN --mount=type=bind,source=build_rust.sh,target=/root/build_rust.sh \
|
||||
--mount=type=cache,target=/root/.cargo/registry/index \
|
||||
--mount=type=cache,target=/root/.cargo/registry/cache \
|
||||
--mount=type=tmpfs,target=/tmp \
|
||||
sh /root/build_rust.sh
|
||||
|
||||
RUN --mount=type=bind,source=install_rvm.sh,target=/root/install_rvm.sh \
|
||||
|
||||
FROM ${BASE_IMAGE} AS rvm-build-env
|
||||
LABEL maintainer="Ben Boeckel <ben.boeckel@kitware.com>"
|
||||
# Pre-install prerequisites for RVM.
|
||||
RUN --mount=type=bind,source=dnf.conf,target=/etc/dnf/dnf.conf \
|
||||
--mount=type=bind,source=rvm_packages.lst,target=/root/rvm_packages.lst \
|
||||
--mount=type=cache,from=dnf-cache,source=/var/lib/dnf,target=/var/lib/dnf,sharing=private \
|
||||
--mount=type=cache,from=dnf-cache,source=/var/cache/libdnf5,target=/var/cache/libdnf5,sharing=private \
|
||||
--mount=type=tmpfs,target=/var/log \
|
||||
--mount=type=tmpfs,target=/tmp \
|
||||
sh /root/install_rvm.sh
|
||||
dnf install -y $(grep '^[^#]\+$' /root/rvm_packages.lst)
|
||||
|
||||
|
||||
FROM ${BASE_IMAGE} AS iwyu-build
|
||||
FROM rvm-build-env AS rvm-build
|
||||
LABEL maintainer="Ben Boeckel <ben.boeckel@kitware.com>"
|
||||
# Build Ruby with RVM.
|
||||
RUN --mount=type=bind,source=build_rvm.sh,target=/root/build_rvm.sh \
|
||||
--mount=type=cache,target=/usr/local/rvm/archives \
|
||||
--mount=type=cache,target=/usr/local/rvm/gem-cache \
|
||||
--mount=type=cache,target=/usr/local/rvm/src \
|
||||
--mount=type=tmpfs,target=/tmp \
|
||||
sh /root/build_rvm.sh
|
||||
|
||||
|
||||
FROM ${BASE_IMAGE} AS rbenv
|
||||
# Pre-install prerequisites for `rbenv`.
|
||||
RUN --mount=type=bind,source=dnf.conf,target=/etc/dnf/dnf.conf \
|
||||
--mount=type=bind,source=rbenv_packages.lst,target=/root/rbenv_packages.lst \
|
||||
--mount=type=cache,from=dnf-cache,source=/var/cache/libdnf5,target=/var/cache/libdnf5,sharing=private \
|
||||
--mount=type=tmpfs,target=/var/log \
|
||||
--mount=type=tmpfs,target=/tmp \
|
||||
dnf install -y $(grep '^[^#]\+$' /root/rbenv_packages.lst)
|
||||
|
||||
|
||||
FROM rbenv AS rbenv-build
|
||||
ENV RBENV_ROOT=/opt/rbenv
|
||||
ENV RBENV_BUILD_ROOT=/root/.cache/rbenv-build
|
||||
ENV RUBY_BUILD_CACHE_PATH=/root/.cache/rbenv
|
||||
# Build Ruby with `rbenv`.
|
||||
RUN --mount=type=cache,target=/root/.cache \
|
||||
--mount=type=bind,source=build_rbenv.sh,target=/root/build_rbenv.sh \
|
||||
--mount=type=tmpfs,target=/tmp \
|
||||
sh /root/build_rbenv.sh
|
||||
|
||||
|
||||
FROM ${BASE_IMAGE} AS iwyu-build-env
|
||||
LABEL maintainer="Kyle Edwards <kyle.edwards@kitware.com>"
|
||||
|
||||
RUN --mount=type=bind,source=install_iwyu.sh,target=/root/install_iwyu.sh \
|
||||
# Pre-install prerequisites to build IWYU.
|
||||
RUN --mount=type=bind,source=dnf.conf,target=/etc/dnf/dnf.conf \
|
||||
--mount=type=bind,source=iwyu_packages.lst,target=/root/iwyu_packages.lst \
|
||||
--mount=type=cache,from=dnf-cache,source=/var/lib/dnf,target=/var/lib/dnf,sharing=private \
|
||||
--mount=type=cache,from=dnf-cache,source=/var/cache/libdnf5,target=/var/cache/libdnf5,sharing=private \
|
||||
--mount=type=tmpfs,target=/var/log \
|
||||
--mount=type=tmpfs,target=/tmp \
|
||||
sh /root/install_iwyu.sh
|
||||
dnf install -y $(grep '^[^#]\+$' /root/iwyu_packages.lst)
|
||||
|
||||
|
||||
FROM iwyu-build-env AS iwyu-build
|
||||
LABEL maintainer="Kyle Edwards <kyle.edwards@kitware.com>"
|
||||
# Build IWYU.
|
||||
RUN --mount=type=bind,source=build_iwyu.sh,target=/root/build_iwyu.sh \
|
||||
--mount=type=cache,target=/root/include-what-you-use \
|
||||
--mount=type=tmpfs,target=/tmp \
|
||||
sh /root/build_iwyu.sh
|
||||
|
||||
|
||||
FROM ${BASE_IMAGE} AS p4-dl
|
||||
# Download Perforce.
|
||||
# NOTE `curl` is pre-installed in the base image.
|
||||
RUN curl -C- -L https://www.perforce.com/downloads/perforce/r21.2/bin.linux26x86_64/helix-core-server.tgz \
|
||||
| tar -C /usr/local/bin -xvzf - -- p4 p4d
|
||||
|
||||
|
||||
FROM ${BASE_IMAGE}
|
||||
@ -56,19 +112,24 @@ LABEL maintainer="Ben Boeckel <ben.boeckel@kitware.com>"
|
||||
|
||||
ENV RBENV_ROOT=/opt/rbenv
|
||||
|
||||
RUN --mount=type=bind,source=install_deps.sh,target=/root/install_deps.sh \
|
||||
COPY --from=p4-dl --chown=root:root /usr/local/bin/p4 /usr/local/bin/p4d /usr/local/bin
|
||||
|
||||
RUN --mount=type=bind,source=dnf.conf,target=/etc/dnf/dnf.conf \
|
||||
--mount=type=bind,source=install_deps.sh,target=/root/install_deps.sh \
|
||||
--mount=type=bind,source=deps_packages.lst,target=/root/deps_packages.lst \
|
||||
--mount=type=cache,from=dnf-cache,source=/var/lib/dnf,target=/var/lib/dnf,sharing=private \
|
||||
--mount=type=cache,target=/var/cache/pip \
|
||||
--mount=type=cache,from=dnf-cache,source=/var/cache/libdnf5,target=/var/cache/libdnf5,sharing=private \
|
||||
--mount=type=tmpfs,target=/var/log \
|
||||
--mount=type=tmpfs,target=/tmp \
|
||||
sh /root/install_deps.sh
|
||||
|
||||
RUN --mount=type=bind,from=iwyu-build,source=/root,target=/root \
|
||||
tar -C / -xf /root/iwyu.tar
|
||||
|
||||
RUN --mount=type=bind,from=rust-build,source=/root,target=/root \
|
||||
tar -C /usr/local -xf /root/rust.tar
|
||||
|
||||
RUN --mount=type=bind,from=rvm-build,source=/root,target=/root \
|
||||
tar -C /usr/local -xf /root/rvm.tar
|
||||
|
||||
RUN --mount=type=bind,from=iwyu-build,source=/root,target=/root \
|
||||
tar -C / -xf /root/iwyu.tar
|
||||
RUN --mount=type=bind,from=rbenv-build,source=/root,target=/root \
|
||||
tar -C / -xf /root/rbenv.tar && rbenv global 3.1.2
|
||||
|
33
.gitlab/ci/docker/fedora41/build_iwyu.sh
Executable file
33
.gitlab/ci/docker/fedora41/build_iwyu.sh
Executable file
@ -0,0 +1,33 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
cd
|
||||
if [ -d include-what-you-use/.git ]; then
|
||||
cd include-what-you-use
|
||||
git pull
|
||||
else
|
||||
git clone https://github.com/include-what-you-use/include-what-you-use.git
|
||||
cd include-what-you-use
|
||||
fi
|
||||
|
||||
readonly llvm_full_version="$( clang --version | head -n1 | cut -d' ' -f3 )"
|
||||
readonly llvm_version="$( echo "$llvm_full_version" | cut -d. -f-1 )"
|
||||
git checkout "clang_$llvm_version"
|
||||
|
||||
mkdir -p build
|
||||
cd build
|
||||
|
||||
cmake -GNinja \
|
||||
--fresh \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DIWYU_RESOURCE_RELATIVE_TO=clang \
|
||||
-DIWYU_RESOURCE_DIR=../lib/clang/"$llvm_version" \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr/local/lib/llvm-"$llvm_version" \
|
||||
..
|
||||
|
||||
cmake --build . --parallel
|
||||
|
||||
DESTDIR=~/iwyu-destdir cmake --install .
|
||||
|
||||
tar -C ~/iwyu-destdir -cf ~/iwyu.tar .
|
28
.gitlab/ci/docker/fedora41/build_rbenv.sh
Executable file
28
.gitlab/ci/docker/fedora41/build_rbenv.sh
Executable file
@ -0,0 +1,28 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
echo "gem: --no-document" > ~/.gemrc
|
||||
|
||||
# Ruby rbenv
|
||||
export RUBY_CONFIGURE_OPTS=--disable-install-doc
|
||||
export RUBY_BUILD_CURL_OPTS=-C-
|
||||
rbenv install 3.1.2 -k -s -v
|
||||
|
||||
cat <<EOF >/tmp/exclude.lst
|
||||
*LICENSE*
|
||||
*/doc/*
|
||||
*/man/*
|
||||
*.md
|
||||
BSDL
|
||||
CONTRIBUTING.*
|
||||
COPYING
|
||||
LEGAL
|
||||
PSFL
|
||||
README.rdoc
|
||||
History.rdoc
|
||||
gem_make.out
|
||||
test-unit-*/test
|
||||
rss-*/test
|
||||
EOF
|
||||
tar -cf /root/rbenv.tar --exclude-from=/tmp/exclude.lst ${RBENV_ROOT}
|
10
.gitlab/ci/docker/fedora41/build_rust.sh
Executable file
10
.gitlab/ci/docker/fedora41/build_rust.sh
Executable file
@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
typos_version=1.29.4
|
||||
cargo install --root /usr/local --version "$typos_version" typos-cli
|
||||
|
||||
strip /usr/local/bin/typos
|
||||
|
||||
tar -C /usr/local -cf /root/rust.tar bin/typos
|
41
.gitlab/ci/docker/fedora41/build_rvm.sh
Executable file
41
.gitlab/ci/docker/fedora41/build_rvm.sh
Executable file
@ -0,0 +1,41 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
echo "gem: --no-document" > ~/.gemrc
|
||||
|
||||
gpg2 --keyserver hkps://keyserver.ubuntu.com \
|
||||
--recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 \
|
||||
7D2BAF1CF37B13E2069D6956105BD0E739499BDB
|
||||
|
||||
curl -sSL https://get.rvm.io | bash -s stable --ignore-dotfiles
|
||||
|
||||
export rvm_silence_banner=1
|
||||
|
||||
# keep version in sync with `env_fedora*_makefiles.cmake`
|
||||
/usr/local/rvm/bin/rvm install ruby-3.0.4 --no-docs --disable-binary
|
||||
|
||||
for p in archives docs examples gem-cache log src; do
|
||||
touch /usr/local/rvm/${p}/.tar_exclude
|
||||
done
|
||||
|
||||
cat <<EOF >/tmp/exclude.lst
|
||||
*LICENSE*
|
||||
*/doc/*
|
||||
*/man/*
|
||||
*.md
|
||||
BSDL
|
||||
CONTRIBUTING.*
|
||||
COPYING
|
||||
LEGAL
|
||||
PSFL
|
||||
README.rdoc
|
||||
History.rdoc
|
||||
gem_make.out
|
||||
test-unit-*/test
|
||||
rss-*/test
|
||||
EOF
|
||||
tar -C /usr/local \
|
||||
--exclude-tag-under=.tar_exclude \
|
||||
--exclude-from=/tmp/exclude.lst \
|
||||
-cf /root/rvm.tar rvm
|
@ -24,7 +24,6 @@ jsoncpp-devel
|
||||
libarchive-devel
|
||||
libcurl-devel
|
||||
libuv-devel
|
||||
libuv-devel
|
||||
libzstd-devel
|
||||
rhash-devel
|
||||
xz-devel
|
||||
@ -33,17 +32,17 @@ zlib-devel
|
||||
# Install documentation tools.
|
||||
python3-sphinx
|
||||
python3-sphinxcontrib-qthelp
|
||||
texinfo
|
||||
qt5-qttools-devel
|
||||
qt6-qttools-devel
|
||||
texinfo
|
||||
|
||||
# Install lint tools.
|
||||
clang-analyzer
|
||||
codespell
|
||||
|
||||
# Tools needed for the test suite.
|
||||
findutils
|
||||
file
|
||||
findutils
|
||||
jq
|
||||
which
|
||||
|
||||
@ -52,8 +51,8 @@ nasm
|
||||
|
||||
# Packages needed to test CTest.
|
||||
breezy
|
||||
subversion
|
||||
mercurial
|
||||
subversion
|
||||
|
||||
# Packages needed to test CPack.
|
||||
rpm-build
|
||||
@ -61,7 +60,8 @@ rpm-build
|
||||
# Packages needed to test find modules.
|
||||
alsa-lib-devel
|
||||
blas-devel
|
||||
boost-devel boost-python3-devel
|
||||
boost-devel
|
||||
boost-python3-devel
|
||||
bzip2-devel
|
||||
cups-devel
|
||||
DevIL-devel
|
||||
@ -76,7 +76,8 @@ giflib-devel
|
||||
glew-devel
|
||||
gmock
|
||||
gnutls-devel
|
||||
grpc-devel grpc-plugins
|
||||
grpc-devel
|
||||
grpc-plugins
|
||||
gsl-devel
|
||||
gtest-devel
|
||||
gtk2-devel
|
||||
@ -91,12 +92,10 @@ lapack-devel
|
||||
libarchive-devel
|
||||
libcurl-devel
|
||||
libicu-devel
|
||||
libinput-devel systemd-devel
|
||||
libinput-devel
|
||||
libjpeg-turbo-devel
|
||||
libomp-devel
|
||||
libpng-devel
|
||||
opensp-devel
|
||||
postgresql-server-devel
|
||||
libtiff-devel
|
||||
libuv-devel
|
||||
libxml2-devel
|
||||
@ -104,18 +103,31 @@ libxslt-devel
|
||||
mpich-devel
|
||||
openal-soft-devel
|
||||
openmpi-devel
|
||||
opensp-devel
|
||||
patch
|
||||
perl
|
||||
protobuf-devel protobuf-c-devel protobuf-lite-devel
|
||||
pypy2 pypy2-devel
|
||||
pypy3 pypy3-devel
|
||||
python3 python3-devel python3-numpy
|
||||
python3-jsmin python3-jsonschema
|
||||
rbenv ruby-build-rbenv
|
||||
ruby rubygems ruby-devel
|
||||
postgresql-server-devel
|
||||
protobuf-c-devel
|
||||
protobuf-devel
|
||||
protobuf-lite-devel
|
||||
pypy2
|
||||
pypy2-devel
|
||||
pypy3
|
||||
pypy3-devel
|
||||
python3
|
||||
python3-devel
|
||||
python3-jsmin
|
||||
python3-jsonschema
|
||||
python3-numpy
|
||||
rbenv
|
||||
ruby
|
||||
ruby-build-rbenv
|
||||
ruby-devel
|
||||
rubygems
|
||||
SDL-devel
|
||||
sqlite-devel
|
||||
swig
|
||||
systemd-devel
|
||||
unixODBC-devel
|
||||
wxGTK-devel
|
||||
xalan-c-devel
|
||||
|
32
.gitlab/ci/docker/fedora41/dnf.conf
Normal file
32
.gitlab/ci/docker/fedora41/dnf.conf
Normal file
@ -0,0 +1,32 @@
|
||||
[main]
|
||||
autocheck_running_kernel=0
|
||||
debuglevel=2
|
||||
diskspacecheck=0
|
||||
fastestmirror=1
|
||||
gpgcheck=1
|
||||
installonly_limit=5
|
||||
install_weak_deps=0
|
||||
keepcache=1
|
||||
log_rotate=0
|
||||
max_parallel_downloads=10
|
||||
metadata_expire=90m
|
||||
multilib_policy=best
|
||||
plugins=1
|
||||
tsflags=nodocs
|
||||
|
||||
# Enable color for all output
|
||||
color=always
|
||||
|
||||
# Default color options according to yum.conf(5)
|
||||
color_list_installed_older=bold,black
|
||||
color_list_installed_newer=bold,yellow
|
||||
color_list_installed_reinstall=normal
|
||||
color_list_installed_extra=bold,red
|
||||
color_list_available_upgrade=bold,blue
|
||||
color_list_available_downgrade=dim,yellow
|
||||
color_list_available_install=normal
|
||||
color_list_available_reinstall =bold,underline,green
|
||||
color_search_match=bold,magenta
|
||||
color_update_installed=green
|
||||
color_update_local=cyan
|
||||
color_update_remote=yellow
|
@ -2,25 +2,9 @@
|
||||
|
||||
set -e
|
||||
|
||||
dnf install \
|
||||
--setopt=install_weak_deps=False \
|
||||
--setopt=fastestmirror=True \
|
||||
--setopt=max_parallel_downloads=10 \
|
||||
-y \
|
||||
$(grep '^[^#]\+$' /root/deps_packages.lst)
|
||||
dnf install -y $(grep '^[^#]\+$' /root/deps_packages.lst)
|
||||
|
||||
# Remove tests for numpy
|
||||
# Remove tests for Python packages
|
||||
for v in 3.13; do
|
||||
find /usr/lib64/python${v}/site-packages/numpy -type d -a -name tests -exec rm -rf {} +
|
||||
find /usr/lib64/python${v}/site-packages -type d -a -name tests -exec rm -rf {} +
|
||||
done
|
||||
|
||||
# Remove some other packages tests
|
||||
find /usr/lib64/python3.13/site-packages/breezy -type d -a -name tests -exec rm -rf {} +
|
||||
|
||||
# Ruby rbenv
|
||||
rbenv install 3.1.2
|
||||
rbenv global 3.1.2
|
||||
|
||||
# Perforce
|
||||
curl -L https://www.perforce.com/downloads/perforce/r21.2/bin.linux26x86_64/helix-core-server.tgz -o - \
|
||||
| tar -C /usr/local/bin -xvzf - -- p4 p4d
|
||||
|
@ -1,30 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
# Install development tools.
|
||||
dnf install \
|
||||
--setopt=install_weak_deps=False \
|
||||
--setopt=fastestmirror=True \
|
||||
--setopt=max_parallel_downloads=10 \
|
||||
-y \
|
||||
$(grep '^[^#]\+$' /root/iwyu_packages.lst)
|
||||
|
||||
cd /root
|
||||
git clone "https://github.com/include-what-you-use/include-what-you-use.git"
|
||||
cd include-what-you-use
|
||||
readonly llvm_full_version="$( clang --version | head -n1 | cut -d' ' -f3 )"
|
||||
readonly llvm_version="$( echo "$llvm_full_version" | cut -d. -f-1 )"
|
||||
git checkout "clang_$llvm_version"
|
||||
mkdir build
|
||||
cd build
|
||||
|
||||
cmake -GNinja \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
"-DIWYU_RESOURCE_RELATIVE_TO=clang" \
|
||||
"-DIWYU_RESOURCE_DIR=../lib/clang/$llvm_version" \
|
||||
"-DCMAKE_INSTALL_PREFIX=/usr/local/lib/llvm-$llvm_version" \
|
||||
..
|
||||
ninja
|
||||
DESTDIR=/root/iwyu-destdir ninja install
|
||||
tar -C /root/iwyu-destdir -cf /root/iwyu.tar .
|
@ -1,15 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
dnf install \
|
||||
--setopt=install_weak_deps=False \
|
||||
--setopt=fastestmirror=True \
|
||||
--setopt=max_parallel_downloads=10 \
|
||||
-y \
|
||||
$(grep '^[^#]\+$' /root/rust_packages.lst)
|
||||
|
||||
typos_version=1.29.4
|
||||
cargo install --root /usr/local --version "$typos_version" typos-cli
|
||||
|
||||
tar -C /usr/local -cf /root/rust.tar bin/typos
|
@ -1,25 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
dnf install \
|
||||
--setopt=install_weak_deps=False \
|
||||
--setopt=fastestmirror=True \
|
||||
--setopt=max_parallel_downloads=10 \
|
||||
-y \
|
||||
$(grep '^[^#]\+$' /root/rvm_packages.lst)
|
||||
|
||||
gpg2 --keyserver hkps://keyserver.ubuntu.com \
|
||||
--recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 \
|
||||
7D2BAF1CF37B13E2069D6956105BD0E739499BDB
|
||||
|
||||
curl -sSL https://get.rvm.io | bash -s stable
|
||||
|
||||
# keep version in sync with `env_fedora*_makefiles.cmake`
|
||||
/usr/local/rvm/bin/rvm install ruby-3.0.4
|
||||
|
||||
for p in archives examples gem-cache log src; do
|
||||
touch /usr/local/rvm/${p}/.tar_exclude
|
||||
done
|
||||
|
||||
tar -C /usr/local --exclude-tag-under=.tar_exclude -cf /root/rvm.tar rvm
|
@ -1,7 +1,7 @@
|
||||
clang-devel
|
||||
llvm-devel
|
||||
zlib-devel
|
||||
g++
|
||||
cmake
|
||||
ninja-build
|
||||
gcc-c++
|
||||
git
|
||||
llvm-devel
|
||||
ninja-build
|
||||
zlib-devel
|
||||
|
18
.gitlab/ci/docker/fedora41/rbenv_packages.lst
Normal file
18
.gitlab/ci/docker/fedora41/rbenv_packages.lst
Normal file
@ -0,0 +1,18 @@
|
||||
rbenv
|
||||
ruby-build-rbenv
|
||||
|
||||
# Packages needed for `rbenv`
|
||||
# https://github.com/rbenv/ruby-build/wiki#fedora
|
||||
autoconf
|
||||
bzip2
|
||||
gcc
|
||||
gdbm-devel
|
||||
libffi-devel
|
||||
libyaml-devel
|
||||
make
|
||||
ncurses-devel
|
||||
openssl-devel
|
||||
patch
|
||||
readline-devel
|
||||
rust
|
||||
zlib-devel
|
@ -65,14 +65,14 @@
|
||||
### Fedora
|
||||
|
||||
.fedora41:
|
||||
image: "kitware/cmake:ci-fedora41-x86_64-2025-01-23"
|
||||
image: "kitware/cmake:ci-fedora41-x86_64-2025-02-03"
|
||||
|
||||
variables:
|
||||
GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci/long file name for testing purposes"
|
||||
CMAKE_ARCH: x86_64
|
||||
|
||||
.fedora41_hip:
|
||||
image: "kitware/cmake:ci-fedora41-hip-x86_64-2024-12-02"
|
||||
image: "kitware/cmake:ci-fedora41-hip-x86_64-2025-02-03"
|
||||
|
||||
variables:
|
||||
# FIXME(rocclr): device modules fail loading from binaries in paths with spaces
|
||||
|
@ -688,7 +688,7 @@ function (_MPI_interrogate_compiler LANG)
|
||||
MPI_ALL_INCLUDE_PATHS "${MPI_COMPILE_CMDLINE}")
|
||||
|
||||
# If extracting failed to work, we'll try using -showme:incdirs.
|
||||
# Unlike before, we do this without the environment variables set up, but since only MPICH derivates are affected by any of them, and
|
||||
# Unlike before, we do this without the environment variables set up, but since only MPICH derivatives are affected by any of them, and
|
||||
# -showme:... is only supported by Open MPI and LAM/MPI, this isn't a concern.
|
||||
if (NOT MPI_ALL_INCLUDE_PATHS)
|
||||
_MPI_check_compiler(${LANG} "-showme:incdirs" MPI_INCDIRS_CMDLINE MPI_INCDIRS_COMPILER_RETURN)
|
||||
|
@ -11,12 +11,6 @@
|
||||
|
||||
class cmExecutionStatus;
|
||||
|
||||
/** \class cmCTestReadCustomFiles
|
||||
* \brief Run a ctest script
|
||||
*
|
||||
* cmLibrarysCommand defines a list of executable (i.e., test)
|
||||
* programs to create.
|
||||
*/
|
||||
class cmCTestReadCustomFilesCommand : public cmCTestCommand
|
||||
{
|
||||
public:
|
||||
|
@ -13,9 +13,6 @@ class cmExecutionStatus;
|
||||
|
||||
/** \class cmCTestRunScript
|
||||
* \brief Run a ctest script
|
||||
*
|
||||
* cmLibrarysCommand defines a list of executable (i.e., test)
|
||||
* programs to create.
|
||||
*/
|
||||
class cmCTestRunScriptCommand : public cmCTestCommand
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user