]> git.openstreetmap.org Git - nominatim.git/commitdiff
Merge pull request #874 from lonvia/check-for-updates
authorSarah Hoffmann <lonvia@denofr.de>
Wed, 10 Jan 2018 21:51:12 +0000 (22:51 +0100)
committerGitHub <noreply@github.com>
Wed, 10 Jan 2018 21:51:12 +0000 (22:51 +0100)
Add function to check if new updates are available

1  2 
utils/update.php

diff --combined utils/update.php
index 2fc3dba2acfc82285498d89a0e53597afd149c31,492cb6c4f1c7f7a80ac785b117edfb50c70481ce..d38a854aa09dda5e246ab315c01117cf5d22e3a4
@@@ -13,6 -13,7 +13,7 @@@ $aCMDOption
     array('verbose', 'v', 0, 1, 0, 0, 'bool', 'Verbose output'),
  
     array('init-updates', '', 0, 1, 0, 0, 'bool', 'Set up database for updating'),
+    array('check-for-updates', '', 0, 1, 0, 0, 'bool', 'Check if new updates are available'),
     array('import-osmosis', '', 0, 1, 0, 0, 'bool', 'Import updates once'),
     array('import-osmosis-all', '', 0, 1, 0, 0, 'bool', 'Import updates forever'),
     array('no-index', '', 0, 1, 0, 0, 'bool', 'Do not index the new data'),
@@@ -98,6 -99,17 +99,17 @@@ if ($aResult['init-updates']) 
      echo "Done. Database updates will start at sequence $aOutput[0] ($sWindBack)\n";
  }
  
+ if ($aResult['check-for-updates']) {
+     $aLastState = chksql($oDB->getRow('SELECT sequence_id FROM import_status'));
+     if (!$aLastState['sequence_id']) {
+         fail('Updates not set up. Please run ./utils/update.php --init-updates.');
+     }
+     system(CONST_BasePath.'/utils/check_server_for_updates.py '.CONST_Replication_Url.' '.$aLastState['sequence_id'], $iRet);
+     exit($iRet);
+ }
  if (isset($aResult['import-diff']) || isset($aResult['import-file'])) {
      // import diffs and files directly (e.g. from osmosis --rri)
      $sNextFile = isset($aResult['import-diff']) ? $aResult['import-diff'] : $aResult['import-file'];
@@@ -130,25 -142,25 +142,25 @@@ $bUseOSMApi = isset($aResult['import-fr
  $sContentURL = '';
  if (isset($aResult['import-node']) && $aResult['import-node']) {
      if ($bUseOSMApi) {
 -        $sContentURL = 'http://www.openstreetmap.org/api/0.6/node/'.$aResult['import-node'];
 +        $sContentURL = 'https://www.openstreetmap.org/api/0.6/node/'.$aResult['import-node'];
      } else {
 -        $sContentURL = 'http://overpass-api.de/api/interpreter?data=node('.$aResult['import-node'].');out%20meta;';
 +        $sContentURL = 'https://overpass-api.de/api/interpreter?data=node('.$aResult['import-node'].');out%20meta;';
      }
  }
  
  if (isset($aResult['import-way']) && $aResult['import-way']) {
      if ($bUseOSMApi) {
 -        $sContentURL = 'http://www.openstreetmap.org/api/0.6/way/'.$aResult['import-way'].'/full';
 +        $sContentURL = 'https://www.openstreetmap.org/api/0.6/way/'.$aResult['import-way'].'/full';
      } else {
 -        $sContentURL = 'http://overpass-api.de/api/interpreter?data=(way('.$aResult['import-way'].');node(w););out%20meta;';
 +        $sContentURL = 'https://overpass-api.de/api/interpreter?data=(way('.$aResult['import-way'].');node(w););out%20meta;';
      }
  }
  
  if (isset($aResult['import-relation']) && $aResult['import-relation']) {
      if ($bUseOSMApi) {
 -        $sContentURLsModifyXMLstr = 'http://www.openstreetmap.org/api/0.6/relation/'.$aResult['import-relation'].'/full';
 +        $sContentURLsModifyXMLstr = 'https://www.openstreetmap.org/api/0.6/relation/'.$aResult['import-relation'].'/full';
      } else {
 -        $sContentURL = 'http://overpass-api.de/api/interpreter?data=((rel('.$aResult['import-relation'].');way(r);node(w));node(r));out%20meta;';
 +        $sContentURL = 'https://overpass-api.de/api/interpreter?data=((rel('.$aResult['import-relation'].');way(r);node(w));node(r));out%20meta;';
      }
  }
  
@@@ -251,7 -263,7 +263,7 @@@ if ($aResult['index']) 
  if ($aResult['import-osmosis'] || $aResult['import-osmosis-all']) {
      //
      if (strpos(CONST_Replication_Url, 'download.geofabrik.de') !== false && CONST_Replication_Update_Interval < 86400) {
 -        fail("Error: Update interval too low for download.geofabrik.de.  Please check install documentation (http://wiki.openstreetmap.org/wiki/Nominatim/Installation#Updates)\n");
 +        fail("Error: Update interval too low for download.geofabrik.de.  Please check install documentation (http://nominatim.org/release-docs/latest/Import-and-Update#setting-up-the-update-process)\n");
      }
  
      $sImportFile = CONST_InstallPath.'/osmosischange.osc';