/
githubmirror
/
ceph
Обзор
Документация
Войти
/
githubmirror
/
ceph
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
Dockerfile.build
47 строк
2 KB
Sun Yuechi
Dockerfile.build: install sccache from distro packages when available
15 июл 2026, 06:53
15 июл 2026, 06:53
e25810d
Код
Авторство
О чём код?
ARG DISTRO FROM scratch as bootstrap ARG CEPH_CTR_SRC=/usr/local/src/ceph COPY \ src/script/lib-build.sh \ src/script/run-make.sh \ ${CEPH_CTR_SRC}/src/script/ COPY debian ${CEPH_CTR_SRC}/debian COPY \ ceph.spec.in \ do_cmake.sh \ install-deps.sh \ run-make-check.sh \ src/script/buildcontainer-setup.sh \ ${CEPH_CTR_SRC}/ FROM $DISTRO ARG DISTRO ARG CEPH_CTR_SRC=/usr/local/src/ceph ARG CLEAN_DNF=yes ARG CEPH_BASE_BRANCH=main ARG SCCACHE_VERSION=v0.15.0 ARG SCCACHE_REPO=https://github.com/mozilla/sccache ARG WITH_CRIMSON=true ARG FOR_MAKE_CHECK=1 COPY --from=bootstrap ${CEPH_CTR_SRC} ${CEPH_CTR_SRC} # Note that we do not use ENV for the following. This is because we do not # want them permamently stored in the container's layer. RUN DISTRO=$DISTRO \ CEPH_BASE_BRANCH=$CEPH_BASE_BRANCH \ CLEAN_DNF=$CLEAN_DNF \ CEPH_CTR_SRC=${CEPH_CTR_SRC} \ WITH_CRIMSON=${WITH_CRIMSON} \ FOR_MAKE_CHECK=${FOR_MAKE_CHECK} \ bash -x ${CEPH_CTR_SRC}/buildcontainer-setup.sh RUN \ if rpm --quiet --query sccache 2>/dev/null || { command -v dnf >/dev/null 2>&1 && dnf install -y sccache 2>/dev/null; }; then \ echo "sccache provided by distro packages"; \ elif [ $(uname -m) != ppc64le ]; then \ SCCACHE_ARCH="$(uname -m)"; \ if [ "$SCCACHE_ARCH" = riscv64 ]; then SCCACHE_ARCH=riscv64gc; fi; \ SCCACHE_URL="${SCCACHE_REPO}/releases/download/${SCCACHE_VERSION}/sccache-${SCCACHE_VERSION}-${SCCACHE_ARCH}-unknown-linux-musl.tar.gz"; \ echo "${SCCACHE_URL}"; \ curl -sS -L $SCCACHE_URL | tar --no-anchored --strip-components=1 -C /usr/local/bin/ -xzf - sccache; \ fi