コード例 #1
0
ファイル: conftest.py プロジェクト: ralphqq/gitchm
def chm_dest_feature(dest_repo_mirror_feature, init_source_repo):
    """CHM session with branch feature checked out in dest repo."""
    dest_repo = dest_repo_mirror_feature
    source_repo_path, _, _ = init_source_repo
    mirror = CommitHistoryMirror(
        source_workdir=source_repo_path, dest_workdir=dest_repo.working_dir
    )
    return {"mirror": mirror}
コード例 #2
0
ファイル: conftest.py プロジェクト: ralphqq/gitchm
def chm_dest_master(dest_repo_mirror_master, init_source_repo):
    """CHM session with master checked out in dest repo."""
    dest_repo = dest_repo_mirror_master
    source_repo_path, _, _ = init_source_repo
    mirror = CommitHistoryMirror(
        source_workdir=source_repo_path, dest_workdir=dest_repo.working_dir
    )
    return {"mirror": mirror}
コード例 #3
0
ファイル: conftest.py プロジェクト: ralphqq/gitchm
def chm_dest_tree(dest_repo_tree, init_source_repo):
    """CHM session with dest repo that has no tree."""
    dest_repo = dest_repo_tree
    source_repo_path, _, _ = init_source_repo
    mirror = CommitHistoryMirror(
        source_workdir=source_repo_path, dest_workdir=dest_repo.working_dir
    )
    return {"mirror": mirror}
コード例 #4
0
    def test_mirror_init_with_dest_workdir(self, mock_init_repos):
        some_dir = "/tmp/foo/bar"
        some_other_dir = "/tmp/spam/eggs"
        mirror = CommitHistoryMirror(some_dir, some_other_dir)

        assert mirror.source_workdir == some_dir
        assert mirror._init_source_repo.called
        assert not mirror._init_empty_dest_repo.called
        assert mirror._init_existing_dest_repo.called_once_with(some_other_dir)
コード例 #5
0
    def test_mirror_init_with_no_dest_workdir(self, mock_init_repos):
        some_dir = "/tmp/foo/bar"
        mirror = CommitHistoryMirror(some_dir)

        assert mirror.source_workdir == some_dir
        assert mirror._init_source_repo.called
        assert mirror._init_empty_dest_repo.called
        assert not mirror._init_existing_dest_repo.called
        assert not mirror.prior_dest_exists
        assert mirror.dest_prefix == "mirror"
コード例 #6
0
def main() -> None:
    try:
        logging.basicConfig(format="%(message)s",
                            level=getattr(logging, LOGLEVEL))
        logging.debug("Starting up")

        ui.start()
        init_params = ui.options[INIT]
        reflect_params = ui.options[REFLECT]

        chm = CommitHistoryMirror(**init_params)
        asyncio.run(chm.reflect(**reflect_params))
        logging.info(f"Done: {format_stats(chm.stats)}")
        if chm.stats["replicated"] > 0:
            logging.info(f"To view replicated commits, "
                         f"go to directory {chm.dest_workdir}")

    except KeyboardInterrupt:
        logging.info("Canceled")

    except Exception as e:
        logging.error(f"An unhandled error occurred: {e}")
コード例 #7
0
ファイル: conftest.py プロジェクト: ralphqq/gitchm
def chm(init_source_repo):
    """Initializes CommitHistoryMirror session."""
    source_repo_path, parent_dir_path, commit_data = init_source_repo
    mirror = CommitHistoryMirror(source_repo_path)
    yield {
        "mirror": mirror,
        "source_workdir": source_repo_path,
        "parent_dir": parent_dir_path,
        "commits": commit_data,
    }

    # Delete dest working dir
    delete_dir(mirror.dest_repo.working_dir)
コード例 #8
0
 def test_mirror_init_with_dest_prefix(self, mock_init_repos):
     some_dir = "/tmp/foo/bar"
     dest_prefix = "another-prefix"
     mirror = CommitHistoryMirror(some_dir, prefix=dest_prefix)
     assert mirror.dest_prefix == dest_prefix
コード例 #9
0
 def test_mirror_init_with_same_dest_workdir(self, mock_init_repos):
     some_dir = "/tmp/foo/bar"
     with pytest.raises(ValueError):
         CommitHistoryMirror(some_dir, some_dir)
コード例 #10
0
 async def _make_mirror(dest_workdir="", **kwargs):
     m = CommitHistoryMirror(source_workdir=src_repo.working_dir,
                             dest_workdir=dest_workdir)
     await m.reflect(**kwargs)
     return m