From 234cefd314a7e1cfb51fad3bdf344d801a8b238d Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Thu, 12 Jan 2012 16:51:47 +0100 Subject: [PATCH 05/13] Fix pylint warnings W0613 (unused argument) From: Juerg Haefliger --- cloudinit/__init__.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'cloudinit/__init__.py') diff --git a/cloudinit/__init__.py b/cloudinit/__init__.py index d01d443d..5460d6e1 100644 --- a/cloudinit/__init__.py +++ b/cloudinit/__init__.py @@ -365,7 +365,7 @@ class CloudInit: continue handler_call_end(mod, data, frequency) - def handle_user_script(self,data,ctype,filename,payload, frequency): + def handle_user_script(self,_data,ctype,filename,payload, _frequency): if ctype == "__end__": return if ctype == "__begin__": # maybe delete existing things here @@ -376,7 +376,7 @@ class CloudInit: util.write_file("%s/%s" % (scriptsdir,filename), util.dos2unix(payload), 0700) - def handle_upstart_job(self,data,ctype,filename,payload, frequency): + def handle_upstart_job(self,_data,ctype,filename,payload, frequency): # upstart jobs are only written on the first boot if frequency != per_instance: return @@ -388,7 +388,7 @@ class CloudInit: util.write_file("%s/%s" % ("/etc/init",filename), util.dos2unix(payload), 0644) - def handle_cloud_config(self,data,ctype,filename,payload, frequency): + def handle_cloud_config(self,_data,ctype,filename,payload, _frequency): if ctype == "__begin__": self.cloud_config_str="" return @@ -408,7 +408,7 @@ class CloudInit: self.cloud_config_str+="\n#%s\n%s" % (filename,payload) - def handle_cloud_boothook(self,data,ctype,filename,payload, frequency): + def handle_cloud_boothook(self,_data,ctype,filename,payload, _frequency): if ctype == "__end__": return if ctype == "__begin__": return @@ -538,7 +538,7 @@ def handler_handle_part(mod, data, ctype, filename, payload, frequency): else: mod.handle_part(data, ctype, filename, payload, frequency) -def partwalker_handle_handler(pdata, ctype, filename, payload): +def partwalker_handle_handler(pdata, _ctype, _filename, payload): curcount = pdata['handlercount'] modname = 'part-handler-%03d' % curcount -- cgit v1.2.3 From 6a2031c4dc005d9a0f42b10200b828eee5cf166f Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Thu, 12 Jan 2012 16:54:54 +0100 Subject: [PATCH 06/13] Fix pylint warnings W0612 (unused variable) From: Juerg Haefliger --- cloud-init-query.py | 1 - cloudinit/CloudConfig/cc_apt_update_upgrade.py | 4 ++-- cloudinit/CloudConfig/cc_chef.py | 1 - cloudinit/CloudConfig/cc_resizefs.py | 4 ++-- cloudinit/CloudConfig/cc_rightscale_userdata.py | 3 +-- cloudinit/CloudConfig/cc_rsyslog.py | 4 +--- cloudinit/CloudConfig/cc_set_hostname.py | 4 ++-- cloudinit/CloudConfig/cc_set_passwords.py | 2 +- cloudinit/CloudConfig/cc_update_etc_hosts.py | 2 +- cloudinit/CloudConfig/cc_update_hostname.py | 4 ++-- cloudinit/DataSource.py | 4 ++-- cloudinit/DataSourceEc2.py | 5 ++--- cloudinit/DataSourceOVF.py | 4 ++-- cloudinit/SshUtil.py | 8 ++++---- cloudinit/UserDataHandler.py | 4 +--- cloudinit/__init__.py | 8 ++++---- cloudinit/netinfo.py | 8 ++++---- cloudinit/util.py | 7 +++---- 18 files changed, 34 insertions(+), 43 deletions(-) (limited to 'cloudinit/__init__.py') diff --git a/cloud-init-query.py b/cloud-init-query.py index d4b61a2b..cfe9b429 100755 --- a/cloud-init-query.py +++ b/cloud-init-query.py @@ -31,7 +31,6 @@ def main(): sys.exit(1) cc = cloudinit.CloudConfig.CloudConfig(cloudinit.cloud_config) - cloud_config = cc.cfg data = { 'user_data' : cc.cloud.get_userdata(), 'user_data_raw' : cc.cloud.get_userdata_raw(), diff --git a/cloudinit/CloudConfig/cc_apt_update_upgrade.py b/cloudinit/CloudConfig/cc_apt_update_upgrade.py index e9fd2c07..22651067 100644 --- a/cloudinit/CloudConfig/cc_apt_update_upgrade.py +++ b/cloudinit/CloudConfig/cc_apt_update_upgrade.py @@ -121,7 +121,7 @@ def rename_apt_lists(omirror,new_mirror,lists_d="/var/lib/apt/lists"): os.rename(file,"%s%s" % (nprefix, file[olen:])) def get_release(): - stdout, stderr = subprocess.Popen(['lsb_release', '-cs'], stdout=subprocess.PIPE).communicate() + stdout, _stderr = subprocess.Popen(['lsb_release', '-cs'], stdout=subprocess.PIPE).communicate() return(stdout.strip()) def generate_sources_list(codename, mirror): @@ -202,7 +202,7 @@ def find_apt_mirror(cloud, cfg): if not mirror and cloud: # if we have a fqdn, then search its domain portion first - ( hostname, fqdn ) = util.get_hostname_fqdn(cfg, cloud) + ( _hostname, fqdn ) = util.get_hostname_fqdn(cfg, cloud) mydom = ".".join(fqdn.split(".")[1:]) if mydom: doms.append(".%s" % mydom) diff --git a/cloudinit/CloudConfig/cc_chef.py b/cloudinit/CloudConfig/cc_chef.py index 6b8e3825..977fe80f 100644 --- a/cloudinit/CloudConfig/cc_chef.py +++ b/cloudinit/CloudConfig/cc_chef.py @@ -41,7 +41,6 @@ def handle(_name,cfg,cloud,log,_args): with open('/etc/chef/validation.pem', 'w') as validation_key_fh: validation_key_fh.write(validation_key) - validation_name = chef_cfg.get('validation_name','chef-validator') # create the chef config from template util.render_to_file('chef_client.rb', '/etc/chef/client.rb', {'server_url': chef_cfg['server_url'], diff --git a/cloudinit/CloudConfig/cc_resizefs.py b/cloudinit/CloudConfig/cc_resizefs.py index d4b260b8..adec70be 100644 --- a/cloudinit/CloudConfig/cc_resizefs.py +++ b/cloudinit/CloudConfig/cc_resizefs.py @@ -53,7 +53,7 @@ def handle(_name,cfg,_cloud,log,args): cmd = [ 'blkid', '-c', '/dev/null', '-sTYPE', '-ovalue', devpth ] try: - (fstype,err) = util.subp(cmd) + (fstype,_err) = util.subp(cmd) except subprocess.CalledProcessError as e: log.warn("Failed to get filesystem type of maj=%s, min=%s via: %s" % (os.major(st_dev), os.minor(st_dev), cmd)) @@ -74,7 +74,7 @@ def handle(_name,cfg,_cloud,log,args): return try: - (out,err) = util.subp(resize_cmd) + util.subp(resize_cmd) except subprocess.CalledProcessError as e: log.warn("Failed to resize filesystem (%s)" % resize_cmd) log.warn("output=%s\nerror=%s\n", e.output[0], e.output[1]) diff --git a/cloudinit/CloudConfig/cc_rightscale_userdata.py b/cloudinit/CloudConfig/cc_rightscale_userdata.py index 050d89aa..2b43023c 100644 --- a/cloudinit/CloudConfig/cc_rightscale_userdata.py +++ b/cloudinit/CloudConfig/cc_rightscale_userdata.py @@ -50,7 +50,7 @@ def handle(_name,_cfg,cloud,log,_args): return try: - mdict = parse_qs(cloud.get_userdata_raw()) + mdict = parse_qs(ud) if not my_hookname in mdict: return except: log.warn("failed to urlparse.parse_qa(userdata_raw())") @@ -58,7 +58,6 @@ def handle(_name,_cfg,cloud,log,_args): scripts_d = get_ipath_cur('scripts') i = 0 - errors = [ ] first_e = None for url in mdict[my_hookname]: fname = "%s/rightscale-%02i" % (scripts_d,i) diff --git a/cloudinit/CloudConfig/cc_rsyslog.py b/cloudinit/CloudConfig/cc_rsyslog.py index 4e427ae0..ab85a6d8 100644 --- a/cloudinit/CloudConfig/cc_rsyslog.py +++ b/cloudinit/CloudConfig/cc_rsyslog.py @@ -38,8 +38,6 @@ def handle(_name,cfg,_cloud,log,_args): def_dir = cfg.get('rsyslog_dir', DEF_DIR) def_fname = cfg.get('rsyslog_filename', DEF_FILENAME) - entries = cfg['rsyslog'] - files = [ ] elst = [ ] for ent in cfg['rsyslog']: @@ -80,7 +78,7 @@ def handle(_name,cfg,_cloud,log,_args): # it will also return failure on the attempt, so 'restarted' # won't get set log.debug("restarting rsyslog") - p = util.subp(['service', 'rsyslog', 'restart']) + util.subp(['service', 'rsyslog', 'restart']) restarted = True except Exception as e: diff --git a/cloudinit/CloudConfig/cc_set_hostname.py b/cloudinit/CloudConfig/cc_set_hostname.py index 129e9165..4f19b0c8 100644 --- a/cloudinit/CloudConfig/cc_set_hostname.py +++ b/cloudinit/CloudConfig/cc_set_hostname.py @@ -23,10 +23,10 @@ def handle(_name,cfg,cloud,log,_args): log.debug("preserve_hostname is set. not setting hostname") return(True) - ( hostname, fqdn ) = util.get_hostname_fqdn(cfg, cloud) + ( hostname, _fqdn ) = util.get_hostname_fqdn(cfg, cloud) try: set_hostname(hostname, log) - except Exception as e: + except Exception: util.logexc(log) log.warn("failed to set hostname to %s\n", hostname) diff --git a/cloudinit/CloudConfig/cc_set_passwords.py b/cloudinit/CloudConfig/cc_set_passwords.py index f44d450c..07e3ca1b 100644 --- a/cloudinit/CloudConfig/cc_set_passwords.py +++ b/cloudinit/CloudConfig/cc_set_passwords.py @@ -115,7 +115,7 @@ def handle(_name,cfg,_cloud,log,args): return def rand_str(strlen=32, select_from=string.letters+string.digits): - return("".join([random.choice(select_from) for x in range(0, strlen)])) + return("".join([random.choice(select_from) for _x in range(0, strlen)])) def rand_user_password(pwlen=9): selfrom=(string.letters.translate(None,'loLOI') + diff --git a/cloudinit/CloudConfig/cc_update_etc_hosts.py b/cloudinit/CloudConfig/cc_update_etc_hosts.py index 9e3a1dbb..1c245e67 100644 --- a/cloudinit/CloudConfig/cc_update_etc_hosts.py +++ b/cloudinit/CloudConfig/cc_update_etc_hosts.py @@ -34,7 +34,7 @@ def handle(_name,cfg,cloud,log,_args): util.render_to_file('hosts', '/etc/hosts', \ { 'hostname' : hostname, 'fqdn' : fqdn }) - except Exception as e: + except Exception: log.warn("failed to update /etc/hosts") raise elif manage_hosts == "localhost": diff --git a/cloudinit/CloudConfig/cc_update_hostname.py b/cloudinit/CloudConfig/cc_update_hostname.py index 871e40bf..4bc1cb2b 100644 --- a/cloudinit/CloudConfig/cc_update_hostname.py +++ b/cloudinit/CloudConfig/cc_update_hostname.py @@ -27,11 +27,11 @@ def handle(_name,cfg,cloud,log,_args): log.debug("preserve_hostname is set. not updating hostname") return - ( hostname, fqdn ) = util.get_hostname_fqdn(cfg, cloud) + ( hostname, _fqdn ) = util.get_hostname_fqdn(cfg, cloud) try: prev ="%s/%s" % (cloud.get_cpath('data'),"previous-hostname") update_hostname(hostname, prev, log) - except Exception as e: + except Exception: log.warn("failed to set hostname\n") raise diff --git a/cloudinit/DataSource.py b/cloudinit/DataSource.py index 66763181..bdcac4ef 100644 --- a/cloudinit/DataSource.py +++ b/cloudinit/DataSource.py @@ -69,7 +69,7 @@ class DataSource: if isinstance(self.metadata['public-keys'], str): return([self.metadata['public-keys'],]) - for keyname, klist in self.metadata['public-keys'].items(): + for _keyname, klist in self.metadata['public-keys'].items(): # lp:506332 uec metadata service responds with # data that makes boto populate a string for 'klist' rather # than a list. @@ -197,7 +197,7 @@ def is_ipv4(instr): return False try: - r = filter(lambda x: int(x) < 256 and x > 0, toks) + filter(lambda x: int(x) < 256 and x > 0, toks) except: return False diff --git a/cloudinit/DataSourceEc2.py b/cloudinit/DataSourceEc2.py index eed310c9..9191e647 100644 --- a/cloudinit/DataSourceEc2.py +++ b/cloudinit/DataSourceEc2.py @@ -89,7 +89,7 @@ class DataSourceEc2(DataSource.DataSource): max_wait = 120 try: max_wait = int(mcfg.get("max_wait",max_wait)) - except Exception as e: + except Exception: util.logexc(log) log.warn("Failed to get max wait. using %s" % max_wait) @@ -99,7 +99,7 @@ class DataSourceEc2(DataSource.DataSource): timeout = 50 try: timeout = int(mcfg.get("timeout",timeout)) - except Exception as e: + except Exception: util.logexc(log) log.warn("Failed to get timeout, using %s" % timeout) @@ -226,7 +226,6 @@ def wait_for_metadata_service(urls, max_wait=None, timeout=None, status_cb=None) starttime = time.time() sleeptime = 1 - timeout_orig = timeout if status_cb == None: def status_cb(msg): return diff --git a/cloudinit/DataSourceOVF.py b/cloudinit/DataSourceOVF.py index 4f4187fb..e4d28aba 100644 --- a/cloudinit/DataSourceOVF.py +++ b/cloudinit/DataSourceOVF.py @@ -64,7 +64,7 @@ class DataSourceOVF(DataSource.DataSource): np = { 'iso' : transport_iso9660, 'vmware-guestd' : transport_vmware_guestd, } for name, transfunc in np.iteritems(): - (contents, dev, fname) = transfunc() + (contents, _dev, _fname) = transfunc() if contents: break if contents: @@ -171,7 +171,7 @@ def transport_iso9660(require_iso=False): mounted = { } for mpline in mounts: - (dev,mp,fstype,opts,freq,passno) = mpline.split() + (dev,mp,fstype,_opts,_freq,_passno) = mpline.split() mounted[dev]=(dev,fstype,mp,False) mp = mp.replace("\\040"," ") if fstype != "iso9660" and require_iso: continue diff --git a/cloudinit/SshUtil.py b/cloudinit/SshUtil.py index fdd3bb27..125ca618 100644 --- a/cloudinit/SshUtil.py +++ b/cloudinit/SshUtil.py @@ -46,7 +46,7 @@ class AuthKeyEntry(): elif curc == '"': quoted = not quoted i = i + 1 - except IndexError as e: + except IndexError: self.is_comment = True return() @@ -54,7 +54,7 @@ class AuthKeyEntry(): self.options = ent[0:i] (self.keytype, self.base64, self.comment) = \ ent[i+1:].split(None,3) - except ValueError as e: + except ValueError: # we did not understand this line self.is_comment = True @@ -84,7 +84,7 @@ def update_authorized_keys(fname, keys): fp = open(fname, "r") lines = fp.readlines() # lines have carriage return fp.close() - except IOError as e: + except IOError: lines = [ ] ka_stats = { } # keys_added status @@ -133,7 +133,7 @@ def setup_user_keys(keys, user, key_prefix, log=None): akeys = akeys.replace("%h", pwent.pw_dir) akeys = akeys.replace("%u", user) authorized_keys = akeys - except Exception as e: + except Exception: authorized_keys = '%s/.ssh/authorized_keys' % pwent.pw_dir if log: util.logexc(log) diff --git a/cloudinit/UserDataHandler.py b/cloudinit/UserDataHandler.py index ac2cdda9..0afe5a18 100644 --- a/cloudinit/UserDataHandler.py +++ b/cloudinit/UserDataHandler.py @@ -77,7 +77,7 @@ def do_include(content, appendmsg): content = urllib.urlopen(line).read() if includeonce: util.write_file(includeonce_filename, content, mode=0600) - except Exception as e: + except Exception: raise process_includes(message_from_string(decomp_str(content)), appendmsg) @@ -190,7 +190,6 @@ def process_includes(msg, appendmsg=None): def message_from_string(data, headers={}): if "mime-version:" in data[0:4096].lower(): - was_mime = True msg = email.message_from_string(data) for (key,val) in headers.items(): if key in msg: @@ -198,7 +197,6 @@ def message_from_string(data, headers={}): else: msg[key] = val else: - was_mime = False mtype = headers.get("Content-Type","text/plain") maintype, subtype = mtype.split("/", 1) msg = MIMEBase(maintype, subtype, *headers) diff --git a/cloudinit/__init__.py b/cloudinit/__init__.py index 5460d6e1..537e3363 100644 --- a/cloudinit/__init__.py +++ b/cloudinit/__init__.py @@ -137,7 +137,7 @@ class CloudInit: try: conf = util.get_base_cfg(self.sysconfig,cfg_builtin, parsed_cfgs) - except Exception as e: + except Exception: conf = get_builtin_cfg() # support reading the old ConfigObj format file and merging @@ -176,7 +176,7 @@ class CloudInit: try: f=open(cache, "wb") - data = cPickle.dump(self.datasource,f) + cPickle.dump(self.datasource,f) f.close() os.chmod(cache,0400) except: @@ -360,7 +360,7 @@ class CloudInit: # give callbacks opportunity to finalize called = [ ] - for (mtype, mod) in part_handlers.iteritems(): + for (_mtype, mod) in part_handlers.iteritems(): if mod in called: continue handler_call_end(mod, data, frequency) @@ -425,7 +425,7 @@ class CloudInit: try: env=os.environ.copy() env['INSTANCE_ID']= self.datasource.get_instance_id() - ret = subprocess.check_call([filepath], env=env) + subprocess.check_call([filepath], env=env) except subprocess.CalledProcessError as e: log.error("boothooks script %s returned %i" % (filepath,e.returncode)) diff --git a/cloudinit/netinfo.py b/cloudinit/netinfo.py index a6b32c4f..9ca72b77 100644 --- a/cloudinit/netinfo.py +++ b/cloudinit/netinfo.py @@ -24,7 +24,7 @@ def netdev_info(): if toks[i] == "hwaddr": try: devs[curdev]["hwaddr"] = toks[i+1] - except IndexError as e: + except IndexError: pass for field in ("addr", "bcast", "mask"): target = "%s%s" % (field, fieldpost) @@ -33,7 +33,7 @@ def netdev_info(): if toks[i] == "%s:" % field: try: devs[curdev][target] = toks[i+1] - except IndexError as e: + except IndexError: pass elif toks[i].startswith("%s:" % field): devs[curdev][target] = toks[i][len(field)+1:] @@ -61,7 +61,7 @@ def debug_info(pre="ci-info: "): lines = [ ] try: netdev = netdev_info() - except Exception as e: + except Exception: lines.append("netdev_info failed!") netdev = {} for (dev, d) in netdev.iteritems(): @@ -69,7 +69,7 @@ def debug_info(pre="ci-info: "): (pre, dev, d["up"], d["addr"],d["mask"], d["hwaddr"])) try: routes = route_info() - except Exception as e: + except Exception: lines.append("route_info failed") routes = [] n = 0 diff --git a/cloudinit/util.py b/cloudinit/util.py index b45bb19e..90998297 100644 --- a/cloudinit/util.py +++ b/cloudinit/util.py @@ -264,7 +264,6 @@ def read_file_with_includes(fname, rel = ".", stack=[], patt = None): stack.append(fname) cur = 0 - clen = len(contents) while True: match = patt.search(contents[cur:]) if not match: break @@ -443,7 +442,7 @@ def islxc(): # we're inside a container. otherwise, no sp = subprocess.Popen(['lxc-is-container'], stdout=subprocess.PIPE, stderr=subprocess.PIPE) - out,err = sp.communicate(None) + sp.communicate(None) return(sp.returncode == 0) except OSError as e: if e.errno != errno.ENOENT: @@ -507,7 +506,7 @@ def is_resolvable(name): try: socket.getaddrinfo(name, None) return True - except socket.gaierror as e: + except socket.gaierror: return False def is_resolvable_url(url): @@ -520,7 +519,7 @@ def search_for_mirror(candidates): try: if is_resolvable_url(cand): return cand - except Exception as e: + except Exception: raise return None -- cgit v1.2.3 From 8b795f21caa5758138bb19a4f0412b80b6db9c99 Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Thu, 12 Jan 2012 16:55:34 +0100 Subject: [PATCH 09/13] Fix pylint warnings W0107 (unnecessary pass statement) From: Juerg Haefliger --- cloudinit/__init__.py | 1 - 1 file changed, 1 deletion(-) (limited to 'cloudinit/__init__.py') diff --git a/cloudinit/__init__.py b/cloudinit/__init__.py index 537e3363..0e35ab6e 100644 --- a/cloudinit/__init__.py +++ b/cloudinit/__init__.py @@ -205,7 +205,6 @@ class CloudInit: except Exception as e: log.warn("get_data of %s raised %s" % (ds,e)) util.logexc(log) - pass msg = "Did not find data source. searched classes: %s" % dsnames log.debug(msg) raise DataSourceNotFoundException(msg) -- cgit v1.2.3 From 38f913377554f27159171a505b5805ee2537a905 Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Thu, 12 Jan 2012 16:55:45 +0100 Subject: [PATCH 10/13] Fix pylint warnings W0102 (dangerous default value as From: Juerg Haefliger argument) --- cloudinit/CloudConfig/__init__.py | 6 ++++-- cloudinit/CloudConfig/cc_apt_update_upgrade.py | 4 +++- cloudinit/DataSource.py | 4 +++- cloudinit/UserDataHandler.py | 4 +++- cloudinit/__init__.py | 4 +++- cloudinit/util.py | 4 +++- 6 files changed, 19 insertions(+), 7 deletions(-) (limited to 'cloudinit/__init__.py') diff --git a/cloudinit/CloudConfig/__init__.py b/cloudinit/CloudConfig/__init__.py index 82f422fc..f5c4143c 100644 --- a/cloudinit/CloudConfig/__init__.py +++ b/cloudinit/CloudConfig/__init__.py @@ -33,7 +33,7 @@ class CloudConfig(): cfgfile = None cfg = None - def __init__(self,cfgfile, cloud=None, ds_deps=[]): + def __init__(self,cfgfile, cloud=None, ds_deps=None): if cloud == None: self.cloud = cloudinit.CloudInit(ds_deps) self.cloud.get_data_source() @@ -233,7 +233,9 @@ def run_per_instance(name, func, args, clear_on_fail=False): raise # apt_get top level command (install, update...), and args to pass it -def apt_get(tlc,args=[]): +def apt_get(tlc,args=None): + if args is None: + args = [] e=os.environ.copy() e['DEBIAN_FRONTEND']='noninteractive' cmd=[ 'apt-get', diff --git a/cloudinit/CloudConfig/cc_apt_update_upgrade.py b/cloudinit/CloudConfig/cc_apt_update_upgrade.py index d466f3c4..0cbe02d4 100644 --- a/cloudinit/CloudConfig/cc_apt_update_upgrade.py +++ b/cloudinit/CloudConfig/cc_apt_update_upgrade.py @@ -131,7 +131,9 @@ def generate_sources_list(codename, mirror): # srclist is a list of dictionaries, # each entry must have: 'source' # may have: key, ( keyid and keyserver) -def add_sources(srclist, searchList={ }): +def add_sources(srclist, searchList=None): + if searchList is None: + searchList = {} elst = [] for ent in srclist: diff --git a/cloudinit/DataSource.py b/cloudinit/DataSource.py index bdcac4ef..623f96b6 100644 --- a/cloudinit/DataSource.py +++ b/cloudinit/DataSource.py @@ -157,7 +157,9 @@ class DataSource: # ie, pkglist=[ "foo", "" ] # will first try to load foo.DataSource # then DataSource -def list_sources(cfg_list, depends, pkglist=[]): +def list_sources(cfg_list, depends, pkglist=None): + if pkglist is None: + pkglist = [] retlist = [] for ds_coll in cfg_list: for pkg in pkglist: diff --git a/cloudinit/UserDataHandler.py b/cloudinit/UserDataHandler.py index 2d257d12..14aea58b 100644 --- a/cloudinit/UserDataHandler.py +++ b/cloudinit/UserDataHandler.py @@ -188,7 +188,9 @@ def process_includes(msg, appendmsg=None): _attach_part(appendmsg, part) -def message_from_string(data, headers={}): +def message_from_string(data, headers=None): + if headers is None: + headers = {} if "mime-version:" in data[0:4096].lower(): msg = email.message_from_string(data) for (key,val) in headers.items(): diff --git a/cloudinit/__init__.py b/cloudinit/__init__.py index 0e35ab6e..72d988d5 100644 --- a/cloudinit/__init__.py +++ b/cloudinit/__init__.py @@ -297,7 +297,9 @@ class CloudInit: # if that does not exist, then call 'func' with given 'args' # if 'clear_on_fail' is True and func throws an exception # then remove the lock (so it would run again) - def sem_and_run(self,semname,freq,func,args=[],clear_on_fail=False): + def sem_and_run(self,semname,freq,func,args=None,clear_on_fail=False): + if args is None: + args = [] if self.sem_has_run(semname,freq): log.debug("%s already ran %s", semname, freq) return False diff --git a/cloudinit/util.py b/cloudinit/util.py index deb4b33b..64007211 100644 --- a/cloudinit/util.py +++ b/cloudinit/util.py @@ -238,7 +238,9 @@ def logexc(log,lvl=logging.DEBUG): class RecursiveInclude(Exception): pass -def read_file_with_includes(fname, rel = ".", stack=[], patt = None): +def read_file_with_includes(fname, rel = ".", stack=None, patt = None): + if stack is None: + stack = [] if not fname.startswith("/"): fname = os.sep.join((rel, fname)) -- cgit v1.2.3 From 121e17d15dcf311f8e629788d74df10f7c291676 Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Thu, 12 Jan 2012 16:55:50 +0100 Subject: [PATCH 11/13] Fix pylint warnings W0141 (used builtin function xyz) From: Juerg Haefliger Replace superseded builtin functions 'filter' and 'map' using list comprehension. --- cloudinit/CloudConfig/cc_mounts.py | 2 +- cloudinit/DataSource.py | 4 ++-- cloudinit/__init__.py | 3 ++- cloudinit/util.py | 4 ++-- 4 files changed, 7 insertions(+), 6 deletions(-) (limited to 'cloudinit/__init__.py') diff --git a/cloudinit/CloudConfig/cc_mounts.py b/cloudinit/CloudConfig/cc_mounts.py index 327b480f..a3036d5a 100644 --- a/cloudinit/CloudConfig/cc_mounts.py +++ b/cloudinit/CloudConfig/cc_mounts.py @@ -116,7 +116,7 @@ def handle(_name,cfg,cloud,log,_args): # now, each entry in the cfgmnt list has all fstab values # if the second field is None (not the string, the value) we skip it - actlist = filter(lambda x: x[1] is not None, cfgmnt) + actlist = [x for x in cfgmnt if x[1] is not None] if len(actlist) == 0: return diff --git a/cloudinit/DataSource.py b/cloudinit/DataSource.py index 623f96b6..ac79f757 100644 --- a/cloudinit/DataSource.py +++ b/cloudinit/DataSource.py @@ -199,8 +199,8 @@ def is_ipv4(instr): return False try: - filter(lambda x: int(x) < 256 and x > 0, toks) + toks = [x for x in toks if (int(x) < 256 and int(x) > 0)] except: return False - return True + return (len(toks) == 4) diff --git a/cloudinit/__init__.py b/cloudinit/__init__.py index 72d988d5..1bdeb7f4 100644 --- a/cloudinit/__init__.py +++ b/cloudinit/__init__.py @@ -191,7 +191,8 @@ class CloudInit: cfglist=self.cfg['datasource_list'] dslist = list_sources(cfglist, self.ds_deps) - dsnames = map(lambda f: f.__name__, dslist) + dsnames = [f.__name__ for f in dslist] + log.debug("searching for data source in %s" % dsnames) for cls in dslist: ds = cls.__name__ diff --git a/cloudinit/util.py b/cloudinit/util.py index 64007211..5bf8e8b2 100644 --- a/cloudinit/util.py +++ b/cloudinit/util.py @@ -292,10 +292,10 @@ def read_conf_d(confd): confs = sorted(os.listdir(confd),reverse=True) # remove anything not ending in '.cfg' - confs = filter(lambda f: f.endswith(".cfg"), confs) + confs = [f for f in confs if f.endswith(".cfg")] # remove anything not a file - confs = filter(lambda f: os.path.isfile("%s/%s" % (confd,f)),confs) + confs = [f for f in confs if os.path.isfile("%s/%s" % (confd,f))] cfg = { } for conf in confs: -- cgit v1.2.3 From 005a63f5781b99a1f666ab03d9e4c17d151635a1 Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Thu, 12 Jan 2012 16:55:59 +0100 Subject: [PATCH 12/13] Fix pylint warnings W0201 (attribute xyz defined From: Juerg Haefliger outside __init__) --- cloudinit/__init__.py | 2 ++ 1 file changed, 2 insertions(+) (limited to 'cloudinit/__init__.py') diff --git a/cloudinit/__init__.py b/cloudinit/__init__.py index 1bdeb7f4..d74a0f1f 100644 --- a/cloudinit/__init__.py +++ b/cloudinit/__init__.py @@ -115,6 +115,8 @@ class CloudInit: old_conffile = '/etc/ec2-init/ec2-config.cfg' ds_deps = [ DataSource.DEP_FILESYSTEM, DataSource.DEP_NETWORK ] datasource = None + cloud_config_str = '' + datasource_name = '' builtin_handlers = [ ] -- cgit v1.2.3