wiki:WikiStart
Last modified 3 years ago Last modified on 12/16/13 13:06:53

Embody – Environment Modules Build system

Embody (Environment Modules Build) is a software build tool with integrated support for the environment-modules package. The tool eases and automates the task of building and installing software packages from source or binary distributions, as well as the management of associated modulefiles.

Tasks normally described in README and INSTALL files are automated and logged.

The design goal was to describe routine installation tasks by variables and functions, and to provide a self-documenting and unified way for maintaining package installations. While there is some conceptual overlap with rpm(8), the goal was simplicity and decoupling from rpm's dependencies and database, which enables coexistence of several builds. Useful on HPC systems, new builds can be deployed centrally to shared file systems and without affecting running jobs.

Concept

Package deployment is done by a series of staging functions in bash(1) syntax. Default functions are pre-defined, and may be re-defined by the user in an EMBODY script. The predefined functions detect a couple of deployment styles and execute canonical actions. The recognized styles are, in this order:

  • rpmbuild(8) from a spec file
  • Python-style setup.py
  • GNU-style configure + make

Note about rpm: Embody uses an existing .spec file only for metadata and building; it is not an RPM frontend or wrapper.

Prerequisites

Embody interacts with the environment-modules package (http://modules.sourceforge.net/), which must be installed and configured.

You'll also need a subversion client to access the current distribution.

Distribution

Embody is distributed from this site via subversion. You'll need a subversion client to access it:

svn co https://svn.anl.gov/repos/embody/trunk embody                                       

To fetch a specific version:

svn co https://svn.anl.gov/repos/embody/tags/1.0.5 embody                              

See Tags for available releases. Alternatively, download a tar.gz file linked in the Attachments section below.

Author

Michael Sternberg, Center for Nanoscale Materials at Argonne National Laboratory.

Copyright (C) 2012, UChicago Argonne, LLC; All Rights Reserved. See the file COPYRIGHT for the full Open Source License.

Attachments