nova_libvirt_init_secret Give a proper error if ceph is not configured properly

Let's make the error a little more clearer when ceph failed to be
configured properly.

Before:
2021-08-13T12: 42:07.472193117+00:00 stdout F ------------------------------------------------
2021-08-13T12: 42:07.472193117+00:00 stdout F Initializing virsh secrets for: ceph:openstack
2021-08-13T12: 42:07.481397478+00:00 stdout F --------
2021-08-13T12: 42:07.481397478+00:00 stdout F Initializing the virsh secret for 'ceph' cluster () 'openstack' client
2021-08-13T12: 42:07.484466828+00:00 stdout F Creating /etc/nova/ceph-secret.xml
2021-08-13T12: 42:07.493435343+00:00 stderr F Usage: grep [OPTION]... PATTERN [FILE]...
2021-08-13T12: 42:07.493435343+00:00 stderr F Try 'grep --help' for more information.
2021-08-13T12: 42:07.591038798+00:00 stdout F Secret 5e23cf03-81b0-4e02-b678-7c5363fbf0e2 created
2021-08-13T12: 42:07.591038798+00:00 stdout F
2021-08-13T12: 42:07.671036635+00:00 stderr F error: failed to get secret '--base64'
2021-08-13T12: 42:07.671036635+00:00 stderr F error: uuidstr in virSecretLookupByUUIDString must be a valid UUID
2021-08-13T12: 42:07.674021136+00:00 stdout F

After:
2021-08-14T13:10:20.866443451+00:00 stdout F Initializing virsh secrets for: ceph:openstack
2021-08-14T13:10:20.880988730+00:00 stdout F Error: /etc/ceph/ceph.conf contained an empty fsid definition
2021-08-14T13:10:20.880988730+00:00 stdout F Check your ceph configuration

Related-Bug: 1961096

Change-Id: I781db8142015d713d9e99114aed42667418bf23b
(cherry picked from commit 61f67eff10)
This commit is contained in:
Michele Baldessari 2021-08-13 18:14:15 +02:00 committed by John Fulton
parent 104db89edf
commit 565dbd0ab3
1 changed files with 10 additions and 0 deletions

View File

@ -14,7 +14,17 @@ echo "Initializing virsh secrets for: ${CEPH_INFO[@]}"
for INFO in ${CEPH_INFO[@]}; do
IFS=: read CLUSTER CLIENT <<< $INFO
if [ ! -f /etc/ceph/${CLUSTER}.conf ]; then
echo "Error: /etc/ceph/${CLUSTER}.conf was not found"
echo "Path to nova_libvirt_init_secret was ${CEPH_INFO}"
exit 1
fi
FSID=$(awk '$1 == "fsid" {print $3}' /etc/ceph/${CLUSTER}.conf)
if [ -z "${FSID}" ]; then
echo "Error: /etc/ceph/${CLUSTER}.conf contained an empty fsid definition"
echo "Check your ceph configuration"
exit 1
fi
echo "--------"
echo "Initializing the virsh secret for '$CLUSTER' cluster ($FSID) '$CLIENT' client"