Metadata-Version: 2.1
Name: isogeo-scan-metadata-processor
Version: 1.0.8
Summary: Command-line to read metadata produced by FME scripts of Isogeo Scan, convert it into Isogeo model, apply rules and export it to a database or Isogeo.
Home-page: https://github.com/isogeo/scan-metadata-processor/
Author: Isogeo
Author-email: contact@isogeo.com
License: UNKNOWN
Project-URL: Docs, http://help.isogeo.com/scan/isogeo-scan-metadata-processor/
Project-URL: Bug Reports, https://github.com/isogeo/scan-metadata-processor/issues/
Project-URL: Source, https://github.com/isogeo/scan-metadata-processor/
Keywords: Isogeo scan JSON middleware
Platform: UNKNOWN
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Development Status :: 5 - Production/Stable
Classifier: Operating System :: OS Independent
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.6, <4
Description-Content-Type: text/markdown
Requires-Dist: click (==7.1.*)
Requires-Dist: geojson (<2.6,>=2.5)
Requires-Dist: isogeo-pysdk (<3.5,>=3.4)
Requires-Dist: python-dotenv (<0.14,>=0.12)
Requires-Dist: semver (<2.11,>=2.9)
Requires-Dist: Send2Trash (==1.5.*)
Provides-Extra: db-elastic
Requires-Dist: elasticsearch (<7.7,>=7.5) ; extra == 'db-elastic'
Provides-Extra: dev
Requires-Dist: black ; extra == 'dev'
Requires-Dist: flake8 ; extra == 'dev'
Provides-Extra: test
Requires-Dist: pytest ; extra == 'test'
Requires-Dist: pytest-cov ; extra == 'test'

# Isogeo Scan - Metadata Processor

[![Build Status](https://dev.azure.com/isogeo/Scan/_apis/build/status/isogeo.scan-metadata-processor?branchName=master)](https://dev.azure.com/isogeo/Scan/_build/latest?definitionId=54&branchName=master)

![PyPI](https://img.shields.io/pypi/v/isogeo-scan-metadata-processor)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/isogeo-scan-metadata-processor?style=flat-square)

[![Documentation: sphinx](https://img.shields.io/badge/doc-sphinx--auto--generated-blue)](http://help.isogeo.com/scan/isogeo-scan-metadata-processor/index.html)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)

Middleware used to process metadata issued by Isogeo Scan.

Available as:

- Python package
- Windows executable

## Requirements

- Python 3.7

## Development

### Quickstart

```powershell
# create virtual env
py -3.7 -m venv .venv
# activate it
.\.venv\Scripts\activate
# update basic tooling
python -m pip install -U pip setuptools wheel
# install requirements
python -m pip install -U -r ./requirements.txt
# install package for development
python -m pip install --editable .
```

### Try it

1. Rename the `.env.example` into `.env` and fill the settings
2. Launch the [CLI](https://fr.wikipedia.org/wiki/Interface_en_ligne_de_commande)

For example, get the help:

```powershell
scan-metadata-processor --help
```

Check:

```powershell
# for all default formats
scan-metadata-processor --label "CheckProcessConfig" --settings .\.env check
```

Process metadata:

```powershell
scan-metadata-processor --label "ProcessInputMetadata" --settings .\.env process
```

There is also a clean task to automatically remove outdated logs and output files:

```powershell
scan-metadata-processor --label "CleanLogs" --settings .\.env clean
```

----

## Usage of the executable

Just replace `scan-metadata-processor` by the executable filename:

```powershell
.\Isogeo_ScanMetadataProcessor.exe --label "ProcessInputMetadata" --settings .\.env process
```

----

## Deployment

Every tagged commit pushed to `master` triggers a deployment to:

- Azure Storage : Isogeo/isogeoscan/app/isogeo-scan-metadata-processor/
- Python Package Index
- [Github Releases](/releases)


