Skip to content

Commit 5c53a98

Browse files
Restore linux64 build parallelization (#198)
automerged PR by conda-forge/automerge-action
2 parents 60289b1 + 16e391d commit 5c53a98

9 files changed

Lines changed: 254 additions & 14 deletions

.ci_support/linux_64_.yaml renamed to .ci_support/linux_64_python3.10.____cpython.yaml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,6 @@ pin_run_as_build:
2222
max_pin: x.x
2323
python:
2424
- 3.10.* *_cpython
25-
- 3.11.* *_cpython
26-
- 3.12.* *_cpython
27-
- 3.13.* *_cp313
28-
- 3.14.* *_cp314
29-
- 3.14.* *_cp314t
3025
python_min:
3126
- '3.10'
3227
target_platform:
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
c_compiler:
2+
- gcc
3+
c_compiler_version:
4+
- '14'
5+
c_stdlib:
6+
- sysroot
7+
c_stdlib_version:
8+
- '2.17'
9+
channel_sources:
10+
- conda-forge
11+
channel_targets:
12+
- conda-forge main
13+
cxx_compiler:
14+
- gxx
15+
cxx_compiler_version:
16+
- '14'
17+
docker_image:
18+
- quay.io/condaforge/linux-anvil-x86_64:alma9
19+
pin_run_as_build:
20+
python:
21+
min_pin: x.x
22+
max_pin: x.x
23+
python:
24+
- 3.11.* *_cpython
25+
python_min:
26+
- '3.10'
27+
target_platform:
28+
- linux-64
29+
zip_keys:
30+
- - c_compiler_version
31+
- cxx_compiler_version
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
c_compiler:
2+
- gcc
3+
c_compiler_version:
4+
- '14'
5+
c_stdlib:
6+
- sysroot
7+
c_stdlib_version:
8+
- '2.17'
9+
channel_sources:
10+
- conda-forge
11+
channel_targets:
12+
- conda-forge main
13+
cxx_compiler:
14+
- gxx
15+
cxx_compiler_version:
16+
- '14'
17+
docker_image:
18+
- quay.io/condaforge/linux-anvil-x86_64:alma9
19+
pin_run_as_build:
20+
python:
21+
min_pin: x.x
22+
max_pin: x.x
23+
python:
24+
- 3.12.* *_cpython
25+
python_min:
26+
- '3.10'
27+
target_platform:
28+
- linux-64
29+
zip_keys:
30+
- - c_compiler_version
31+
- cxx_compiler_version
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
c_compiler:
2+
- gcc
3+
c_compiler_version:
4+
- '14'
5+
c_stdlib:
6+
- sysroot
7+
c_stdlib_version:
8+
- '2.17'
9+
channel_sources:
10+
- conda-forge
11+
channel_targets:
12+
- conda-forge main
13+
cxx_compiler:
14+
- gxx
15+
cxx_compiler_version:
16+
- '14'
17+
docker_image:
18+
- quay.io/condaforge/linux-anvil-x86_64:alma9
19+
pin_run_as_build:
20+
python:
21+
min_pin: x.x
22+
max_pin: x.x
23+
python:
24+
- 3.13.* *_cp313
25+
python_min:
26+
- '3.10'
27+
target_platform:
28+
- linux-64
29+
zip_keys:
30+
- - c_compiler_version
31+
- cxx_compiler_version
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
c_compiler:
2+
- gcc
3+
c_compiler_version:
4+
- '14'
5+
c_stdlib:
6+
- sysroot
7+
c_stdlib_version:
8+
- '2.17'
9+
channel_sources:
10+
- conda-forge
11+
channel_targets:
12+
- conda-forge main
13+
cxx_compiler:
14+
- gxx
15+
cxx_compiler_version:
16+
- '14'
17+
docker_image:
18+
- quay.io/condaforge/linux-anvil-x86_64:alma9
19+
pin_run_as_build:
20+
python:
21+
min_pin: x.x
22+
max_pin: x.x
23+
python:
24+
- 3.14.* *_cp314
25+
python_min:
26+
- '3.10'
27+
target_platform:
28+
- linux-64
29+
zip_keys:
30+
- - c_compiler_version
31+
- cxx_compiler_version
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
c_compiler:
2+
- gcc
3+
c_compiler_version:
4+
- '14'
5+
c_stdlib:
6+
- sysroot
7+
c_stdlib_version:
8+
- '2.17'
9+
channel_sources:
10+
- conda-forge
11+
channel_targets:
12+
- conda-forge main
13+
cxx_compiler:
14+
- gxx
15+
cxx_compiler_version:
16+
- '14'
17+
docker_image:
18+
- quay.io/condaforge/linux-anvil-x86_64:alma9
19+
pin_run_as_build:
20+
python:
21+
min_pin: x.x
22+
max_pin: x.x
23+
python:
24+
- 3.14.* *_cp314t
25+
python_min:
26+
- '3.10'
27+
target_platform:
28+
- linux-64
29+
zip_keys:
30+
- - c_compiler_version
31+
- cxx_compiler_version

.github/workflows/conda-build.yml

Lines changed: 46 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,52 @@ jobs:
2222
max-parallel: 50
2323
matrix:
2424
include:
25-
- CONFIG: linux_64_
25+
- CONFIG: linux_64_python3.10.____cpython
26+
STORE_BUILD_ARTIFACTS: False
27+
UPLOAD_PACKAGES: True
28+
os: ubuntu
29+
runs_on: ['ubuntu-latest']
30+
DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
31+
tools_install_dir: ~/miniforge3
32+
build_workspace_dir: build_artifacts
33+
docker_run_args:
34+
- CONFIG: linux_64_python3.11.____cpython
35+
STORE_BUILD_ARTIFACTS: False
36+
UPLOAD_PACKAGES: True
37+
os: ubuntu
38+
runs_on: ['ubuntu-latest']
39+
DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
40+
tools_install_dir: ~/miniforge3
41+
build_workspace_dir: build_artifacts
42+
docker_run_args:
43+
- CONFIG: linux_64_python3.12.____cpython
44+
STORE_BUILD_ARTIFACTS: False
45+
UPLOAD_PACKAGES: True
46+
os: ubuntu
47+
runs_on: ['ubuntu-latest']
48+
DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
49+
tools_install_dir: ~/miniforge3
50+
build_workspace_dir: build_artifacts
51+
docker_run_args:
52+
- CONFIG: linux_64_python3.13.____cp313
53+
STORE_BUILD_ARTIFACTS: False
54+
UPLOAD_PACKAGES: True
55+
os: ubuntu
56+
runs_on: ['ubuntu-latest']
57+
DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
58+
tools_install_dir: ~/miniforge3
59+
build_workspace_dir: build_artifacts
60+
docker_run_args:
61+
- CONFIG: linux_64_python3.14.____cp314
62+
STORE_BUILD_ARTIFACTS: False
63+
UPLOAD_PACKAGES: True
64+
os: ubuntu
65+
runs_on: ['ubuntu-latest']
66+
DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9
67+
tools_install_dir: ~/miniforge3
68+
build_workspace_dir: build_artifacts
69+
docker_run_args:
70+
- CONFIG: linux_64_python3.14.____cp314t
2671
STORE_BUILD_ARTIFACTS: False
2772
UPLOAD_PACKAGES: True
2873
os: ubuntu

pixi.toml

Lines changed: 36 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

recipe/recipe.yaml

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
schema_version: 1
33

44
context:
5-
number: 0
5+
number: 1
66
version: "13.3.1"
77
sha256: 5d21c94fb373c9dc5c71f922a4356bb0e292b85c1a3c04930a37834f5201a00d
88
bindings_major_version: ${{ (version | split("."))[0] | int }}
@@ -31,6 +31,19 @@ outputs:
3131
number: ${{ number }}
3232
skip: not linux64
3333
noarch: python
34+
# Deterministic build string so all variant.use_keys: [python] builds
35+
# produce the same artifact filename — required for upload-time dedupe
36+
# via hash collision (see `variant.use_keys` note below).
37+
string: py_min_${{ python_min | replace(".", "") }}_${{ number }}
38+
variant:
39+
# Ensures conda-smithy splits CI jobs per Python version. Without
40+
# this, the noarch output drops `python` from the intersection of
41+
# used loop vars (since CFEP-25 uses `python_min`), collapsing all
42+
# Python variants into a single serialized job. The redundant noarch
43+
# builds dedupe on upload via hash collision (the explicit `string`
44+
# above keeps the filename identical across variants).
45+
use_keys:
46+
- python
3447
script:
3548
env:
3649
SUBDIR: ${{ subdir }}
@@ -58,7 +71,9 @@ outputs:
5871
then: python -c "import cuda.bindings.cudla"
5972
requirements:
6073
run:
61-
- python ${{ python_min }}.*
74+
# Range (not pinned to python_min) so the test env can use the
75+
# variant's Python, matching the locally-built cuda-bindings ABI.
76+
- python >=${{ python_min }}
6277
- numpy
6378
- python:
6479
imports:

0 commit comments

Comments
 (0)