-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #5 from terhorstd/module-deps
Capture and automatically load dependencies in modulefiles
- Loading branch information
Showing
5 changed files
with
92 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# Module files and Dependencies | ||
|
||
Builder does explicitly not track dependencies between packages, but is designed | ||
to work with what is there. This is necessary to be able to integrate well with | ||
different environments on each machine. What builder can do, however, is to track | ||
which modules where loaded during the build time. It is (for now) assumed that | ||
|
||
* run-time dependencies are at least a sub-set of the build-time dependencies, | ||
so that requiring build-time deps at run-time provides all package requirements, | ||
and | ||
* build-time loaded modules are also available at run-time (not a given, if | ||
packages are built on a head node, but run on a compute node, for example). | ||
|
||
Additional points to note are | ||
|
||
* required modules are different on all systems, so module-names can not be | ||
hard-coded in planfiles or modulefile templates. | ||
* Builder is not designed for cross-compiles. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
# | ||
# This file is part of Builder. | ||
# | ||
# Builder is free software: you can redistribute it and/or modify | ||
# it under the terms of the GNU General Public License as published by | ||
# the Free Software Foundation, either version 3 of the License, or | ||
# (at your option) any later version. | ||
# | ||
# Builder is distributed in the hope that it will be useful, | ||
# but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
# GNU General Public License for more details. | ||
# | ||
# You should have received a copy of the GNU General Public License | ||
# along with Builder. If not, see <https://www.gnu.org/licenses/>. | ||
# | ||
URL="https://github.com/bats-core/bats-core/archive/v${VERSION}.tar.gz" | ||
MD5SUM="e0efccc6345218d40c39678d1c89e67e" | ||
SHA256SUM="91c49b1fe6f0656c46491929ed728f8dfa9a96df0cce294963e8c6082bff87a2" | ||
|
||
build_prepare() { | ||
log_status ">>> nothing to prepare" | ||
} | ||
build_package() { | ||
log_status ">>> nothing to build" | ||
} | ||
build_install () { | ||
log_status ">>> installing..." | ||
cd "${SOURCE}" | ||
./install.sh "${TARGET}" 2>&1 | tee "${LOG}/make-install.log" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
#%Module1.0##################################################################### | ||
## | ||
set INSTALLDIR "${TARGET}" | ||
|
||
proc ModulesHelp { } { | ||
puts stderr " | ||
Bats is a TAP-compliant testing framework for Bash. It provides a simple way | ||
to verify that the UNIX programs you write behave as expected. | ||
|
||
A Bats test file is a Bash script with special syntax for defining test | ||
cases. Under the hood, each test case is just a function with a description. | ||
|
||
See https://github.com/bats-core/bats-core#bats-core-bash-automated-testing-system-2018 | ||
" | ||
} | ||
|
||
module-whatis "Bash testing framework (${VERSION})" | ||
|
||
conflict ${PACKAGE} | ||
${PREREQ_DEPENDS} | ||
|
||
prepend-path PATH \$INSTALLDIR/bin | ||
prepend-path MANPATH \$INSTALLDIR/share/man |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters