Commit graph

382 commits

Author SHA1 Message Date
Christian Hesse
0479f59aa4 global-functions: catch runtime error when loading modules
(cherry picked from commit e74bec7e5b)
2022-04-28 10:39:25 +02:00
Christian Hesse
4cda1281f1 global-functions: validate syntax of modules
(cherry picked from commit 7c8e230521)
2022-04-28 10:39:25 +02:00
Christian Hesse
006e054517 global-functions: set $0 with script name
Now that we have some active code at the bottom...

(cherry picked from commit 9bc2123ee5)
2022-04-28 10:39:23 +02:00
Christian Hesse
d9c4e1e8d5 global-functions: $ScriptInstallUpdate: support giving comment...
... for new scripts. This allows to have extra settings from the
beginning, for example:

$ScriptInstallUpdate script1,script2 "base-url=https://example.com/your/custom/repository/"

(cherry picked from commit a058c9e1ed)
2022-04-28 10:38:29 +02:00
Christian Hesse
82c0e1c44c introduce backup-partition
(cherry picked from commit 71b69fc189)
2022-03-31 10:46:02 +02:00
Christian Hesse
98b08bcbd2 global-functions: (re-)introduce global $Read
... to interactively read input from user on terminal.

(cherry picked from commit 07cc38e973)
2022-03-08 22:32:11 +01:00
Christian Hesse
b35e39b0fa global-functions: update upgrade instruction
The branch 'routeros-v7' will not exist forever...
And the link is gone already.
2022-03-04 15:54:18 +01:00
Christian Hesse
c5cc72de0e global-functions: $FlushEmailQueue: delay if "in-progress"...
Something else is sending a mail... Let's wait and hope the status is
not confused.

(cherry picked from commit c9b6cee83f)
2022-03-01 13:00:52 +01:00
Christian Hesse
184959bc77 global-functions: $DeviceInfo: firmware only if upgrade pending
(cherry picked from commit a00e912bb5)
2022-02-24 12:05:10 +01:00
Christian Hesse
fed4757eaa doc/mod: notify about new documentation 2022-02-21 12:56:02 +01:00
Christian Hesse
3dd3452303 global-functions: $MkDir: do not act without directory
(cherry picked from commit 7b48b25c27)
2022-02-10 11:06:31 +01:00
Christian Hesse
32cc55f7d2 introduce firmware-upgrade-reboot
(cherry picked from commit 3c358980cb)
2022-02-10 09:15:21 +01:00
Christian Hesse
c03da561cd netwatch-notify: allow to suppress notification on host down
(cherry picked from commit c6e581d4f9)
2022-02-10 09:14:36 +01:00
Christian Hesse
0a9d0473f3 global-functions: $ScriptInstallUpdate: quote names in log output
(cherry picked from commit 5e32105e7e)
2022-01-20 22:18:07 +01:00
Christian Hesse
9024e20c0b global-functions: $ScriptInstallUpdate: give final url in debug output
(cherry picked from commit b4a5d824a2)
2022-01-20 22:18:07 +01:00
Christian Hesse
5363df3568 global-functions: $DownloadPackage: handle special case with name
For RouterOS 6.x bundled package version and architecture are swapped.

Closes: #21

(cherry picked from commit 1e6931c8e3)
2022-01-17 20:58:03 +01:00
Christian Hesse
25338ca384 global-functions: $DownloadPackage: give url in debug output
(cherry picked from commit 51cd11c803)
2022-01-17 20:57:19 +01:00
Christian Hesse
ee9818e34d global: send notification on 'routeros-v6'
This is mainly to keep the version in 'routeros-v6'
and 'main' in sync...
2022-01-14 09:17:54 +01:00
Christian Hesse
491f53a8ce hotspot-to-wpa: support settings from template 2022-01-07 15:28:08 +01:00
Christian Hesse
ed0135c613 Migrate configuration and send notification on renames 2022-01-06 08:19:58 +01:00
Christian Hesse
57c80dc2a4 introduce netwatch-dns 2022-01-03 10:00:16 +01:00
Christian Hesse
95e9820718 update copyright for 2022 2022-01-01 21:38:15 +01:00
Christian Hesse
500d0679ed global-functions: $RequiredRouterOS: fix warning
Passing a boolean does not work... Handle as string.
2021-12-20 15:31:34 +01:00
Christian Hesse
229a7d18c9 global-functions: $DownloadPackage: make directory first
The fetch command creates the directory itself, however using $MkDir
gives better error message when creating directory fails.
2021-12-14 00:10:30 +01:00
Christian Hesse
5846b85e28 global-functions: $MkDir: log error 2021-12-14 00:07:22 +01:00
Christian Hesse
e111832462 global-functions: $NotificationFunctions->"email": do not declare unused function 2021-12-14 00:06:10 +01:00
Christian Hesse
0fab371d1a global-functions: $DeviceInfo: show license level if available
This now shows license level for CHR.

