Skip to content

Commit

Permalink
Display a warning if use_docker evlauates to True but the python dock…
Browse files Browse the repository at this point in the history
…er package is not available. (microsoft#172)

Co-authored-by: Qingyun Wu <qingyun.wu@psu.edu>
  • Loading branch information
afourney and qingyun-wu committed Oct 9, 2023
1 parent 91aeacc commit 3b57a37
Showing 1 changed file with 10 additions and 1 deletion.
11 changes: 10 additions & 1 deletion autogen/code_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,7 @@ def execute_code(
timeout: Optional[int] = None,
filename: Optional[str] = None,
work_dir: Optional[str] = None,
use_docker: Optional[Union[List[str], str, bool]] = docker is not None,
use_docker: Optional[Union[List[str], str, bool]] = True,
lang: Optional[str] = "python",
) -> Tuple[int, str, str]:
"""Execute code in a docker container.
Expand Down Expand Up @@ -257,6 +257,15 @@ def execute_code(
logger.error(error_msg)
raise AssertionError(error_msg)

# Warn if docker was requested but cannot be provided. In this case
# the current behavior is to fall back to run natively, but this behavior
# is subject to change.
if use_docker and docker is None:
use_docker = False
logger.warning(
"execute_code was called with use_docker evaluating to True, but the python docker package is not available. Falling back to native code execution. Note: this fallback behavior is subject to change"
)

timeout = timeout or DEFAULT_TIMEOUT
original_filename = filename
if WIN32 and lang in ["sh", "shell"] and (not use_docker):
Expand Down

0 comments on commit 3b57a37

Please sign in to comment.