summarylogtreecommitdiffstats
AgeCommit message (Collapse)Author
2024-05-25pkgbuild: pkgver=18.2.2 pkgrel=3Bazaah
2024-05-25pkgbuild: rm VERBOSE=1 output from make checkBazaah
2024-05-25pkgbuild: add python-packaging to makedeps, ceph-mgrBazaah
2024-05-25pkgbuild: add pkgrel=3 patchesBazaah
2024-05-25pkgbuild: use ceph-volume backport patchesBazaah
2024-05-25pkgbuild: cp mgr's ceph_module mocks to a dummy moduleBazaah
Basically, we add the initialization for the mgr's test suite to a location that *all* mgr module test suites include in their PYTHONPATH I'm not sure why this worked before, when it stopped exactly, and what changed to make it stop. Yay python. This shouldn't be copied into the CMAKE_INSTALL_DIR, but we should double check the built packages to be 100% sure.
2024-05-25pkgbuild: rm mgr-ceph-module-stub.patchBazaah
This doesn't work. Or rather it does, but badly and for reasons I didn't understand. To set the stage. 1. All mgr modules in src/pybind/mgr/*/module.py import a 'mgr_module' 2. This module is located at src/pybind/mgr_module.py 3. It imports a module, 'ceph_module' that **does not exist.** I didn't understand how this could work, as the file even remotely similiar is src/pybind/mgr/ceph_module.pyi -- note the 'i'. This is what is called a "python interface file" and basically isn't something the python runtime is aware of. It's only use is by static code checkers like mypy (and presumably the IDEs of people that work in this code). I, naively assumed that somehow previous python versions had mistaken this file for a real module hence the previous patch, where I just define the various symbols referenced from other modules. This isn't the case. Instead, the C++ mgr daemon _at runtime_ injects what is effectively a bridge module into the C++ defined ceph data structures. This, obviously doesn't work during testing, but the upstream does have some interesting machinery in src/pybind/mgr/tests/__init__.py, though I don't understand how it would propagate to other test suites, and very clearly it hasn't worked for at least since 18.2.0 for our builds. A future commit will properly fix this issue
2024-05-25pkgbuild: add ceph_bcrypt to test suitesBazaah
We use --file-links to hint to python that it should consider more locations for package lookups. Could be useful if python-xmlsec ever rears its ugly head again
2024-05-25repo: add disable-mypy-flake8-testsBazaah
A whole bunch of random lints and "x is best practice" messages have started generating a bunch of unwanted line noise in the test suite, so we disable them all
2024-05-25repo: add py312-fixes.patchBazaah
Fix a whole host of fun python issues: - Use '<mock>.assert_called_with()' over 'assert <mock>.called_with()' - Comment out failing TODO'd test for cephadm haproxy - Use pyfakefs >=5.2 to fix a whole host of import errors - Use packaging.version over pkg_resources.packaging.version - Fix a stupid assert of a urlparse error message (exception messages aren't stable, lads) - Use assertRegex over assertRegexpMatches with unittest mocks Also note that the test suite *still* fails even after these, as seemingly the dashboard is completely broken by some PyO3 package, but at least nothing there is expected to work
2024-05-25repo: add test-mempool-shard-select-disableBazaah
this is basically just a performance issue that is triggering on our build server. Should be reverted once the upstream decides how to fix it. Quoting myself: > looks like just a perf regression the upstream hasn't decided how > to fix yet: ceph/ceph#56448, ceph/ceph#55249, ceph/ceph#55696 References: https://github.com/bazaah/aur-ceph/issues/23
2024-05-25repo: add std-atomic-depreciations.patchBazaah
Wrap a few instances of std::shared_ptr that should be protected by std::atomic as of C++20 References: https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2023/p2869r0.pdf
2024-05-25repo: add gcc-14-fixesBazaah
Backports a few fixes for GCC 14 that some of the upstream's distro builds have encountered. This takes from the SUSE's leap stream, though we had to cut out parts, so it isn't a "real" backport. References: https://github.com/SUSE/ceph/pull/516
2024-05-07repo: backport two fixes for ceph-volumeBazaah
Unclear why at least the former hasn't been included in a .3 release, yet as it actually prevents the command from executing. Regardless, we do it here. Upstream-Ref: https://github.com/ceph/ceph/commit/9ee47b03286ce5a8de167abbd592db7b5aedc4fc Upstream-Ref: https://github.com/ceph/ceph/commit/0358bd5ea27a7a6487f71cfb15b6bab536d04f74
2024-03-23merge: master <--- feature/v18.2.2-2Bazaah
* HEAD | \ | * c8a69c3 <github@luxolus.com> pkgbuild: pkgrel=2 | * a6b3328 <github@luxolus.com> pkgbuild: use mgr-alias-ceph-bcrypt.patch | * 8f49d39 <github@luxolus.com> repo: add mgr-alias-ceph-bcrypt.patch | / | master Signed-off-by: Bazaah <github@luxolus.com>
2024-03-23pkgbuild: pkgrel=2Bazaah
2024-03-23pkgbuild: use mgr-alias-ceph-bcrypt.patchBazaah
2024-03-23repo: add mgr-alias-ceph-bcrypt.patchBazaah
So that the mgr _actually_ uses our internal bcrypt fork.
2024-03-23merge: master <--- feature/v18.2.2-1Bazaah
* HEAD | \ | * c719c85 <github@luxolus.com> pkgbuild: pkgver=18.2.2 pkgrel=1 | * 3d35081 <github@luxolus.com> pkgbuild: add ceph_bcrypt to python-ceph-common | * 8b874b8 <github@luxolus.com> pkgbuild: add python-bcrypt sources,patches | * 8576de3 <github@luxolus.com> repo: add python-bcrypt patches | * 246af22 <github@luxolus.com> pkgbuild: restrict prepare() patch machinery to ceph-* | * fcde70e <github@luxolus.com> pkgbuild: mv {,ceph-}disable-empty-readable.sh-test | * abc0a56 <github@luxolus.com> pkgbuild: use mgr-ceph-module-stub.patch | * a75f61e <github@luxolus.com> repo: add ceph-18.2.2-mgr-ceph-module-stub.patch | * 93719e4 <github@luxolus.com> pkgbuild: use mgr-dashboard fix backport | * 836304d <github@luxolus.com> repo: backport mgr/dashboard fix for python-cryptography issues | * bfe55db <github@luxolus.com> pkgbuild: rm checkdepends->python-mock | / | master Signed-off-by: Bazaah <github@luxolus.com>
2024-03-23pkgbuild: pkgver=18.2.2 pkgrel=1Bazaah
2024-03-23pkgbuild: add ceph_bcrypt to python-ceph-commonBazaah
2024-03-23pkgbuild: add python-bcrypt sources,patchesBazaah
For our internal ceph fork of python-bcrypt
2024-03-23repo: add python-bcrypt patchesBazaah
- python-bcrypt-allow-subinterpreters.patch - python-bcrypt-prefix-ceph.patch Together, these allow us to build a renamed python-bcrypt package, as ceph_bcrypt. This will allow us to bypass the thorny pyo3 issues we have with various mgr modules exploding at runtime. References: https://github.com/bazaah/aur-ceph/issues/20
2024-03-23pkgbuild: restrict prepare() patch machinery to ceph-*Bazaah
So that we can introduce non ceph patches in future commits
2024-03-23pkgbuild: mv {,ceph-}disable-empty-readable.sh-testBazaah
2024-03-23pkgbuild: use mgr-ceph-module-stub.patchBazaah
2024-03-23repo: add ceph-18.2.2-mgr-ceph-module-stub.patchBazaah
This mocks out a module for mgr_module.py to 'import' during mypy type analysis. Previously the ceph_module.pyi was enough for this to work, but I guess something in the tooling changed. I cannot figure out why this ever worked before, and why it doesn't now. Maybe related to https://github.com/python/mypy/issues/16987 ?
2024-03-23pkgbuild: use mgr-dashboard fix backportBazaah
and remove the now unneeded py deps: - python-pyjwt - python-cryptography
2024-03-23repo: backport mgr/dashboard fix for python-cryptography issuesBazaah
Removes the (limited) runtime usages of python-jwt, and therefore, python-cryptography from the mgr dashboard module. This should restore dashboard functionality, if used alongside a patched pyo3 for python-bcrypt. Upstream-Ref: https://github.com/ceph/ceph/commit/33d8befcabe3e60d9ccf6e4fdc2598c4db22934b References: https://github.com/ceph/ceph/pull/55689 References: https://tracker.ceph.com/issues/63529 References: https://github.com/bazaah/aur-ceph/issues/20 References: https://git.st8l.com/luxolus/pyo3/commit/44d6919168621b46e4e884130ca43338655b020c
2024-03-23pkgbuild: rm checkdepends->python-mockBazaah
Dropped to AUR and I believe unneeded?
2024-02-07merge: master <--- feature/v18.2.1-2Bazaah
* HEAD | \ | * 713b181 <github@luxolus.com> pkgbuild: pkgver=18.2.1 pkgrel=2 | / | master Signed-off-by: Bazaah <github@luxolus.com>
2024-02-06pkgbuild: pkgver=18.2.1 pkgrel=2Bazaah
2023-12-31merge: master <--- feature/v18.2.1-1Bazaah
* HEAD | \ | * 41cb754 <github@luxolus.com> pkgbuild: pkgver=18.2.1 pkgrel=1 | * bb264d0 <github@luxolus.com> repo: rm ceph-17.2.6-mgr-dashboard-node-version.patch | / | master Signed-off-by: Bazaah <github@luxolus.com>
2023-12-31pkgbuild: pkgver=18.2.1 pkgrel=1Bazaah
2023-12-31repo: rm ceph-17.2.6-mgr-dashboard-node-version.patchBazaah
No longer needed, the upstream as upped their nodejs version. References: https://github.com/ceph/ceph/pull/52828 Upstream-Ref: https://github.com/ceph/ceph/commit/47f49e5b1ae2e5bf7aad5df23d877ae5df00210c
2023-11-06merge: master <--- feature/v18.2.0-2Bazaah
* HEAD | \ | * 5b3013f <github@luxolus.com> pkgbuild: pkgrel=2 | * 1ea1d50 <github@luxolus.com> pkgbuild: tidy up check() | * 110161f <github@luxolus.com> pkgbuild: switch off verbose build | / | master Signed-off-by: Bazaah <github@luxolus.com>
2023-11-06pkgbuild: pkgrel=2Bazaah
2023-11-06pkgbuild: tidy up check()Bazaah
pkill is not required by checkdepends anymore rendering this loop useless, and I haven't seen orphan processes so far. Can always add it back later if needed.
2023-11-06pkgbuild: switch off verbose buildBazaah
The build is in a good enough spot now that the extra verbosity is unneeded for most operations.
2023-09-09merge: master <--- feature/v18.2.0-1Bazaah
* HEAD | \ | * 321091d <github@luxolus.com> pkgbuild: pkgver=v18.2.0 pkgrel=1 | * fe66554 <github@luxolus.com> justfile: add cexec, ctest, repackage targets | * 343f78c <github@luxolus.com> justfile: improvements to upload to handle new packages | * 3ddb703 <github@luxolus.com> justfile: remove watch, logs | * 9ca7efd <github@luxolus.com> gh-upload-artifact: try pretty print happy path of upload | * 4cc7eb5 <github@luxolus.com> pkgbuild: updates to install files for v18 | * b019b81 <github@luxolus.com> pkgbuild: enable optional rbd components | * 1ce90d2 <github@luxolus.com> pkgbuild: disable proprietary rgw backends | * 76a50ba <github@luxolus.com> pkgbuild: disable tracing / opentelemetry | * 030000e <github@luxolus.com> pkgbuild: reenable system utf8proc | * ffbeef6 <github@luxolus.com> pkgbuild: use backport-log-runway-expansion.patch | * 216795b <github@luxolus.com> repo: add backport-log-runway-expansion.patch | * 9e5e0ad <github@luxolus.com> pkgbuild: use fix-ecode-shec-test.patch | * 2f5f113 <github@luxolus.com> repo: add ceph-18.2.0-fix-ecode-shec-test.patch | * 1f5029b <github@luxolus.com> pkgbuild: use ceph-18.2.0-fmt10-fixes.patch | * 279af4c <github@luxolus.com> repo: add ceph-18.2.0-fmt10-fixes.patch | * c1d084d <github@luxolus.com> repo: update ceph-17.2.4-test-bluefs-split.patch | * 5dd05c5 <github@luxolus.com> repo: rm upstreamed iterator depreciations | * ef24ee7 <github@luxolus.com> pkgbuild: update tox-mypy-false-postive.patch | * 5b923a5 <github@luxolus.com> pkgbuild: rm upstreamed gcc13 patches | * 4095603 <github@luxolus.com> pkgbuild: rm delete-test-librados-asio.patch | * a60c26a <github@luxolus.com> pkgbuild: rm -DFMT_DEPRECATED_OSTREAM | * 1531a6a <github@luxolus.com> pkgbuild: rm ceph-17.2.4.-tox-cephadm-rm.patch | * 187fed6 <github@luxolus.com> repo: revert backport-with-fmt-version.patch | * 4df4495 <github@luxolus.com> pkgbuild: add inetutils,xmlstarlet to checkdepends | * f36dcde <github@luxolus.com> pkgbuild: add makedepend 'thrift' | * da1d129 <github@luxolus.com> pkgbuild: cleanup pkgname, reorganize arch,pkgdesc | * bfd09af <github@luxolus.com> pkgbuild: reorganize makedepends, checkdepends | * f649488 <github@luxolus.com> pkgbuild: package virtual targets | * bf7fef7 <github@luxolus.com> pkgbuild: package misc. ceph tooling / libs | * eb35c47 <github@luxolus.com> pkgbuild: package more client / utils | * 0c50604 <github@luxolus.com> pkgbuild: package ceph cluster components | * f115c61 <github@luxolus.com> pkgbuild: package ceph python libs | * 7f61cf4 <github@luxolus.com> pkgbuild: package core clients | * d2936ef <github@luxolus.com> pkgbuild: package core libs | * 38b0f6b <github@luxolus.com> pkgbuild: add func _make_ceph_packages | * 7666ef7 <github@luxolus.com> pkgbuild: add _package, _print funcs | * a2346ce <github@luxolus.com> pkgbuild: rm old package() functions | / | master Closes: #16 Signed-off-by: Bazaah <github@luxolus.com>
2023-09-09pkgbuild: pkgver=v18.2.0 pkgrel=1Bazaah
2023-09-09justfile: add cexec, ctest, repackage targetsBazaah
- cexec Executes the given arg list inside the chroot > Build the 'osd' CMake target `just cexec make -j$(nproc) -C build osd` - ctest Runs ctest (with the optional args) inside the chroot > Run testsuite `just ctest` > Rerun only failed tests `just ctest --retry-failed` > Run a regex filtered list of tests `just ctest -R some_unittest` - repackage Repackages the project without triggering a rebuild
2023-09-09justfile: improvements to upload to handle new packagesBazaah
Now use an @all alias instead of naming packages directly, and pretty print the uploadees with column -t (from util-linux)
2023-09-09justfile: remove watch, logsBazaah
These never worked correctly anyway
2023-09-09gh-upload-artifact: try pretty print happy path of uploadBazaah
If curl returns success, assume the result is json and pipe through jq. This improves the output substantially as before it printed a compressed no-newline json blob for each artifact uploaded.
2023-09-09pkgbuild: updates to install files for v18Bazaah
Minor updates to the installed files for: - ceph-common - librbd - librgw - ceph-cephadm
2023-09-09pkgbuild: enable optional rbd componentsBazaah
- WITH_RBD_RWL, WITH_RBD_SSD_CACHE Enables the rbd writeback cache, both pmem and ssd variants. - WITH_RBD_MIRROR Enables mirroring rbd images between ceph clusters, similar to rgw multi-zonal replication These changes were prompted by github.com/Enelar in github.com/bazaah/aur-ceph/pull/18/commits/41a3081df83fb7ab9fd9d94f736ded417afb58da References: https://docs.ceph.com/en/reef/rbd/rbd-persistent-write-log-cache References: https://docs.ceph.com/en/reef/rbd/rbd-mirroring/
2023-09-09pkgbuild: disable proprietary rgw backendsBazaah
These are some seagate/intel specific features, seemingly to use ceph rgw as the S3 interface to their products, and/or supporting some intel encrypt/decrypt hardware. These are (currently) disabled by default, but I have added them for future proofing. I think these will never be valid/useful compile options on Archlinux.
2023-09-09pkgbuild: disable tracing / opentelemetryBazaah
My reasoning here is to avoid adding _even more_ dependencies to ceph-libs. I do want to revisit these when/if I break up the mega packages into separate libs
2023-09-09pkgbuild: reenable system utf8procBazaah
Was switched to default disabled, reenabling it here for our builds. Upstream-Ref: https://github.com/ceph/ceph/commit/90662cad562fffbdeac33f3b79eac6a02eff8c2a