Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: Update CI configuration to use more modern OS and python versions #1207

Merged
merged 28 commits into from
Oct 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
a63feff
run test with ubuntu 24.04
Czaki Oct 11, 2024
8615ad8
use proper test group
Czaki Oct 11, 2024
aad3fcd
Merge remote-tracking branch 'origin/develop' into adopt_ubuntu_24_04
Czaki Oct 18, 2024
32dc7dd
upgrade CI configuartio to use more recent python and runners
Czaki Oct 18, 2024
b9054a0
fix configuration
Czaki Oct 18, 2024
b7c808c
fix pyinstaller config
Czaki Oct 18, 2024
74f17c7
fix conda run
Czaki Oct 18, 2024
75ae9bc
try pyqt
Czaki Oct 18, 2024
beda790
try run all tests
Czaki Oct 19, 2024
550a5ba
remove obsolete or
Czaki Oct 19, 2024
3b0cc0b
check if actions works
Czaki Oct 19, 2024
3aa379a
use suffix for main artifacts, clean code of workflows
Czaki Oct 19, 2024
36c5397
add missed dialogs to qtbot
Czaki Oct 20, 2024
0357b19
fix error
Czaki Oct 21, 2024
ac4096c
more refactor
Czaki Oct 21, 2024
6ecfb22
do not use system dialog
Czaki Oct 21, 2024
e21fbec
try to call hide
Czaki Oct 21, 2024
a813904
Merge remote-tracking branch 'origin/develop' into adopt_ubuntu_24_04
Czaki Oct 21, 2024
e17e224
run verbose run
Czaki Oct 21, 2024
e178164
split test on parts on CI
Czaki Oct 21, 2024
275471e
fix split
Czaki Oct 21, 2024
38b6a3f
fix spliting when provide napari input
Czaki Oct 21, 2024
0335e03
fix condition
Czaki Oct 21, 2024
8480a57
change all to latest
Czaki Oct 21, 2024
208421d
provide agains napari in env
Czaki Oct 21, 2024
f38e780
do not use native dialog
Czaki Oct 21, 2024
3fdbe38
fix test for macos
Czaki Oct 21, 2024
7b55c5e
Revert "check if actions works"
Czaki Oct 21, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .azure-pipelines/pyinstaller.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@ parameters:
type: string

steps:
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.11', architecture: x64}}
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.12', architecture: x64}}
- template: pip_cache.yaml
parameters:
key: pyinstaller | requirements/constraints_py3.9.txt | "$(Agent.OS)" | "$(PY)"
key: pyinstaller | requirements/constraints_py3.12.txt | "$(Agent.OS)" | "$(PY)"
path: ${{ parameters.cache_dir }}
- bash: |
python -m pip install -U pip wheel setuptools
displayName: install libs
- bash: python -m pip install .[pyinstaller] -c requirements/constraints_py3.11.txt
- bash: python -m pip install .[pyinstaller] -c requirements/constraints_py3.12.txt
displayName: install partseg
- bash: |
python build_utils/create_and_pack_executable.py --no-simple-zip
Expand Down
53 changes: 48 additions & 5 deletions .github/workflows/base_test_workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,15 @@ on:
os:
required: false
type: string
default: "ubuntu-20.04"
default: "ubuntu-24.04"
tox_args:
required: false
type: string
default: ""
pytest_args:
required: false
type: string
default: ""
napari:
required: false
type: string
Expand All @@ -38,6 +42,10 @@ on:
required: false
type: string
default: ""
artifact_suffix:
required: false
type: string
default: ""


jobs:
Expand Down Expand Up @@ -85,21 +93,56 @@ jobs:
python -m pip install -r requirements/requirements_dev.txt tox-gh-actions>=2.12.0 tox-min-req tox-uv
pip list

