https://github.com/pacificcommunity/geonode_offlineosm
https://github.com/pacificcommunity/geonode_offlineosm
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/pacificcommunity/geonode_offlineosm
- Owner: PacificCommunity
- License: other
- Created: 2018-01-07T22:33:35.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-02-12T01:04:36.000Z (over 8 years ago)
- Last Synced: 2025-04-09T09:42:00.516Z (about 1 year ago)
- Language: Scheme
- Size: 68.4 KB
- Stars: 0
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Offline OSM for Geonode
**THIS IS CURRENT WORK IN PROGRESS, DO NOT USE !!!**
Tested with Geonode 2.6 / Django 1.8 / Python 2 / Postgres 9.6
This is an app to create offline OSM layers for geonode.
## Quickstart
1. Pip install the library
`pip install git+https://github.com/PacificCommunity/geonode_offlineosm@master`
2. Add "geonode_offlineosm" to your INSTALLED_APPS setting like this::
```python
INSTALLED_APPS = [
...
'geonode_offlineosm',
...
]
```
3. Run `python manage.py migrate` to pull the data from OpenStreetMaps.
## Settings
```python
# Extents of OSM data to be downloaded
OFFLINE_OSM_BBOX = [
[176.8, -18.6], # BOTTOMLEFT
[179.3, -17.1], # TOPRIGHT
]
# Whether Offline OSM should be made available as base layers
OFFLINE_OSM_AS_BASE_LAYER = True
# Update period for the Celery worker (in minutes)
OFFLINE_OSM_UPDATE_INTERVAL = 60*24 # 1 day
# Name of the postgres schema where the OSM data is stored
OFFLINE_OSM_SCHEMA_NAME = "offline_osm"
# Name of the folder where OSM data is downloaded
OFFLINE_OSM_DATA_DIR = "/temp/offline_osm"
# Name of the geoserver datastore name for PostGIS (will be created if it doesn't exist)
OFFLINE_OSM_DATASTORE_NAME = "offline_osm"
```
## Management command
To update the data, run the following management command. Be aware that will download a lot of data and require some heavy queries. # TODO : describe options
```shell
python manage.py updateofflineosm
```
## Celery tasks
Add this so that Celery runs updateofflineosm on a regular basis
```
CELERY_IMPORTS = CELERY_IMPORTS + ('geonode_offlineosm.tasks',)
CELERY_ALWAYS_EAGER = False # is this needed ?
```