code: def _run_tox_env(self, env_name, extra_env_vars={}):
          
          projdir = self.projdir
          env = deepcopy(os.environ)
          env['PATH'] = self._fixed_path(projdir)
          env.update(extra_env_vars)
          cmd = [os.path.join(projdir, 'bin', 'tox'), '-e', env_name]
          logger.info(
              'Running tox environment %s: args="%s" cwd=%s '
              'timeout=1800', env_name, ' '.join(cmd), projdir
          )
          res = subprocess.run(
              cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT,
              cwd=projdir, timeout=1800, env=env
          )
          logger.info('tox process exited %d', res.returncode)
          if res.returncode != 0:
              logger.error(
                  'ERROR: tox environment %s exitcode %d',
                  env_name, res.returncode
              )
              logger.error(
                  'tox output:\n%s', res.stdout.decode()
              )
              res.check_returncode()
          return res.stdout.decode()
docs: Run the specified tox environment.
  
          :param env_name: name of the tox environment to run
          :type env_name: str
          :param extra_env_vars: additional variables to set in the environment
          :type extra_env_vars: dict
          :raises: RuntimeError
          :returns: combined STDOUT / STDERR
          :rtype: str