Skip to content

Simplified CI to account for most (all) practical use cases #1

Simplified CI to account for most (all) practical use cases

Simplified CI to account for most (all) practical use cases #1

Workflow file for this run

name: Latest per-python environments
on:
workflow_dispatch:
pull_request:
push:
branches:
- 'master'
- 'feature-*'
- 'bugfix-*'
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"]
os: [ubuntu-latest, macos-latest] # https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners
name: ${{ matrix.os }} python${{ matrix.python-version}}
steps:
- name: Checkout PHOEBE
uses: actions/checkout@v3
- name: Setup python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: PHOEBE environment variables
run: |
export PHOEBE_ENABLE_PLOTTING='FALSE'
export PHOEBE_UPDATE_PASSBAND_IGNORE_VERSION='TRUE'
- name: Update pip
run: |
python -m pip install --upgrade pip
- name: Install core install requirements
run: |
python -m pip install numpy packaging
- name: Install phoebe import requirements
run: |
python -m pip install astropy scipy corner
- name: Install phoebe optional modules
run: |
python -m pip install rebound requests sympy tqdm corner pyyaml pyerfa matplotlib pytest
- name: Install PHOEBE from source
run: |
python setup.py build && python setup.py install --user
- name: Install and run pipdeptree to see package dependencies
run: |
python -m pip install pipdeptree
pipdeptree
- name: Checkout photodynam
uses: actions/checkout@v3
with:
repository: phoebe-project/photodynam
path: photodynam
- name: Install photodynam
run: |
cd photodynam
make
sudo cp photodynam /usr/local/bin/
python setup.py build && python3 setup.py install --user
cd ..
- name: Test photodynam install
run: |
python -c "import photodynam"
- name: Setup GNU Fortran
uses: modflowpy/install-gfortran-action@v1
- name: Install jktebop
run: |
wget https://www.astro.keele.ac.uk/jkt/codes/jktebop-v43.tgz
tar -xvzf jktebop-v43.tgz
cd jktebop43
gfortran -o jktebop jktebop.f
echo $(pwd) >> $GITHUB_PATH
cd ..
- name: Test jktebop install
run: |
jktebop
- name: Run tests
run: |
pytest --verbose --capture=no tests/nosetests/