Blame cloud-init-0.7.1-sudo-iterstr.patch
|
|
82213ac |
Index: cloud-init-0.7.1/cloudinit/distros/__init__.py
|
|
|
82213ac |
===================================================================
|
|
|
82213ac |
--- cloud-init-0.7.1.orig/cloudinit/distros/__init__.py
|
|
|
82213ac |
+++ cloud-init-0.7.1/cloudinit/distros/__init__.py
|
|
|
82213ac |
@@ -24,7 +24,6 @@
|
|
|
82213ac |
from StringIO import StringIO
|
|
|
82213ac |
|
|
|
82213ac |
import abc
|
|
|
82213ac |
-import collections
|
|
|
82213ac |
import itertools
|
|
|
82213ac |
import os
|
|
|
82213ac |
import re
|
|
|
82213ac |
@@ -421,11 +420,14 @@ class Distro(object):
|
|
|
82213ac |
'',
|
|
|
82213ac |
"# User rules for %s" % user,
|
|
|
82213ac |
]
|
|
|
82213ac |
- if isinstance(rules, collections.Iterable):
|
|
|
82213ac |
+ if isinstance(rules, (list, tuple)):
|
|
|
82213ac |
for rule in rules:
|
|
|
82213ac |
lines.append("%s %s" % (user, rule))
|
|
|
82213ac |
- else:
|
|
|
82213ac |
+ elif isinstance(rules, (basestring, str)):
|
|
|
82213ac |
lines.append("%s %s" % (user, rules))
|
|
|
82213ac |
+ else:
|
|
|
82213ac |
+ msg = "Can not create sudoers rule addition with type %r"
|
|
|
82213ac |
+ raise TypeError(msg % (util.obj_name(rules)))
|
|
|
82213ac |
content = "\n".join(lines)
|
|
|
82213ac |
|
|
|
82213ac |
self.ensure_sudo_dir(os.path.dirname(sudo_file))
|