mirror of
https://github.com/lucaspalomodevelop/core.git
synced 2026-03-14 00:24:40 +00:00
firmware: add a 'latest' script to derive update info from changelog
This commit is contained in:
parent
edd17b5a33
commit
cd77cec93a
1
plist
1
plist
@ -717,6 +717,7 @@
|
||||
/usr/local/opnsense/scripts/firmware/connection.sh
|
||||
/usr/local/opnsense/scripts/firmware/health.sh
|
||||
/usr/local/opnsense/scripts/firmware/install.sh
|
||||
/usr/local/opnsense/scripts/firmware/latest.php
|
||||
/usr/local/opnsense/scripts/firmware/launcher.sh
|
||||
/usr/local/opnsense/scripts/firmware/license.sh
|
||||
/usr/local/opnsense/scripts/firmware/lock.sh
|
||||
|
||||
46
src/opnsense/scripts/firmware/latest.php
Executable file
46
src/opnsense/scripts/firmware/latest.php
Executable file
@ -0,0 +1,46 @@
|
||||
#!/usr/local/bin/php
|
||||
<?php
|
||||
|
||||
/*
|
||||
* Copyright (c) 2021 Franco Fichtner <franco@opnsense.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright notice,
|
||||
* this list of conditions and the following disclaimer.
|
||||
*
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
||||
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
|
||||
* OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
$changelogfile = '/usr/local/opnsense/changelog/index.json';
|
||||
|
||||
list ($series, $version) = explode(' ', trim(shell_exec('opnsense-version -Vv')));
|
||||
|
||||
$ret = json_decode(@file_get_contents($changelogfile), true);
|
||||
if ($ret != null) {
|
||||
foreach ($ret as $entry) {
|
||||
if ($entry['series'] == $series) {
|
||||
if (version_compare($entry['version'], $version, '>')) {
|
||||
$version = $entry['version'];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# emit the latest stable version or the current version if unknown
|
||||
echo $version . PHP_EOL;
|
||||
Loading…
x
Reference in New Issue
Block a user