mirror of
https://github.com/fedora-python/tox-current-env.git
synced 2024-12-23 16:46:14 +01:00
Own executor is not needed if we can override config
This commit is contained in:
parent
46fd9f0865
commit
d6cb357233
@ -6,8 +6,9 @@ import warnings
|
|||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from typing import Set
|
from typing import Set
|
||||||
|
|
||||||
|
from tox.config.loader.memory import MemoryLoader
|
||||||
from tox.execute.api import Execute
|
from tox.execute.api import Execute
|
||||||
from tox.execute.local_sub_process import LocalSubProcessExecuteInstance
|
from tox.execute.local_sub_process import LocalSubProcessExecutor
|
||||||
from tox.plugin import impl
|
from tox.plugin import impl
|
||||||
from tox.report import HandledError
|
from tox.report import HandledError
|
||||||
from tox.tox_env.python.api import PythonInfo
|
from tox.tox_env.python.api import PythonInfo
|
||||||
@ -74,6 +75,14 @@ def tox_add_core_config(core_conf, config):
|
|||||||
config.options.default_runner = "virtualenv"
|
config.options.default_runner = "virtualenv"
|
||||||
|
|
||||||
|
|
||||||
|
@impl
|
||||||
|
def tox_add_env_config(env_conf, config):
|
||||||
|
# This allows all external commands.
|
||||||
|
# All of them are extenal for us.
|
||||||
|
loader = MemoryLoader(allowlist_externals=["*"])
|
||||||
|
config.core.loaders.insert(0, loader)
|
||||||
|
|
||||||
|
|
||||||
class CurrentEnv(PythonRun):
|
class CurrentEnv(PythonRun):
|
||||||
def __init__(self, create_args):
|
def __init__(self, create_args):
|
||||||
self._executor = None
|
self._executor = None
|
||||||
@ -100,7 +109,7 @@ class CurrentEnv(PythonRun):
|
|||||||
@property
|
@property
|
||||||
def executor(self):
|
def executor(self):
|
||||||
if self._executor is None:
|
if self._executor is None:
|
||||||
self._executor = CurrentEnvRunExecutor(self.options.is_colored)
|
self._executor = LocalSubProcessExecutor(self.options.is_colored)
|
||||||
return self._executor
|
return self._executor
|
||||||
|
|
||||||
def _get_python(self, base_python):
|
def _get_python(self, base_python):
|
||||||
@ -149,20 +158,6 @@ class CurrentEnv(PythonRun):
|
|||||||
return sys.platform
|
return sys.platform
|
||||||
|
|
||||||
|
|
||||||
class CurrentEnvRunExecutor(Execute):
|
|
||||||
def build_instance(
|
|
||||||
self,
|
|
||||||
request,
|
|
||||||
options,
|
|
||||||
out,
|
|
||||||
err,
|
|
||||||
):
|
|
||||||
# Disable check for the external commands,
|
|
||||||
# all of them are external for us.
|
|
||||||
request.allow = None
|
|
||||||
return LocalSubProcessExecuteInstance(request, options, out, err)
|
|
||||||
|
|
||||||
|
|
||||||
class PrintEnv(CurrentEnv):
|
class PrintEnv(CurrentEnv):
|
||||||
def __init__(self, create_args):
|
def __init__(self, create_args):
|
||||||
super().__init__(create_args)
|
super().__init__(create_args)
|
||||||
|
Loading…
Reference in New Issue
Block a user