Skip to content

Commit 63b8564

Browse files
authored
Merge pull request #7013 from oliver-sanders/packaging-tests++
packaging: check pip/conda compatibility
2 parents 5decd9b + bfda2ee commit 63b8564

File tree

2 files changed

+11
-2
lines changed

2 files changed

+11
-2
lines changed

.github/workflows/test_conda-build.yml

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ on:
55
paths:
66
- 'conda-environment.yml'
77
- '.github/workflows/test_conda-build.yml'
8+
- 'pyproject.toml'
9+
- 'setup.cfg'
810
schedule:
911
- cron: '17 22 * * 6' # Every Saturday at 22:17
1012
workflow_dispatch:
@@ -31,13 +33,16 @@ jobs:
3133
python-version: ['3.12', '3']
3234
env:
3335
ENV_FILE: conda-environment.yml
36+
# prevent pip from meddling with the conda installed dependencies (during the conda build step)
37+
PIP_NO_DEPS: True
3438
steps:
3539
- name: checkout cylc-flow
3640
uses: actions/checkout@v5
3741

3842
- name: modify conda env file
3943
run: |
4044
# write environment file
45+
echo " - python = ${{ matrix.python-version }}" >> "$ENV_FILE"
4146
echo " - pip" >> "$ENV_FILE" # list pip as a dependency
4247
echo " - pip:" >> "$ENV_FILE" # add a pip section
4348
echo " - ." >> "$ENV_FILE" # install cylc-flow (pip install .)
@@ -46,14 +51,18 @@ jobs:
4651
- name: build conda env
4752
uses: conda-incubator/setup-miniconda@v3
4853
with:
49-
python-version: ${{ matrix.python-version }}
5054
environment-file: ${{ env.ENV_FILE }}
5155

5256
- name: check cylc installation
5357
shell: bash -el {0}
5458
run: |
59+
# make sure Cylc is functioning
5560
conda run -n test cylc version --long
5661
62+
# make sure pip is happy with the packages installed
63+
# (checks pip deps are compatible with conda deps)
64+
conda run -n test pip check
65+
5766
- name: check for activate scripts
5867
shell : bash -el {0}
5968
run: |

conda-environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ dependencies:
1212
- metomi-isodatetime >=1!3.0.0, <1!3.2.0
1313
- packaging
1414
# Constrain protobuf version for compatible Scheduler-UIS comms across hosts
15-
- protobuf >=4.24.4,<4.25.0
15+
- protobuf >=5,<8
1616
- psutil >=5.6.0
1717
- python
1818
- pyzmq >=22

0 commit comments

Comments
 (0)