Skip to content

Conda nightly tests #70

Conda nightly tests

Conda nightly tests #70

Workflow file for this run

name: Conda nightly tests
on:
workflow_dispatch:
schedule:
- cron: '0 10 * * 0'
push:
paths:
- '.github/workflows/conda_canary.yml'
pull_request:
paths:
- '.github/workflows/conda_canary.yml'
permissions:
contents: read
issues: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
defaults:
run:
shell: micromamba-shell {0}
jobs:
conda_nightly:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: '1.x' # Conda latest is on 1.x version
- name: create mamba build environment
uses: mamba-org/setup-micromamba@v1
with:
environment-name: build_env
environment-file: ./mamba/environment-dev.yml
condarc: |
channels:
- conda-forge
- conda-canary/label/dev
channel-priority: flexible
create-args: >-
python=3.10
conda=*+*
# Build Mamba
- uses: hendrikmuhs/ccache-action@main
with:
variant: sccache
key: conda-canary-${{ github.job }}
restore-keys: conda-canary-
- name: build libmamba Python bindings
run: |
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=$CONDA_PREFIX \
-DBUILD_LIBMAMBAPY=ON \
-DBUILD_LIBMAMBA=ON \
-DBUILD_SHARED=ON \
-DBUILD_MAMBA_PACKAGE=ON \
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache \
-DCMAKE_C_COMPILER_LAUNCHER=sccache \
-GNinja
ninja
ninja install
- name: install libmambapy
run: pip install -e ./libmambapy/ --no-deps
- name: build cache statistics
run: sccache --show-stats
- name: install mamba
run: pip install ./mamba[test] --no-deps
# Test Mamba with Conda nightly
- name: run mamba tests suite
run: pytest -v --capture=tee-sys mamba/tests
- name: run mamba create/update tests
run: |
mamba create -n test_env xtensor -c conda-forge -y
mamba env create -f mamba/tests/test_env.yml
mamba env update -f mamba/tests/update_env.yml
- uses: JasonEtco/create-an-issue@1a16035489d05041b9af40b970f02e301c52ffba
if: failure() && github.repository_owner == 'mamba-org' && github.event_name == 'schedule'
with:
filename: .github/workflows/bot_issue_template.md
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}