Skip to content

ComputeCanada/compatibility-layer

 
 

Repository files navigation

Compatibility layer

Introduction

The compatibility layer of the EESSI project uses Gentoo Prefix to provide a known base on top of the host. This is the foundation we use to build our software stack on. An alternative would be the NixOS.

Installation and Configuration

The installation of the compatibility layer is implemented with an Ansible playbook and Ansible role, which you can find in the ansible subdirectory. It will do the Gentoo Prefix bootstrap (which usually takes several hours to complete!), add a lot of EESSI configurations and customizations, install a bunch of packages that we require for EESSI, and finally it will run a ReFrame test suite to check the installation.

To make the installation even easier, we provide a script install_compatibility_layer.sh that can be used on basically any host that has Apptainer installed, without requiring special privileges. The script will execute the Ansible playbook inside an Apptainer build container, ensuring that all dependencies (including Ansible itself) are available. In order to be able to write to /cvmfs, the container will bind mount a directory from the host as /cvmfs inside the container.

License

The software in this repository is distributed under the terms of the GNU General Public License v2.0.

See LICENSE for more information.

SPDX-License-Identifier: GPL-2.0-only

Releases

No releases published

Packages

No packages published

Languages

  • Shell 93.7%
  • Python 6.3%