# HG changeset patch
# User Anton Shestakov <av6@dwimlabs.net>
# Date 1465787456 -28800
# Node ID 69b4a7343f90d8eb09e179593ca855f7409ad150
# Parent  73d07ba32f93234170145eb03b33b1d5be9d6a0f
checker: set up venv for linters

diff -r 73d07ba32f93 -r 69b4a7343f90 checker.py
--- a/checker.py	Mon Jun 13 11:08:16 2016 +0800
+++ b/checker.py	Mon Jun 13 11:10:56 2016 +0800
@@ -77,6 +77,18 @@
         if not run(['hg', 'log', '-r', '.', '-T', template], silent=True):
             ok = False
 
+    if ok:
+        print('# C&O task: setup')
+
+        venv = '../venv'
+        print_and_run(['virtualenv', venv])
+        pip = os.path.join(venv, 'bin', 'pip')
+        for linter in config['linters']:
+            if 'pip' in linter:
+                if not run([pip, 'install'] + linter['pip']):
+                    ok = False
+                    break
+
     print('# C&O task: cleanup')
     rmtree(tmp)