From 600e2e4057bd8ff807895f55d4b9435c9d7eedaa Mon Sep 17 00:00:00 2001 From: Vasyl Saienko Date: Tue, 9 Aug 2016 08:47:16 +0300 Subject: [PATCH] Update devstack configure_ironic_ssh_keypair When authorized_file doesn't contain new-line character at the end, configure_ironic_ssh_keypair() just append new key to the existed line, as result both keys becomes corrupted. The patch adds a check for last character in the authorized_key file, if new-line is missed add it. Change-Id: I64a7bba5f3c7dee76ae2faf659af1231280f2b8b Closes-Bug: #1611207 --- devstack/lib/ironic | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/devstack/lib/ironic b/devstack/lib/ironic index c6e4468c9e..c49995443d 100644 --- a/devstack/lib/ironic +++ b/devstack/lib/ironic @@ -1184,6 +1184,10 @@ function configure_ironic_ssh_keypair { fi echo -e 'n\n' | ssh-keygen -q -t rsa -P '' -f $IRONIC_KEY_FILE fi + # NOTE(vsaienko) check for new line character, add if doesn't exist. + if [[ "$(tail -c1 $IRONIC_AUTHORIZED_KEYS_FILE | wc -l)" == "0" ]]; then + echo "" >> $IRONIC_AUTHORIZED_KEYS_FILE + fi cat $IRONIC_KEY_FILE.pub | tee -a $IRONIC_AUTHORIZED_KEYS_FILE # remove duplicate keys. sort -u -o $IRONIC_AUTHORIZED_KEYS_FILE $IRONIC_AUTHORIZED_KEYS_FILE