Skip to content

Test the Windows CI on dev #1345

Test the Windows CI on dev

Test the Windows CI on dev #1345

Workflow file for this run

name: pipeline
on:
push:
branches:
- master
- dev
- test_ci
pull_request:
jobs:
test-job:
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash -l {0}
strategy:
matrix:
#os: [ubuntu-latest]
#python-version: ["3.10", "3.11", "3.12"]
include:
- os: windows-latest
python-version: "3.12"
#- os: macos-13
# python-version: "3.12"
env:
CONDA_FILE: environment.yml
CACHE_NUMBER: 0 # Increment to force cache invalidation
CACHE_KEY: ${{ matrix.os }}-python_${{ matrix.python-version }}
steps:
- uses: actions/checkout@v4
- name: Get Date
id: get-date
run: echo "today=$(/bin/date -u '+%Y%m%d')" >> $GITHUB_OUTPUT
shell: bash
- name: Restore Conda Environment Cache
uses: actions/cache@v4
with:
path: ${{ env.CONDA }}/envs
key: ${{ env.CACHE_KEY}}-${{ steps.get-date.outputs.today }}-${{ hashFiles(env.CONDA_FILE) }}-${{ env.CACHE_NUMBER }}-restore
restore-keys: |
${{ env.CACHE_KEY }}-${{ steps.get-date.outputs.today }}-${{ hashFiles(env.CONDA_FILE) }}-${{ env.CACHE_NUMBER }}-restore
${{ env.CACHE_KEY }}-${{ steps.get-date.outputs.today }}-${{ hashFiles(env.CONDA_FILE) }}-${{ env.CACHE_NUMBER }}
id: restore-cache
- name: Set up Miniforge and Create Environment
uses: conda-incubator/[email protected]
with:
miniforge-version: latest
use-mamba: true
environment-file: ${{ env.CONDA_FILE }}
activate-environment: cadet-process
channels: conda-forge
conda-remove-defaults: true
auto-activate-base: false
if: steps.restore-cache.outputs.cache-hit != 'true'
- name: Cache Updated Conda Environment
uses: actions/cache@v4
with:
path: ${{ env.CONDA }}/envs
key: ${{ env.CACHE_KEY}}-${{ steps.get-date.outputs.today }}-${{ hashFiles(env.CONDA_FILE) }}-${{ env.CACHE_NUMBER }}-save
if: steps.restore-cache.outputs.cache-hit != 'true'
- name: Install
run: |
pip install -e ./[testing]
- name: Check Python and Test
run: |
PYTHON_VERSION=$(python --version | awk '{print $2}')
REQUIRED_VERSION="${{ matrix.python-version }}"
echo "Current Python version: $PYTHON_VERSION"
echo "Required Python version: $REQUIRED_VERSION"
if [[ "$PYTHON_VERSION" != "$REQUIRED_VERSION" ]]; then
echo "Warning: Python version does not match the required version."
fi
python -m unittest discover -s tests
- name: Install pypa/build
run: |
python -m pip install build --user
- name: Build binary wheel and source tarball
run: |
python -m build --sdist --wheel --outdir dist/ .
- name: Test Wheel install and import
run: |
python -c "import CADETProcess; print(CADETProcess.__version__)"