]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/nominatim/templates/default/nominatim-update.erb
nominatim: clamp down on rate limits
[chef.git] / cookbooks / nominatim / templates / default / nominatim-update.erb
index 9f122206ce2cbdbdfc6767894cdb734a5aebd08b..470cb7d4ae72e56d7572b0f79c2747ea385ed683 100644 (file)
@@ -6,17 +6,21 @@ date "+%c === Starting Nominatim update cycle"
 
 starttime=`date +%s`
 
-<% if node[:nominatim][:enable_git_updates] -%>
-if /sbin/runuser -u nominatim -- <%= @bindir %>/nominatim-update-source; then
-  pushd <%= @builddir %>
-  make install
+EXTRA_PIP='--extra-index-url <%= node[:nominatim][:pip_index] %>'
 
+# First update the importer and run the migrations.
+if <%= @venvprefix %>pip list $EXTRA_PIP --outdated | fgrep -q nominatim-db; then
+  <%= @venvprefix %>pip install $EXTRA_PIP -U nominatim-db
   if ! /sbin/runuser -u nominatim -- <%= @bindir %>/nominatim-update-refresh-db; then
     date "+%c === Database refresh failed. Stopping updates."
     exit 1
   fi
 fi
-<% end -%>
+# Then only attempt to update the frontend.
+if <%= @venvprefix %>pip list $EXTRA_PIP --outdated | fgrep -q nominatim-api; then
+  <%= @venvprefix %>pip install $EXTRA_PIP -U nominatim-api
+  systemctl reload nominatim
+fi
 
 if ! /sbin/runuser -u nominatim -- <%= @bindir %>/nominatim-update-data; then
   date "+%c === Data update failed. Stopping updates."