diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml new file mode 100755 index 00000000..42dadc95 --- /dev/null +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -0,0 +1,44 @@ +# This file was generated automatically from conda-smithy. To update this configuration, +# update the conda-forge.yml and/or the recipe/meta.yaml. +# -*- mode: yaml -*- + +jobs: +- job: linux + pool: + vmImage: ubuntu-latest + strategy: + matrix: + linux_ppc64le_: + CONFIG: linux_ppc64le_ + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-ppc64le:alma9 + timeoutInMinutes: 360 + variables: {} + + steps: + # configure qemu binfmt-misc running. This allows us to run docker containers + # embedded qemu-static + - script: | + docker run --rm --privileged multiarch/qemu-user-static:register --reset --credential yes + ls /proc/sys/fs/binfmt_misc/ + condition: not(startsWith(variables['CONFIG'], 'linux_64')) + displayName: Configure binfmt_misc + + - script: | + export CI=azure + export flow_run_id=azure_$(Build.BuildNumber).$(System.JobAttempt) + export remote_url=$(Build.Repository.Uri) + export sha=$(Build.SourceVersion) + export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME + export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME}) + if [[ "${BUILD_REASON:-}" == "PullRequest" ]]; then + export IS_PR_BUILD="True" + else + export IS_PR_BUILD="False" + fi + .scripts/run_docker_build.sh + displayName: Run docker build + env: + BINSTAR_TOKEN: $(BINSTAR_TOKEN) + FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) + STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) diff --git a/.ci_support/linux_ppc64le_.yaml b/.ci_support/linux_ppc64le_.yaml new file mode 100644 index 00000000..7b3dfc0a --- /dev/null +++ b/.ci_support/linux_ppc64le_.yaml @@ -0,0 +1,31 @@ +c_compiler: +- gcc +c_compiler_version: +- '14' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.28' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- gxx +cxx_compiler_version: +- '14' +docker_image: +- quay.io/condaforge/linux-anvil-ppc64le:alma9 +github_actions_labels: +- cirun-openstack-cpu-large +icu: +- '75' +openssl: +- '3.5' +target_platform: +- linux-ppc64le +zip_keys: +- - c_compiler_version + - cxx_compiler_version +zlib: +- '1' diff --git a/.ci_support/migrations/brotli12.yaml b/.ci_support/migrations/brotli12.yaml deleted file mode 100644 index bfc19e1e..00000000 --- a/.ci_support/migrations/brotli12.yaml +++ /dev/null @@ -1,14 +0,0 @@ -__migrator: - build_number: 1 - commit_message: Rebuild for brotli 1.2 - kind: version - migration_number: 1 -brotli: -- '1.2' -libbrotlicommon: -- '1.2' -libbrotlidec: -- '1.2' -libbrotlienc: -- '1.2' -migrator_ts: 1761598392.2337856 diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh index f2fcf855..463cbc88 100755 --- a/.scripts/run_osx_build.sh +++ b/.scripts/run_osx_build.sh @@ -53,6 +53,25 @@ if [[ "${sha:-}" == "" ]]; then sha=$(git rev-parse HEAD) fi +if [[ "${OSX_SDK_DIR:-}" == "" ]]; then + if [[ "${CI:-}" == "" ]]; then + echo "Please set OSX_SDK_DIR to a directory where SDKs can be downloaded to. Aborting" + exit 1 + else + export OSX_SDK_DIR=/opt/conda-sdks + /usr/bin/sudo mkdir -p "${OSX_SDK_DIR}" + /usr/bin/sudo chown "${USER}" "${OSX_SDK_DIR}" + fi +else + if tmpf=$(mktemp -p "$OSX_SDK_DIR" tmp.XXXXXXXX 2>/dev/null); then + rm -f "$tmpf" + echo "OSX_SDK_DIR is writeable without sudo, continuing" + else + echo "User-provided OSX_SDK_DIR is not writeable for current user! Aborting" + exit 1 + fi +fi + echo -e "\n\nRunning the build setup script." source run_conda_forge_build_setup diff --git a/README.md b/README.md index ed7473a4..7d2d3242 100644 --- a/README.md +++ b/README.md @@ -42,6 +42,13 @@ Current build status variant + + linux_ppc64le + + + variant + + osx_64 diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 1da6be1a..eff4ad66 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -28,5 +28,6 @@ stages: condition: and(succeeded(), eq(dependencies.Check.outputs['Skip.result.start_main'], 'true')) dependsOn: Check jobs: + - template: ./.azure-pipelines/azure-pipelines-linux.yml - template: ./.azure-pipelines/azure-pipelines-osx.yml - template: ./.azure-pipelines/azure-pipelines-win.yml \ No newline at end of file diff --git a/conda-forge.yml b/conda-forge.yml index c6e5ddc0..f7ec59cb 100644 --- a/conda-forge.yml +++ b/conda-forge.yml @@ -19,4 +19,6 @@ github_actions: - pull_request provider: linux_64: github_actions + linux_aarch64: default + linux_ppc64le: default test: native_and_emulated diff --git a/pixi.toml b/pixi.toml index 89ea3e74..142069e8 100644 --- a/pixi.toml +++ b/pixi.toml @@ -5,11 +5,11 @@ [workspace] name = "nodejs-feedstock" -version = "3.53.3" # conda-smithy version used to generate this file +version = "3.54.1" # conda-smithy version used to generate this file description = "Pixi configuration for conda-forge/nodejs-feedstock" authors = ["@conda-forge/nodejs"] channels = ["conda-forge"] -platforms = ["linux-64", "osx-64", "win-64"] +platforms = ["linux-64", "linux-aarch64", "linux-ppc64le", "osx-64", "win-64"] requires-pixi = ">=0.59.0" [dependencies] @@ -35,6 +35,12 @@ description = "Build nodejs-feedstock with variant linux_aarch64_ directly (with [tasks."inspect-linux_aarch64_"] cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_.yaml" description = "List contents of nodejs-feedstock packages built for variant linux_aarch64_" +[tasks."build-linux_ppc64le_"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_ppc64le_.yaml" +description = "Build nodejs-feedstock with variant linux_ppc64le_ directly (without setup scripts)" +[tasks."inspect-linux_ppc64le_"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_ppc64le_.yaml" +description = "List contents of nodejs-feedstock packages built for variant linux_ppc64le_" [tasks."build-osx_64_"] cmd = "rattler-build build --recipe recipe -m .ci_support/osx_64_.yaml" description = "Build nodejs-feedstock with variant osx_64_ directly (without setup scripts)"