- name: Test with tox
- name: Test with tox PartSegImage
if: ${{ inputs.napari == 'latest' }}
run: python -m tox ${{ inputs.tox_args }} -- package/tests/test_PartSegImage ${{ inputs.pytest_args }}
env:
PYVISTA_OFF_SCREEN: True # required for opengl on windows
NAPARI: ${{ inputs.napari }}
BACKEND: ${{ inputs.qt_backend }}
PIP_CONSTRAINT: ${{ inputs.napari == 'latest' && format('requirements/constraints_py{0}{1}.txt', inputs.python_version, inputs.pydantic ) || '' }}
UV_CONSTRAINT: ${{ inputs.napari == 'latest' && format('requirements/constraints_py{0}{1}.txt', inputs.python_version, inputs.pydantic ) || '' }}

- name: Test with tox PartSegCore
if: ${{ inputs.napari == 'latest' }}
run: python -m tox ${{ inputs.tox_args }} -- package/tests/test_PartSegCore ${{ inputs.pytest_args }}
env:
PYVISTA_OFF_SCREEN: True # required for opengl on windows
NAPARI: ${{ inputs.napari }}
BACKEND: ${{ inputs.qt_backend }}
PIP_CONSTRAINT: ${{ inputs.napari == 'latest' && format('requirements/constraints_py{0}{1}.txt', inputs.python_version, inputs.pydantic ) || '' }}
UV_CONSTRAINT: ${{ inputs.napari == 'latest' && format('requirements/constraints_py{0}{1}.txt', inputs.python_version, inputs.pydantic ) || '' }}

- name: Test with tox PartSeg
if: ${{ inputs.napari == 'latest' }}
uses: aganders3/headless-gui@v2
timeout-minutes: ${{ inputs.timeout }}
with:
run: python -m tox ${{ inputs.tox_args }}
run: python -m tox ${{ inputs.tox_args }} -- package/tests/test_PartSeg ${{ inputs.pytest_args }}
env:
PYVISTA_OFF_SCREEN: True # required for opengl on windows
NAPARI: ${{ inputs.napari }}
BACKEND: ${{ inputs.qt_backend }}
PIP_CONSTRAINT: ${{ inputs.napari == 'latest' && format('requirements/constraints_py{0}{1}.txt', inputs.python_version, inputs.pydantic ) || '' }}
UV_CONSTRAINT: ${{ inputs.napari == 'latest' && format('requirements/constraints_py{0}{1}.txt', inputs.python_version, inputs.pydantic ) || '' }}

- name: Test with tox all
if: ${{ inputs.napari != 'latest' }}
uses: aganders3/headless-gui@v2
timeout-minutes: ${{ inputs.timeout }}
with:
run: python -m tox ${{ inputs.tox_args }} -- ${{ inputs.pytest_args }}
env:
PYVISTA_OFF_SCREEN: True # required for opengl on windows
NAPARI: ${{ inputs.napari }}
BACKEND: ${{ inputs.qt_backend }}
PIP_CONSTRAINT: ${{ inputs.napari == 'latest' && format('requirements/constraints_py{0}{1}.txt', inputs.python_version, inputs.pydantic ) || '' }}
UV_CONSTRAINT: ${{ inputs.napari == 'latest' && format('requirements/constraints_py{0}{1}.txt', inputs.python_version, inputs.pydantic ) || '' }}


