Исправления
parent
5729dc92eb
commit
7ae26a805d
|
@ -41,4 +41,4 @@ COPY --from=build /root/go/src/github.com/omniscale/imposm3/imposm /usr/bin/impo
|
||||||
|
|
||||||
ADD home /home
|
ADD home /home
|
||||||
|
|
||||||
CMD /home/osm_loader.pl
|
CMD perl /home/osm-loader.pl
|
||||||
|
|
|
@ -67,19 +67,22 @@ sub run_update
|
||||||
# качаем дамп
|
# качаем дамп
|
||||||
my ($fn) = $url_latest =~ /([^\/]+)$/so;
|
my ($fn) = $url_latest =~ /([^\/]+)$/so;
|
||||||
info("Скачивается файл $url_latest");
|
info("Скачивается файл $url_latest");
|
||||||
|
if (!-e "$dir/$fn.state.txt" || !-e "$dir/$fn")
|
||||||
|
{
|
||||||
system("curl -s -C - -f '$url_latest' -o $dir/$fn");
|
system("curl -s -C - -f '$url_latest' -o $dir/$fn");
|
||||||
if ($? || !-e "$dir/$fn")
|
if ($? || !-e "$dir/$fn")
|
||||||
{
|
{
|
||||||
fatal("Не удалось скачать файл $url_latest");
|
fatal("Не удалось скачать файл $url_latest");
|
||||||
}
|
}
|
||||||
system("cp $dir/state.txt $dir/$fn.state.txt");
|
system("cp $dir/state.txt $dir/$fn.state.txt");
|
||||||
|
}
|
||||||
if ($method eq 'osm2pgsql-carto')
|
if ($method eq 'osm2pgsql-carto')
|
||||||
{
|
{
|
||||||
init_osm2pgsql($dbh, $state->{timestamp} . ' ' . $state->{sequenceNumber}, "$dir/$fn");
|
init_osm2pgsql($dbh, "$dir/$fn");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
init_imposm3($dbh, $state->{timestamp} . ' ' . $state->{sequenceNumber}, "$dir/$fn");
|
init_imposm3($dbh, "$dir/$fn");
|
||||||
}
|
}
|
||||||
$dbh->commit;
|
$dbh->commit;
|
||||||
info("База данных OSM $ENV{PG_ENV_OSM_DB} инициализирована версией: ".$state->{timestamp});
|
info("База данных OSM $ENV{PG_ENV_OSM_DB} инициализирована версией: ".$state->{timestamp});
|
||||||
|
@ -223,10 +226,16 @@ sub init_osm2pgsql
|
||||||
sub init_imposm3
|
sub init_imposm3
|
||||||
{
|
{
|
||||||
my ($dbh, $path) = @_;
|
my ($dbh, $path) = @_;
|
||||||
|
$dbh->do("SET SEARCH_PATH TO import, public");
|
||||||
|
$dbh->do("DROP TABLE IF EXISTS osm_linestring");
|
||||||
|
$dbh->do("DROP TABLE IF EXISTS osm_point");
|
||||||
|
$dbh->do("DROP TABLE IF EXISTS osm_polygon");
|
||||||
|
$dbh->do("DROP TABLE IF EXISTS osm_relation");
|
||||||
|
$dbh->do("DROP TABLE IF EXISTS osm_relation_member");
|
||||||
my $cmd =
|
my $cmd =
|
||||||
"imposm3 import -connection 'postgis://".$ENV{PG_ENV_OSM_USER}.":".$ENV{PG_ENV_OSM_PASSWORD}.
|
"imposm3 import -connection 'postgis://".$ENV{PG_ENV_OSM_USER}.":".$ENV{PG_ENV_OSM_PASSWORD}.
|
||||||
"@".$ENV{PG_ENV_OSM_HOST}.(($ENV{PG_ENV_OSM_PORT}||5432) != 5432 ? ":".$ENV{PG_ENV_OSM_PORT} : "").
|
"@".$ENV{PG_ENV_OSM_HOST}.(($ENV{PG_ENV_OSM_PORT}||5432) != 5432 ? ":".$ENV{PG_ENV_OSM_PORT} : "").
|
||||||
"/".$ENV{PG_ENV_OSM_DB}."' -cachedir '".$ENV{OSM_CACHE_DIR}."/imposm3-cache' -mapping '/home/imposm3-all.yml' -srid 4326 -diff".
|
"/".$ENV{PG_ENV_OSM_DB}."' -overwritecache -cachedir '".$ENV{OSM_CACHE_DIR}."/imposm3-cache' -mapping '/home/imposm3-all.yml' -srid 4326 -diff".
|
||||||
" -read '$path' -write";
|
" -read '$path' -write";
|
||||||
system($cmd);
|
system($cmd);
|
||||||
if ($?)
|
if ($?)
|
||||||
|
@ -251,7 +260,12 @@ CREATE INDEX IF NOT EXISTS osm_relation_text ON osm_relation USING gin (t
|
||||||
|
|
||||||
sub apply_deltas_osm2pgsql
|
sub apply_deltas_osm2pgsql
|
||||||
{
|
{
|
||||||
my ($apply, $carto_dir) = @_;
|
my ($apply) = @_;
|
||||||
|
my $carto_dir = '/usr/share/mapnik/openstreetmap-carto-'.$ENV{OSM_CARTO_VERSION};
|
||||||
|
if (!$ENV{OSM_CARTO_VERSION})
|
||||||
|
{
|
||||||
|
fatal("Не задан путь к osm-carto");
|
||||||
|
}
|
||||||
if (@$apply)
|
if (@$apply)
|
||||||
{
|
{
|
||||||
my $cmd =
|
my $cmd =
|
||||||
|
@ -271,11 +285,6 @@ sub apply_deltas_osm2pgsql
|
||||||
sub apply_deltas_imposm3
|
sub apply_deltas_imposm3
|
||||||
{
|
{
|
||||||
my ($apply) = @_;
|
my ($apply) = @_;
|
||||||
my $carto_dir = '/usr/share/mapnik/openstreetmap-carto-'.$ENV{OSM_CARTO_VERSION};
|
|
||||||
if (!$ENV{OSM_CARTO_VERSION})
|
|
||||||
{
|
|
||||||
fatal("Не задан путь к osm-carto");
|
|
||||||
}
|
|
||||||
if (@$apply)
|
if (@$apply)
|
||||||
{
|
{
|
||||||
my $cmd =
|
my $cmd =
|
||||||
|
|
Loading…
Reference in New Issue