Skip to content

Commit f97c3c4

Browse files
authored
CI: Update CircleCI configs (#58908)
* CI: Update CircleCI configs * Fix workflow * add mamba path * Use conda env create * Remove workaround?
1 parent da54087 commit f97c3c4

File tree

3 files changed

+46
-88
lines changed

3 files changed

+46
-88
lines changed

.circleci/config.yml

Lines changed: 45 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,64 @@
11
version: 2.1
22

33
jobs:
4-
test-arm:
4+
test-linux-arm:
55
machine:
66
image: default
77
resource_class: arm.large
88
environment:
9-
ENV_FILE: ci/deps/circle-310-arm64.yaml
9+
ENV_FILE: ci/deps/circle-311-arm64.yaml
1010
PYTEST_WORKERS: auto
1111
PATTERN: "not single_cpu and not slow and not network and not clipboard and not arm_slow and not db"
1212
PYTEST_TARGET: "pandas"
1313
PANDAS_CI: "1"
1414
steps:
1515
- checkout
16-
- run: .circleci/setup_env.sh
17-
- run: >
18-
PATH=$HOME/miniconda3/envs/pandas-dev/bin:$HOME/miniconda3/condabin:$PATH
19-
LD_PRELOAD=$HOME/miniconda3/envs/pandas-dev/lib/libgomp.so.1:$LD_PRELOAD
20-
ci/run_tests.sh
21-
linux-musl:
16+
- run:
17+
name: Install Environment and Run Tests
18+
shell: /bin/bash -exuo pipefail
19+
command: |
20+
MAMBA_URL="https://github.com/conda-forge/miniforge/releases/download/24.3.0-0/Mambaforge-24.3.0-0-Linux-aarch64.sh"
21+
wget -q $MAMBA_URL -O minimamba.sh
22+
chmod +x minimamba.sh
23+
MAMBA_DIR="$HOME/miniconda3"
24+
rm -rf $MAMBA_DIR
25+
./minimamba.sh -b -p $MAMBA_DIR
26+
export PATH=$MAMBA_DIR/bin:$PATH
27+
conda info -a
28+
conda env create -q -n pandas-dev -f $ENV_FILE
29+
conda list -n pandas-dev
30+
source activate pandas-dev
31+
if pip show pandas 1>/dev/null; then
32+
pip uninstall -y pandas
33+
fi
34+
python -m pip install --no-build-isolation -ve . --config-settings=setup-args="--werror"
35+
PATH=$HOME/miniconda3/envs/pandas-dev/bin:$HOME/miniconda3/condabin:$PATH
36+
ci/run_tests.sh
37+
test-linux-musl:
2238
docker:
2339
- image: quay.io/pypa/musllinux_1_1_aarch64
2440
resource_class: arm.large
2541
steps:
2642
# Install pkgs first to have git in the image
2743
# (needed for checkout)
28-
- run: |
29-
apk update
30-
apk add git
31-
apk add musl-locales
44+
- run:
45+
name: Install System Packages
46+
command: |
47+
apk update
48+
apk add git
49+
apk add musl-locales
3250
- checkout
33-
- run: |
34-
/opt/python/cp311-cp311/bin/python -m venv ~/virtualenvs/pandas-dev
35-
. ~/virtualenvs/pandas-dev/bin/activate
36-
python -m pip install --no-cache-dir -U pip wheel setuptools meson-python==0.13.1 meson[ninja]==1.2.1
37-
python -m pip install --no-cache-dir versioneer[toml] cython numpy python-dateutil pytz pytest>=7.3.2 pytest-xdist>=2.2.0 hypothesis>=6.46.1
38-
python -m pip install --no-cache-dir --no-build-isolation -e . --config-settings=setup-args="--werror"
39-
python -m pip list --no-cache-dir
40-
- run: |
41-
. ~/virtualenvs/pandas-dev/bin/activate
42-
export PANDAS_CI=1
43-
python -m pytest -m 'not slow and not network and not clipboard and not single_cpu' pandas --junitxml=test-data.xml
51+
- run:
52+
name: Install Environment and Run Tests
53+
command: |
54+
/opt/python/cp311-cp311/bin/python -m venv ~/virtualenvs/pandas-dev
55+
. ~/virtualenvs/pandas-dev/bin/activate
56+
python -m pip install --no-cache-dir -U pip wheel setuptools meson-python==0.13.1 meson[ninja]==1.2.1
57+
python -m pip install --no-cache-dir versioneer[toml] cython numpy python-dateutil pytz pytest>=7.3.2 pytest-xdist>=2.2.0 hypothesis>=6.46.1
58+
python -m pip install --no-cache-dir --no-build-isolation -e . --config-settings=setup-args="--werror"
59+
python -m pip list --no-cache-dir
60+
export PANDAS_CI=1
61+
python -m pytest -m 'not slow and not network and not clipboard and not single_cpu' pandas --junitxml=test-data.xml
4462
build-aarch64:
4563
parameters:
4664
cibw-build:
@@ -71,7 +89,7 @@ jobs:
7189
name: Build aarch64 wheels
7290
no_output_timeout: 30m # Sometimes the tests won't generate any output, make sure the job doesn't get killed by that
7391
command: |
74-
pip3 install cibuildwheel==2.15.0
92+
pip3 install cibuildwheel==2.18.1
7593
cibuildwheel --prerelease-pythons --output-dir wheelhouse
7694
7795
environment:
@@ -81,7 +99,7 @@ jobs:
8199
name: Install Anaconda Client & Upload Wheels
82100
command: |
83101
echo "Install Mambaforge"
84-
MAMBA_URL="https://github.com/conda-forge/miniforge/releases/download/23.1.0-0/Mambaforge-23.1.0-0-Linux-aarch64.sh"
102+
MAMBA_URL="https://github.com/conda-forge/miniforge/releases/download/24.3.0-0/Mambaforge-24.3.0-0-Linux-aarch64.sh"
85103
echo "Downloading $MAMBA_URL"
86104
wget -q $MAMBA_URL -O minimamba.sh
87105
chmod +x minimamba.sh
@@ -107,14 +125,14 @@ workflows:
107125
not:
108126
equal: [ scheduled_pipeline, << pipeline.trigger_source >> ]
109127
jobs:
110-
- test-arm
128+
- test-linux-arm
111129
test-musl:
112130
# Don't run trigger this one when scheduled pipeline runs
113131
when:
114132
not:
115133
equal: [ scheduled_pipeline, << pipeline.trigger_source >> ]
116134
jobs:
117-
- linux-musl
135+
- test-linux-musl
118136
build-wheels:
119137
jobs:
120138
- build-aarch64:

.circleci/setup_env.sh

Lines changed: 0 additions & 60 deletions
This file was deleted.

ci/deps/circle-310-arm64.yaml renamed to ci/deps/circle-311-arm64.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: pandas-dev
22
channels:
33
- conda-forge
44
dependencies:
5-
- python=3.10
5+
- python=3.11
66

77
# build dependencies
88
- versioneer[toml]

0 commit comments

Comments
 (0)