Starting RHCS 5, there's no ISO available anymore.
This removes all ISO variables and the ceph_repository_type variable.
Closes: #6626
Signed-off-by: Dimitri Savineau <dsavinea@redhat.com>
If ``ceph_origin`` is set to ``repository``, you now have the choice between a couple of repositories controlled by the ``ceph_repository`` option:
- ``community``: fetches packages from http://download.ceph.com, the official community Ceph repositories
-- ``rhcs``: means you are a Red Hat customer, additionally you will have to select a repository type through ``ceph_repository_type`` (``cdn`` or ``iso``)
+- ``rhcs``: means you are a Red Hat customer
- ``dev``: fetches packages from shaman, a gitbuilder based package system
- ``uca``: fetches packages from Ubuntu Cloud Archive
- ``custom``: fetches packages from a specific repository
RHCS is the Red Hat Ceph Storage product from Red Hat, the enterprise version of Ceph.
If ``ceph_repository`` is set to ``rhcs``, packages you will be installed from Red Hat sources.
-Additionally you will have to select a repository type through ``ceph_repository_type``, it can be ``cdn`` or ``iso``.
To choose a specific version of RHCS you can set the ``ceph_rhcs_version`` variable accordingly, e.g: ``ceph_rhcs_version: 2``.
UCA repository
###########
# INSTALL #
###########
-#ceph_repository_type: dummy
-
# ORIGIN SOURCE
#
# Choose between:
# This version is supported on RHEL 8
#
#ceph_rhcs_version: "{{ ceph_stable_rh_storage_version | default(5) }}"
-#valid_ceph_repository_type:
-# - cdn
-# - iso
-#ceph_rhcs_iso_path: "{{ ceph_stable_rh_storage_iso_path | default('') }}"
-#ceph_rhcs_mount_path: "{{ ceph_stable_rh_storage_mount_path | default('/tmp/rh-storage-mount') }}"
-#ceph_rhcs_repository_path: "{{ ceph_stable_rh_storage_repository_path | default('/tmp/rh-storage-repo') }}" # where to copy iso's content
# REPOSITORY: UBUNTU CLOUD ARCHIVE
###########
# INSTALL #
###########
-#ceph_repository_type: dummy
-
# ORIGIN SOURCE
#
# Choose between:
# This version is supported on RHEL 8
#
ceph_rhcs_version: 5
-#valid_ceph_repository_type:
-# - cdn
-# - iso
-#ceph_rhcs_iso_path: "{{ ceph_stable_rh_storage_iso_path | default('') }}"
-#ceph_rhcs_mount_path: "{{ ceph_stable_rh_storage_mount_path | default('/tmp/rh-storage-mount') }}"
-#ceph_rhcs_repository_path: "{{ ceph_stable_rh_storage_repository_path | default('/tmp/rh-storage-repo') }}" # where to copy iso's content
# REPOSITORY: UBUNTU CLOUD ARCHIVE
command: dnf clean all
when: ansible_facts['pkg_mgr'] == 'dnf'
- - name: purge rpm cache in /tmp
- file:
- path: /tmp/rh-storage-repo
- state: absent
-
- name: clean apt
command: apt-get clean # noqa 303
when: ansible_facts['pkg_mgr'] == 'apt'
with_items:
- ceph-dev
- ceph_stable
- - rh_storage
when: ansible_facts['os_family'] == 'RedHat'
- name: check for anything running ceph
#
# If you run a Ceph community version, you have to change the variable: ceph_stable_release to the new release
#
-# If you run Red Hat Ceph Storage and are doing a **major** update (e.g: from 2 to 3), you have two options:
-# - if you use a CDN, you have to change the ceph_rhcs_version to a newer one
-# - if you use an ISO, you have to change the ceph_rhcs_iso_path to the directory containing the new Ceph version
+# If you run Red Hat Ceph Storage and are doing a **major** update (e.g: from 2 to 3), you have to change the ceph_rhcs_version to a newer one
#
- name: confirm whether user really meant to upgrade the cluster
+++ /dev/null
----
-- name: create red hat storage package directories for redhat systems
- file:
- path: "{{ item }}"
- state: directory
- with_items:
- - "{{ ceph_rhcs_mount_path }}"
- - "{{ ceph_rhcs_repository_path }}"
-
-- name: ensure destination iso directory exists for redhat systems
- file:
- path: "{{ ceph_rhcs_iso_path | dirname }}"
- state: directory
- recurse: yes
- when: ceph_rhcs_iso_path | dirname != '/'
-
-- name: fetch the red hat storage iso from the ansible server for redhat systems
- copy:
- src: "{{ ceph_rhcs_iso_path }}"
- dest: "{{ ceph_rhcs_iso_path }}"
-
-# assumption: ceph_rhcs_mount_path does not specify directory
-
-- name: mount red hat storage iso file for redhat systems
- mount:
- name: "{{ ceph_rhcs_mount_path }}"
- src: "{{ ceph_rhcs_iso_path }}"
- fstype: iso9660
- opts: ro,loop,noauto
- passno: 2
- state: mounted
-
-- name: copy red hat storage iso content for redhat systems
- shell: cp -r {{ ceph_rhcs_mount_path }}/* {{ ceph_rhcs_repository_path }}
- args:
- creates: "{{ ceph_rhcs_repository_path+'/README' if not rolling_update | bool else 'dummy' }}"
-
-- name: unmount red hat storage iso file for redhat systems
- mount:
- name: "{{ ceph_rhcs_mount_path }}"
- src: "{{ ceph_rhcs_iso_path }}"
- fstype: iso9660
- state: unmounted
-
-- name: install red hat storage repository key for redhat systems
- rpm_key:
- key: "{{ ceph_rhcs_repository_path }}/RPM-GPG-KEY-redhat-release"
- state: present
- register: result
- until: result is succeeded
-
-- name: add red hat storage repository for redhat systems
- template:
- src: "{{ role_path }}/templates/redhat_storage_repo.j2"
- dest: /etc/yum.repos.d/rh_storage.repo
- owner: root
- group: root
- mode: 0644
---
-- name: include prerequisite_rhcs_iso_install.yml
- include_tasks: prerequisite_rhcs_iso_install.yml
- when: ceph_repository_type == 'iso'
-
- name: include prerequisite_rhcs_cdn_install.yml
include_tasks: prerequisite_rhcs_cdn_install.yml
- when: ceph_repository_type == 'cdn'
+++ /dev/null
-# {{ ansible_managed }}
-[rh_storage_mon]
-name=Red Hat Ceph Storage - local packages for Ceph monitor
-baseurl=file://{{ ceph_rhcs_repository_path }}/MON
-enabled=1
-gpgcheck=1
-priority=1
-
-[rh_storage_osd]
-name=Red Hat Ceph Storage - local packages for Ceph OSD
-baseurl=file://{{ ceph_rhcs_repository_path }}/OSD
-enabled=1
-gpgcheck=1
-priority=1
-
-[rh_storage_tools]
-name=Red Hat Ceph Storage - local packages for Ceph client, MDS, and RGW
-baseurl=file://{{ ceph_rhcs_repository_path }}/Tools
-enabled=1
-gpgcheck=1
-priority=1
###########
# INSTALL #
###########
-ceph_repository_type: dummy
-
# ORIGIN SOURCE
#
# Choose between:
# This version is supported on RHEL 8
#
ceph_rhcs_version: "{{ ceph_stable_rh_storage_version | default(5) }}"
-valid_ceph_repository_type:
- - cdn
- - iso
-ceph_rhcs_iso_path: "{{ ceph_stable_rh_storage_iso_path | default('') }}"
-ceph_rhcs_mount_path: "{{ ceph_stable_rh_storage_mount_path | default('/tmp/rh-storage-mount') }}"
-ceph_rhcs_repository_path: "{{ ceph_stable_rh_storage_repository_path | default('/tmp/rh-storage-repo') }}" # where to copy iso's content
# REPOSITORY: UBUNTU CLOUD ARCHIVE
when: ansible_facts['distribution_version'] is version('8.2', '<')
- name: subscription manager related tasks
- when: ceph_repository_type == 'cdn'
block:
- name: determine if node is registered with subscription-manager
command: subscription-manager identity
- ceph_repository == 'community'
- ceph_stable_release not in ['quincy']
- - name: validate ceph_repository_type
- fail:
- msg: "ceph_repository_type must be either 'cdn' or 'iso'"
- when:
- - ceph_origin == 'repository'
- - ceph_repository == 'rhcs'
- - ceph_repository_type not in ['cdn', 'iso']
-
- name: validate osd_objectstore
fail:
msg: "osd_objectstore must be either 'bluestore' or 'filestore'"