Skip to content

Commit

Permalink
debian: correct ceph-common relationship with older radosgw package
Browse files Browse the repository at this point in the history
Fixes: https://tracker.ceph.com/issues/36741

9fd30b9 moved
/etc/bash_completion.d/radosgw-admin from radosgw to ceph-common. This
means that if you try and install a newer ceph-common over an older
radosgw, there's a conflict, and the install fails:

```
Unpacking ceph-common (12.2.8-1xenial) over (10.2.9-0ubuntu0.16.04.1) ...
dpkg: error processing archive ceph-common_12.2.8-1xenial_amd64.deb (--install):
 trying to overwrite '/etc/bash_completion.d/radosgw-admin', which is also in package radosgw 10.2.9-0ubuntu0.16.04.1
```

Per Debian policy (
https://www.debian.org/doc/debian-policy/ch-relationships.html#overwriting-files-in-other-packages
) the correct way to handle a package taking over a file is for a
versioned Replaces and Breaks.

The change went into 12.0.3, so this commit adds Replaces and Breaks
against radosgw less than that version. It should be backported to
Luminous to avoid issues with upgrades from older versions (Jewel and
Kraken).

Signed-off-by: Matthew Vernon <mv3@sanger.ac.uk>
  • Loading branch information
mcv21 committed Nov 9, 2018
1 parent 06fcb75 commit dd24ddc
Showing 1 changed file with 2 additions and 0 deletions.
2 changes: 2 additions & 0 deletions debian/control
Expand Up @@ -410,11 +410,13 @@ Replaces: ceph (<< 10),
ceph-test (<< 9.0.3-1646),
librbd1 (<< 0.92-1238),
python-ceph (<< 0.92-1223),
radosgw (<< 12.0.3)
Breaks: ceph (<< 10),
ceph-fs-common (<< 11.0),
ceph-test (<< 9.0.3-1646),
librbd1 (<< 0.92-1238),
python-ceph (<< 0.92-1223),
radosgw (<< 12.0.3)
Suggests: ceph-base (= ${binary:Version}),
ceph-mds (= ${binary:Version}),
Description: common utilities to mount and interact with a ceph storage cluster
Expand Down

0 comments on commit dd24ddc

Please sign in to comment.