aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorGravatar Christian Hesse <mail@eworm.de>2021-11-15 22:17:43 +0100
committerGravatar Christian Hesse <mail@eworm.de>2021-11-16 22:21:37 +0100
commit185fe2c73035b66b2c8e0048eedca47fd438e3e6 (patch)
tree06daedc04508595aa2f69f6b9ea21d4324d6c9d1 /doc
parent3b997d30870b08b18adc051af5ecca639bd12add (diff)
reintroduce global-waitchange-68
Diffstat (limited to 'doc')
-rw-r--r--doc/global-wait.md40
-rw-r--r--doc/mod/bridge-port-to.md4
-rw-r--r--doc/mod/bridge-port-vlan.md4
3 files changed, 46 insertions, 2 deletions
diff --git a/doc/global-wait.md b/doc/global-wait.md
new file mode 100644
index 0000000..2d9dad3
--- /dev/null
+++ b/doc/global-wait.md
@@ -0,0 +1,40 @@
+Wait for global functions and modules
+=====================================
+
+[◀ Go back to main README](../README.md)
+
+🛈 This script can not be used on its own but requires the base installation.
+See [main README](../README.md) for details.
+
+Description
+-----------
+
+The global functions from `global-functions` and modules are loaded by
+scheduler at system startup. Running these functions at system startup may
+result in race condition where configuration and/or function are not yet
+available. This script is supposed to wait for everything being prepared.
+
+Do **not** add this script `global-wait` to the `global-scripts` scheduler!
+It would inhibit the initialization of configuration and functions.
+
+Requirements and installation
+-----------------------------
+
+Just install the script:
+
+ $ScriptInstallUpdate global-wait;
+
+... and add it to your scheduler, for example in combination with the module
+to [manage VLANs on bridge ports](mod/bridge-port-vlan.md):
+
+ / system scheduler add name=bridge-port-vlan on-event="/ system script run global-wait; :global BridgePortVlan; \$BridgePortVlan default;" start-time=startup;
+
+See also
+--------
+
+* [Manage ports in bridge](mod/bridge-port-to.md)
+* [Manage VLANs on bridge ports](mod/bridge-port-vlan.md)
+
+---
+[◀ Go back to main README](../README.md)
+[▲ Go back to top](#top)
diff --git a/doc/mod/bridge-port-to.md b/doc/mod/bridge-port-to.md
index 89ee5d0..5b2817b 100644
--- a/doc/mod/bridge-port-to.md
+++ b/doc/mod/bridge-port-to.md
@@ -34,7 +34,8 @@ Also dhcp client can be handled:
Add a scheduler to start with default setup on system startup:
- / system scheduler add name=bridge-port-to on-event=":global GlobalFunctionsReady; :while (\$GlobalFunctionsReady != true) do={ :delay 500ms; }; :global BridgePortTo; \$BridgePortTo default;" start-time=startup;
+ $ScriptInstallUpdate global-wait;
+ / system scheduler add name=bridge-port-vlan on-event="/ system script run global-wait; :global BridgePortTo; \$BridgePortTo default;" start-time=startup;
Usage and invocation
--------------------
@@ -72,6 +73,7 @@ configuration:
See also
--------
+* [Wait for global functions und modules](../global-wait.md)
* [Manage VLANs on bridge ports](bridge-port-vlan.md)
---
diff --git a/doc/mod/bridge-port-vlan.md b/doc/mod/bridge-port-vlan.md
index 8b88777..67dd04d 100644
--- a/doc/mod/bridge-port-vlan.md
+++ b/doc/mod/bridge-port-vlan.md
@@ -39,7 +39,8 @@ Also dhcp client can be handled:
Add a scheduler to start with default setup on system startup:
- / system scheduler add name=bridge-port-vlan on-event=":global GlobalFunctionsReady; :while (\$GlobalFunctionsReady != true) do={ :delay 500ms; }; :global BridgePortVlan; \$BridgePortVlan default;" start-time=startup;
+ $ScriptInstallUpdate global-wait;
+ / system scheduler add name=bridge-port-vlan on-event="/ system script run global-wait; :global BridgePortVlan; \$BridgePortVlan default;" start-time=startup;
Usage and invocation
--------------------
@@ -76,6 +77,7 @@ configuration:
See also
--------
+* [Wait for global functions und modules](../global-wait.md)
* [Manage ports in bridge](bridge-port-to.md)
---