The property is named different for Routerboards. As these have the
license bundled to hardware anyway we do not show it there.
2021-12-13 22:25:55 +01:00
Christian Hesse
40dea01670 README: changes for RouterOS v6 2021-12-13 11:36:03 +01:00
Christian Hesse
6dede0c49b global-functions: $ScriptLock: simplify cleanup code 2021-12-10 07:34:09 +01:00
Christian Hesse
a46fd48187 global-functions: $ScriptLock: remove ticket in a loop
This was not required with RouterOS v6, but for any reason removing a
ticket may fail with RouterOS v7 in very rare cases. So remove in a
loop...
2021-12-09 22:48:30 +01:00
Christian Hesse
b423e6ed0f global-functions: $ScriptLock: cleanup in dedicated function 2021-12-09 22:48:30 +01:00
Christian Hesse
cdcab4599a global-functions: $ScriptLock: initialize earlier 2021-12-09 12:52:03 +01:00
Christian Hesse
9c87b5a222 global-functions: $ScriptLock: initialize empty array on cleanup 2021-12-09 12:52:03 +01:00
Christian Hesse
a98965d727 global-functions: give a hint on RouterOS v7 2021-12-07 23:01:01 +01:00
Christian Hesse
1f5cc39b3c global-config: load overlay automatically 2021-12-07 21:58:03 +01:00
Christian Hesse
dab04fd63e README: changes for RouterOS v7 2021-12-07 11:11:19 +01:00
Christian Hesse
5b786e10c8 global-functions: $DeviceInfo: add current firmware
(I would like to show a note if the upgrade is pending... But did not
find a way to get that information. Is there?)
2021-11-22 09:57:57 +01:00
Christian Hesse
2625cc09a5 check-health: support hard lower limit for voltage
... to detect slow decrease of voltage, for example with UPS.
2021-11-16 22:21:37 +01:00
Christian Hesse
d87c50cf68 check-health: indicate voltage increase or decrease 2021-11-16 22:21:37 +01:00
Christian Hesse
185fe2c730 reintroduce global-wait 2021-11-16 22:21:37 +01:00
Christian Hesse
3b997d3087 global-functions: drop deprecated function $LogPrintExit
... which has been replaced by $LogPrintExit2 some time ago.
2021-11-16 22:21:22 +01:00
Christian Hesse
8fc88c73f8 shorten modules directory name (global-functions.d -> mod) 2021-11-15 22:18:10 +01:00
Christian Hesse
f484e45b6a bridge-port-to-default -> global-functions.d/bridge-port-to 2021-11-15 22:18:10 +01:00
Christian Hesse
b6215ba958 add global-functions.d/bridge-port-vlan 2021-11-12 16:09:35 +01:00
Christian Hesse
99a95d310e global-functions: $NotificationFunctions->"email": check for valid settings
No need to queue mails if 'address' and 'from' are not specified...
2021-10-01 20:39:59 +02:00
Christian Hesse
f780b205a9 global-functions: $DeviceInfo: do not fail on non-RouterBoard with ROS 7.x 2021-10-01 09:00:36 +02:00
Christian Hesse
9295d06fe2 global-functions.d/inspectvar: add $InspectVar...
to inspect variables. This is useful for variables with (nested) arrays,
for example inspecting $NetwatchNotify (from netwatch-notify):

[admin@Mikrotik] > $InspectVar $NetwatchNotify
-type-> array
  -key-> quad-one
    -type-> array
      -key-> count
        -type-> num
        -value-> 0
      -key-> notified
        -type-> bool
        -value-> false
      -key-> parent
        -type-> nothing
      -key-> resolve-failed
        -type-> nothing
      -key-> since
        -type-> nothing
  -key-> example.com
    -type-> array
      -key-> count
        -type-> num
        -value-> 0
      -key-> notified
        -type-> bool
        -value-> false
      -key-> parent
        -type-> str
        -value-> quad-one
      -key-> resolve-failed
        -type-> nothing
      -key-> since
        -type-> nothing
2021-09-21 21:26:13 +02:00
Christian Hesse
ce78d7d9e9 global-functions: notify about move of $IPCalc and $ScriptRunOnce to modules
Just install with...

$ScriptInstallUpdate global-functions.d/ipcalc

... and/or...

$ScriptInstallUpdate global-functions.d/scriptrunonce

... and use the functions as before.
2021-09-21 21:26:13 +02:00
Christian Hesse
012db05a93 global-functions: move $ScriptRunOnce to optional module 2021-09-21 21:26:13 +02:00
Christian Hesse
8b05d25487 global-functions: move $IPCalc to optional module 2021-09-21 21:26:13 +02:00