MaxSem has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/225702

Change subject: role::maps::master: Import waterlines on init and then weekly
......................................................................

role::maps::master: Import waterlines on init and then weekly

Change-Id: Id2f35738fa2f4b1d6451134e06cf199bce5b69d6
---
M manifests/role/maps.pp
A modules/osm/manifests/import_waterlines.pp
M modules/osm/manifests/init.pp
A modules/osm/templates/import_waterlines.erb
4 files changed, 55 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/operations/puppet 
refs/changes/02/225702/1

diff --git a/manifests/role/maps.pp b/manifests/role/maps.pp
index 626f337..52f5a37 100644
--- a/manifests/role/maps.pp
+++ b/manifests/role/maps.pp
@@ -3,6 +3,7 @@
     include ::postgresql::master
     include ::postgresql::postgis
     include ::osm
+    include ::osm::import_waterlines
     include ::cassandra
     postgresql::spatialdb { 'gis':
         require => Class['::postgresql::postgis'],
diff --git a/modules/osm/manifests/import_waterlines.pp 
b/modules/osm/manifests/import_waterlines.pp
new file mode 100644
index 0000000..0b745dd
--- /dev/null
+++ b/modules/osm/manifests/import_waterlines.pp
@@ -0,0 +1,29 @@
+class osm::import_waterlines (
+    $database = 'gis',
+    $proxy = 'webproxy.eqiad.wmnet:8080'
+) {
+    file { '/usr/local/bin/import_waterlines':
+        ensure  => present,
+        owner   => 'root',
+        group   => 'root',
+        mode    => 0555,
+        content => template( 'osm/import_waterlines.erb' ),
+    }
+
+    exec { 'import_waterlines':
+        command     => '/usr/local/bin/import_waterlines',
+        user        => 'postgres',
+        require     => [File['/usr/local/bin/import_waterlines'], 
Class['osm']],
+        refreshonly => true,
+    }
+
+    cron { 'import_waterlines':
+        ensure  => present,
+        hour    => 17,
+        minute  => 0,
+        weekday => 'Tue',
+        user    => 'postgres',
+        command => '/usr/local/bin/import_waterlines',
+        require => [File['/usr/local/bin/import_waterlines'], Class['osm']],
+    }
+}
\ No newline at end of file
diff --git a/modules/osm/manifests/init.pp b/modules/osm/manifests/init.pp
index 8512ed1..4d6af73 100644
--- a/modules/osm/manifests/init.pp
+++ b/modules/osm/manifests/init.pp
@@ -7,4 +7,11 @@
         ]:
         ensure => $ensure,
     }
+
+    file { '/srv/downloads':
+        ensure => 'present',
+        owner => 'root',
+        group => 'root',
+        mode => 0777,
+    }
 }
diff --git a/modules/osm/templates/import_waterlines.erb 
b/modules/osm/templates/import_waterlines.erb
new file mode 100644
index 0000000..c55e19d
--- /dev/null
+++ b/modules/osm/templates/import_waterlines.erb
@@ -0,0 +1,18 @@
+#!/bin/bash
+
+set -e
+cd /srv/downloads
+curl -O -x <%= @proxy %> 
http://data.openstreetmapdata.com/water-polygons-split-3857.zip
+unzip water-polygons-split-3857.zip
+rm water-polygons-split-3857.zip
+shp2pgsql -d -G -g way water-polygons-split-3857/water_polygons.shp 
water_polygons_tmp | psql <%= @database %>
+rm -rf water-polygons-split-3857
+
+echo "
+  ALTER TABLE water_polygons_tmp OWNER TO osmimporter;
+  SELECT UpdateGeometrySRID('water_polygons_tmp', 'way', 900913);
+
+  BEGIN;
+  DROP TABLE IF EXISTS water_polygons;
+  ALTER TABLE water_polygons_tmp RENAME TO water_polygons;
+  COMMIT;" | psql <%= @database %>

-- 
To view, visit https://gerrit.wikimedia.org/r/225702
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Id2f35738fa2f4b1d6451134e06cf199bce5b69d6
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: MaxSem <maxsem.w...@gmail.com>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to