Skip to content

Commit c5ef1f2

Browse files
authored
Merge pull request #330 from boegel/easyblock_hook
document pre/post `easyblock` hook
2 parents 3bcb84e + ef6d76b commit c5ef1f2

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

docs/hooks.md

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,14 @@ eb ...
4343

4444
## Available hooks
4545

46-
Since EasyBuild v4.8.1, six different types of hooks are supported:
46+
Since EasyBuild v5.1.1, seven different types of hooks are supported:
4747

4848
* `start_hook`, `pre_build_and_install_loop_hook`, `post_build_and_install_loop_hook`, and `end_hook` which are triggered *once* right after
4949
EasyBuild starts, *once* before looping over the easyconfigs to be built, *once* after completing the loop over the eayconfigs to be installed,
5050
and *once* shortly before EasyBuild completes, respectively.
5151
* `parse_hook`, which is triggered when an easyconfig file is being parsed
52+
* `pre_easyblock_hook` and `post_easyblock_hook`, which are triggered before starting an installation
53+
and after completing an installation;
5254
* `module_write_hook`, which is triggered right before a module file is written.
5355
This includes the temporary module file used when installing extensions and during the sanity check,
5456
as well as the devel module.
@@ -64,7 +66,8 @@ which can also be consulted using `eb --avail-hooks`, is:
6466

6567
* `start_hook` *(only called once in an EasyBuild session)*
6668
* `parse_hook` *(available since EasyBuild v3.7.0)*
67-
* `pre_build_and_install_loop` *(available since EasyBuild v4.8.1)*
69+
* `pre_build_and_install_loop_hook` *(available since EasyBuild v4.8.1)*
70+
* `pre_easyblock_hook` *(available since EasyBuild v5.1.1)*
6871
* `pre_fetch_hook`, `post_fetch_hook`
6972
* `pre_ready_hook`, `post_ready_hook`
7073
* `pre_source_hook`, `post_source_hook`
@@ -87,7 +90,8 @@ which can also be consulted using `eb --avail-hooks`, is:
8790
* `pre_permissions_hook`, `post_permissions_hook`
8891
* `pre_package_hook`, `post_package_hook`
8992
* `pre_testcases_hook`, `post_testcases_hook`
90-
* `post_build_and_install_loop` *(available since EasyBuild v4.8.1)*
93+
* `post_easyblock_hook` *(available since EasyBuild v5.1.1)*
94+
* `post_build_and_install_loop_hook` *(available since EasyBuild v4.8.1)*
9195
* `end_hook` *(only called once in an EasyBuild session)*
9296
* `cancel_hook` *(available since EasyBuild v4.8.1)*
9397
* `fail_hook` *(available since EasyBuild v4.8.1)*
@@ -139,6 +143,7 @@ Do take into account the following:
139143
(usually referred to as `ec`) is passed as an argument.
140144
* For `pre_build_and_install_loop_hook` a list of easyconfigs is provided as an argument.
141145
* For `post_build_and_install_loop_hook` a list of easyconfigs with build results is provided as an argument.
146+
* For `pre_easyblock_hook` and `post_easyblock_hook` an `EasyBlock` instance is provided as an argument.
142147
* For `pre_run_shell_cmd_hook`, multiple arguments are passed:
143148
* An unnamed argument (often called `cmd`) that corresponds to the shell command that will be run,
144149
which could be provided either as a string value (like `"echo hello"`) or a list value (like `['echo', 'hello']`).

0 commit comments

Comments
 (0)