Review for Package: src:glusterfs [Summary] This is a big piece of software and might have quite some security implications (embedded sources, root daemon, regex parsing, lintian warnings, openssl3 warnings, ...) but I'll leave this to the security-team to judge on. It is really unfortunate that it does not currently contain any automated testing. Thanks for starting the work on a DEP-8 test already, we absolutely need this! In addition it should be further investigated if the unit-tests can be run at build time or if we can setup similar test as the upstream CI that run during build. Having unit tests + DEP-8 would make me feel much more confortable in ACKing this, but I guess having at least one of them is the bare minimum. MIR team ACK under the constraint to resolve the below listed required TODOs and as much as possible having a look at the recommended TODOs. This does need a security review, so I'll assign ubuntu-security List of specific binary packages to be promoted to main: glusterfs-cli, glusterfs-client, glusterfs-common, glusterfs-server, libgfapi0, libgfchangelog0, libgfrpc0, libgfxdr0, libglusterd0, libglusterfs-dev, libglusterfs0 Specific binary packages built, but NOT to be promoted to main: Required TODOs: - Implement & upload the proposed autopkgtests (+ try to get them into Debian): Thanks for starting the work on this already! https://bugs.launchpad.net/ubuntu/+source/glusterfs/+bug/1954452 - State a plan of how you will stay on top of the embedded sources (security issues, updates, ...) Recommended TODOs: - The package should get a team bug subscriber before being promoted - try to enable the unittests (BUILD_UNITTEST="no" in configure.ac) at buildtime - Work with upstream to resolve the build time warnings - Work with Debian to clean up the lintian warnings & overrides [Duplication] There is no other package in main providing the same functionality. There are some parallels to Ceph, as a scale-out storage solution, but the usecases are quite a bit different (object storage in a full cloud environment vs HA file storage), so I'm not considering this a duplication of functionality. [Dependencies] OK: - no other Dependencies to MIR due to this - checked with check-mir - not listed in seeded-in-ubuntu - none of the (potentially auto-generated) dependencies (Depends and Recommends) that are present after build are not in main - no -dev/-debug/-doc packages that need exclusion - No dependencies in main that are only superficially tested requiring more tests now. Problems: None [Embedded sources and static linking] OK: - no static linking - does not have odd Built-Using entries - not a go package, no extra constraints to consider in that regard Problems: - Some embedded sources present (like xxhash, libexecinfo, ...) in contrib/ [Security] OK: - history of CVEs does not look concerning (there are plenty of CVEs, but the situation seems to have become much better since 2018, only one CVE in 2019 since then) - does not use webkit1,2 - does not use lib*v8 directly - does not process arbitrary web content - does not use centralized online accounts - does not integrate arbitrary javascript into the desktop - does not deal with system authentication (eg, pam), etc) - does not deal with security attestation (secure boot, tpm, signatures) Problems: - does run a daemon as root - does open a port/socket - does some regex parsing in libglusterfs/src/parse-utils.c [Common blockers] OK: - does not FTBFS currently - if special HW does prevent build/autopkgtest is there a test plan, code, log provided? – not needed - if a non-trivial test on this level does not make sense (the lib alone is only doing rather simple things), is the overall solution (app+libs) extensively covered i.e. via end to end autopkgtest ? – not needed - no new python2 dependency - Python package, but using dh_python (some parts of it) - NO Go package Problems: - does NOT have a test suite that runs at build time - does NOT have a non-trivial test suite that runs as autopkgtest: https://bugs.launchpad.net/ubuntu/+source/glusterfs/+bug/1954452 [Packaging red flags] OK: - Ubuntu does carry a delta, but it is reasonable and maintenance under control - symbols tracking is in place (using dh_makeshlibs -VUpstream-Version) - d/watch is present and looks ok (if needed, e.g. non-native) - Upstream update history is good - Debian/Ubuntu update history is good - the current release is packaged - promoting this does not seem to cause issues for MOTUs that so far maintained the package - d/rules is rather clean - It is not on the lto-disabled list Problems: - some Lintian warnings (especially the no-symbols-control-file & hardening-no-fortify-functions) [Upstream red flags] OK: - no incautious use of malloc/sprintf (as far as we can check it) - no use of sudo, gksu, pkexec (usage is OK inside tests) - no use of setuid - no important open bugs (crashers, etc) in Debian or Ubuntu => some crash reports, but those are very old (~10years) and do not apply to the current version - no dependency on webkit, qtwebkit, seed or libgoa-* - not part of the UI for extra checks - no translation present, but none needed for this case (user visible)? => visible to admins only Problems: - use of user nobody and nfsnobody (at least inside the tests) - LD_LIBRARY_PATH is being dealt with in ./configure - some warnings during the build (several crypto functions deprecated since openssl3, string truncation, ...)