mirror of
https://github.com/clearml/clearml
synced 2025-05-08 14:54:28 +00:00
Add missing changes
This commit is contained in:
parent
d3de2151e8
commit
8076e387ab
@ -697,14 +697,7 @@ class ScriptInfo(object):
|
|||||||
log_history = False
|
log_history = False
|
||||||
colab_name = None
|
colab_name = None
|
||||||
# check if this is google.colab, then there is no local file
|
# check if this is google.colab, then there is no local file
|
||||||
# noinspection PyBroadException
|
is_google_colab = ScriptInfo.is_google_colab()
|
||||||
try:
|
|
||||||
# noinspection PyPackageRequirements
|
|
||||||
from IPython import get_ipython
|
|
||||||
if get_ipython() and 'google.colab' in get_ipython().extension_manager.loaded:
|
|
||||||
is_google_colab = True
|
|
||||||
except Exception:
|
|
||||||
pass
|
|
||||||
|
|
||||||
if is_google_colab:
|
if is_google_colab:
|
||||||
# check if we can get the notebook
|
# check if we can get the notebook
|
||||||
@ -978,6 +971,7 @@ class ScriptInfo(object):
|
|||||||
else:
|
else:
|
||||||
script_requirements = None
|
script_requirements = None
|
||||||
|
|
||||||
|
ide = ScriptInfo.get_ide(jupyter_status=isinstance(jupyter_filepath, str))
|
||||||
script_info = dict(
|
script_info = dict(
|
||||||
repository=remove_user_pass_from_url(repo_info.url),
|
repository=remove_user_pass_from_url(repo_info.url),
|
||||||
branch=repo_info.branch,
|
branch=repo_info.branch,
|
||||||
@ -985,6 +979,7 @@ class ScriptInfo(object):
|
|||||||
entry_point=entry_point,
|
entry_point=entry_point,
|
||||||
working_dir=working_dir,
|
working_dir=working_dir,
|
||||||
diff=diff,
|
diff=diff,
|
||||||
|
ide=ide,
|
||||||
requirements={'pip': requirements, 'conda': conda_requirements} if requirements else None,
|
requirements={'pip': requirements, 'conda': conda_requirements} if requirements else None,
|
||||||
binary='python{}.{}'.format(sys.version_info.major, sys.version_info.minor),
|
binary='python{}.{}'.format(sys.version_info.major, sys.version_info.minor),
|
||||||
repo_root=repo_root,
|
repo_root=repo_root,
|
||||||
@ -1092,6 +1087,80 @@ class ScriptInfo(object):
|
|||||||
pass
|
pass
|
||||||
return script_dict
|
return script_dict
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def is_google_colab():
|
||||||
|
# type: () -> bool
|
||||||
|
""" Know if the script is running from Google Colab """
|
||||||
|
|
||||||
|
# noinspection PyBroadException
|
||||||
|
try:
|
||||||
|
# noinspection PyPackageRequirements
|
||||||
|
from IPython import get_ipython
|
||||||
|
if get_ipython() and 'google.colab' in get_ipython().extension_manager.loaded:
|
||||||
|
return True
|
||||||
|
except Exception:
|
||||||
|
pass
|
||||||
|
return False
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def is_vscode():
|
||||||
|
# type: () -> bool
|
||||||
|
""" Know if the script is running from VSCode """
|
||||||
|
|
||||||
|
if os.environ.get("TERM_PROGRAM") == "vscode":
|
||||||
|
return True
|
||||||
|
for key in os.environ.keys():
|
||||||
|
if key.startswith("VSCODE_"):
|
||||||
|
return True
|
||||||
|
return False
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def is_pycharm():
|
||||||
|
# type: () -> bool
|
||||||
|
""" Know if the script is running from PyCharm """
|
||||||
|
|
||||||
|
# youtrack.jetbrains.com ISSUE #PY-4853 added this variables
|
||||||
|
if os.environ.get("PYCHARM_HOSTED"):
|
||||||
|
return True
|
||||||
|
if os.environ.get("TERMINAL_EMULATOR") == "JetBrains-JediTerm":
|
||||||
|
return True
|
||||||
|
return False
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def is_jupyter():
|
||||||
|
# type: () -> bool
|
||||||
|
""" Know if the script is running from Jupyter """
|
||||||
|
|
||||||
|
if isinstance(ScriptInfo._get_jupyter_notebook_filename(), str):
|
||||||
|
return True
|
||||||
|
return False
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def get_ide(jupyter_status=False):
|
||||||
|
"""
|
||||||
|
Get the details of ide script is running from
|
||||||
|
|
||||||
|
:param jupyter_status: Jupyter status (default False)
|
||||||
|
:type jupyter_status: bool
|
||||||
|
|
||||||
|
:return: Name of the IDE
|
||||||
|
:rtype: str
|
||||||
|
"""
|
||||||
|
|
||||||
|
if ScriptInfo.is_pycharm():
|
||||||
|
ide_str = "PyCharm"
|
||||||
|
elif ScriptInfo.is_vscode():
|
||||||
|
ide_str = "VSCode"
|
||||||
|
elif ScriptInfo.is_google_colab():
|
||||||
|
ide_str = "Google Colab"
|
||||||
|
else:
|
||||||
|
ide_str = "Other"
|
||||||
|
|
||||||
|
if jupyter_status:
|
||||||
|
ide_str = "{} - Jupyter".format(ide_str)
|
||||||
|
|
||||||
|
return ide_str
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def close(cls):
|
def close(cls):
|
||||||
_JupyterObserver.close()
|
_JupyterObserver.close()
|
||||||
|
Loading…
Reference in New Issue
Block a user