16
16
import os
17
17
import subprocess
18
18
19
+ from typing import Optional
20
+
19
21
logger = logging .getLogger (__name__ )
20
22
21
23
22
24
class RequirementsManager :
23
25
"""Manages dependency installation by detecting file types"""
24
26
25
- def capture_and_install_dependencies (self , dependencies : str = None ) -> str :
27
+ def capture_and_install_dependencies (self , dependencies : Optional [ str ] = None ) -> str :
26
28
"""Detects the type of file dependencies will be installed from
27
29
28
30
If a req.txt or conda.yml file is provided, it verifies their existence and
@@ -34,15 +36,15 @@ def capture_and_install_dependencies(self, dependencies: str = None) -> str:
34
36
Returns:
35
37
file path of the existing or generated dependencies file
36
38
"""
37
- dependencies = self ._detect_conda_env_and_local_dependencies ()
39
+ _dependencies = dependencies or self ._detect_conda_env_and_local_dependencies ()
38
40
39
41
# Dependencies specified as either req.txt or conda_env.yml
40
- if dependencies .endswith (".txt" ):
42
+ if _dependencies .endswith (".txt" ):
41
43
self ._install_requirements_txt ()
42
- elif dependencies .endswith (".yml" ):
44
+ elif _dependencies .endswith (".yml" ):
43
45
self ._update_conda_env_in_path ()
44
46
else :
45
- raise ValueError (f'Invalid dependencies provided: "{ dependencies } "' )
47
+ raise ValueError (f'Invalid dependencies provided: "{ _dependencies } "' )
46
48
47
49
def _install_requirements_txt (self ):
48
50
"""Install requirements.txt file using pip"""
@@ -81,7 +83,10 @@ def _detect_conda_env_and_local_dependencies(self) -> str:
81
83
conda_env_prefix = self ._get_active_conda_env_prefix ()
82
84
83
85
if conda_env_name is None and conda_env_prefix is None :
84
- raise ValueError ("No conda environment seems to be active." )
86
+ local_dependencies_path = os .path .join (os .getcwd (), "in_process_requirements.txt" )
87
+ logger .info (local_dependencies_path )
88
+
89
+ return local_dependencies_path
85
90
86
91
if conda_env_name == "base" :
87
92
logger .warning (
0 commit comments