From c20d1585243e04a29d30c16f9ba7f6e592194321 Mon Sep 17 00:00:00 2001 From: Bruce Ashfield Date: Thu, 14 Mar 2024 18:08:37 +0000 Subject: ceph: update to 18.2.2 Signed-off-by: Bruce Ashfield --- recipes-extended/ceph/ceph_18.2.0.bb | 177 ----------------------------------- recipes-extended/ceph/ceph_18.2.2.bb | 177 +++++++++++++++++++++++++++++++++++ 2 files changed, 177 insertions(+), 177 deletions(-) delete mode 100644 recipes-extended/ceph/ceph_18.2.0.bb create mode 100644 recipes-extended/ceph/ceph_18.2.2.bb diff --git a/recipes-extended/ceph/ceph_18.2.0.bb b/recipes-extended/ceph/ceph_18.2.0.bb deleted file mode 100644 index 3dd75a51..00000000 --- a/recipes-extended/ceph/ceph_18.2.0.bb +++ /dev/null @@ -1,177 +0,0 @@ -SUMMARY = "User space components of the Ceph file system" -LICENSE = "LGPL-2.1-only & GPL-2.0-only & Apache-2.0 & MIT" -LIC_FILES_CHKSUM = "file://COPYING-LGPL2.1;md5=fbc093901857fcd118f065f900982c24 \ - file://COPYING-GPL2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://COPYING;md5=5351120989d78252e65dc1a2a92e3617 \ -" -inherit cmake pkgconfig python3native python3-dir systemd useradd -# Disable python pybind support for ceph temporary, when corss compiling pybind, -# pybind mix cmake and python setup environment, would case a lot of errors. - -SRC_URI = "http://download.ceph.com/tarballs/ceph-${PV}.tar.gz \ - file://0001-fix-host-library-paths-were-used.patch \ - file://ceph.conf \ - file://0001-avoid-to_string-error.patch \ - file://0001-delete-install-layout-deb.patch \ - file://0001-cephadm-build.py-avoid-using-python3-from-sysroot-wh.patch \ -" - -SRC_URI[sha256sum] = "495b63e1146c604018ae0cb29bf769b5d6235e3c95849c43513baf12bba1364d" - -DEPENDS = "boost bzip2 curl cryptsetup expat gperf-native \ - keyutils libaio libibverbs lua lz4 \ - nspr nss ninja-native \ - oath openldap openssl \ - python3 python3-native python3-cython-native python3-pyyaml-native \ - rabbitmq-c rocksdb snappy thrift udev \ - valgrind xfsprogs zlib libgcc zstd re2 \ -" - - -OECMAKE_C_COMPILER = "${@oecmake_map_compiler('CC', d)[0]} --sysroot=${RECIPE_SYSROOT}" -OECMAKE_CXX_COMPILER = "${@oecmake_map_compiler('CXX', d)[0]} --sysroot=${RECIPE_SYSROOT}" - -USERADD_PACKAGES = "${PN}" -USERADD_PARAM:${PN} = "--system --user-group --home-dir /var/lib/ceph --shell /sbin/nologin ceph" - -SYSTEMD_SERVICE:${PN} = " \ - ceph-radosgw@.service \ - ceph-radosgw.target \ - ceph-mon@.service \ - ceph-mon.target \ - ceph-mds@.service \ - ceph-mds.target \ - ceph-osd@.service \ - ceph-osd.target \ - cephfs-mirror@.service \ - cephfs-mirror.target \ - ceph.target \ - ceph-rbd-mirror@.service \ - ceph-rbd-mirror.target \ - ceph-volume@.service \ - ceph-mgr@.service \ - ceph-mgr.target \ - ceph-crash.service \ - rbdmap.service \ - ceph-immutable-object-cache@.service \ - ceph-immutable-object-cache.target \ -" - -EXTRA_OECMAKE += "-DWITH_MANPAGE=OFF \ - -DWITH_JAEGER=OFF \ - -DWITH_SYSTEM_ZSTD=ON \ - -DWITH_FUSE=OFF \ - -DWITH_SPDK=OFF \ - -DWITH_LEVELDB=OFF \ - -DWITH_LTTNG=OFF \ - -DWITH_BABELTRACE=OFF \ - -DWITH_TESTS=OFF \ - -DWITH_RADOSGW_SELECT_PARQUET=OFF \ - -DWITH_RADOSGW_ARROW_FLIGHT=OFF \ - -DWITH_MGR=OFF \ - -DWITH_MGR_DASHBOARD_FRONTEND=OFF \ - -DWITH_SYSTEM_BOOST=ON \ - -DWITH_SYSTEM_ROCKSDB=ON \ - -DWITH_RDMA=OFF \ - -DWITH_RADOSGW_AMQP_ENDPOINT=OFF \ - -DWITH_RADOSGW_KAFKA_ENDPOINT=OFF \ - -DWITH_REENTRANT_STRSIGNAL=ON \ - -DWITH_PYTHON3=3.12 \ - -DPYTHON_DESIRED=3 \ - -DCMAKE_TOOLCHAIN_FILE:FILEPATH=${WORKDIR}/toolchain.cmake \ - " - -do_configure:prepend () { - echo "set( CMAKE_SYSROOT \"${RECIPE_SYSROOT}\" )" >> ${WORKDIR}/toolchain.cmake - echo "set( CMAKE_DESTDIR \"${D}\" )" >> ${WORKDIR}/toolchain.cmake - echo "set( PYTHON_SITEPACKAGES_DIR \"${PYTHON_SITEPACKAGES_DIR}\" )" >> ${WORKDIR}/toolchain.cmake - # echo "set( CMAKE_C_COMPILER_WORKS TRUE)" >> ${WORKDIR}/toolchain.cmake - # echo "set( CMAKE_CXX_COMPILER_FORCED TRUE)" >> ${WORKDIR}/toolchain.cmake - echo "set( CMAKE_C_COMPILER_FORCED TRUE )" >> ${WORKDIR}/toolchain.cmake -} - -do_compile:prepend() { - export BUILD_DOC=1 -} - -do_install:prepend() { - export BUILD_DOC=1 -} - -do_install:append () { - sed -i -e 's:^#!/usr/bin/python$:&3:' \ - -e 's:${WORKDIR}.*python3:${bindir}/python3:' \ - ${D}${bindir}/ceph ${D}${bindir}/ceph-crash \ - ${D}${bindir}/cephfs-top \ - ${D}${sbindir}/ceph-volume ${D}${sbindir}/ceph-volume-systemd - find ${D} -name SOURCES.txt | xargs sed -i -e 's:${WORKDIR}::' - install -d ${D}${sysconfdir}/ceph - install -m 644 ${WORKDIR}/ceph.conf ${D}${sysconfdir}/ceph/ - install -d ${D}${systemd_unitdir} - mv ${D}${libexecdir}/ceph/ceph-osd-prestart.sh ${D}${libdir}/ceph - mv ${D}${libexecdir}/ceph/ceph_common.sh ${D}${libdir}/ceph - # WITH_FUSE is set to OFF, remove ceph-fuse related units - rm ${D}${systemd_unitdir}/system/ceph-fuse.target ${D}${systemd_unitdir}/system/ceph-fuse@.service -} - -do_install:append:class-target () { - if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then - install -d ${D}${sysconfdir}/tmpfiles.d - echo "d /var/lib/ceph/crash/posted 0755 root root - -" > ${D}${sysconfdir}/tmpfiles.d/ceph-placeholder.conf - fi - - if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then - install -d ${D}${sysconfdir}/default/volatiles - echo "d root root 0755 /var/lib/ceph/crash/posted none" > ${D}${sysconfdir}/default/volatiles/99_ceph-placeholder - fi -} - -pkg_postinst:${PN}() { - if [ -z "$D" ] && [ -e ${sysconfdir}/init.d/populate-volatile.sh ] ; then - ${sysconfdir}/init.d/populate-volatile.sh update - fi -} - -FILES:${PN} += "\ - ${libdir}/rados-classes/*.so.* \ - ${libdir}/ceph/compressor/*.so \ - ${libdir}/rados-classes/*.so \ - ${libdir}/ceph/*.so \ - ${libdir}/libcephsqlite.so \ -" - -FILES:${PN} += " \ - /etc/tmpfiles.d/ceph-placeholder.conf \ - /etc/default/volatiles/99_ceph-placeholder \ -" - -FILES:${PN}-dev = " \ - ${includedir} \ - ${libdir}/libcephfs.so \ - ${libdir}/librados*.so \ - ${libdir}/librbd.so \ - ${libdir}/librgw.so \ -" - -FILES:${PN}-python = "\ - ${PYTHON_SITEPACKAGES_DIR}/* \ -" -RDEPENDS:${PN} += "\ - python3-core \ - python3-misc \ - python3-modules \ - python3-prettytable \ - ${PN}-python \ - gawk \ - bash \ -" -COMPATIBLE_HOST = "(x86_64).*" -PACKAGES += " \ - ${PN}-python \ -" -INSANE_SKIP:${PN}-python += "ldflags buildpaths" -INSANE_SKIP:${PN} += "dev-so" -INSANE_SKIP:${PN}-dbg += "buildpaths" -CCACHE_DISABLE = "1" - -CVE_PRODUCT = "ceph ceph_storage ceph_storage_mon ceph_storage_osd" diff --git a/recipes-extended/ceph/ceph_18.2.2.bb b/recipes-extended/ceph/ceph_18.2.2.bb new file mode 100644 index 00000000..e6c44188 --- /dev/null +++ b/recipes-extended/ceph/ceph_18.2.2.bb @@ -0,0 +1,177 @@ +SUMMARY = "User space components of the Ceph file system" +LICENSE = "LGPL-2.1-only & GPL-2.0-only & Apache-2.0 & MIT" +LIC_FILES_CHKSUM = "file://COPYING-LGPL2.1;md5=fbc093901857fcd118f065f900982c24 \ + file://COPYING-GPL2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://COPYING;md5=5351120989d78252e65dc1a2a92e3617 \ +" +inherit cmake pkgconfig python3native python3-dir systemd useradd +# Disable python pybind support for ceph temporary, when corss compiling pybind, +# pybind mix cmake and python setup environment, would case a lot of errors. + +SRC_URI = "http://download.ceph.com/tarballs/ceph-${PV}.tar.gz \ + file://0001-fix-host-library-paths-were-used.patch \ + file://ceph.conf \ + file://0001-avoid-to_string-error.patch \ + file://0001-delete-install-layout-deb.patch \ + file://0001-cephadm-build.py-avoid-using-python3-from-sysroot-wh.patch \ +" + +SRC_URI[sha256sum] = "e70bb5246b4a5d7aa78eb548677a05cc21d0d47945ba2937fddc7511134ffb57" + +DEPENDS = "boost bzip2 curl cryptsetup expat gperf-native \ + keyutils libaio libibverbs lua lz4 \ + nspr nss ninja-native \ + oath openldap openssl \ + python3 python3-native python3-cython-native python3-pyyaml-native \ + rabbitmq-c rocksdb snappy thrift udev \ + valgrind xfsprogs zlib libgcc zstd re2 \ +" + + +OECMAKE_C_COMPILER = "${@oecmake_map_compiler('CC', d)[0]} --sysroot=${RECIPE_SYSROOT}" +OECMAKE_CXX_COMPILER = "${@oecmake_map_compiler('CXX', d)[0]} --sysroot=${RECIPE_SYSROOT}" + +USERADD_PACKAGES = "${PN}" +USERADD_PARAM:${PN} = "--system --user-group --home-dir /var/lib/ceph --shell /sbin/nologin ceph" + +SYSTEMD_SERVICE:${PN} = " \ + ceph-radosgw@.service \ + ceph-radosgw.target \ + ceph-mon@.service \ + ceph-mon.target \ + ceph-mds@.service \ + ceph-mds.target \ + ceph-osd@.service \ + ceph-osd.target \ + cephfs-mirror@.service \ + cephfs-mirror.target \ + ceph.target \ + ceph-rbd-mirror@.service \ + ceph-rbd-mirror.target \ + ceph-volume@.service \ + ceph-mgr@.service \ + ceph-mgr.target \ + ceph-crash.service \ + rbdmap.service \ + ceph-immutable-object-cache@.service \ + ceph-immutable-object-cache.target \ +" + +EXTRA_OECMAKE += "-DWITH_MANPAGE=OFF \ + -DWITH_JAEGER=OFF \ + -DWITH_SYSTEM_ZSTD=ON \ + -DWITH_FUSE=OFF \ + -DWITH_SPDK=OFF \ + -DWITH_LEVELDB=OFF \ + -DWITH_LTTNG=OFF \ + -DWITH_BABELTRACE=OFF \ + -DWITH_TESTS=OFF \ + -DWITH_RADOSGW_SELECT_PARQUET=OFF \ + -DWITH_RADOSGW_ARROW_FLIGHT=OFF \ + -DWITH_MGR=OFF \ + -DWITH_MGR_DASHBOARD_FRONTEND=OFF \ + -DWITH_SYSTEM_BOOST=ON \ + -DWITH_SYSTEM_ROCKSDB=ON \ + -DWITH_RDMA=OFF \ + -DWITH_RADOSGW_AMQP_ENDPOINT=OFF \ + -DWITH_RADOSGW_KAFKA_ENDPOINT=OFF \ + -DWITH_REENTRANT_STRSIGNAL=ON \ + -DWITH_PYTHON3=3.12 \ + -DPYTHON_DESIRED=3 \ + -DCMAKE_TOOLCHAIN_FILE:FILEPATH=${WORKDIR}/toolchain.cmake \ + " + +do_configure:prepend () { + echo "set( CMAKE_SYSROOT \"${RECIPE_SYSROOT}\" )" >> ${WORKDIR}/toolchain.cmake + echo "set( CMAKE_DESTDIR \"${D}\" )" >> ${WORKDIR}/toolchain.cmake + echo "set( PYTHON_SITEPACKAGES_DIR \"${PYTHON_SITEPACKAGES_DIR}\" )" >> ${WORKDIR}/toolchain.cmake + # echo "set( CMAKE_C_COMPILER_WORKS TRUE)" >> ${WORKDIR}/toolchain.cmake + # echo "set( CMAKE_CXX_COMPILER_FORCED TRUE)" >> ${WORKDIR}/toolchain.cmake + echo "set( CMAKE_C_COMPILER_FORCED TRUE )" >> ${WORKDIR}/toolchain.cmake +} + +do_compile:prepend() { + export BUILD_DOC=1 +} + +do_install:prepend() { + export BUILD_DOC=1 +} + +do_install:append () { + sed -i -e 's:^#!/usr/bin/python$:&3:' \ + -e 's:${WORKDIR}.*python3:${bindir}/python3:' \ + ${D}${bindir}/ceph ${D}${bindir}/ceph-crash \ + ${D}${bindir}/cephfs-top \ + ${D}${sbindir}/ceph-volume ${D}${sbindir}/ceph-volume-systemd + find ${D} -name SOURCES.txt | xargs sed -i -e 's:${WORKDIR}::' + install -d ${D}${sysconfdir}/ceph + install -m 644 ${WORKDIR}/ceph.conf ${D}${sysconfdir}/ceph/ + install -d ${D}${systemd_unitdir} + mv ${D}${libexecdir}/ceph/ceph-osd-prestart.sh ${D}${libdir}/ceph + mv ${D}${libexecdir}/ceph/ceph_common.sh ${D}${libdir}/ceph + # WITH_FUSE is set to OFF, remove ceph-fuse related units + rm ${D}${systemd_unitdir}/system/ceph-fuse.target ${D}${systemd_unitdir}/system/ceph-fuse@.service +} + +do_install:append:class-target () { + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -d ${D}${sysconfdir}/tmpfiles.d + echo "d /var/lib/ceph/crash/posted 0755 root root - -" > ${D}${sysconfdir}/tmpfiles.d/ceph-placeholder.conf + fi + + if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then + install -d ${D}${sysconfdir}/default/volatiles + echo "d root root 0755 /var/lib/ceph/crash/posted none" > ${D}${sysconfdir}/default/volatiles/99_ceph-placeholder + fi +} + +pkg_postinst:${PN}() { + if [ -z "$D" ] && [ -e ${sysconfdir}/init.d/populate-volatile.sh ] ; then + ${sysconfdir}/init.d/populate-volatile.sh update + fi +} + +FILES:${PN} += "\ + ${libdir}/rados-classes/*.so.* \ + ${libdir}/ceph/compressor/*.so \ + ${libdir}/rados-classes/*.so \ + ${libdir}/ceph/*.so \ + ${libdir}/libcephsqlite.so \ +" + +FILES:${PN} += " \ + /etc/tmpfiles.d/ceph-placeholder.conf \ + /etc/default/volatiles/99_ceph-placeholder \ +" + +FILES:${PN}-dev = " \ + ${includedir} \ + ${libdir}/libcephfs.so \ + ${libdir}/librados*.so \ + ${libdir}/librbd.so \ + ${libdir}/librgw.so \ +" + +FILES:${PN}-python = "\ + ${PYTHON_SITEPACKAGES_DIR}/* \ +" +RDEPENDS:${PN} += "\ + python3-core \ + python3-misc \ + python3-modules \ + python3-prettytable \ + ${PN}-python \ + gawk \ + bash \ +" +COMPATIBLE_HOST = "(x86_64).*" +PACKAGES += " \ + ${PN}-python \ +" +INSANE_SKIP:${PN}-python += "ldflags buildpaths" +INSANE_SKIP:${PN} += "dev-so" +INSANE_SKIP:${PN}-dbg += "buildpaths" +CCACHE_DISABLE = "1" + +CVE_PRODUCT = "ceph ceph_storage ceph_storage_mon ceph_storage_osd" -- cgit v1.2.3-54-g00ecf