When we deploy a Jewel cluster on Ubuntu with ceph_test: True, we're
unable to upgrade that cluster to Luminous.
"apt-get install ceph-common" fails to upgrade to luminous if a jewel ceph-test package is installed:
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
ceph-base : Breaks: ceph-test (< 12.2.2-14) but 10.2.11-1xenial is to be installed
ceph-mon : Breaks: ceph-test (< 12.2.2-14) but 10.2.11-1xenial is to be installed
In ceph-ansible master, we resolve this whole class of problem by
installing all the packages in one operation (see
b338fafd90bbe489726b92d703bf4bc29d1caf6d).
For the stable-3.1 branch, take a less-invasive approach, and upgrade
ceph-test prior to any other package. This matches the approach I took
for RPMs in
3752cc6f38dbf476845e975e6448225c0e103ad6, before we had the
better solution in
b338fafd90bbe489726b92d703bf4bc29d1caf6d.
Closes: https://bugzilla.redhat.com/show_bug.cgi?id=1610997
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
state: "{{ (upgrade_ceph_packages|bool) | ternary('latest','present') }}"
default_release: "{{ ceph_stable_release_uca | default(omit) }}{{ ansible_distribution_release ~ '-backports' if ceph_origin == 'distro' and ceph_use_distro_backports else ''}}"
-- name: install ceph-common for debian
- apt:
- name: ceph-common
- state: "{{ (upgrade_ceph_packages|bool) | ternary('latest','present') }}"
- default_release: "{{ ceph_stable_release_uca | default(omit) }}{{ ansible_distribution_release ~ '-backports' if ceph_origin == 'distro' and ceph_use_distro_backports else ''}}"
-
- name: install ceph-test for debian
apt:
name: ceph-test
when:
- ceph_test
+- name: install ceph-common for debian
+ apt:
+ name: ceph-common
+ state: "{{ (upgrade_ceph_packages|bool) | ternary('latest','present') }}"
+ default_release: "{{ ceph_stable_release_uca | default(omit) }}{{ ansible_distribution_release ~ '-backports' if ceph_origin == 'distro' and ceph_use_distro_backports else ''}}"
+
- name: install rados gateway for debian
apt:
name: radosgw
---
+- name: install ceph-test for debian
+ apt:
+ name: ceph-test
+ state: "{{ (upgrade_ceph_packages|bool) | ternary('latest','present') }}"
+ when:
+ - ceph_test
+
- name: install red hat storage ceph-common for debian
apt:
pkg: ceph-common
when:
- osd_group_name in group_names
-- name: install ceph-test for debian
- apt:
- name: ceph-test
- state: "{{ (upgrade_ceph_packages|bool) | ternary('latest','present') }}"
- when:
- - ceph_test
-
- name: install red hat storage radosgw for debian
apt:
name: radosgw