mirror of
https://github.com/TREX-CoE/qmckl.git
synced 2024-12-22 20:36:01 +01:00
207 lines
5.3 KiB
YAML
207 lines
5.3 KiB
YAML
name: test-build
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
standard:
|
|
|
|
runs-on: ubuntu-latest
|
|
name: Standard
|
|
|
|
steps:
|
|
- uses: actions/checkout@e2f20e631ae6d7dd3b768f56a5d2af784dd54791
|
|
|
|
- name: Install dependencies
|
|
run: sudo apt-get install emacs autoconf libhdf5-dev
|
|
|
|
- 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=/usr
|
|
make -j 4
|
|
sudo make install
|
|
|
|
- name: Build QMCkl
|
|
run: |
|
|
./autogen.sh
|
|
mkdir _build
|
|
cd _build
|
|
../configure --enable-silent-rules --enable-python
|
|
make -j 4
|
|
sudo make install
|
|
|
|
- name: Run test
|
|
run: make -j 4 check
|
|
working-directory: _build
|
|
|
|
- name: Archive test log file
|
|
if: failure()
|
|
uses: actions/upload-artifact@82c141cc518b40d92cc801eee768e7aafc9c2fa2
|
|
with:
|
|
name: test-report-ubuntu
|
|
path: test-suite.log
|
|
|
|
- name: Dist test
|
|
run: make distcheck
|
|
working-directory: _build
|
|
|
|
- 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
|
|
working-directory: _build
|
|
|
|
- name: Test the Python API
|
|
run: make python-test
|
|
working-directory: _build
|
|
|
|
debug:
|
|
|
|
runs-on: ubuntu-latest
|
|
name: Debug
|
|
|
|
steps:
|
|
- uses: actions/checkout@e2f20e631ae6d7dd3b768f56a5d2af784dd54791
|
|
|
|
- name: Install dependencies
|
|
run: sudo apt-get install emacs autoconf libhdf5-dev
|
|
|
|
- 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=/usr
|
|
make -j 4
|
|
sudo make install
|
|
|
|
- name: Build QMCkl in debug mode
|
|
run: |
|
|
./autogen.sh
|
|
mkdir _build_debug
|
|
cd _build_debug
|
|
../configure --enable-debug --enable-silent-rules
|
|
make -j2
|
|
|
|
- name: Run test
|
|
run: make -j2 check
|
|
working-directory: _build_debug
|
|
|
|
- name: Archive test log file
|
|
if: failure()
|
|
uses: actions/upload-artifact@82c141cc518b40d92cc801eee768e7aafc9c2fa2
|
|
with:
|
|
name: test-report-ubuntu-debug
|
|
path: _build_debug/test-suite.log
|
|
|
|
hpc:
|
|
|
|
runs-on: ubuntu-latest
|
|
name: HPC
|
|
|
|
steps:
|
|
- uses: actions/checkout@e2f20e631ae6d7dd3b768f56a5d2af784dd54791
|
|
|
|
- name: Install dependencies
|
|
run: sudo apt-get install emacs autoconf libhdf5-dev
|
|
|
|
- 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=/usr
|
|
make -j 4
|
|
sudo make install
|
|
|
|
- name: Compile QMCkl in HPC mode
|
|
run: |
|
|
./autogen.sh
|
|
mkdir _build_hpc
|
|
cd _build_hpc
|
|
../configure --enable-hpc
|
|
make -j2
|
|
|
|
- name: Run test
|
|
run: make -j2 check
|
|
working-directory: _build_hpc
|
|
|
|
- name: Archive test log file
|
|
if: failure()
|
|
uses: actions/upload-artifact@82c141cc518b40d92cc801eee768e7aafc9c2fa2
|
|
with:
|
|
name: test-report-ubuntu-debug
|
|
path: _build_hpc/test-suite.log
|
|
|
|
# x86_macos:
|
|
#
|
|
# runs-on: macos-latest
|
|
# name: x86 MacOS latest
|
|
#
|
|
# steps:
|
|
# - uses: actions/checkout@e2f20e631ae6d7dd3b768f56a5d2af784dd54791
|
|
# - 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@82c141cc518b40d92cc801eee768e7aafc9c2fa2
|
|
# 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
|
|
# ./configure CC=gcc-10 FC=gfortran-10 --enable-silent-rules
|
|
# make -j 4
|
|
#
|
|
# - name: Run test
|
|
# run: make -j 4 check
|
|
#
|
|
# - name: Archive test log file
|
|
# if: failure()
|
|
# uses: actions/upload-artifact@82c141cc518b40d92cc801eee768e7aafc9c2fa2
|
|
# with:
|
|
# name: test-report-macos
|
|
# path: test-suite.log
|