- uses: actions/upload-artifact@v4
with:
name: timing-report-${{ inputs.os }}-py-${{ inputs.python_version }}-${{ inputs.napari }}-${{ inputs.qt_backend }}-${{ inputs.coverage }}
name: timing-report-${{ inputs.os }}-py-${{ inputs.python_version }}-${{ inputs.napari }}-${{ inputs.qt_backend }}-${{ inputs.coverage }}${{ inputs.artifact_suffix }}
path: |
./report-*.json
retention-days: 7
Expand All @@ -108,7 +151,7 @@ jobs:
uses: actions/upload-artifact@v4.4.0
if: ${{ inputs.coverage }}
with:
name: cov-reports-${{ inputs.os }}-py-${{ inputs.python_version }}-${{ inputs.napari }}-${{ inputs.qt_backend }}
name: cov-reports-${{ inputs.os }}-py-${{ inputs.python_version }}-${{ inputs.napari }}-${{ inputs.qt_backend }}${{ inputs.artifact_suffix }}
include-hidden-files: 'true'
path: |
./.coverage.*
6 changes: 3 additions & 3 deletions .github/workflows/make_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.10"
python-version: "3.12"
- uses: tlambert03/setup-qt-libs@v1
- name: Install Windows OpenGL
if: runner.os == 'Windows'
Expand All @@ -44,12 +44,12 @@ jobs:
if (Test-Path -Path "C:\Windows\system32\opengl32.dll" -PathType Leaf) {Exit 0} else {Exit 1}
shell: powershell
- name: Install PartSeg
run: python -m pip install --editable ".[pyinstaller]" --constraint requirements/constraints_py3.10.txt
run: python -m pip install --editable ".[pyinstaller]" --constraint requirements/constraints_py3.12.txt

- name: compile numpy on macos-14
if: ${{ matrix.os == 'macos-14' }}
run: |
python -m pip install --no-binary numpy numpy --force-reinstall --constraint requirements/constraints_py3.10.txt
python -m pip install --no-binary numpy numpy --force-reinstall --constraint requirements/constraints_py3.12.txt

- name: Build PartSeg bundle
run: python build_utils/create_and_pack_executable.py
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test_napari_repo.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ on:
jobs:
download_data:
name: Download test data
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- shell: bash
Expand All @@ -33,7 +33,7 @@ jobs:
strategy:
fail-fast: false
matrix:
platform: [ ubuntu-22.04 ]
platform: [ ubuntu-24.04 ]
python: ['3.9' , '3.10', '3.11', '3.12']
napari_version: ['repo']
steps:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test_napari_widgets.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
fail-fast: false
matrix:
qt_backend: ["PyQt5", "PySide2"]
os: ["ubuntu-22.04"]
os: ["ubuntu-24.04"]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codebase verification

Hardcoded Ubuntu Versions Found in Other CI Configurations

The update to ubuntu-24.04 in .github/workflows/test_napari_widgets.yml is correctly implemented. However, the following files still contain hardcoded Ubuntu versions:

  • azure-pipelines.yml
    • Ubuntu-24.04
    • Ubuntu-22.04
    • Ubuntu-20.04
  • .readthedocs.yml
    • ubuntu-22.04

Please update these files to use ubuntu-24.04 to maintain consistency across all CI environments and ensure compatibility with the latest Ubuntu version.

🔗 Analysis chain

Approved: OS update to Ubuntu 24.04

The change to use ubuntu-24.04 aligns with the PR objective and ensures tests run on the latest LTS version of Ubuntu. This is a good practice for maintaining up-to-date CI environments.

To ensure compatibility, please verify that all project dependencies support Ubuntu 24.04. Run the following script to check for any potential issues:

If the script returns any results, review those files to ensure they're compatible with Ubuntu 24.04 or update them accordingly.


The previous script encountered an error due to an unrecognized file type "python". Let's correct the file type to "py" and re-run the check to ensure no hardcoded Ubuntu version dependencies exist.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check for any hardcoded Ubuntu version dependencies in the project

# Test: Search for any hardcoded Ubuntu version references
rg -i 'ubuntu-\d{2}\.04|ubuntu\s+\d{2}\.04' --type yaml --type python

Length of output: 102


Script:

#!/bin/bash
# Description: Check for any hardcoded Ubuntu version dependencies in the project

# Test: Search for any hardcoded Ubuntu version references
rg -i 'ubuntu-\d{2}\.04|ubuntu\s+\d{2}\.04' --type yaml --type py

Length of output: 403

