inspect path #211
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: continuous-integration | ||
on: | ||
push: | ||
branches: | ||
- main | ||
- master | ||
- releases/* | ||
pull_request: null | ||
env: | ||
CACHE_NUMBER: 0 # increase to reset cache manually | ||
CONDA_ENV: .github/environment.yml | ||
jobs: | ||
build: | ||
runs-on: ${{ matrix.os }} | ||
defaults: | ||
run: | ||
shell: bash -l {0} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [macos-latest, ubuntu-latest] | ||
include: | ||
- os: macos-latest | ||
label: osx-64 | ||
prefix: /Users/runner/miniconda3 | ||
- os: ubuntu-latest | ||
label: linux-64 | ||
prefix: /usr/share/miniconda3 | ||
steps: | ||
# - name: Cancel previous runs | ||
# uses: styfle/[email protected] | ||
# with: | ||
# access_token: ${{ github.token }} | ||
- name: Checkout NaMaster repository | ||
uses: actions/checkout@v4 | ||
- name: Set up conda | ||
uses: conda-incubator/setup-miniconda@v3 | ||
with: | ||
channels: conda-forge, defaults | ||
channel-priority: strict | ||
show-channel-urls: true | ||
miniforge-version: latest | ||
miniforge-variant: Mambaforge | ||
# - name: "macOS: set env variables" | ||
# if: matrix.label == 'osx-64' | ||
# run: | | ||
# #mamba install llvm-openmp | ||
# echo "DYLD_FALLBACK_LIBRARY_PATH=${CONDA_PREFIX}/lib" >> $GITHUB_ENV | ||
# SDKROOT=$(xcrun --sdk macosx --show-sdk-path) | ||
# echo "SDKROOT: ${SDKROOT}" | ||
# echo "SDKROOT=${SDKROOT}" >> $GITHUB_ENV | ||
# echo "CONDA_BUILD_SYSROOT=${SDKROOT}" >> $GITHUB_ENV | ||
# | ||
# export CFLAGS="-I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include" | ||
# export LDFLAGS="-L/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib" | ||
- name: Set current date as environment variable | ||
run: echo "TODAY=$(date +'%Y.%m.%d')" >> $GITHUB_ENV | ||
- name: Get cached environment | ||
uses: actions/cache@v3 | ||
id: cache | ||
with: | ||
path: ${{ matrix.prefix }} | ||
key: | ||
conda-py${{ matrix.py }}--${{ | ||
matrix.os }}--${{ | ||
hashFiles(env.CONDA_ENV) }}-${{ | ||
hashFiles('setup.py') }}--${{ | ||
env.TODAY }}-${{ | ||
env.CACHE_NUMBER }} | ||
- name: Install environment packages | ||
if: steps.cache.outputs.cache-hit != 'true' | ||
run: | | ||
export MAMBA_NO_BANNER=1 # hide mamba banner from output | ||
mamba env update --file ${{ env.CONDA_ENV }} --prune | ||
- name: Show installed | ||
run: conda list | ||
- name: conda libraries in path | ||
run: | | ||
ls ${CONDA_PREFIX}/lib | ||
ls ${CONDA_PREFIX}/include | ||
export CPPFLAGS+=" -I${CONDA_PREFIX}/include" | ||
export LDFLAGS+=" -I${CONDA_PREFIX}/lib" | ||
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${CONDA_PREFIX}/lib | ||
- name: Install fitsio | ||
run: | | ||
sudo -H apt-get install libcfitsio-dev | ||
- name: Flake | ||
run: | | ||
flake8 pymaster --exclude=nmtlib.py | ||
flake8 test --exclude=benchmarks | ||
- name: Build NaMaster | ||
run: | | ||
echo $CPPFLAGS | ||
echo $LDFLAGS | ||
echo $LD_LIBRARY_PATH | ||
python setup.py install | ||
- name: C tests | ||
run: | | ||
make check | ||
- name: Python tests | ||
run: | | ||
pytest -vv pymaster --cov=pymaster | ||
# - name: Clean install with threads | ||
# run: | | ||
# pip uninstall pymaster -y | ||
# rm _deps/lib/libnmt.a | ||
# python setup.py install --enable-fftw-pthreads --disable-openmp | ||
# | ||
# - name: C tests with threads | ||
# run: | | ||
# make check | ||
# | ||
# - name: Python tests with threads | ||
# run: | | ||
# pytest -vv pymaster | ||
# | ||
- name: coveralls | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
run: | | ||
coveralls --service=github |