62 lines
2.1 KiB
YAML
62 lines
2.1 KiB
YAML
---
|
|
# Copyright 2021 Red Hat, Inc.
|
|
# All Rights Reserved.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
# Assumes the following module is in ANSIBLE_LIBRARY=/usr/share/ansible/library/
|
|
# https://github.com/ceph/ceph-ansible/blob/master/library/ceph_key.py
|
|
|
|
- name: Create cephx key(s)
|
|
ceph_key:
|
|
import_key: true
|
|
name: "{{ item.name }}"
|
|
caps: "{{ item.caps }}"
|
|
mode: "{{ item.mode }}"
|
|
secret: "{{ item.key | default('') }}"
|
|
cluster: "{{ tripleo_cephadm_cluster }}"
|
|
dest: "{{ tripleo_cephadm_config_home_container }}"
|
|
owner: "{{ tripleo_cephadm_uid }}"
|
|
group: "{{ tripleo_cephadm_uid }}"
|
|
environment:
|
|
CEPH_CONTAINER_IMAGE: "{{ tripleo_cephadm_container_ns + '/' + tripleo_cephadm_container_image + ':' + tripleo_cephadm_container_tag }}"
|
|
CEPH_CONTAINER_BINARY: "{{ tripleo_cephadm_container_cli }}"
|
|
CEPH_FSID: "{{ tripleo_cephadm_fsid }}"
|
|
become: true
|
|
loop: "{{ tripleo_cephadm_keys }}"
|
|
when:
|
|
- tripleo_cephadm_keys is defined
|
|
- tripleo_cephadm_keys | length > 0
|
|
|
|
- name: Find the generated key(s)
|
|
ansible.builtin.find:
|
|
paths: "{{ tripleo_cephadm_config_home_container }}"
|
|
patterns: "*.{{ item.name }}.*"
|
|
register: keyring_files
|
|
become: true
|
|
loop: "{{ tripleo_cephadm_keys }}"
|
|
when:
|
|
- tripleo_cephadm_keys is defined
|
|
- tripleo_cephadm_keys | length > 0
|
|
|
|
- name: Copy key(s) to /etc/ceph
|
|
ansible.builtin.copy:
|
|
remote_src: true
|
|
src: "{{ item.path }}"
|
|
dest: "{{ tripleo_cephadm_config_home }}"
|
|
owner: "{{ tripleo_cephadm_uid }}"
|
|
group: "{{ tripleo_cephadm_uid }}"
|
|
mode: '0644'
|
|
become: true
|
|
with_items: "{{ keyring_files.results | map(attribute='files') | list }}"
|