uses: ./.github/workflows/base_test_workflow.yml
with:
python_version: "3.10"
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/test_prereleases.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ on:
jobs:
download_data:
name: Download test data
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- shell: bash
Expand All @@ -41,7 +41,7 @@ jobs:
strategy:
fail-fast: false
matrix:
platform: [windows-2022, macos-14, ubuntu-22.04]
platform: [windows-2022, macos-14, ubuntu-24.04]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codebase verification

Action Required: Update Remaining Workflows to Ubuntu 24.04

The following workflow still uses ubuntu-22.04 and should be updated to ubuntu-24.04 for consistency:

  • .github/workflows/tests.yml
🔗 Analysis chain

LGTM: Updated test matrix to include Ubuntu 24.04

The change to use ubuntu-24.04 in the test matrix is consistent with the PR objective and the update in the download_data job.

To ensure consistency across the entire project, let's verify if other workflows need similar updates:

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check for other workflows that might need updating to Ubuntu 24.04

# Test: Search for workflow files still using Ubuntu 22.04
echo "Workflows still using Ubuntu 22.04:"
rg --type yaml 'ubuntu-22\.04' .github/workflows

Length of output: 485

python: [3.12]
steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -108,9 +108,9 @@ jobs:
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
name: Install Python 3.11
name: Install Python 3.12
with:
python-version: 3.11
python-version: 3.12
- uses: tlambert03/setup-qt-libs@v1
- name: Install dependencies
run: |
Expand Down Expand Up @@ -146,7 +146,7 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
PLATFORM: "linux"
PYTHON: "3.11"
PYTHON: "3.12"
RUN_ID: ${{ github.run_id }}
TITLE: '[test-bot] pyinstaller bundle --pre is failing'
with:
Expand Down
23 changes: 16 additions & 7 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,21 +51,24 @@ jobs:
fail-fast: false
matrix:
python_version: ["3.9", "3.10", "3.11", "3.12"]
os: ["ubuntu-20.04"]
os: ["ubuntu-24.04"]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codebase verification

Issues Found: Older Ubuntu Versions Still Present in Workflows

The following workflow files still reference older Ubuntu versions:

  • .github/workflows/tests.yml:

    • runs-on: ubuntu-20.04
    • os: "ubuntu-20.04"
    • os: "ubuntu-22.04"
  • .github/workflows/test_napari_widgets.yml:

    • os: "ubuntu-20.04"
  • .github/workflows/make_release.yml:

    • os: ["ubuntu-20.04", "windows-2019", "macos-13", "macos-14"]

Please remove or update these entries to fully transition to ubuntu-24.04.

🔗 Analysis chain

LGTM! Expanded test matrix with newer OS and Python versions.

The changes to the base-test job configuration look good:

  1. Updating to Ubuntu 24.04 aligns with the PR objective.
  2. Adding Python 3.12 and macOS 14 configurations improves coverage for newer versions.
  3. Using "windows-latest" ensures testing on the most recent Windows version.
  4. The new PySide6 configuration on Ubuntu 24.04 expands Qt backend testing.

These updates will help ensure the project's compatibility with newer environments.

Let's verify the availability of Ubuntu 24.04 in GitHub Actions:

Also applies to: 61-63, 65-65, 71-71

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the availability of Ubuntu 24.04 in GitHub Actions

# Check if Ubuntu 24.04 is listed in the GitHub Actions runner images
gh api /repos/actions/runner-images/contents/images/linux/Ubuntu2404-Readme.md

# Search for recent workflow runs using Ubuntu 24.04
gh search prs --json url,updatedAt --jq '.[] | select(.url | contains("ubuntu-24.04")) | .updatedAt' --limit 10 --sort updated --order desc

Length of output: 632


Script:

#!/bin/bash
# Description: Search for 'ubuntu-24.04' in GitHub Actions workflow files

rg 'ubuntu-24\.04' .github/workflows/

Length of output: 738


Script:

#!/bin/bash
# Description: Check for the presence of older Ubuntu versions in GitHub Actions workflow files

