from bundlewrap.exceptions import BundleError from bundlewrap.utils.text import bold, green, yellow from bundlewrap.utils.ui import io def test_node(repo, node, **kwargs): if not node.has_bundle('backup-client'): return if node.metadata.get('backups/exclude_from_backups', False): io.stderr('{x} {node} exclude_from_backups=True'.format( x=yellow("»"), node=bold(node.name), )) return if not len(node.metadata.get('backups/paths', set())): raise BundleError(f'{node.name} has backups configured, but no backup paths defined!') io.stdout('{x} {node} backup metadata conforms to standards'.format( x=green("✓"), node=bold(node.name), ))