giotto-ai / giotto-tda

A high-performance topological machine learning toolbox in Python
https://giotto-ai.github.io/gtda-docs
Other
845 stars 173 forks source link

Temp fix for macOS CI failures by preventing automatic brew cleanup #513

Closed ulupo closed 3 years ago

ulupo commented 3 years ago

Since yesterday, Azure jobs for the macOS 10.14 machines have started to fail at the "Install [python] dependencies and dev environment" step. Python complains about the SSL module being missing, see e.g. https://dev.azure.com/maintainers/f3825528-0a61-43d7-87c2-e296dd6abb14/_apis/build/builds/3096/logs/50. The Azure VM image version was the same as two days ago when things worked, namely Current image version: '20200904.1'. After some investigation, it seemed that brew cleanup was corrupting some of the Python installations in the previous "Install system dependencies" step, see https://dev.azure.com/maintainers/Giotto/_build/results?buildId=3096&view=logs&j=e1e30141-6252-56cf-eccb-600499366ae7&t=3b015888-a459-5ae0-9425-e35a85d96e73. When the strategy matrix was reduced from 3 Python versions to just 1, the problem disappeared.

This PR provides a patch by setting the HOMEBREW_NO_CLEANUP_INSTALL flag to 1 to prevent brew from running cleanup automatically.

A ticket with Azure DevOps is open at: https://docs.microsoft.com/en-us/answers/questions/116675/python-ssl-module-suddenly-not-found-in-jobs-invol.html?childToView=116668#answer-116668 with my current understanding of the situation.