# Search for Ubuntu versions other than 24.04 in workflow files
rg 'ubuntu-(?!24\.04)\d{2}\.\d{2}' .github/workflows/

Length of output: 295


Script:

#!/bin/bash
# Description: Check for the presence of older Ubuntu versions in GitHub Actions workflow files

# Search for specific older Ubuntu versions in workflow files
rg 'ubuntu-(20\.04|22\.04)' .github/workflows/

Length of output: 686

qt_backend: ["PyQt5"]
tox_args: [ "" ]
include:
- python_version: "3.11"
os: "macos-13"
qt_backend: "PyQt5"
- python_version: "3.12"
os: "macos-14"
qt_backend: "PyQt6"
- python_version: "3.11"
os: "windows-2019"
os: "windows-latest"
qt_backend: "PyQt5"
- python_version: "3.10"
os: "ubuntu-20.04"
qt_backend: "PySide2"
- python_version: "3.10"
os: "ubuntu-22.04"
os: "ubuntu-24.04"
qt_backend: "PySide6"
- python_version: "3.12"
os: "ubuntu-22.04"
Expand All @@ -91,7 +94,7 @@ jobs:
fail-fast: false
matrix:
python_version: ["3.9", "3.10", "3.11", "3.12"]
os: ["ubuntu-20.04", "macos-13", "windows-2019"]
os: ["ubuntu-24.04", "macos-14", "windows-2022"]
qt_backend: ["PySide2", "PyQt5"]
include:
- python_version: "3.12"
Expand All @@ -112,12 +115,18 @@ jobs:
qt_backend: "PySide2"
- python_version: "3.12"
qt_backend: "PySide2"
- os: "macos-14"
qt_backend: "PySide2"
- os: "macos-14"
python_version: "3.9"
with:
test_data: True
python_version: ${{ matrix.python_version }}
os: ${{ matrix.os }}
qt_backend: ${{ matrix.qt_backend }}
pydantic: ${{ matrix.pydantic }}
artifact_suffix: "-main"
pytest_args: "-v"

test_coverage:
needs: download_data
Expand Down Expand Up @@ -182,7 +191,7 @@ jobs:

test_conda:
name: Test PartSeg conda
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codebase verification

Missing environment.yml File

The environment.yml file is not found in the repository. Please ensure it is added or properly generated to support Python 3.12.

🔗 Analysis chain

LGTM! Updated conda testing environment.

The changes to the test_conda job are good:

  1. Updating to Ubuntu 24.04 aligns with the PR objective.
  2. Using Python 3.12 ensures testing with the latest version.

Please ensure that all conda-related commands and environment files have been updated to support Python 3.12. You may want to run the following script to verify:

Also applies to: 205-205

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify conda environment setup for Python 3.12

# Check if environment.yml file exists and contains Python 3.12
if [ -f environment.yml ]; then
  if grep -q "python=3.12" environment.yml; then
    echo "environment.yml file is correctly configured for Python 3.12"
  else
    echo "Warning: environment.yml may need to be updated for Python 3.12"
  fi
else
  echo "Warning: environment.yml file not found"
fi

# Check if create_environment_yml.sh script is updated
if grep -q "python=3.12" build_utils/create_environment_yml.sh; then
  echo "create_environment_yml.sh script is correctly configured for Python 3.12"
else
  echo "Warning: create_environment_yml.sh may need to be updated for Python 3.12"
fi

Length of output: 332


Script:

#!/bin/bash
# Description: Search for all environment.yml files in the repository

fd environment.yml

Length of output: 58

needs: download_data
steps:
- uses: actions/checkout@v4
Expand All @@ -193,7 +202,7 @@ jobs:
use-mamba: true
channels: conda-forge
channel-priority: strict
python-version: "3.11"
python-version: "3.12"

- uses: tlambert03/setup-qt-libs@v1

