From ecc475af3ef218ecb36d63b2707816fbde8a8c1e Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Thu, 27 Dec 2018 01:51:43 +0100 Subject: add script 'capsman-download-packages' --- capsman-download-packages | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 capsman-download-packages (limited to 'capsman-download-packages') diff --git a/capsman-download-packages b/capsman-download-packages new file mode 100644 index 0000000..aa14049 --- /dev/null +++ b/capsman-download-packages @@ -0,0 +1,34 @@ +#!rsc +# RouterOS script: capsman-download-packages +# Copyright (c) 2018 Christian Hesse +# +# requires: dont-require-permissions=yes +# +# download and cleanup packages for CAP installation from CAPsMAN + +:global CertificateAvailable; + +:local "package-path" [ / caps-man manager get package-path ]; +:local "installed-version" [ / system package update get installed-version ]; +:local updated false; + +:foreach package in=[ / file find where type=package ] do={ + :if ([ / file get $package package-version ] != $"installed-version") do={ + :local "package-name" [ / file get $package package-name ]; + :local "package-architecture" [ / file get $package package-architecture ]; + :if ($"package-architecture" = "mips") do={ + :set "package-architecture" "mipsbe"; + } + :local "package-file" ($"package-name" . "-" . $"installed-version" . "-" . $"package-architecture" . ".npk"); + $CertificateAvailable "Let's Encrypt Authority X3" "letsencrypt"; + / tool fetch mode=https check-certificate=yes-without-crl \ + ("https://upgrade.mikrotik.com/routeros/" . $"installed-version" . "/" . $"package-file") \ + dst-path=($"package-path" . "/" . $"package-file"); + :set updated true; + / file remove $package; + } +} + +:if ($updated = true && [ / caps-man manager get enabled ] = true) do={ + / caps-man manager set enabled=yes; +} -- cgit v1.2.3-54-g00ecf