diff -Nur smeserver-yum-2.6.0.old/root/sbin/e-smith/check4updates smeserver-yum-2.6.0/root/sbin/e-smith/check4updates --- smeserver-yum-2.6.0.old/root/sbin/e-smith/check4updates 2019-12-05 20:33:02.976000000 -0500 +++ smeserver-yum-2.6.0/root/sbin/e-smith/check4updates 2019-12-05 21:05:07.132000000 -0500 @@ -21,6 +21,9 @@ if [ $? = 100 ]; then echo -e "===\n=== yum reports available updates:\n===" >> $TMPFILE cat $TMP1 >> $TMPFILE + # we have updates, let's inform the server-manager + /usr/bin/sv o yum + fi if [ -s $TMPFILE ]; then diff -Nur smeserver-yum-2.6.0.old/root/sbin/e-smith/yum_update_dbs smeserver-yum-2.6.0/root/sbin/e-smith/yum_update_dbs --- smeserver-yum-2.6.0.old/root/sbin/e-smith/yum_update_dbs 2019-12-05 20:33:03.007000000 -0500 +++ smeserver-yum-2.6.0/root/sbin/e-smith/yum_update_dbs 2019-12-05 21:03:32.393000000 -0500 @@ -40,12 +40,16 @@ # For speed and to reduce log noise, we don't use # the esmith::DB routines here -# XXX - FIXME - We should add -R xxx to sleep for a while - +# We do not use -R xxx to sleep for a while, as we do this at cron level +# this allows faster results when needed or delayed when not + use constant YUM_CMD => "/usr/bin/yum -d 0 -e 0 "; # avoid error with no installed groups file. -system("YUM_CMD groups mark convert -d 0 -e 0 1>/dev/null") unless (-d "/var/lib/yum/groups/"); +system(YUM_CMD." groups mark convert -d 0 -e 0 1>/dev/null") unless (-d "/var/lib/yum/groups/"); + +# yum check to have fresh metadata +system(YUM_CMD." check-update 1>/dev/null"); my $tmp_file; diff -Nur smeserver-yum-2.6.0.old/root/usr/lib/yum-plugins/smeserver.py smeserver-yum-2.6.0/root/usr/lib/yum-plugins/smeserver.py --- smeserver-yum-2.6.0.old/root/usr/lib/yum-plugins/smeserver.py 2019-12-05 20:33:02.989000000 -0500 +++ smeserver-yum-2.6.0/root/usr/lib/yum-plugins/smeserver.py 2019-12-05 22:20:38.831000000 -0500 @@ -300,6 +300,8 @@ if smechange: os.spawnl(os.P_WAIT, config_set, config_set, 'set', 'UnsavedChanges', 'yes') os.spawnl(os.P_WAIT, navigation_conf, navigation_conf) + print "Reload yum db for server-manager" + os.spawnl(os.P_WAIT, yum_update_dbs, yum_update_dbs) def close_hook(conduit): if ourfile and os.path.isfile('/var/run/yum.status'):