mirror of
https://github.com/pre-commit/pre-commit.git
synced 2026-02-17 08:14:42 +04:00
Actually print while installing
This commit is contained in:
parent
8f51bf2d0b
commit
02f0a1c434
6 changed files with 42 additions and 27 deletions
|
|
@ -1,5 +1,6 @@
|
|||
from __future__ import unicode_literals
|
||||
|
||||
import logging
|
||||
import shutil
|
||||
|
||||
from cached_property import cached_property
|
||||
|
|
@ -9,6 +10,9 @@ from pre_commit.manifest import Manifest
|
|||
from pre_commit.prefixed_command_runner import PrefixedCommandRunner
|
||||
|
||||
|
||||
logger = logging.getLogger('pre_commit')
|
||||
|
||||
|
||||
class Repository(object):
|
||||
def __init__(self, repo_config, repo_path_getter):
|
||||
self.repo_config = repo_config
|
||||
|
|
@ -62,14 +66,28 @@ class Repository(object):
|
|||
|
||||
def install(self):
|
||||
"""Install the hook repository."""
|
||||
for language_name, language_version in self.languages:
|
||||
def language_is_installed(language_name):
|
||||
language = languages[language_name]
|
||||
if (
|
||||
return (
|
||||
language.ENVIRONMENT_DIR is None or
|
||||
self.cmd_runner.exists(language.ENVIRONMENT_DIR, '.installed')
|
||||
):
|
||||
# The language is already installed
|
||||
)
|
||||
|
||||
if not all(
|
||||
language_is_installed(language_name)
|
||||
for language_name, _ in self.languages
|
||||
):
|
||||
logger.info(
|
||||
'Installing environment for {0}.'.format(self.repo_url)
|
||||
)
|
||||
logger.info('Once installed this environment will be reused.')
|
||||
logger.info('This may take a few minutes...')
|
||||
|
||||
for language_name, language_version in self.languages:
|
||||
language = languages[language_name]
|
||||
if language_is_installed(language_name):
|
||||
continue
|
||||
|
||||
# There's potentially incomplete cleanup from previous runs
|
||||
# Clean it up!
|
||||
if self.cmd_runner.exists(language.ENVIRONMENT_DIR):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue