From 4fb29212175101a6f497235668b1749b85b3550d Mon Sep 17 00:00:00 2001 From: Olivier Sallou Date: Wed, 31 Jul 2013 08:02:52 +0200 Subject: [PATCH] fix pub key mngt --- providers/one/assets/one-pubkey.sh | 9 +++++++++ providers/one/tasks/one.py | 6 ++++++ providers/one/tasks/packages.py | 4 +++- 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/providers/one/assets/one-pubkey.sh b/providers/one/assets/one-pubkey.sh index e28b738..7d7a209 100755 --- a/providers/one/assets/one-pubkey.sh +++ b/providers/one/assets/one-pubkey.sh @@ -1,5 +1,14 @@ #!/bin/bash +echo "Reconfigure host ssh keys" +dpkg-reconfigure openssh-server + +if [ ! -e /root/.ssh ]; then + mkdir /root/.ssh + touch /root/.ssh/authorized_keys + chmod 600 /root/.ssh/authorized_keys +fi + echo "Copy public ssh keys to authorized_keys" for f in /mnt/*.pub do diff --git a/providers/one/tasks/one.py b/providers/one/tasks/one.py index b8dbbf7..745cb43 100644 --- a/providers/one/tasks/one.py +++ b/providers/one/tasks/one.py @@ -21,6 +21,12 @@ class OpenNebulaContext(Task): from common.tools import log_check_call log_check_call(['/usr/sbin/chroot', info.root, 'dpkg', '-i', '/tmp/one-context_3.8.1.deb']) + # Fix start + from common.tools import sed_i + vmcontext_def = os.path.join(info.root, 'etc/init.d/vmcontext') + sed_i(vmcontext_def, '# Default-Start:', '# Default-Start: 2 3 4 5') + os.chmod(vmcontext_def, rwxr_xr_x) + log_check_call(['/usr/sbin/chroot', info.root, 'update-rc.d', 'vmcontext', 'start', '90', '2', '3', '4', '5', 'stop', '90', '0', '6']) script_src = os.path.normpath(os.path.join(os.path.dirname(__file__), '../assets/one-pubkey.sh')) script_dst = os.path.join(info.root, 'etc/one-context.d/one-pubkey.sh') diff --git a/providers/one/tasks/packages.py b/providers/one/tasks/packages.py index 4ecdbea..89c1589 100644 --- a/providers/one/tasks/packages.py +++ b/providers/one/tasks/packages.py @@ -7,7 +7,7 @@ class HostPackages(Task): phase = phases.preparation def run(self, info): - packages = set(['debootstrap', 'qemu-utils', 'parted', 'grub2']) + packages = set(['debootstrap', 'qemu-utils', 'parted', 'grub2', 'sysv-rc']) if info.manifest.volume['filesystem'] == 'xfs': packages.add('xfsprogs') @@ -31,6 +31,8 @@ class ImagePackages(Task): # isc-dhcp-client doesn't work properly with ec2 'dhcpcd', 'grub2', + 'chkconfig', + 'openssh-client' ]) exclude = set(['isc-dhcp-client',