automation: add custom pre/post-commit hooks

This commit is contained in:
rebortg 2021-06-24 21:16:01 +02:00
parent e293157f49
commit 49eb1d1fbf

View File

@ -104,6 +104,62 @@ group, the script can be safeguarded like this:
exec sg vyattacfg -c "/bin/vbash $(readlink -f $0) $@"
fi
Executing pre-hooks/post-hooks Scripts
--------------------------------------
Vyos has the ability to run custom scripts before and after each commit
The default directories where your custom Scripts should be located are:
.. code-block:: none
/config/scripts/commit/pre-hooks.d - Directory with scripts that run before
each commit.
/config/scripts/commit/post-hooks.d - Directory with scripts that run after
each commit.
Scripts are run in alphabetical order. Their names must consist entirely of
ASCII upper- and lower-case letters,ASCII digits, ASCII underscores, and
ASCII minus-hyphens.No other characters are allowed.
.. note:: Custom scripts are not executed with root privileges (Use sudo inside if this is necessary).
A simple example is shown below, where the ops command executed in
the post-hook script is "show interfaces".
.. code-block:: none
vyos@vyos# set interfaces ethernet eth1 address 192.0.2.3/24
vyos@vyos# commit
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
Interface IP Address S/L Description
--------- ---------- --- -----------
eth0 198.51.100.10/24 u/u
eth1 192.0.2.3/24 u/u
eth2 - u/u
eth3 - u/u
lo 203.0.113.5/24 u/u
Preconfig on boot
-----------------
The ``/config/scripts/vyos-preconfig-bootup.script`` script is called on boot
before the VyOS configuration during boot process.
Any modifications done to work around unfixed bugs and implement enhancements
which are not complete in the VyOS system can be placed here.
The default file looks like this:
.. code-block:: none
#!/bin/sh
# This script is executed at boot time before VyOS configuration is applied.
# Any modifications required to work around unfixed bugs or use
# services not available through the VyOS CLI system can be placed here.
Postconfig on boot
------------------
@ -122,6 +178,6 @@ The default file looks like this:
# applied. Any modifications required to work around unfixed bugs or use
# services not available through the VyOS CLI system can be placed here.
.. hint:: For configuration/upgrade management issues, modification of this
.. hint:: For configuration/upgrade management issues, modification of these
script should be the last option. Always try to find solutions based on CLI
commands first.
commands first.