Skip to content

Merge branch 'master' into cvc_description #1128

Merge branch 'master' into cvc_description

Merge branch 'master' into cvc_description #1128

Workflow file for this run

name: "Backends"
on: [push, pull_request]
# These jobs call a template workflow `backend-template.yml`, which performs
# all the necessary steps to run the regression tests of the backend.
# Variables listed under `with` are mandatory, except `test_lib_directory`
# and `test_interface_directory`, which are optional. `backend_name` must be
# unique, as it is used to identify the cache.
# See `backend-template.yml` for more details.
env:
# Set environment variables to make secrets available to the template steps
PULL_NAMD_KEY: secrets.PULL_NAMD_KEY
PULL_VMD_KEY: secrets.PULL_VMD_KEY
PULL_VMD_PLUGINS_KEY: secrets.PULL_VMD_PLUGINS_KEY
jobs:
lammps:
name: LAMMPS
if: github.event_name == 'pull_request' || contains(github.event.head_commit.message, 'test-lammps')
uses: ./.github/workflows/backend-template.yml
with:
backend_name: LAMMPS
backend_repo: lammps/lammps
backend_repo_ref: develop
container_name: CentOS7-devel
path_compile_script: devel-tools/compile-lammps.sh
test_lib_directory: lammps/tests/library
test_interface_directory: lammps/tests/interface
rpath_exe: install/bin/lmp
namd:
name: NAMD
# Prevent running this job on PRs across different accounts, because
# secrets wouldn't be shared
if: |
(github.event_name == 'pull_request' && github.repository_owner == github.event.pull_request.head.repo.owner.login) ||
(github.event_name == 'push' && contains(github.event.head_commit.message, 'test-namd'))
uses: ./.github/workflows/backend-template.yml
with:
backend_name: NAMD
backend_repo: Colvars/namd
backend_repo_ref: master
container_name: CentOS7-devel
path_compile_script: devel-tools/compile-namd.sh
test_lib_directory: namd/tests/library
test_interface_directory: namd/tests/interface
rpath_exe: Linux-x86_64-g++.multicore/namd2
secrets:
# Choice of license by UIUC prevents sharing the code, hence the secret
private_key: ${{ secrets.PULL_NAMD_KEY }}
namd3:
name: NAMD3 (no CUDA)
# Prevent running this job on PRs across different accounts, because
# secrets wouldn't be shared
if: |
(github.event_name == 'pull_request' && github.repository_owner == github.event.pull_request.head.repo.owner.login) ||
(github.event_name == 'push' && contains(github.event.head_commit.message, 'test-namd'))
uses: ./.github/workflows/backend-template.yml
with:
backend_name: NAMD3
backend_repo: Colvars/namd
backend_repo_ref: devel
path_compile_script: devel-tools/compile-namd.sh
test_lib_directory: namd/tests/library
# Interface tests disabled until map variables are merged into NAMD3
# test_interface_directory: namd/tests/interface
rpath_exe: Linux-x86_64-g++.multicore/namd3
container_name: CentOS7-devel
secrets:
# Choice of license by UIUC prevents sharing the code, hence the secret
private_key: ${{ secrets.PULL_NAMD_KEY }}
vmd:
name: VMD
# Prevent running this job on PRs across different accounts, because
# secrets wouldn't be shared
if: |
(github.event_name == 'pull_request' && github.repository_owner == github.event.pull_request.head.repo.owner.login) ||
(github.event_name == 'push' && contains(github.event.head_commit.message, 'test-vmd'))
uses: ./.github/workflows/backend-template.yml
with:
backend_name: VMD
backend_repo: Colvars/vmd
backend_repo_ref: master
container_name: CentOS7-devel
# Special variable for VMD test case since it's the only one
# which needs to checkout 2 repos
vmd_plugins_repo: Colvars/vmd-plugins
path_compile_script: devel-tools/compile-vmd.sh
test_interface_directory: vmd/tests/interface
rpath_exe: install/vmd
secrets:
# Per-repository secret
private_key: ${{ secrets.PULL_VMD_KEY }}
private_key_vmd_plugins: ${{ secrets.PULL_VMD_PLUGINS_KEY }}
gromacs-2020:
name: GROMACS 2020
if: github.event_name == 'pull_request' || contains(github.event.head_commit.message, 'test-gromacs-2020')
uses: ./.github/workflows/backend-template.yml
with:
backend_name: GROMACS-2020
backend_repo: gromacs/gromacs
backend_repo_ref: release-2020
container_name: CentOS7-devel
path_compile_script: devel-tools/compile-gromacs.sh
test_lib_directory: gromacs/tests/library
# Gromacs need to be compiled in double precision to pass the tests
rpath_exe: install/bin/gmx_d
gromacs-2021:
name: GROMACS 2021
if: github.event_name == 'pull_request' || contains(github.event.head_commit.message, 'test-gromacs-2021')
uses: ./.github/workflows/backend-template.yml
with:
backend_name: GROMACS-2021
backend_repo: gromacs/gromacs
backend_repo_ref: release-2021
container_name: CentOS9-devel
path_compile_script: devel-tools/compile-gromacs.sh
test_lib_directory: gromacs/tests/library
rpath_exe: install/bin/gmx_d
gromacs-2022:
name: GROMACS 2022
if: github.event_name == 'pull_request' || contains(github.event.head_commit.message, 'test-gromacs-2022')
uses: ./.github/workflows/backend-template.yml
with:
backend_name: GROMACS-2022
backend_repo: gromacs/gromacs
backend_repo_ref: release-2022
container_name: CentOS9-devel
path_compile_script: devel-tools/compile-gromacs.sh
test_lib_directory: gromacs/tests/library
rpath_exe: install/bin/gmx_d