def clone_strategy(directory):
            env = git.no_git_env()

            cmd = ('git', 'clone', '--no-checkout', repo, directory)
            cmd_output(*cmd, env=env)

            def _git_cmd(*args):
                return cmd_output('git', *args, cwd=directory, env=env)

            _git_cmd('reset', ref, '--hard')
            _git_cmd('submodule', 'update', '--init', '--recursive')
Exemplo n.º 2
0
        def clone_strategy(directory: str) -> None:
            git.init_repo(directory, repo)
            env = git.no_git_env()

            def _git_cmd(*args: str) -> None:
                cmd_output_b('git', *args, cwd=directory, env=env)

            try:
                self._shallow_clone(ref, _git_cmd)
            except CalledProcessError:
                self._complete_clone(ref, _git_cmd)
Exemplo n.º 3
0
        def clone_strategy(directory):
            env = git.no_git_env()

            def _git_cmd(*args):
                cmd_output('git', *args, cwd=directory, env=env)

            _git_cmd('init', '.')
            _git_cmd('remote', 'add', 'origin', repo)

            try:
                self._shallow_clone(ref, _git_cmd)
            except CalledProcessError:
                self._complete_clone(ref, _git_cmd)
Exemplo n.º 4
0
        def clone_strategy(directory):
            env = git.no_git_env()

            def _git_cmd(*args):
                cmd_output('git', *args, cwd=directory, env=env)

            _git_cmd('init', '.')
            _git_cmd('remote', 'add', 'origin', repo)

            try:
                self._shallow_clone(ref, _git_cmd)
            except CalledProcessError:
                self._complete_clone(ref, _git_cmd)
Exemplo n.º 5
0
        def make_local_strategy(directory):
            for resource in self.LOCAL_RESOURCES:
                contents = resource_text('empty_template_{}'.format(resource))
                with io.open(os.path.join(directory, resource), 'w') as f:
                    f.write(contents)

            env = git.no_git_env()

            # initialize the git repository so it looks more like cloned repos
            def _git_cmd(*args):
                cmd_output_b('git', *args, cwd=directory, env=env)

            git.init_repo(directory, '<<unknown>>')
            _git_cmd('add', '.')
            git.commit(repo=directory)
Exemplo n.º 6
0
def test_no_git_env():
    env = {
        'http_proxy': 'http://myproxy:80',
        'GIT_EXEC_PATH': '/some/git/exec/path',
        'GIT_SSH': '/usr/bin/ssh',
        'GIT_SSH_COMMAND': 'ssh -o',
        'GIT_DIR': '/none/shall/pass',
    }
    no_git_env = git.no_git_env(env)
    assert no_git_env == {
        'http_proxy': 'http://myproxy:80',
        'GIT_EXEC_PATH': '/some/git/exec/path',
        'GIT_SSH': '/usr/bin/ssh',
        'GIT_SSH_COMMAND': 'ssh -o',
    }
Exemplo n.º 7
0
        def make_local_strategy(directory: str) -> None:
            for resource in self.LOCAL_RESOURCES:
                contents = resource_text(f"empty_template_{resource}")
                with open(os.path.join(directory, resource), "w") as f:
                    f.write(contents)

            env = git.no_git_env()

            # initialize the git repository so it looks more like cloned repos
            def _git_cmd(*args: str) -> None:
                cmd_output_b("git", *args, cwd=directory, env=env)

            git.init_repo(directory, "<<unknown>>")
            _git_cmd("add", ".")
            git.commit(repo=directory)
Exemplo n.º 8
0
def test_no_git_env():
    env = {
        'http_proxy': 'http://myproxy:80',
        'GIT_EXEC_PATH': '/some/git/exec/path',
        'GIT_SSH': '/usr/bin/ssh',
        'GIT_SSH_COMMAND': 'ssh -o',
        'GIT_DIR': '/none/shall/pass',
    }
    no_git_env = git.no_git_env(env)
    assert no_git_env == {
        'http_proxy': 'http://myproxy:80',
        'GIT_EXEC_PATH': '/some/git/exec/path',
        'GIT_SSH': '/usr/bin/ssh',
        'GIT_SSH_COMMAND': 'ssh -o',
    }
Exemplo n.º 9
0
        def make_local_strategy(directory):
            for resource in self.LOCAL_RESOURCES:
                contents = resource_text('empty_template_{}'.format(resource))
                with io.open(os.path.join(directory, resource), 'w') as f:
                    f.write(contents)

            env = git.no_git_env()

            # initialize the git repository so it looks more like cloned repos
            def _git_cmd(*args):
                cmd_output('git', *args, cwd=directory, env=env)

            _git_cmd('init', '.')
            _git_cmd('config', 'remote.origin.url', '<<unknown>>')
            _git_cmd('add', '.')
            git.commit(repo=directory)
Exemplo n.º 10
0
        def make_local_strategy(directory: str) -> None:
            for resource in self.LOCAL_RESOURCES:
                resource_dirname, resource_basename = os.path.split(resource)
                contents = resource_text(f'empty_template_{resource_basename}')
                target_dir = os.path.join(directory, resource_dirname)
                target_file = os.path.join(target_dir, resource_basename)
                os.makedirs(target_dir, exist_ok=True)
                with open(target_file, 'w') as f:
                    f.write(contents)

            env = git.no_git_env()

            # initialize the git repository so it looks more like cloned repos
            def _git_cmd(*args: str) -> None:
                cmd_output_b('git', *args, cwd=directory, env=env)

            git.init_repo(directory, '<<unknown>>')
            _git_cmd('add', '.')
            git.commit(repo=directory)