From 1dedffb550791557c9c4aba10aeb68968174623c Mon Sep 17 00:00:00 2001
From: Henrik Levkowetz <henrik@levkowetz.com>
Date: Thu, 30 Jul 2020 15:33:24 +0000
Subject: [PATCH] Provide a local environment path for pyang, which is
 installed with pip and may not be available globally.  Fixes issue #3018.  -
 Legacy-Id: 18322

---
 ietf/submit/checkers.py | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/ietf/submit/checkers.py b/ietf/submit/checkers.py
index baa8f61b1..1f46e918c 100644
--- a/ietf/submit/checkers.py
+++ b/ietf/submit/checkers.py
@@ -211,6 +211,10 @@ class DraftYangChecker(object):
                 command = [ w for w in cmd_template.split() if not '=' in w ][0]
                 cmd_version = VersionInfo.objects.get(command=command).version
                 cmd = cmd_template.format(libs=modpath, model=path)
+                venv_path = os.environ.get('VIRTUAL_ENV') or os.path.join(os.getcwd(), 'env')
+                venv_bin = os.path.join(venv_path, 'bin')
+                if not venv_bin in os.environ.get('PATH', '').split(':'):
+                    os.environ['PATH'] = os.environ.get('PATH', '') + ":" + venv_bin
                 code, out, err = pipe(cmd)
                 out = out.decode('utf-8')
                 err = err.decode('utf-8')