summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2024-05-06 18:25:28 +0000
committerDaniil Baturin <daniil@vyos.io>2024-05-06 18:25:28 +0000
commit55fb42b13321359537316b02f015dc29aa142b71 (patch)
tree7a929c5ef3abc0d2b03a18d2c3bce45a173db4c3
parent6fca9567c9f6ff8784d47f803bad0c6995ce62e1 (diff)
downloadvyos-1x-55fb42b13321359537316b02f015dc29aa142b71.tar.gz
vyos-1x-55fb42b13321359537316b02f015dc29aa142b71.zip
vyos.template: T3664: add a module-level variable for template directory
to enable calling scripts outside of live VyOS systems
-rw-r--r--python/vyos/template.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/python/vyos/template.py b/python/vyos/template.py
index ffccae9a1..cdcbdc6c3 100644
--- a/python/vyos/template.py
+++ b/python/vyos/template.py
@@ -25,6 +25,14 @@ from vyos.utils.file import makedir
from vyos.utils.permission import chmod
from vyos.utils.permission import chown
+# We use a mutable global variable for the default template directory
+# to make it possible to call scripts from this repository
+# outside of live VyOS systems.
+# If something (like the image build scripts)
+# want to call a script, they can modify the default location
+# to the repository path.
+DEFAULT_TEMPLATE_DIR = directories["templates"]
+
# Holds template filters registered via register_filter()
_FILTERS = {}
_TESTS = {}
@@ -33,7 +41,7 @@ _TESTS = {}
@functools.lru_cache(maxsize=2)
def _get_environment(location=None):
if location is None:
- loc_loader=FileSystemLoader(directories["templates"])
+ loc_loader=FileSystemLoader(DEFAULT_TEMPLATE_DIR)
else:
loc_loader=FileSystemLoader(location)
env = Environment(