]> git.openstreetmap.org Git - chef.git/commitdiff
Replace tile log analyser with new one for the new CDN
authorTom Hughes <tom@compton.nu>
Sat, 3 Jul 2021 11:27:51 +0000 (12:27 +0100)
committerTom Hughes <tom@compton.nu>
Sat, 3 Jul 2021 14:07:07 +0000 (14:07 +0000)
Fixes #401

cookbooks/tilelog/attributes/default.rb
cookbooks/tilelog/metadata.rb
cookbooks/tilelog/recipes/default.rb
cookbooks/tilelog/templates/default/tilelog.erb

index 3846951a5d393696ad432ce35fa83706bc105a14..9af062fb5cd9afb3399640b7da10402d57c54344 100644 (file)
@@ -1,3 +1 @@
-default[:tilelog][:source_directory] = "/opt/tilelog"
-default[:tilelog][:input_directory] = "/store/logs/tile.openstreetmap.org"
 default[:tilelog][:output_directory] = "/store/planet/tile_logs"
index 7abc77ea2a523fdadda44455539557a7b9b1faec..b670d0a8bbf65184616ce03a55f9449ca8217803 100644 (file)
@@ -6,5 +6,4 @@ description      "Installs and configures tile log analysis"
 
 version          "1.0.0"
 supports         "ubuntu"
-depends          "git"
-depends          "tools"
+depends          "python"
index 8b4f91690ec6bcc01e94fd501570ef86407a7920..7e356e50a357a82a200c4d44a3829435e36a2b2f 100644 (file)
 # limitations under the License.
 #
 
-include_recipe "git"
-include_recipe "tools"
+include_recipe "python"
 
-package %w[
-  gcc
-  g++
-  make
-  autoconf
-  automake
-  libboost-filesystem-dev
-  libboost-program-options-dev
-  libboost-system-dev
-]
+passwords = data_bag_item("tilelog", "passwords")
 
-tilelog_source_directory = node[:tilelog][:source_directory]
-tilelog_input_directory = node[:tilelog][:input_directory]
 tilelog_output_directory = node[:tilelog][:output_directory]
 
-# resources for building the tile analysis binary
-git tilelog_source_directory do
-  action :sync
-  repository "https://github.com/zerebubuth/openstreetmap-tile-analyze.git"
-  revision "live"
-  user "root"
-  group "root"
-  notifies :run, "execute[tilelog-autogen]", :immediately
-end
-
-execute "tilelog-autogen" do
-  action :nothing
-  command "autoreconf -i"
-  cwd tilelog_source_directory
-  user "root"
-  group "root"
-  notifies :run, "execute[tilelog-configure]", :immediately
-end
-
-execute "tilelog-configure" do
-  action :nothing
-  command "./configure --with-boost-libdir=/usr/lib/x86_64-linux-gnu"
-  cwd tilelog_source_directory
-  user "root"
-  group "root"
-  notifies :run, "execute[tilelog-build]", :immediately
+python_package "tilelog" do
+  python_version "3"
 end
 
-execute "tilelog-build" do
-  action :nothing
-  command "make"
-  cwd tilelog_source_directory
-  user "root"
-  group "root"
+directory tilelog_output_directory do
+  user "www-data"
+  group "www-data"
+  mode "755"
+  recursive true
 end
 
-# resources for running the tile analysis
-template "/usr/local/bin/tilelog" do
+template "/usr/local/bin/generate-tilelog" do
   source "tilelog.erb"
   owner "root"
   group "root"
   mode "755"
-  variables :analyze_bin => "#{tilelog_source_directory}/openstreetmap-tile-analyze",
-            :input_dir => tilelog_input_directory,
-            :output_dir => tilelog_output_directory
+  variables :output_dir => tilelog_output_directory,
+            :aws_key => passwords["aws_key"]
 end
 
 cron_d "tilelog" do
   minute "17"
   hour "22"
   user "www-data"
-  command "/usr/local/bin/tilelog"
-  mailto "zerebubuth@gmail.com"
-end
-
-# resources related to the output of the analysis and where it
-# can be publicly downloaded.
-directory tilelog_output_directory do
-  user "www-data"
-  group "www-data"
-  mode "755"
-  recursive true
+  command "/usr/local/bin/generate-tilelog"
+  mailto "admins@openstreetmap.org"
 end
index 598c1e127770eaadafcde00f3c3e69227c06db8a..f53c69dc2f7951fa598a6e8701f64442e5c1689b 100644 (file)
@@ -1,28 +1,17 @@
 #!/bin/sh
 
-ANALYZE=<%= @analyze_bin %>
-LOGDIR=<%= @input_dir %>
-OUTDIR=<%= @output_dir %>
-if [ -z "$DATE" ]; then
-               DATE=`date -d "1 day ago" "+%Y-%m-%d"`
+if [ -z "$DATE" ]
+then
+  DATE=$(date -d "1 day ago" "+%Y-%m-%d")
 fi
-TMPDIR=`mktemp -d -t tmp.XXXXXXXXX`
-ORIGDIR=`pwd`
 
-clean_up() {
-               cd $ORIGDIR
-               rm -rf $TMPDIR
-}
+OUTDIR="<%= @output_dir %>"
+TMPDIR=$(mktemp -d -t tilelog.XXXXXXXXX)
 
-trap clean_up 0 HUP INT TERM
 cd $TMPDIR
 
-mkdir db
-nice -n 19 $ANALYZE $LOGDIR/*-${DATE}.xz > analyze.log
-if [ -f tiles.txt ]; then
-               nice -n 19 xz -9e -z tiles.txt
-               mv tiles.txt.xz $OUTDIR/tiles-${DATE}.txt.xz
+export AWS_ACCESS_KEY_ID="AKIASQUXHPE7JFCFMOUP"
+export AWS_SECRET_ACCESS_KEY="<%= @aws_key %>"
+export AWS_REGION="eu-west-1"
 
-else
-               cat analyze.log
-fi
+nice -n 19 /usr/local/bin/tilelog --date ${DATE} && mv tiles-${DATE}.txt.xz "${OUTDIR}"