| from collections import OrderedDict |
| import pytest |
| from ..site import HAVE_OSTREE |
| |
| from .git import Git |
| from .bzr import Bzr |
| from .ostree import OSTree |
| from .tar import Tar |
| from .zip import Zip |
| |
| ALL_REPO_KINDS = OrderedDict() |
| ALL_REPO_KINDS['git'] = Git |
| ALL_REPO_KINDS['bzr'] = Bzr |
| ALL_REPO_KINDS['ostree'] = OSTree |
| ALL_REPO_KINDS['tar'] = Tar |
| ALL_REPO_KINDS['zip'] = Zip |
| |
| |
| # create_repo() |
| # |
| # Convenience for creating a Repo |
| # |
| # Args: |
| # kind (str): The kind of repo to create (a source plugin basename) |
| # directory (str): The path where the repo will keep a cache |
| # |
| def create_repo(kind, directory, subdir='repo'): |
| try: |
| constructor = ALL_REPO_KINDS[kind] |
| except KeyError as e: |
| raise AssertionError("Unsupported repo kind {}".format(kind)) from e |
| |
| return constructor(directory, subdir=subdir) |