Codebase list bundlewrap / d88db5d
Imported Debian patch 3.1.1-1 Jonathan Carter 6 years ago
9 changed file(s) with 44 addition(s) and 9 deletion(s). Raw diff Collapse all Expand all
00 /dist/
11 /docs/build/
2 /tests/.coveralls.yml
0 # 3.1.1
1
2 2017-10-24
3
4 * will now detect bad wrappers around metadata processors
5 * fixed crash in `bw plot`
6 * fixed cut off status lines
7
8
09 # 3.1.0
110
211 2017-10-10
00 # -*- coding: utf-8 -*-
11 from __future__ import unicode_literals
22
3 VERSION = (3, 1, 0)
3 VERSION = (3, 1, 1)
44 VERSION_STRING = ".".join([str(v) for v in VERSION])
22
33 from os.path import exists, join
44
5 from .exceptions import NoSuchBundle, RepositoryError
5 from .exceptions import BundleError, NoSuchBundle, RepositoryError
66 from .metadata import DEFAULTS, DONE, RUN_ME_AGAIN, OVERWRITE
77 from .utils import cached_property, get_all_attrs_from_file
88 from .utils.text import bold, mark_for_translation as _
9595 if not exists(self.metadata_file):
9696 return []
9797 result = []
98 internal_names = set()
9899 for name, attr in get_all_attrs_from_file(
99100 self.metadata_file,
100101 base_env={
108109 },
109110 ).items():
110111 if getattr(attr, '__is_a_metadata_processor', False):
112 internal_name = getattr(attr, '__name__', name)
113 if internal_name in internal_names:
114 raise BundleError(_(
115 "Metadata processor '{name}' in bundle {bundle} for node {node} has "
116 "__name__ '{internal_name}', which was previously used by another "
117 "metadata processor in the same metadata.py. BundleWrap uses __name__ "
118 "internally to tell metadata processors apart, so this is a problem. "
119 "Perhaps you used a decorator on your metadata processors that "
120 "doesn't use functools.wraps? You should use that."
121 ).format(
122 bundle=self.name,
123 node=self.node.name,
124 internal_name=internal_name,
125 name=name,
126 ))
127 internal_names.add(internal_name)
111128 result.append(attr)
112129 return result
2828 node = get_node(repo, args['node'], adhoc_nodes=args['adhoc_nodes'])
2929 for line in graph_for_items(
3030 node.name,
31 prepare_dependencies(node.items, node.os, node.os_version),
31 prepare_dependencies(node.items, node.name, node.os, node.os_version),
3232 cluster=args['cluster'],
3333 concurrency=args['depends_concurrency'],
3434 static=args['depends_static'],
185185 def write_db(self):
186186 with open(join(self.path, "plugins.json"), 'w') as f:
187187 f.write(dumps(self.plugin_db, indent=4, sort_keys=True))
188 f.write("\n")
416416 def _write_current_job(self):
417417 if self.jobs and TTY:
418418 line = "{} ".format(blue(self._spinner_character()))
419 # must track line length manually as len() will count ANSI escape codes
420 visible_length = 2
419421 try:
420422 progress = (self.progress / float(self.progress_total))
421423 except ZeroDivisionError:
422424 pass
423425 else:
424 line += bold("{:.1f}% ".format(progress * 100))
425 line += self.jobs[-1]
426 line += " "
427 write_to_stream(STDOUT_WRITER, line[:term_width() - 1])
426 progress_text = "{:.1f}% ".format(progress * 100)
427 line += bold(progress_text)
428 visible_length += len(progress_text)
429 line += self.jobs[-1][:term_width() - 1 - visible_length]
430 write_to_stream(STDOUT_WRITER, line)
428431 self._status_line_present = True
429432
430433
0 bundlewrap (3.1.1-1) unstable; urgency=medium
1
2 * New upstream release
3
4 -- Jonathan Carter <jcc@debian.org> Fri, 27 Oct 2017 11:32:30 +0200
5
06 bundlewrap (3.1.0-1) unstable; urgency=medium
17
28 * New upstream release
1515
1616 setup(
1717 name="bundlewrap",
18 version="3.1.0",
18 version="3.1.1",
1919 description="Config management with Python",
2020 long_description=(
2121 "By allowing for easy and low-overhead config management, BundleWrap fills the gap between complex deployments using Chef or Puppet and old school system administration over SSH.\n"