* docker: upgrade ubuntu version
Upgrade rhe ubuntu version used in the main Dockerfile to latest stable version `20.04`
* Update Dockerfile
amended ubuntu version 20 -> 22
but then the following error:
```
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
Processing triggers for dbus (1.12.20-2ubuntu4.1) ...
gpg: error running '/usr/bin/gpg-agent': probably not installed
gpg: failed to start agent '/usr/bin/gpg-agent': Configuration error
gpg: can't connect to the agent: Configuration error
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/softwareproperties/shortcuthandler.py", line 423, in add_key
PPA publishes dbgsym, you may need to include 'main/debug' component
Repository: 'deb https://ppa.launchpadcontent.net/ubuntugis/ubuntugis-unstable/ubuntu/ jammy main'
Description:
Unstable releases of Ubuntu GIS packages. These releases are more bleeding edge and while generally they should work well, they dont receive the same amount of quality assurance as our stable releases do.
More info: https://launchpad.net/~ubuntugis/+archive/ubuntu/ubuntugis-unstable
Adding repository.
Adding deb entry to /etc/apt/sources.list.d/ubuntugis-ubuntu-ubuntugis-unstable-jammy.list
Adding disabled deb-src entry to /etc/apt/sources.list.d/ubuntugis-ubuntu-ubuntugis-unstable-jammy.list
Adding key to /etc/apt/trusted.gpg.d/ubuntugis-ubuntu-ubuntugis-unstable.gpg with fingerprint 6B827C12C2D425E227EDCA75089EBE08314DF160
subprocess.run(cmd.split(), check=True, input=keys)
File "/usr/lib/python3.10/subprocess.py", line 524, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['gpg', '-q', '--no-options', '--no-default-keyring', '--batch', '--keyring', '/etc/apt/trusted.gpg.d/ubuntugis-ubuntu-ubuntugis-unstable.gpg', '--homedir', '/tmp/tmpjlr98185', '--import']' returned non-zero exit status 2.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/bin/add-apt-repository", line 364, in <module>
sys.exit(0 if addaptrepo.main() else 1)
File "/usr/bin/add-apt-repository", line 357, in main
shortcut.add()
File "/usr/lib/python3/dist-packages/softwareproperties/shortcuthandler.py", line 222, in add
self.add_key()
File "/usr/lib/python3/dist-packages/softwareproperties/shortcuthandler.py", line 425, in add_key
raise ShortcutException(e)
softwareproperties.shortcuthandler.ShortcutException: Command '['gpg', '-q', '--no-options', '--no-default-keyring', '--batch', '--keyring', '/etc/apt/trusted.gpg.d/ubuntugis-ubuntu-ubuntugis-unstable.gpg', '--homedir', '/tmp/tmpjlr98185', '--import']' returned non-zero exit status 2.
````
Removing the ubuntugis PPA build without error - is ubuntugis a requirements? probably Jammy has up-to-date packages for pygeoapi dependencies
* Update Dockerfile
removing ubuntugis PPA
* Update Dockerfile
adding `python3-pytest` and `python3-pyld` dependencies
* Update Dockerfile
* Update Dockerfile
* fixing docker environment with suggested changes
* replace ubuntu version with codename
* Update .dockerignore
* Update Dockerfile
* Update Dockerfile
* Update Dockerfile
* Update entrypoint.sh
skip the SensorThings and other tests that require a local server
Co-authored-by: Just van den Broecke <just@justobjects.nl>
* - Added support to read from a generic url template as vector tile backend.
* - Add support for not rendering the tileset metadata
* - added support for z/y/x vector tile layers
* - fixed formatting issues
* - refactored code to use get_layer function, everywhere we need to parse username
- added a couple of debug statements, to make sure we are getting the layer name
correctly
- added an error for url templates that follow a schema, which is not supported yet
* - Added documentation for tiles provider, to show how to read a generic url
* - fixed formatting issues
* - added example of ES vector tiles in the docker-config of elasticsearch
Co-authored-by: doublebyte1 <info@doublebyte.net>
* fix for issue 989 - get Docker build/push working - try 1
* fix for issue 989 - get Docker build/push working - try 2 - remove tests - new WFS GeoSolutions
* - added missing curl on pygeoapi container (which was triggering errors)
* - upgraded ES to version 8
Co-authored-by: doublebyte1 <info@doublebyte.net>
* - Added missing parameters on the openapi definition of get an observations tile request
* - changed default background map to osm
* Revert "- changed default background map to osm"
This reverts commit 554c065c6699ad6c0585f5c09ce34e746d5b3dc2.
* - Added example with docker containers, for MongoDB data provider
* - attempts
* - switched to use ne_110m_populated_places_simple.geojson as data source
* - updated README
* - updated README
* - added missing mongo-entrypoint.sh
Co-authored-by: doublebyte1 <info@doublebyte.net>
* Add gzip to API.py
* pytest for gzip
* fix pytest
* Update test_api.py
* Add gzip to server block of configuration files
* Update api.py to include gzip opts from config
Update logic behind gzip compression such that compression will only happen when gzip in the Accept-Encoding request header and config.server.gzip is True. Use server charset for encoding/decoding and include charset in Content-Type when compressed.
* Update pytest to use gzip config options
Update pytest to test with (gzip in Accept-Encoding & server.gzip = False), (gzip in Accept-Encoding & server.gzip = True), (gzip not in Accept-Encoding & server.gzip = True)
* Better Content Negotiation (#7)
* Change content negotiation in _get_format()
* Add to pytest and force h to always be string
* Force F_JSON to default response
* Update test_api.py for utf-16 encoding
* better content negotiation pytest.
* Add comments to pytest
* Fix flake 8
* Improve docstring for gzip decorator function
* - Added missing parameters on the openapi definition of get an observations tile request
* - changed default background map to osm
* Revert "- changed default background map to osm"
This reverts commit 554c065c6699ad6c0585f5c09ce34e746d5b3dc2.
* - Added example with docker containers, for MongoDB data provider
* - attempts
* - switched to use ne_110m_populated_places_simple.geojson as data source
* - updated README
* - updated README
Co-authored-by: doublebyte1 <info@doublebyte.net>
* - Added missing parameters on the openapi definition of get an observations tile request
* - changed default background map to osm
* Revert "- changed default background map to osm"
This reverts commit 554c065c6699ad6c0585f5c09ce34e746d5b3dc2.
* - added discovery.type to elasticsearch configuration, to prevent failed bootstrap checks
Co-authored-by: doublebyte1 <info@doublebyte.net>
* - updating ES dockerfile, by adding missing packages and switching to python3
* - joined commands to reduce layers on the docker image
- fixed formatting
- added elasticsearch-dsl
Co-authored-by: doublebyte1 <info@doublebyte.net>
Currently gunicorn is started in the entrypoint as subprocess. This
means that the entrypoint stays as process with PID 1 and eats the
signals that e.g. kubernetes sends to it. Thus when trying to update
the container, kubernetes must terminate the process ungracefully.
See e.g. this resources for a more detailed explanation:
https://hynek.me/articles/docker-signals/
This change replaces the entrypoint-shellscript with gunicorn, such that
signals are directly forwarded to gunicorn, where they are then handled.
One drawback of this approach is that lines after `exec gunicorn` are
not executed anymore. This currently affects `echo "END /entrypoint.sh"`.
A different approach would be to use `tini` to handle the system (see
link above). To do this, we would need to install tini.
* Bump gdal to v3
* Fix query duplicates with bbox for PG
* Add backward compatibility for axis order
* Move travis to bionic dist
Fix gdal version 3 on travis by pinning latest ubuntu unstable release
Fix ubuntugis sources on travis
Remove pinned python gdal version
Add mongodb start
Enable mongod service
Fix package name
Install mongo from official community repos
Add mongo enable and start commands
* Fix wrong axis mapping strategy
Add author
* Move base image to bullseye for docker build
* Fix remaining unchanged places for #364
* Make image size smaller
* Add docker build and cite tests
Fix python version
Move steps after docker build elsewhere
Fix uppercase characters
Fix internal port
Daemonize the run process
* Check logs and run test command from the entrypoint
* Remove the execution of mongo tests for test command
Remove the execution of mongo tests for test command
Fix failed command
* Add delay and move build to install step
Remove grep command for now
Use single quote
* Update default.config.yml
Some bounding boxes were not validly specified as arrays.
* Update pygeoapi-test-ogr-config.yml
Some bounding boxes were not validly specified as arrays.
* Updated pygeoapi-serverless-config.yml
Some bounding boxes were not validly specified as arrays.
* new file: docker/Dockerfile
Dockerfile for pygeoapi
* testing postgis on travis
* testing 9.6
* install postgis as package
* create database
* postgis dataset - travis
* missing path
* modified: tests/data/hotosm_bdi_waterways.sql.gz
Change in name of dataset
* postgresql code
* modified: pygeoapi/provider/postgresql.py
update with origin
* Postgresql working provider, typo in geopackage
* update to travis. Change on gpkg
* missing dep (psycopg2)
* pytest
* problem with operator in travis
* ProviderConnectionError implementation
* postgresql with schema support
* Changes requested by @tomkralidis
* missing pygeoapi-config.yml
* delete openapi.yml
deleted openapi.yml