mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
tools: Catch OSError which is raised when the tool is not available
Closes https://github.com/espressif/esp-idf/issues/7140
This commit is contained in:
parent
b0097bb64f
commit
d5d0c624d0
@ -843,12 +843,15 @@ def get_python_env_path():
|
|||||||
with open(version_file_path, "r") as version_file:
|
with open(version_file_path, "r") as version_file:
|
||||||
idf_version_str = version_file.read()
|
idf_version_str = version_file.read()
|
||||||
else:
|
else:
|
||||||
|
idf_version_str = ''
|
||||||
try:
|
try:
|
||||||
idf_version_str = subprocess.check_output(['git', 'describe'],
|
idf_version_str = subprocess.check_output(['git', 'describe'],
|
||||||
cwd=global_idf_path, env=os.environ).decode()
|
cwd=global_idf_path, env=os.environ).decode()
|
||||||
|
except OSError:
|
||||||
|
# OSError should cover FileNotFoundError and WindowsError
|
||||||
|
warn('Git was not found')
|
||||||
except subprocess.CalledProcessError as e:
|
except subprocess.CalledProcessError as e:
|
||||||
warn('Git describe was unsuccessul: {}'.format(e))
|
warn('Git describe was unsuccessul: {}'.format(e.output))
|
||||||
idf_version_str = ''
|
|
||||||
match = re.match(r'^v([0-9]+\.[0-9]+).*', idf_version_str)
|
match = re.match(r'^v([0-9]+\.[0-9]+).*', idf_version_str)
|
||||||
if match:
|
if match:
|
||||||
idf_version = match.group(1)
|
idf_version = match.group(1)
|
||||||
@ -1181,7 +1184,7 @@ def action_install_python_env(args): # type: ignore
|
|||||||
if os.path.exists(virtualenv_python):
|
if os.path.exists(virtualenv_python):
|
||||||
try:
|
try:
|
||||||
subprocess.check_call([virtualenv_python, '--version'], stdout=sys.stdout, stderr=sys.stderr)
|
subprocess.check_call([virtualenv_python, '--version'], stdout=sys.stdout, stderr=sys.stderr)
|
||||||
except subprocess.CalledProcessError:
|
except (OSError, subprocess.CalledProcessError):
|
||||||
# At this point we can reinstall the virtual environment if it is non-functional. This can happen at least
|
# At this point we can reinstall the virtual environment if it is non-functional. This can happen at least
|
||||||
# when the Python interpreter was removed which was used to create the virtual environment.
|
# when the Python interpreter was removed which was used to create the virtual environment.
|
||||||
reinstall = True
|
reinstall = True
|
||||||
|
Loading…
x
Reference in New Issue
Block a user