Source: glusterfs
Version: 11.2-3
Usertags: pidof-without-procps
Dear maintainer(s) of glusterfs,
it appears that glusterfs uses `pidof` in its testsuite, or that
at least one of its binary packages uses `pidof` at runtime.
Historically, `pidof` was provided by the Essential package
`sysvinit-tools`, making an explicit dependency unnecessary. However
`pidof` will soon be moved to `procps` and will no longer be part of
the Essential set.
Please add an explicit dependency on `procps`:
* via the `Depends:` field of all binary packages of glusterfs
that use `pidof` at runtime;
* via the `Build-Depends:` field of glusterfs, if `pidof` is
used in tests run at build-time;
* via the `Depends:` field of `debian/control/tests`, if `pidof` is
used in autopkgtests.
To prevent any disruption for users of glusterfs, please add
this dependency now, before `pidof` is moved from `sysvinit-utils` to
`procps`. Alternatively, you could remove all uses of `pidof`.
It is believed that glusterfs uses `pidof` due to the following
code snippets:
```
path: glusterfs_11.2-3/tests/volume.rc
then
local pid=$(cat ${rundir}/${V0}.pid)
pidof glusterfs 2>&1 | grep -w $pid > /dev/null
if [ $? -eq 0 ]
path: glusterfs_11.2-3/extras/command-completion/gluster.bash
elif [ "$1" == "complete" ]; then
if ! pidof glusterd > /dev/null 2>&1; then
list='';
path: glusterfs_11.2-3/extras/command-completion/gluster.bash
if pidof glusterd > /dev/null 2>&1; then
GLUSTER_SET_OPTIONS="
$(for token in `gluster volume set help 2>/dev/null | grep "^Option:" |
cut -d ' ' -f 2`
path: glusterfs_11.2-3/tests/00-geo-rep/00-georep-verify-setup.t
cleanup;
TEST glusterd;
TEST pidof glusterd
path: glusterfs_11.2-3/tests/bugs/cli/bug-1087487.t
TEST glusterd
TEST pidof glusterd
TEST $CLI volume create $V0 $H0:$B0/${V0}0 $H0:$B0/${V0}1
path: glusterfs_11.2-3/tests/basic/fencing/fencing-crash-conistency.t
TEST glusterd
TEST pidof glusterd
TEST $CLI volume info;
path: glusterfs_11.2-3/tests/basic/afr/inodelk.t
TEST glusterd;
TEST pidof glusterd
TEST $CLI volume create $V0 replica 3 arbiter 1 $H0:$B0/${V0}{0..5}
path: glusterfs_11.2-3/tests/basic/afr/inodelk.t
#Do similar tests on replica 2
TEST glusterd;
TEST pidof glusterd
TEST $CLI volume create $V0 replica 2 $H0:$B0/${V0}{0..3}
TEST $CLI volume start $V0
path: glusterfs_11.2-3/tests/basic/distribute/throttle-rebal.t
TEST glusterd
TEST pidof glusterd
TEST $CLI volume create $V0 $H0:$B0/brick1 $H0:$B0/brick2
TEST $CLI volume start $V0
path:
glusterfs_11.2-3/tests/bugs/replicate/bug-1637802-arbiter-stale-data-heal-lock.t
TEST glusterd;
TEST pidof glusterd;
TEST $CLI volume create $V0 replica 3 arbiter 1 $H0:$B0/${V0}{0,1,2};
TEST $CLI volume start $V0;
path: glusterfs_11.2-3/tests/bugs/distribute/bug-1247563.t
#Basic checks
TEST glusterd
TEST pidof glusterd
TEST $CLI volume info
path: glusterfs_11.2-3/tests/00-geo-rep/bug-1708603.t
cleanup;
TEST glusterd;
TEST pidof glusterd
path: glusterfs_11.2-3/run-tests.sh
# Check for pidof
pidof pidof > /dev/null 2>&1
if [ $? -ne 0 ]; then
MISSING="$MISSING pidof"
(Plus hundreds of tests/*.t files.)
```
Feel free to close this issue if this is a false positive (for example
if this code is in an unreachable code path).
Regards,
--
Gioele Barabucci