]> 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 145ae6a8c6f5e15f48c7d2e725d7406152108d99..470cb7d4ae72e56d7572b0f79c2747ea385ed683 100644 (file)
@@ -6,22 +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
+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
-
-  pushd <%= @builddir %>
-  make install
-
-<% if node[:nominatim][:api_flavour] == "python" -%>
+fi
+# 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
-<% end -%>
 fi
-<% end -%>
 
 if ! /sbin/runuser -u nominatim -- <%= @bindir %>/nominatim-update-data; then
   date "+%c === Data update failed. Stopping updates."