Skip to content

Add MacOS dependency build #58

Add MacOS dependency build

Add MacOS dependency build #58

# 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-12
steps:
- name: "Set up environment"
run: |
# We remove everything that comes pre-installed via brew 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)
brew install coreutils
- 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 /
- 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"
# This sets the minimum mac os version compatible for all built artifacts
MACOSX_DEPLOYMENT_TARGET: "10.12"
run: |
${DD_PYTHON3} -m pip install packaging
mkdir builder_root
${DD_PYTHON3} .builders/build.py --builder-root builder_root --python 3 out_py3
${DD_PYTHON3} .builders/build.py --builder-root builder_root --skip-setup --python 2 out_py2
- name: "Upload build result for offline testing and debugging"
uses: actions/upload-artifact@v4
with:
name: macos-deps
path: out_py3
retention-days: 1