Expand Down Expand Up @@ -236,7 +245,7 @@ jobs:
- name: Test with tox
uses: aganders3/headless-gui@v2
with:
run: conda run -n test --no-capture-output tox -e py311-PySide2-conda
run: conda run -n test --no-capture-output tox -e py312-PySide2-conda
timeout-minutes: 60

check-package:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/upgrade-dependencies.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:

- uses: actions/setup-python@v5
with:
python-version: "3.11"
python-version: "3.12"
cache: pip
cache-dependency-path: 'pyproject.toml'
- name: Upgrade Python dependencies
Expand Down
4 changes: 2 additions & 2 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,15 @@ formats: all
build:
os: ubuntu-22.04
tools:
python: "3.11"
python: "3.12"
apt_packages:
- graphviz


# Optionally set the version of Python and requirements required to build your docs
python:
install:
- requirements: requirements/constraints_py3.11_docs.txt
- requirements: requirements/constraints_py3.12_docs.txt
- method: pip
path: .
extra_requirements:
Expand Down
22 changes: 11 additions & 11 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,13 @@ stages:
- stage: GetTestData
jobs:
- job: linux
pool: {vmImage: 'Ubuntu-22.04'}
pool: {vmImage: 'Ubuntu-24.04'}
steps:
- script: bash build_utils/download_data.sh
displayName: "download data"
- task: UsePythonVersion@0
inputs:
versionSpec: '3.11'
versionSpec: '3.12'
displayName: 'Use Python $(python.version)'
- script: python build_utils/cut_changelog.py changelog_cut.md
displayName: "Cut changelog"
Expand Down Expand Up @@ -59,9 +59,9 @@ stages:
- job: manifest_check
pool: {vmImage: 'Ubuntu-latest'}
steps:
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.10', architecture: x64}}
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.12', architecture: x64}}
- bash: |
python -m pip install check-manifest==0.49 numpy==1.22.3
python -m pip install check-manifest==0.50 numpy==2.0.2
displayName: InstallDeps
- bash: check-manifest
displayName: check-manifest
Expand All @@ -74,10 +74,10 @@ stages:
variables:
pip_cache_dir: $(Pipeline.Workspace)/.pip
steps:
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.11', architecture: x64}}
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.12', architecture: x64}}
- template: .azure-pipelines/pip_cache.yaml
parameters:
key: doc | requirements/constraints_py3.11_docs.txt | "$(PY)"
key: doc | requirements/constraints_py3.12_docs.txt | "$(PY)"
path: $(pip_cache_dir)
- bash: |
python -m pip install tox
Expand All @@ -91,24 +91,24 @@ stages:
artifactName: docs

- job: Notebook_check
pool: {vmImage: 'Ubuntu-22.04'}
pool: {vmImage: 'Ubuntu-24.04'}
continueOnError: true
variables:
DATA_PATH: typy_neuronow2
pip_cache_dir: $(Pipeline.Workspace)/.pip
steps:
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.11', architecture: x64}}
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.12', architecture: x64}}
- template: .azure-pipelines/pip_cache.yaml
parameters:
key: notebook | requirements/constraints_py3.11.txt | "$(PY)"
key: notebook | requirements/constraints_py3.12.txt | "$(PY)"
path: $(pip_cache_dir)
- bash: |
python -m pip install tox
displayName: "Install tox"
- bash: tox -e jupyter
displayName: "Run Notebook"
env:
PIP_CONSTRAINT: requirements/constraints_py3.11.txt
PIP_CONSTRAINT: requirements/constraints_py3.12.txt

- stage: Tests_linux
dependsOn: [GetTestData, formatting_check]
Expand All @@ -117,7 +117,7 @@ stages:
pip_cache_dir: $(Pipeline.Workspace)/.pip
jobs:
- job: test_linux
pool: { vmImage: 'ubuntu-22.04' }
pool: { vmImage: 'ubuntu-24.04' }
variables:
AZURE_PIPELINES: 1
DISPLAY: ':99.0'
Expand Down
Loading