-
Notifications
You must be signed in to change notification settings - Fork 137
/
Copy pathgenerate-tm2source
executable file
·48 lines (42 loc) · 1.84 KB
/
generate-tm2source
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/usr/bin/env python
"""
Usage:
generate-tm2source <tileset>
[--pghost=<host>] [--pgport=<port>] [--dbname=<db>]
[--user=<user>] [--password=<password>]
[--host=<host>] [--port=<port>] [--database=<db>]
generate-tm2source --help
generate-tm2source --version
Options:
--help Show this screen.
--version Show version.
PostgreSQL Options:
-h --pghost=<host> Postgres hostname. By default uses PGHOST env or "localhost" if not set.
-P --pgport=<port> Postgres port. By default uses PGPORT env or "5432" if not set.
-d --dbname=<db> Postgres db name. By default uses PGDATABASE env or "openmaptiles" if not set.
-U --user=<user> Postgres user. By default uses PGUSER env or "openmaptiles" if not set.
--password=<password> Postgres password. By default uses PGPASSWORD env or "openmaptiles" if not set.
Legacy support, do not use:
--host=<host> Obsolete, use --pghost=<...> instead
--port=<port> Obsolete, use --pgport=<...> instead
--database=<d> Obsolete, use --dbname=<...> instead
These legacy environment variables should not be used, but they are still supported:
POSTGRES_HOST, POSTGRES_PORT, POSTGRES_DB, POSTGRES_USER, POSTGRES_PASSWORD
"""
from docopt import docopt
import yaml
import openmaptiles
from openmaptiles.tmsource import DbParams, generate_tm2source
from openmaptiles.pgutils import parse_pg_args
if __name__ == '__main__':
args = docopt(__doc__, version=openmaptiles.__version__)
pghost, pgport, dbname, user, password = parse_pg_args(args, legacy_params=True)
db_params = DbParams(
dbname=dbname,
port=int(pgport),
user=user,
password=password,
host=pghost,
)
tm2 = generate_tm2source(args['<tileset>'], db_params)
print(yaml.safe_dump(tm2))