[cloud-init/f16] Deal with differences from Ubuntu's sshd

gholms gholms at fedoraproject.org
Tue Oct 4 19:22:25 UTC 2011


commit 974de09f58a905f945a2b94ee272c9f2f994ca2b
Author: Garrett Holmstrom <gholms at fedoraproject.org>
Date:   Wed Sep 28 18:17:53 2011 -0700

    Deal with differences from Ubuntu's sshd

 cloud-init-0.6.2-sshsvc.patch |   44 +++++++++++++++++++++++++++++++++++++++++
 cloud-init-fedora.cfg         |    1 +
 cloud-init.spec               |    4 +++
 3 files changed, 49 insertions(+), 0 deletions(-)
---
diff --git a/cloud-init-0.6.2-sshsvc.patch b/cloud-init-0.6.2-sshsvc.patch
new file mode 100644
index 0000000..fe22012
--- /dev/null
+++ b/cloud-init-0.6.2-sshsvc.patch
@@ -0,0 +1,44 @@
+Index: cloud-init-fedora/cloudinit/CloudConfig/cc_set_passwords.py
+===================================================================
+--- cloud-init-fedora.orig/cloudinit/CloudConfig/cc_set_passwords.py
++++ cloud-init-fedora/cloudinit/CloudConfig/cc_set_passwords.py
+@@ -104,7 +104,7 @@ def handle(name,cfg,cloud,log,args):
+             errors.append(e)
+ 
+         try:
+-            p = util.subp(['service', 'ssh', 'restart'])
++            p = util.subp(['service', cfg.get('ssh_svcname', 'ssh'), 'restart'])
+             log.debug("restarted sshd")
+         except:
+             log.warn("restart of ssh failed")
+Index: cloud-init-fedora/cloudinit/CloudConfig/cc_ssh.py
+===================================================================
+--- cloud-init-fedora.orig/cloudinit/CloudConfig/cc_ssh.py
++++ cloud-init-fedora/cloudinit/CloudConfig/cc_ssh.py
+@@ -31,9 +31,10 @@ def handle(name,cfg,cloud,log,args):
+     global_log = log
+ 
+     # remove the static keys from the pristine image
+-    for f in glob.glob("/etc/ssh/ssh_host_*key*"):
+-        try: os.unlink(f)
+-        except: pass
++    if cfg.get("delete_system_ssh_keys", True):
++        for f in glob.glob("/etc/ssh/ssh_host_*key*"):
++            try: os.unlink(f)
++            except: pass
+ 
+     if cfg.has_key("ssh_keys"):
+         # if there are keys in cloud-config, use them
+@@ -63,8 +64,10 @@ def handle(name,cfg,cloud,log,args):
+         # if not, generate them
+         for keytype in util.get_cfg_option_list_or_str(cfg, 'ssh_genkeytypes',
+                                                        ['rsa', 'dsa', 'ecdsa']):
+-            subprocess.call(['ssh-keygen', '-t', keytype, '-N', '',
+-                             '-f', '/etc/ssh/ssh_host_%s_key' % keytype])
++            keyfile = '/etc/ssh/ssh_host_%s_key' % keytype
++            if not os.path.exists(keyfile):
++                subprocess.call(['ssh-keygen', '-t', keytype, '-N', '',
++                                 '-f', keyfile])
+ 
+     try:
+         user = util.get_cfg_option_str(cfg,'user')
diff --git a/cloud-init-fedora.cfg b/cloud-init-fedora.cfg
index 32f4f9f..2e7cc9b 100644
--- a/cloud-init-fedora.cfg
+++ b/cloud-init-fedora.cfg
@@ -5,6 +5,7 @@ ssh_pwauth:   0
 cc_ready_cmd: ['/bin/true']
 mount_default_fields: [~, ~, 'auto', 'defaults,nofail', '0', '2']
 ssh_genkeytypes:  ~
+ssh_svcname: sshd
 syslog_fix_perms: ~
 locale_configfile: /etc/sysconfig/i18n
 
diff --git a/cloud-init.spec b/cloud-init.spec
index 7832d53..8152804 100644
--- a/cloud-init.spec
+++ b/cloud-init.spec
@@ -31,6 +31,8 @@ Patch7:         cloud-init-0.6.2-puppetenable.patch
 Patch8:         cloud-init-0.6.2-sshkeytypes.patch
 # https://bugs.launchpad.net/cloud-init/+bug/857926
 Patch10:        cloud-init-0.6.2-runparts-emptydir.patch
+# Deal with differences between out sshd service and Ubuntu's (not yet upstream)
+Patch11:        cloud-init-0.6.2-sshsvc.patch
 
 BuildArch:      noarch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -71,6 +73,7 @@ ssh keys and to let the user run various scripts.
 %patch7 -p1
 %patch8 -p1
 %patch10 -p1
+%patch11 -p1
 
 cp -p %{SOURCE2} README.fedora
 
@@ -156,6 +159,7 @@ fi
 - Consolidated selinux file context patches
 - Fixed cloud-init.service dependencies
 - Updated sshkeytypes patch
+- Dealt with differences from Ubuntu's sshd
 
 * Sat Sep 24 2011 Garrett Holmstrom <gholms at fedoraproject.org> - 0.6.2-0.5.bzr457
 - Rebased against upstream rev 457


More information about the scm-commits mailing list