From 7fe461f813ccb73a62d22b42aec0171a020738a7 Mon Sep 17 00:00:00 2001 From: Alex Lopez Date: Wed, 17 Jan 2024 15:05:27 +0100 Subject: [PATCH] Add workflow to test build on CI --- .builders/build.py | 2 +- .github/workflows/build-deps-macos.yml | 38 ++++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/build-deps-macos.yml diff --git a/.builders/build.py b/.builders/build.py index 52470253e3613f..564d5e06e4e49e 100644 --- a/.builders/build.py +++ b/.builders/build.py @@ -93,7 +93,7 @@ def build_macos(): env = { **os.environ, - 'DD_PREFIX_CACHE': args.cache_dir, + 'DD_PREFIX_CACHE': args.cache_dir or '', 'DD_MOUNT_DIR': mount_dir, } check_process( diff --git a/.github/workflows/build-deps-macos.yml b/.github/workflows/build-deps-macos.yml new file mode 100644 index 00000000000000..22739fc4e40f62 --- /dev/null +++ b/.github/workflows/build-deps-macos.yml @@ -0,0 +1,38 @@ +# Workflow for dev / testing purposes only, to be migrated to a common workflow alongside +# the rest of the deps build + +name: Build dependencies for mac OS + +on: + pull_request + +jobs: + build-deps-macos: + name: "Build wheels for integration dependencies for mac OS" + runs-on: macos-13 + steps: + - name: "Install Python(s)" + env: + # Despite the name, this is built for the macOS 11 SDK on arm64 and 10.9+ on intel + PYTHON3_DOWNLOAD_URL: "https://www.python.org/ftp/python/3.11.5/python-3.11.5-macos11.pkg" + PYTHON2_DOWNLOAD_URL: "https://www.python.org/ftp/python/2.7.18/python-2.7.18-macosx10.9.pkg" + run: | + curl "$PYTHON3_DOWNLOAD_URL" -o python3.pkg + sudo installer -pkg python3.pkg -target / + + curl "$PYTHON2_DOWNLOAD_URL" -o python2.pkg + sudo installer -pkg python2.pkg -target / + - name: "Remove preinstalled environment" + run: | + # We do this to avoid depending or shipping stuff that comes in the runner through brew + # to better control what might get shipped in the wheels via `delocate` + brew remove --force --ignore-dependencies $(brew list --formula) + - uses: actions/checkout@v4 + - name: "Run the build" + env: + DD_PYTHON3: "/Library/Frameworks/Python.framework/Versions/3.11/bin/python3" + DD_PYTHON2: "/Library/Frameworks/Python.framework/Versions/2.7/bin/python" + run: | + ${DD_PYTHON3} -m pip install packaging + cache_dir=$(mktemp -d -t 'cached.prefix') + ${DD_PYTHON3} .builders/build.py --python 3 --cache-dir "${cache_dir}" out_py3