ORSO Val. BornAgain #141
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: ORSO Val. BornAgain | |
on: | |
push: | |
branches: [ master ] | |
pull_request: | |
schedule: | |
- cron: '0 0 * * 1' | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
jobs: | |
validate_bornagain: | |
runs-on: ubuntu-22.04 | |
strategy: | |
max-parallel: 3 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: setup apt dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y --no-install-recommends python3-dev python3-pip | |
sudo apt-get install -y --no-install-recommends build-essential \ | |
gfortran cmake \ | |
libgsl-dev libboost-all-dev libfftw3-dev libtiff5-dev libcerf-dev libeigen3-dev \ | |
qtbase5-dev libqt5designercomponents5 qttools5-dev libqt5svg5-dev libqt5opengl5-dev libx11-xcb1 | |
sudo apt-get install -y --no-install-recommends qt6-base-dev libqt6svg6-dev | |
- name: ccache | |
uses: hendrikmuhs/ccache-action@v1.2 | |
- name: permanently amend PATH | |
run: | | |
echo "PATH=/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH" >> $GITHUB_ENV | |
- name: install own dependency LibHeinz | |
run: | | |
git clone https://jugit.fz-juelich.de/mlz/libheinz.git | |
pushd libheinz | |
mkdir build && pushd build | |
cmake .. | |
make | |
sudo make install | |
- name: install own dependency libcerf | |
run: | | |
git clone https://jugit.fz-juelich.de/mlz/libcerf.git | |
pushd libcerf | |
mkdir build && pushd build | |
cmake .. | |
make | |
sudo make install | |
- name: install own dependency LibFormFactor | |
run: | | |
git clone https://jugit.fz-juelich.de/mlz/libformfactor.git | |
pushd libformfactor | |
mkdir build && pushd build | |
cmake .. | |
make | |
sudo make install | |
- name: Install Python packages | |
run: | | |
python3 -m pip install --upgrade pip | |
python3 -m pip install cython pytest build wheel setuptools | |
python3 -m pip install numpy matplotlib auditwheel | |
- name: Build BornAgain | |
run: | | |
git clone --depth 1 --single-branch --branch main https://jugit.fz-juelich.de/mlz/bornagain.git | |
pushd bornagain | |
git submodule update | |
mkdir build && pushd build | |
cmake -DBA_PY_PACKAGE=ON -DBA_GUI=OFF -DCMAKE_INSTALL_PREFIX=/usr/local ../ | |
make -j4 | |
pushd PythonPackage/* | |
python3 -m pip install . | |
- name: Validate | |
run: | | |
# source /usr/local/bin/thisbornagain.sh | |
ls -al /usr/local/bin | |
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib | |
printenv | |
# run validation via pytest (for Python packages) | |
python3 -m pytest validation/scripts/test_bornagain.py |