You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by re...@apache.org on 2015/10/21 23:16:20 UTC
[2/4] git commit: updated refs/heads/master to e7638c0
CLOUDSTACK-8933 - Replace infinite loop by a for loop
- The loop will also sleep in between iterations, waiting for a couple of seconds and being multiplied by factor 2 per iteration
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/698171d2
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/698171d2
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/698171d2
Branch: refs/heads/master
Commit: 698171d210affcface5c38a88ca39fe8b4fc42a0
Parents: ac68f2a
Author: Wilder Rodrigues <wr...@schubergphilis.com>
Authored: Wed Oct 21 09:58:35 2015 +0200
Committer: Wilder Rodrigues <wr...@schubergphilis.com>
Committed: Wed Oct 21 11:10:37 2015 +0200
----------------------------------------------------------------------
.../debian/config/etc/init.d/cloud-early-config | 38 +++++++++++---------
1 file changed, 22 insertions(+), 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/698171d2/systemvm/patches/debian/config/etc/init.d/cloud-early-config
----------------------------------------------------------------------
diff --git a/systemvm/patches/debian/config/etc/init.d/cloud-early-config b/systemvm/patches/debian/config/etc/init.d/cloud-early-config
index d25366e..6fbedff 100755
--- a/systemvm/patches/debian/config/etc/init.d/cloud-early-config
+++ b/systemvm/patches/debian/config/etc/init.d/cloud-early-config
@@ -117,25 +117,31 @@ get_boot_params() {
if [ ! -e /dev/vport0p1 ]; then
log_it "/dev/vport0p1 not loaded, perhaps guest kernel is too old." && exit 2
fi
- while [ -z "$cmd" ]; do
- while read line; do
- if [[ $line == cmdline:* ]]; then
- cmd=${line//cmdline:/}
+
+ local factor=2
+ local progress=1
+ for i in {1..5}
+ do
+ while read line; do
+ if [[ $line == cmdline:* ]]; then
+ cmd=${line//cmdline:/}
echo $cmd > /var/cache/cloud/cmdline
- elif [[ $line == pubkey:* ]]; then
- pubkey=${line//pubkey:/}
- echo $pubkey > /var/cache/cloud/authorized_keys
- echo $pubkey > /root/.ssh/authorized_keys
+ elif [[ $line == pubkey:* ]]; then
+ pubkey=${line//pubkey:/}
+ echo $pubkey > /var/cache/cloud/authorized_keys
+ echo $pubkey > /root/.ssh/authorized_keys
fi
- done < /dev/vport0p1
- # In case of reboot we do not send the boot args again.
- # so need not wait for them, as the boot args are already set at startup
- if [ -s /var/cache/cloud/cmdline ]
- then
- log_it "found a non empty cmdline file continuing"
- break;
+ done < /dev/vport0p1
+ # In case of reboot we do not send the boot args again.
+ # So, no need to wait for them, as the boot args are already set at startup
+ if [ -s /var/cache/cloud/cmdline ]
+ then
+ log_it "Found a non empty cmdline file. Will now exit the loop and proceed with configuration."
+ break;
fi
- done
+ sleep ${progress}s
+ progress=$[ progress * factor ]
+ done
chmod go-rwx /root/.ssh/authorized_keys
;;
vmware)