Files
pygeoapi/.github/workflows/main.yml
T
Francesco Bartoli bb4cd0bf69 Add cql-json support for ES (#723)
Fix starlette event loop


Fix starlette event loop


Fix starlette event loop


Fix starlette event loop


Fix provider regression


Make method public


Make method public


Move function to the helpers utility


Add the CQL lifecycle for development


Add CQL docs


Fix flake8


Isolate import for starlette codepath
2021-07-21 21:00:14 -04:00

95 lines
3.5 KiB
YAML

name: build ⚙️
on: [ push, pull_request ]
jobs:
main:
runs-on: ubuntu-20.04
strategy:
matrix:
include:
- python-version: 3.6
- python-version: 3.7
env:
PYGEOAPI_CONFIG: "$(pwd)/pygeoapi-config.yml"
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
name: Setup Python ${{ matrix.python-version }}
with:
python-version: ${{ matrix.python-version }}
- name: Configure sysctl limits
run: |
sudo swapoff -a
sudo sysctl -w vm.swappiness=1
sudo sysctl -w fs.file-max=262144
sudo sysctl -w vm.max_map_count=262144
- name: Install and run PostgreSQL/PostGIS 📦
uses: huaxk/postgis-action@v1
with:
postgresql password: ${{ secrets.DatabasePassword }}
postgresql db: 'test'
- name: Install and run Elasticsearch 📦
uses: getong/elasticsearch-action@v1.2
with:
elasticsearch version: '7.6.1'
host port: 9200
container port: 9200
host node port: 9300
node port: 9300
discovery type: 'single-node'
- name: Install and run MongoDB
uses: supercharge/mongodb-github-action@1.5.0
with:
mongodb-version: 4.4
- name: Install and run SensorThingsAPI
run: |
wget https://raw.githubusercontent.com/FraunhoferIOSB/FROST-Server/master/scripts/docker-compose.yaml
docker-compose up -d
- name: Install requirements 📦
run: |
pip3 install -r requirements.txt
pip3 install -r requirements-starlette.txt
pip3 install -r requirements-dev.txt
pip3 install -r requirements-provider.txt
python3 setup.py install
#pip3 install --upgrade rasterio==1.1.8
- name: setup test data ⚙️
run: |
python3 tests/load_es_data.py tests/data/ne_110m_populated_places_simple.geojson geonameid
python3 tests/load_es_data.py tests/cite/ogcapi-features/canada-hydat-daily-mean-02HC003.geojson IDENTIFIER
python3 tests/load_mongo_data.py tests/data/ne_110m_populated_places_simple.geojson
#gunzip < tests/data/hotosm_bdi_waterways.sql.gz | psql -U postgres test
python3 tests/load_sta_data.py tests/data/sta_iow_datastreams.json
- name: run unit tests ⚙️
run: |
pytest tests/test_api.py
pytest tests/test_config.py
pytest tests/test_csv__formatter.py
pytest tests/test_csv__provider.py
pytest tests/test_elasticsearch__provider.py
pytest tests/test_filesystem_provider.py
pytest tests/test_geojson_provider.py
pytest tests/test_mongo_provider.py
#pytest tests/test_ogr_csv_provider.py
#pytest tests/test_ogr_esrijson_provider.py
#pytest tests/test_ogr_gpkg_provider.py
#pytest tests/test_ogr_shapefile_provider.py
#pytest tests/test_ogr_sqlite_provider.py
#pytest tests/test_ogr_wfs_provider.py
pytest tests/test_openapi.py
#pytest tests/test_postgresql_provider.py
pytest tests/test_rasterio_provider.py
#pytest tests/test_sensorthings_provider.py
#pytest tests/test_sqlite_geopackage_provider.py
pytest tests/test_tinydb_catalogue_provider.py
pytest tests/test_util.py
pytest tests/test_xarray_netcdf_provider.py
pytest tests/test_xarray_zarr_provider.py
- name: run flake8 ⚙️
run: find . -type f -name "*.py" | xargs flake8
- name: build docs 🏗️
run: cd docs && make html