diff --git a/manifests/compute/hypervisor.pp b/manifests/compute/hypervisor.pp index 65840dec..621a21be 100644 --- a/manifests/compute/hypervisor.pp +++ b/manifests/compute/hypervisor.pp @@ -193,14 +193,19 @@ Host * }) # Configure Ceph keyring - Ceph::Key <<| title == $cinder_rbd_user |>> -> - ensure_resource('file', "/etc/ceph/ceph.client.${cinder_rbd_user}.keyring", { - owner => 'root', - group => 'cephkeyring', - mode => '0440', - require => Ceph::Key[$cinder_rbd_user], - notify => Service['nova-compute'], - }) + Ceph::Key <<| title == $cinder_rbd_user |>> + if defined(Ceph::Key[$cinder_rbd_user]) { + ensure_resource( + 'file', + "/etc/ceph/ceph.client.${cinder_rbd_user}.keyring", { + owner => 'root', + group => 'cephkeyring', + mode => '0440', + require => Ceph::Key[$cinder_rbd_user], + notify => Service['nova-compute'], + } + ) + } Concat::Fragment <<| title == 'ceph-client-os' |>> } else { diff --git a/manifests/volume/backend/rbd.pp b/manifests/volume/backend/rbd.pp index db2416f7..04392b06 100644 --- a/manifests/volume/backend/rbd.pp +++ b/manifests/volume/backend/rbd.pp @@ -84,13 +84,15 @@ define cloud::volume::backend::rbd ( }) # Configure Ceph keyring - Ceph::Key <<| title == $rbd_user |>> -> - ensure_resource('file', "/etc/ceph/ceph.client.${rbd_user}.keyring", { - owner => 'root', - group => 'cephkeyring', - mode => '0440', - require => Ceph::Key[$rbd_user], - }) + Ceph::Key <<| title == $rbd_user |>> + if defined(Ceph::Key[$rbd_user]) { + ensure_resource('file', "/etc/ceph/ceph.client.${rbd_user}.keyring", { + owner => 'root', + group => 'cephkeyring', + mode => '0440', + require => Ceph::Key[$rbd_user], + }) + } Concat::Fragment <<| title == 'ceph-client-os' |>>