8f8d19c5f8
* Create sensorthings.py * Update plugin.py * Add files via upload * Update sensorthings.py * Add files via upload * Update sensorthings.py * Update sensorthings.py * Update sensorthings.py * Update sensorthings.py * Update sensorthings BRGM Endpoint * Clean Examples * Cleaned sensorthings config * add bbox and datetime query params Added optional intralinking between STA entities * add pytest for sta provider * add sta pytest to workflow * improve versatility of intralink and uri * Update Datastreams geometry provider * Update iow.sta.pygeoapi.config.yml * faster hits using sta $count * fix flake8 * added sta provider for github actions * type in main.yml * Update main.yml * Update main.yml * rename tests/data/datastreams.json * Update main.yml * Update load_sta_data.py * Update load_sta_data.py * Update load_sta_data.py * Update load_sta_data.py * Update load_sta_data.py * Fix sta pytest * fix flake8 * Update docs * Update test_sensorthings__provider.py * Merge various fixes from sta-patch-1 * force sorting * Move STA data to remote host * Clarify use of the intralink field * rename test_sensorthings_provider.py * Add Readme.md and switch to docker-compose * Sensorthings -> SensorThings
94 lines
3.4 KiB
YAML
94 lines
3.4 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-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
|
|
|