diff --git a/.azure-pipelines/azure-pipelines-osx.yml b/.azure-pipelines/azure-pipelines-osx.yml
index 069e795..b5f800b 100755
--- a/.azure-pipelines/azure-pipelines-osx.yml
+++ b/.azure-pipelines/azure-pipelines-osx.yml
@@ -12,65 +12,122 @@ jobs:
CONFIG: osx_64_python3.10.____cpython
UPLOAD_PACKAGES: 'True'
VMIMAGE: macOS-15
+ build_workspace_dir: ~/miniforge3/conda-bld
+ free_disk_space: quick
+ pagefile_size: 0
+ resize_partitions: false
store_build_artifacts: false
+ tools_install_dir: ~/miniforge3
osx_64_python3.11.____cpython:
CONFIG: osx_64_python3.11.____cpython
UPLOAD_PACKAGES: 'True'
VMIMAGE: macOS-15
+ build_workspace_dir: ~/miniforge3/conda-bld
+ free_disk_space: quick
+ pagefile_size: 0
+ resize_partitions: false
store_build_artifacts: false
+ tools_install_dir: ~/miniforge3
osx_64_python3.12.____cpython:
CONFIG: osx_64_python3.12.____cpython
UPLOAD_PACKAGES: 'True'
VMIMAGE: macOS-15
+ build_workspace_dir: ~/miniforge3/conda-bld
+ free_disk_space: quick
+ pagefile_size: 0
+ resize_partitions: false
store_build_artifacts: false
+ tools_install_dir: ~/miniforge3
osx_64_python3.13.____cp313:
CONFIG: osx_64_python3.13.____cp313
UPLOAD_PACKAGES: 'True'
VMIMAGE: macOS-15
+ build_workspace_dir: ~/miniforge3/conda-bld
+ free_disk_space: quick
+ pagefile_size: 0
+ resize_partitions: false
store_build_artifacts: false
+ tools_install_dir: ~/miniforge3
osx_64_python3.14.____cp314:
CONFIG: osx_64_python3.14.____cp314
UPLOAD_PACKAGES: 'True'
VMIMAGE: macOS-15
+ build_workspace_dir: ~/miniforge3/conda-bld
+ free_disk_space: quick
+ pagefile_size: 0
+ resize_partitions: false
store_build_artifacts: false
+ tools_install_dir: ~/miniforge3
osx_arm64_python3.10.____cpython:
CONFIG: osx_arm64_python3.10.____cpython
UPLOAD_PACKAGES: 'True'
VMIMAGE: macOS-15
+ build_workspace_dir: ~/miniforge3/conda-bld
+ free_disk_space: quick
+ pagefile_size: 0
+ resize_partitions: false
store_build_artifacts: false
+ tools_install_dir: ~/miniforge3
osx_arm64_python3.11.____cpython:
CONFIG: osx_arm64_python3.11.____cpython
UPLOAD_PACKAGES: 'True'
VMIMAGE: macOS-15
+ build_workspace_dir: ~/miniforge3/conda-bld
+ free_disk_space: quick
+ pagefile_size: 0
+ resize_partitions: false
store_build_artifacts: false
+ tools_install_dir: ~/miniforge3
osx_arm64_python3.12.____cpython:
CONFIG: osx_arm64_python3.12.____cpython
UPLOAD_PACKAGES: 'True'
VMIMAGE: macOS-15
+ build_workspace_dir: ~/miniforge3/conda-bld
+ free_disk_space: quick
+ pagefile_size: 0
+ resize_partitions: false
store_build_artifacts: false
+ tools_install_dir: ~/miniforge3
osx_arm64_python3.13.____cp313:
CONFIG: osx_arm64_python3.13.____cp313
UPLOAD_PACKAGES: 'True'
VMIMAGE: macOS-15
+ build_workspace_dir: ~/miniforge3/conda-bld
+ free_disk_space: quick
+ pagefile_size: 0
+ resize_partitions: false
store_build_artifacts: false
+ tools_install_dir: ~/miniforge3
osx_arm64_python3.14.____cp314:
CONFIG: osx_arm64_python3.14.____cp314
UPLOAD_PACKAGES: 'True'
VMIMAGE: macOS-15
+ build_workspace_dir: ~/miniforge3/conda-bld
+ free_disk_space: quick
+ pagefile_size: 0
+ resize_partitions: false
store_build_artifacts: false
+ tools_install_dir: ~/miniforge3
timeoutInMinutes: 360
variables: {}
steps:
# TODO: Fast finish on azure pipelines?
+ - script: |
+ .scripts/free_disk_space.sh "$(free_disk_space)"
+ env:
+ OS: macos
+ displayName: Manage disk space
- script: |
export CI=azure
+ export CONDA_BLD_PATH=$(build_workspace_dir)
+ export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME})
+ export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME
+ export MINIFORGE_HOME=$(tools_install_dir)
+ export OSX_FORCE_SDK_DOWNLOAD="1"
export flow_run_id=azure_$(Build.BuildNumber).$(System.JobAttempt)
export remote_url=$(Build.Repository.Uri)
export sha=$(Build.SourceVersion)
- export OSX_FORCE_SDK_DOWNLOAD="1"
- export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME
- export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME})
if [[ "${BUILD_REASON:-}" == "PullRequest" ]]; then
export IS_PR_BUILD="True"
else
diff --git a/.azure-pipelines/azure-pipelines-win.yml b/.azure-pipelines/azure-pipelines-win.yml
index 9f05dec..6d73fd9 100755
--- a/.azure-pipelines/azure-pipelines-win.yml
+++ b/.azure-pipelines/azure-pipelines-win.yml
@@ -11,45 +11,72 @@ jobs:
win_64_python3.10.____cpython:
CONFIG: win_64_python3.10.____cpython
UPLOAD_PACKAGES: 'True'
+ build_workspace_dir: C:\bld\
+ free_disk_space: quick
+ pagefile_size: 0
+ resize_partitions: false
store_build_artifacts: false
+ tools_install_dir: C:\Miniforge
win_64_python3.11.____cpython:
CONFIG: win_64_python3.11.____cpython
UPLOAD_PACKAGES: 'True'
+ build_workspace_dir: C:\bld\
+ free_disk_space: quick
+ pagefile_size: 0
+ resize_partitions: false
store_build_artifacts: false
+ tools_install_dir: C:\Miniforge
win_64_python3.12.____cpython:
CONFIG: win_64_python3.12.____cpython
UPLOAD_PACKAGES: 'True'
+ build_workspace_dir: C:\bld\
+ free_disk_space: quick
+ pagefile_size: 0
+ resize_partitions: false
store_build_artifacts: false
+ tools_install_dir: C:\Miniforge
win_64_python3.13.____cp313:
CONFIG: win_64_python3.13.____cp313
UPLOAD_PACKAGES: 'True'
+ build_workspace_dir: C:\bld\
+ free_disk_space: quick
+ pagefile_size: 0
+ resize_partitions: false
store_build_artifacts: false
+ tools_install_dir: C:\Miniforge
win_64_python3.14.____cp314:
CONFIG: win_64_python3.14.____cp314
UPLOAD_PACKAGES: 'True'
+ build_workspace_dir: C:\bld\
+ free_disk_space: quick
+ pagefile_size: 0
+ resize_partitions: false
store_build_artifacts: false
+ tools_install_dir: C:\Miniforge
timeoutInMinutes: 360
variables:
- CONDA_BLD_PATH: C:\bld\
- MINIFORGE_HOME: C:\Miniforge
UPLOAD_TEMP: D:\\tmp
steps:
-
+ - bash: |
+ .scripts/free_disk_space.sh "$(free_disk_space)"
+ displayName: Manage disk space
+ env:
+ OS: windows
- script: |
call ".scripts\run_win_build.bat"
displayName: Run Windows build
env:
- MINIFORGE_HOME: $(MINIFORGE_HOME)
- CONDA_BLD_PATH: $(CONDA_BLD_PATH)
- PYTHONUNBUFFERED: 1
- CONFIG: $(CONFIG)
CI: azure
+ CONFIG: $(CONFIG)
+ CONDA_BLD_PATH: $(build_workspace_dir)
+ MINIFORGE_HOME: $(tools_install_dir)
+ PYTHONUNBUFFERED: 1
+ UPLOAD_PACKAGES: $(UPLOAD_PACKAGES)
+ UPLOAD_TEMP: $(UPLOAD_TEMP)
flow_run_id: azure_$(Build.BuildNumber).$(System.JobAttempt)
remote_url: $(Build.Repository.Uri)
sha: $(Build.SourceVersion)
- UPLOAD_PACKAGES: $(UPLOAD_PACKAGES)
- UPLOAD_TEMP: $(UPLOAD_TEMP)
BINSTAR_TOKEN: $(BINSTAR_TOKEN)
FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN)
STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN)
diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml
index c126709..957c888 100644
--- a/.github/workflows/conda-build.yml
+++ b/.github/workflows/conda-build.yml
@@ -23,118 +23,192 @@ jobs:
matrix:
include:
- CONFIG: linux_64_python3.10.____cpython
+ DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
STORE_BUILD_ARTIFACTS: False
UPLOAD_PACKAGES: True
+ build_workspace_dir: build_artifacts
+ docker_run_args:
+ free_disk_space: skip
os: ubuntu
+ pagefile_size: 0
+ resize_partitions: False
runs_on: ['ubuntu-latest']
- DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
+ tools_install_dir: ~/miniforge3
- CONFIG: linux_64_python3.11.____cpython
+ DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
STORE_BUILD_ARTIFACTS: False
UPLOAD_PACKAGES: True
+ build_workspace_dir: build_artifacts
+ docker_run_args:
+ free_disk_space: skip
os: ubuntu
+ pagefile_size: 0
+ resize_partitions: False
runs_on: ['ubuntu-latest']
- DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
+ tools_install_dir: ~/miniforge3
- CONFIG: linux_64_python3.12.____cpython
+ DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
STORE_BUILD_ARTIFACTS: False
UPLOAD_PACKAGES: True
+ build_workspace_dir: build_artifacts
+ docker_run_args:
+ free_disk_space: skip
os: ubuntu
+ pagefile_size: 0
+ resize_partitions: False
runs_on: ['ubuntu-latest']
- DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
+ tools_install_dir: ~/miniforge3
- CONFIG: linux_64_python3.13.____cp313
+ DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
STORE_BUILD_ARTIFACTS: False
UPLOAD_PACKAGES: True
+ build_workspace_dir: build_artifacts
+ docker_run_args:
+ free_disk_space: skip
os: ubuntu
+ pagefile_size: 0
+ resize_partitions: False
runs_on: ['ubuntu-latest']
- DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
+ tools_install_dir: ~/miniforge3
- CONFIG: linux_64_python3.14.____cp314
+ DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
STORE_BUILD_ARTIFACTS: False
UPLOAD_PACKAGES: True
+ build_workspace_dir: build_artifacts
+ docker_run_args:
+ free_disk_space: skip
os: ubuntu
+ pagefile_size: 0
+ resize_partitions: False
runs_on: ['ubuntu-latest']
- DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
+ tools_install_dir: ~/miniforge3
- CONFIG: linux_aarch64_python3.10.____cpython
+ DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
STORE_BUILD_ARTIFACTS: False
UPLOAD_PACKAGES: True
+ build_workspace_dir: build_artifacts
+ docker_run_args:
+ free_disk_space: skip
os: ubuntu
+ pagefile_size: 0
+ resize_partitions: False
runs_on: ['ubuntu-latest']
- DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
+ tools_install_dir: ~/miniforge3
- CONFIG: linux_aarch64_python3.11.____cpython
+ DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
STORE_BUILD_ARTIFACTS: False
UPLOAD_PACKAGES: True
+ build_workspace_dir: build_artifacts
+ docker_run_args:
+ free_disk_space: skip
os: ubuntu
+ pagefile_size: 0
+ resize_partitions: False
runs_on: ['ubuntu-latest']
- DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
+ tools_install_dir: ~/miniforge3
- CONFIG: linux_aarch64_python3.12.____cpython
+ DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
STORE_BUILD_ARTIFACTS: False
UPLOAD_PACKAGES: True
+ build_workspace_dir: build_artifacts
+ docker_run_args:
+ free_disk_space: skip
os: ubuntu
+ pagefile_size: 0
+ resize_partitions: False
runs_on: ['ubuntu-latest']
- DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
+ tools_install_dir: ~/miniforge3
- CONFIG: linux_aarch64_python3.13.____cp313
+ DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
STORE_BUILD_ARTIFACTS: False
UPLOAD_PACKAGES: True
+ build_workspace_dir: build_artifacts
+ docker_run_args:
+ free_disk_space: skip
os: ubuntu
+ pagefile_size: 0
+ resize_partitions: False
runs_on: ['ubuntu-latest']
- DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
+ tools_install_dir: ~/miniforge3
- CONFIG: linux_aarch64_python3.14.____cp314
+ DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
STORE_BUILD_ARTIFACTS: False
UPLOAD_PACKAGES: True
+ build_workspace_dir: build_artifacts
+ docker_run_args:
+ free_disk_space: skip
os: ubuntu
+ pagefile_size: 0
+ resize_partitions: False
runs_on: ['ubuntu-latest']
- DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
+ tools_install_dir: ~/miniforge3
steps:
- name: Checkout code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
+ - name: Configure binfmt_misc
+ if: matrix.os == 'ubuntu'
+ shell: bash
+ run: |
+ if [[ "$(uname -m)" == "x86_64" ]]; then
+ docker run --rm --privileged multiarch/qemu-user-static:register --reset --credential yes
+ fi
- name: Build on Linux
id: build-linux
if: matrix.os == 'ubuntu'
env:
+ CI: github_actions
+ CONDA_BLD_PATH: ${{ matrix.build_workspace_dir }}
+ CONDA_FORGE_DOCKER_RUN_ARGS: ${{ matrix.docker_run_args }}
CONFIG: ${{ matrix.CONFIG }}
- UPLOAD_PACKAGES: ${{ matrix.UPLOAD_PACKAGES }}
+ MINIFORGE_HOME: ${{ matrix.tools_install_dir }}
DOCKER_IMAGE: ${{ matrix.DOCKER_IMAGE }}
- CI: github_actions
- CONDA_FORGE_DOCKER_RUN_ARGS: "${{ matrix.CONDA_FORGE_DOCKER_RUN_ARGS }}"
+ UPLOAD_PACKAGES: ${{ matrix.UPLOAD_PACKAGES }}
+ RATTLER_BUILD_COLOR: always
+ RATTLER_BUILD_ENABLE_GITHUB_INTEGRATION: 'true'
BINSTAR_TOKEN: ${{ secrets.BINSTAR_TOKEN }}
FEEDSTOCK_TOKEN: ${{ secrets.FEEDSTOCK_TOKEN }}
STAGING_BINSTAR_TOKEN: ${{ secrets.STAGING_BINSTAR_TOKEN }}
shell: bash
run: |
- if [[ "$(uname -m)" == "x86_64" ]]; then
- echo "::group::Configure binfmt_misc"
- docker run --rm --privileged multiarch/qemu-user-static:register --reset --credential yes
- fi
+ export CONDA_BLD_PATH="${CONDA_BLD_PATH/#~/${HOME}}"
+ export FEEDSTOCK_NAME="$(basename $GITHUB_REPOSITORY)"
+ export GIT_BRANCH="$(basename $GITHUB_REF)"
+ export MINIFORGE_HOME="${MINIFORGE_HOME/#~/${HOME}}"
export flow_run_id="github_$GITHUB_RUN_ID"
export remote_url="https://github.com/$GITHUB_REPOSITORY"
export sha="$GITHUB_SHA"
- export FEEDSTOCK_NAME="$(basename $GITHUB_REPOSITORY)"
- export GIT_BRANCH="$(basename $GITHUB_REF)"
if [[ "${GITHUB_EVENT_NAME}" == "pull_request" ]]; then
export IS_PR_BUILD="True"
else
export IS_PR_BUILD="False"
fi
- echo "::endgroup::"
./.scripts/run_docker_build.sh
- name: Build on macOS
id: build-macos
if: matrix.os == 'macos'
env:
+ CI: github_actions
+ CONDA_BLD_PATH: ${{ matrix.build_workspace_dir }}
CONFIG: ${{ matrix.CONFIG }}
+ MINIFORGE_HOME: ${{ matrix.tools_install_dir }}
UPLOAD_PACKAGES: ${{ matrix.UPLOAD_PACKAGES }}
- CI: github_actions
+ RATTLER_BUILD_COLOR: always
+ RATTLER_BUILD_ENABLE_GITHUB_INTEGRATION: 'true'
BINSTAR_TOKEN: ${{ secrets.BINSTAR_TOKEN }}
FEEDSTOCK_TOKEN: ${{ secrets.FEEDSTOCK_TOKEN }}
STAGING_BINSTAR_TOKEN: ${{ secrets.STAGING_BINSTAR_TOKEN }}
shell: bash
run: |
+ export CONDA_BLD_PATH="${CONDA_BLD_PATH/#~/${HOME}}"
+ export FEEDSTOCK_NAME="$(basename $GITHUB_REPOSITORY)"
+ export GIT_BRANCH="$(basename $GITHUB_REF)"
+ export MINIFORGE_HOME="${MINIFORGE_HOME/#~/${HOME}}"
export flow_run_id="github_$GITHUB_RUN_ID"
export remote_url="https://github.com/$GITHUB_REPOSITORY"
export sha="$GITHUB_SHA"
- export FEEDSTOCK_NAME="$(basename $GITHUB_REPOSITORY)"
- export GIT_BRANCH="$(basename $GITHUB_REF)"
if [[ "${GITHUB_EVENT_NAME}" == "pull_request" ]]; then
export IS_PR_BUILD="True"
else
@@ -152,14 +226,14 @@ jobs:
set "sha=%GITHUB_SHA%"
call ".scripts\run_win_build.bat"
env:
- # default value; make it explicit, as it needs to match with artefact
- # generation below. Not configurable for now, can be revisited later
- CONDA_BLD_PATH: C:\bld
- MINIFORGE_HOME: ${{ contains(runner.arch, 'ARM') && 'C' || 'D' }}:\Miniforge
- PYTHONUNBUFFERED: 1
- CONFIG: ${{ matrix.CONFIG }}
CI: github_actions
+ CONDA_BLD_PATH: ${{ matrix.build_workspace_dir }}
+ CONFIG: ${{ matrix.CONFIG }}
+ MINIFORGE_HOME: ${{ matrix.tools_install_dir }}
+ PYTHONUNBUFFERED: 1
UPLOAD_PACKAGES: ${{ matrix.UPLOAD_PACKAGES }}
+ RATTLER_BUILD_COLOR: always
+ RATTLER_BUILD_ENABLE_GITHUB_INTEGRATION: 'true'
BINSTAR_TOKEN: ${{ secrets.BINSTAR_TOKEN }}
FEEDSTOCK_TOKEN: ${{ secrets.FEEDSTOCK_TOKEN }}
STAGING_BINSTAR_TOKEN: ${{ secrets.STAGING_BINSTAR_TOKEN }}
\ No newline at end of file
diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh
index c6ce254..ffecbfa 100755
--- a/.scripts/build_steps.sh
+++ b/.scripts/build_steps.sh
@@ -69,16 +69,37 @@ if [[ -f "${FEEDSTOCK_ROOT}/LICENSE.txt" ]]; then
fi
if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then
- echo "rattler-build currently doesn't support debug mode"
+ # differences between conda-build vs. rattler-build
+ # - 1 step (conda debug + manually open shell) vs. 2 step (rb debug {setup, shell})
+ # - recipe is positional vs. --recipe "${RECIPE_ROOT}"
+ # - --output-id vs. --output-name
+ # - --clobber-file vs. none
+ # - none vs. --target-platform
+ export CONDA_BLD_PATH="${CONDA_BLD_PATH:-${FEEDSTOCK_ROOT}/build_artifacts}"
+ rattler-build debug setup \
+ --recipe "${RECIPE_ROOT}" \
+ -m "${CI_SUPPORT}/${CONFIG}.yaml" \
+ ${EXTRA_CB_OPTIONS:-} \
+ ${BUILD_OUTPUT_ID:+--output-name "${BUILD_OUTPUT_ID}"} \
+ --target-platform "${HOST_PLATFORM}"
+
+ rattler-build debug shell
else
-
- rattler-build build --recipe "${RECIPE_ROOT}" \
- -m "${CI_SUPPORT}/${CONFIG}.yaml" \
- ${EXTRA_CB_OPTIONS:-} \
- --target-platform "${HOST_PLATFORM}" \
- --extra-meta flow_run_id="${flow_run_id:-}" \
- --extra-meta remote_url="${remote_url:-}" \
- --extra-meta sha="${sha:-}"
+ # differences between conda-build vs. rattler-build
+ # - recipe is positional vs. --recipe "${RECIPE_ROOT}"
+ # - --suppress-variables vs. none
+ # - --clobber-file vs. none
+ # - none vs. --target-platform
+ # - --extra-meta a=b c=d vs. --extra-meta a=b --extra-meta c=d
+
+ rattler-build build \
+ --recipe "${RECIPE_ROOT}" \
+ -m "${CI_SUPPORT}/${CONFIG}.yaml" \
+ ${EXTRA_CB_OPTIONS:-} \
+ --target-platform "${HOST_PLATFORM}" \
+ --extra-meta flow_run_id="${flow_run_id:-}" \
+ --extra-meta remote_url="${remote_url:-}" \
+ --extra-meta sha="${sha:-}"
( startgroup "Inspecting artifacts" ) 2> /dev/null
# inspect_artifacts was only added in conda-forge-ci-setup 4.9.4
diff --git a/.scripts/free_disk_space.sh b/.scripts/free_disk_space.sh
new file mode 100755
index 0000000..5c716a9
--- /dev/null
+++ b/.scripts/free_disk_space.sh
@@ -0,0 +1,62 @@
+#!/usr/bin/env bash
+
+set -ex
+
+FREE_DISK_SPACE=${1}
+
+if [[ ${FREE_DISK_SPACE} == skip ]]; then
+ exit 0
+fi
+
+df -h
+
+case ${OS} in
+ ubuntu)
+ DIRS_TO_REMOVE=(
+ /opt/ghc
+ /opt/hostedtoolcache
+ /usr/lib/jvm
+ /usr/local/.ghcup
+ /usr/local/lib/android
+ /usr/local/share/powershell
+ /usr/share/dotnet
+ /usr/share/swift
+ )
+
+ sudo rm -rf "${DIRS_TO_REMOVE[@]}"
+
+ if type apt-get; then
+ BROWSERS="firefox google-chrome-stable microsoft-edge-stable"
+ BROWSERS_TO_REMOVE=$(dpkg --get-selections $BROWSERS 2>/dev/null | awk '{print $1}')
+ if [[ -n ${BROWSERS_TO_REMOVE} ]]; then
+ sudo apt-get remove --purge -y $BROWSERS_TO_REMOVE
+ fi
+
+ sudo apt-get autoremove -y >& /dev/null
+ sudo apt-get autoclean -y >& /dev/null
+ fi
+
+ if [[ ${FREE_DISK_SPACE} == max ]] && type docker; then
+ sudo docker image prune --all --force
+ fi
+ ;;
+ macos)
+ DIRS_TO_REMOVE=(
+ /Users/runner/Library/Android
+ /Users/runner/.dotnet
+ /Users/runner/hostedtoolcache
+ )
+ rm -rf "${DIRS_TO_REMOVE[@]}"
+ ;;
+ windows)
+ DIRS_TO_REMOVE=(
+ C:/hostedtoolcache/windows
+ C:/Android
+ )
+
+ # rm is one of the fastest methods to remove files on Windows
+ rm -rf "${DIRS_TO_REMOVE[@]}"
+ ;;
+esac
+
+df -h
diff --git a/.scripts/run_docker_build.sh b/.scripts/run_docker_build.sh
index 10d6a2a..17d983f 100755
--- a/.scripts/run_docker_build.sh
+++ b/.scripts/run_docker_build.sh
@@ -96,6 +96,14 @@ if [ "${DOCKER_EXECUTABLE}" = "podman" ]; then
fi
fi
+# When running on GitHub Actions, mount the step summary file into the container
+# and point GITHUB_STEP_SUMMARY at it so that rattler-build's GitHub integration
+# can write its summary. GitHub writes the file out to the job summary after the
+# step finishes.
+if [[ -n "${GITHUB_STEP_SUMMARY:-}" ]]; then
+ DOCKER_RUN_ARGS="${DOCKER_RUN_ARGS} -v ${GITHUB_STEP_SUMMARY}:/home/conda/github_step_summary:rw${VOLUME_SUFFIX},delegated -e GITHUB_STEP_SUMMARY=/home/conda/github_step_summary"
+fi
+
( endgroup "Configure Docker" ) 2> /dev/null
( startgroup "Start Docker" ) 2> /dev/null
@@ -107,17 +115,20 @@ ${DOCKER_EXECUTABLE} pull "${DOCKER_IMAGE}"
${DOCKER_EXECUTABLE} run ${DOCKER_RUN_ARGS} \
-v "${RECIPE_ROOT}":/home/conda/recipe_root:rw${VOLUME_SUFFIX},delegated \
-v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw${VOLUME_SUFFIX},delegated \
+ -e BUILD_OUTPUT_ID \
+ -e BUILD_WITH_CONDA_DEBUG \
+ -e CI \
-e CONFIG \
+ -e CPU_COUNT \
+ -e FEEDSTOCK_NAME \
+ -e GIT_BRANCH \
+ -e GITHUB_ACTIONS \
-e HOST_USER_ID \
- -e UPLOAD_PACKAGES \
-e IS_PR_BUILD \
- -e GIT_BRANCH \
+ -e RATTLER_BUILD_COLOR \
+ -e RATTLER_BUILD_ENABLE_GITHUB_INTEGRATION \
-e UPLOAD_ON_BRANCH \
- -e CI \
- -e FEEDSTOCK_NAME \
- -e CPU_COUNT \
- -e BUILD_WITH_CONDA_DEBUG \
- -e BUILD_OUTPUT_ID \
+ -e UPLOAD_PACKAGES \
-e flow_run_id \
-e remote_url \
-e sha \
diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh
index 463cbc8..6a16132 100755
--- a/.scripts/run_osx_build.sh
+++ b/.scripts/run_osx_build.sh
@@ -63,7 +63,7 @@ if [[ "${OSX_SDK_DIR:-}" == "" ]]; then
/usr/bin/sudo chown "${USER}" "${OSX_SDK_DIR}"
fi
else
- if tmpf=$(mktemp -p "$OSX_SDK_DIR" tmp.XXXXXXXX 2>/dev/null); then
+ if tmpf=$(mktemp "$OSX_SDK_DIR"/tmp.XXXXXXXX 2>/dev/null); then
rm -f "$tmpf"
echo "OSX_SDK_DIR is writeable without sudo, continuing"
else
@@ -84,7 +84,15 @@ if [[ -f LICENSE.txt ]]; then
fi
if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then
- echo "rattler-build does not currently support debug mode"
+ export CONDA_BLD_PATH="${CONDA_BLD_PATH:-${FEEDSTOCK_ROOT:-$PWD}/build_artifacts}"
+ rattler-build debug setup \
+ --recipe ./recipe \
+ -m ./.ci_support/${CONFIG}.yaml \
+ --target-platform "${HOST_PLATFORM}" \
+ ${BUILD_OUTPUT_ID:+--output-name "${BUILD_OUTPUT_ID}"} \
+ ${EXTRA_CB_OPTIONS:-}
+
+ rattler-build debug shell
else
if [[ "${HOST_PLATFORM}" != "${BUILD_PLATFORM}" ]]; then
diff --git a/README.md b/README.md
index b761bc3..00b45bb 100644
--- a/README.md
+++ b/README.md
@@ -13,7 +13,14 @@ Current build status
====================
-
+
+ | GitHub Actions |
+
+
+
+
+ |
+
| Azure |
@@ -27,76 +34,6 @@ Current build status
| Variant | Status |
- | linux_64_python3.10.____cpython |
-
-
-
-
- |
-
- | linux_64_python3.11.____cpython |
-
-
-
-
- |
-
- | linux_64_python3.12.____cpython |
-
-
-
-
- |
-
- | linux_64_python3.13.____cp313 |
-
-
-
-
- |
-
- | linux_64_python3.14.____cp314 |
-
-
-
-
- |
-
- | linux_aarch64_python3.10.____cpython |
-
-
-
-
- |
-
- | linux_aarch64_python3.11.____cpython |
-
-
-
-
- |
-
- | linux_aarch64_python3.12.____cpython |
-
-
-
-
- |
-
- | linux_aarch64_python3.13.____cp313 |
-
-
-
-
- |
-
- | linux_aarch64_python3.14.____cp314 |
-
-
-
-
- |
-
| osx_64_python3.10.____cpython |
@@ -131,41 +68,6 @@ Current build status
|
-
- | osx_arm64_python3.10.____cpython |
-
-
-
-
- |
-
- | osx_arm64_python3.11.____cpython |
-
-
-
-
- |
-
- | osx_arm64_python3.12.____cpython |
-
-
-
-
- |
-
- | osx_arm64_python3.13.____cp313 |
-
-
-
-
- |
-
- | osx_arm64_python3.14.____cp314 |
-
-
-
-
- |
| win_64_python3.10.____cpython |
diff --git a/build-locally.py b/build-locally.py
index 05493e4..3beb68c 100755
--- a/build-locally.py
+++ b/build-locally.py
@@ -98,7 +98,10 @@ def main(args=None):
p.add_argument(
"--debug",
action="store_true",
- help="Setup debug environment using `conda debug`",
+ help=(
+ "Setup debug environment using `conda debug` "
+ "(or `rattler-build debug` for rattler-build recipes)"
+ ),
)
p.add_argument("--output-id", help="If running debug, specify the output to setup.")
diff --git a/pixi.toml b/pixi.toml
index 007c6e8..47db4c4 100644
--- a/pixi.toml
+++ b/pixi.toml
@@ -5,7 +5,7 @@
[workspace]
name = "openusd-feedstock"
-version = "3.61.2" # conda-smithy version used to generate this file
+version = "2026.6.14" # conda-smithy version used to generate this file
description = "Pixi configuration for conda-forge/openusd-feedstock"
authors = ["@conda-forge/openusd"]
channels = ["conda-forge"]
@@ -13,7 +13,7 @@ platforms = ["linux-64", "linux-aarch64", "linux-ppc64le", "osx-64", "win-64"]
requires-pixi = ">=0.59.0"
[dependencies]
-conda-build = ">=24.1"
+conda-build = ">=26.3"
conda-forge-ci-setup = "4.*"
rattler-build = "*"
diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml
index c0f4125..81707d3 100644
--- a/recipe/recipe.yaml
+++ b/recipe/recipe.yaml
@@ -2,7 +2,7 @@ schema_version: 1
context:
name: openusd
- version: "26.03"
+ version: "26.05"
package:
name: ${{ name }}
@@ -10,7 +10,7 @@ package:
source:
- url: https://github.com/PixarAnimationStudios/OpenUSD/archive/refs/tags/v${{ version }}.tar.gz
- sha256: 590ea75ffa3ac0c35fdd080df04d61a696733b8f3d6a79bdc3f13f8077162d36
+ sha256: bf514f62ac9508d3c5b121dc1107f3b29bf3c954473b9b0bf8324b7cf04c64c1
patches:
- link_python_to_executables.patch
- add_pxr_install_dll_in_bin.patch
@@ -19,7 +19,7 @@ source:
- remove_hardcoded_prefix.patch
build:
- number: 1
+ number: 0
skip: ppc64le
requirements:
@@ -43,7 +43,7 @@ requirements:
- glfw
- tbb-devel
- libboost-devel
- - libopensubdiv 3.*
+ - libopensubdiv
- python
- jinja2
- pyside6
|