From e506cc8a3c15852a2776d9dc72695c5b5b2c7134 Mon Sep 17 00:00:00 2001 From: Renato Botelho Date: Thu, 10 Aug 2017 10:09:53 -0300 Subject: Make sure pkg metadata is updated at least once daily. It will be used to speedup GUI parts related to pkg update --- src/etc/inc/globals.inc | 2 +- src/etc/inc/upgrade_config.inc | 15 +++++++++++++++ src/etc/pfSense-rc | 3 +++ src/etc/rc.update_pkg_metadata | 42 ++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 61 insertions(+), 1 deletion(-) create mode 100755 src/etc/rc.update_pkg_metadata (limited to 'src/etc') diff --git a/src/etc/inc/globals.inc b/src/etc/inc/globals.inc index 071ab3f..b803953 100644 --- a/src/etc/inc/globals.inc +++ b/src/etc/inc/globals.inc @@ -71,7 +71,7 @@ $g = array( "disablecrashreporter" => false, "crashreporterurl" => "https://crashreporter.pfsense.org/crash_reporter.php", "debug" => false, - "latest_config" => "16.8", + "latest_config" => "16.9", "minimum_ram_warning" => "101", "minimum_ram_warning_text" => "128 MB", "wan_interface_name" => "wan", diff --git a/src/etc/inc/upgrade_config.inc b/src/etc/inc/upgrade_config.inc index a8d5370..fbd6d41 100644 --- a/src/etc/inc/upgrade_config.inc +++ b/src/etc/inc/upgrade_config.inc @@ -5360,4 +5360,19 @@ function upgrade_166_to_167() { function upgrade_167_to_168() { upgrade_166_to_167(); } + +function upgrade_168_to_169() { + global $config; + + $config['cron']['item'][] = array( + 'minute' => '1', + 'hour' => '0', + 'mday' => '*', + 'month' => '*', + 'wday' => '*', + 'who' => 'root', + 'command' => '/usr/bin/nice -n20 /etc/rc.update_pkg_metadata' + ); +} + ?> diff --git a/src/etc/pfSense-rc b/src/etc/pfSense-rc index 0bb0f2b..31da47b 100755 --- a/src/etc/pfSense-rc +++ b/src/etc/pfSense-rc @@ -412,6 +412,9 @@ fi /usr/local/sbin/${product}-upgrade -y -b 3 +# Update pkg metadata +/etc/rc.update_pkg_metadata now + # Log product version to syslog get_version BUILDTIME=`cat /etc/version.buildtime` diff --git a/src/etc/rc.update_pkg_metadata b/src/etc/rc.update_pkg_metadata new file mode 100755 index 0000000..8c4e019 --- /dev/null +++ b/src/etc/rc.update_pkg_metadata @@ -0,0 +1,42 @@ +#!/bin/sh +# +# rc.update_pkg_metadata +# +# Copyright (c) 2017 Rubicon Communications, LLC (Netgate). All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +if [ "$1" = "now" ]; then + sleep_time=0 +else + sleep_time=$(jot -r 1 1 86399) +fi + +# Read product_name from $g, defaults to pfSense +product=$(/usr/local/sbin/read_global_var product_name pfSense) + +tmp_version=$(mktemp -q /tmp/${product}_version.XXXXXXXX) \ + || exit 1 + +( \ + sleep $sleep_time \ + && /usr/local/sbin/${product}-upgrade -uf \ + && ( \ + /usr/local/sbin/${product}-upgrade -Uc >> $tmp_version \ + ; test $? -eq 2 && return 0 \ + ) \ + && mv $tmp_version /var/run/${product}_version \ + || rm -f $tmp_version +) >/dev/null 2>&1 & + +exit 0 -- cgit v1.1