1
0
mirror of https://github.com/TREX-CoE/qmckl.git synced 2024-06-30 00:44:52 +02:00
qmckl/.github/workflows/test-build.yml

136 lines
3.5 KiB
YAML
Raw Normal View History

name: test-build
on:
push:
pull_request:
jobs:
2021-05-12 13:24:35 +02:00
x86_ubuntu:
2020-10-17 01:28:15 +02:00
runs-on: ubuntu-latest
2021-05-12 13:24:35 +02:00
name: x86 Ubuntu latest
2020-10-17 01:28:15 +02:00
steps:
- uses: actions/checkout@v2
2021-10-14 21:40:14 +02:00
2021-10-12 11:25:05 +02:00
- name: Install dependencies
2021-10-12 00:17:14 +02:00
run: sudo apt-get install emacs autoconf libhdf5-dev
2021-10-14 21:40:14 +02:00
#- name: Install trexio from the distribution tarball
# run: |
# export TAG=v2.1.0
# export VERSION=2.1.0
# wget https://github.com/TREX-CoE/trexio/releases/download/${TAG}/trexio-${VERSION}.tar.gz
# tar -zxf trexio-${VERSION}.tar.gz
# cd trexio-${VERSION}
# ./configure --prefix=/usr
# make -j 4
# sudo make install
- name: Install the latest TREXIO from the GitHub clone
2021-10-12 00:15:38 +02:00
run: |
git clone https://github.com/TREX-CoE/trexio.git
cd trexio
./autogen.sh
2021-10-12 11:25:05 +02:00
./configure --prefix=/usr
make -j 4
2021-10-14 11:08:30 +02:00
sudo make install
2021-10-14 21:40:14 +02:00
- name: Build QMCkl
2021-05-12 13:36:25 +02:00
run: |
2021-05-12 13:33:14 +02:00
./autogen.sh
mkdir _build
cd _build
../configure --enable-silent-rules --enable-debug
make -j 4
2022-05-04 15:51:40 +02:00
sudo make install
2021-10-14 21:40:14 +02:00
2021-10-12 11:25:05 +02:00
- name: Run test
run: make -j 4 check
working-directory: _build
2021-10-14 21:40:14 +02:00
2021-07-07 19:09:03 +02:00
- name: Archive test log file
2021-10-12 11:48:48 +02:00
if: failure()
2021-07-07 19:09:03 +02:00
uses: actions/upload-artifact@v2
with:
name: test-report-ubuntu
2021-07-07 19:09:03 +02:00
path: test-suite.log
2021-10-14 21:40:14 +02:00
2021-10-12 11:25:05 +02:00
- name: Dist test
run: make distcheck
working-directory: _build
2021-10-14 21:40:14 +02:00
2022-05-04 15:14:16 +02:00
- name: Setup the virtual environment
run: |
python3 -m venv --clear pyqmckl
source pyqmckl/bin/activate
- name: Install the Python requirements
run: pip install -r requirements.txt
working-directory: python
- name: Install the Python API
run: make python-install
2022-05-04 15:29:35 +02:00
working-directory: _build
2022-05-04 15:14:16 +02:00
- name: Test the Python API
run: make python-test
2022-05-04 15:29:35 +02:00
working-directory: _build
2022-05-04 15:14:16 +02:00
x86_macos:
runs-on: macos-latest
name: x86 MacOS latest
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: brew install emacs hdf5 automake pkg-config
- name: Symlink gfortran (macOS)
if: runner.os == 'macOS'
run: |
# make sure gfortran is available
# https://github.com/actions/virtual-environments/issues/2524
# https://github.com/cbg-ethz/dce/blob/master/.github/workflows/pkgdown.yaml
sudo ln -s /usr/local/bin/gfortran-10 /usr/local/bin/gfortran
sudo mkdir /usr/local/gfortran
sudo ln -s /usr/local/Cellar/gcc@10/*/lib/gcc/10 /usr/local/gfortran/lib
gfortran --version
- name: Install the latest TREXIO from the GitHub clone
run: |
git clone https://github.com/TREX-CoE/trexio.git
cd trexio
./autogen.sh
./configure --prefix=${PWD}/_install --enable-silent-rules
make -j 4
make install
- name: Test TREXIO
run: make -j 4 check
working-directory: trexio
- name: Archive TREXIO test log file
if: failure()
uses: actions/upload-artifact@v2
with:
name: test-report-trexio-macos
path: trexio/test-suite.log
- name: Build QMCkl
run: |
export PKG_CONFIG_PATH=${PWD}/trexio/_install/lib/pkgconfig:$PKG_CONFIG_PATH
./autogen.sh
2022-06-15 11:11:11 +02:00
./configure CC=gcc-10 FC=gfortran-10 --enable-silent-rules
make -j 4
- name: Run test
run: make -j 4 check
2021-10-14 21:40:14 +02:00
- name: Archive test log file
if: failure()
uses: actions/upload-artifact@v2
with:
name: test-report-macos
path: test-suite.log