PyCSW RPI pycsw-rpi
Monkey patched pycsw for Slovak national catalogue service.
Check original pycsw documentation for more details.
Setup
Use exactly like original pycsw
Install
pip install --user pycsw-rpi
Create configuration file
Configuration file is not distributed with package.
Sample configuration can be downloaded from <<url>>
Administrative command (CLI)
pycsw_rpi-admin script is installed with package in $PATH, this script is replacement for original pycsw-admin.py script supporting modified beahaviour and can be used exactly like original one.
Create database
pycsw_rpi-admin -c setup_db -f <<pconfiguration_file>>
Load records
pycsw_rpi-admin -c load_records -f <<pconfiguration_file>> -p <<path_to_records_directory>>
Check original documentation for pycsw-admin.py administrative command.
Run "dev" self contained (toy) server
python -m pycsw_rpi.wsgi
Deploy as WSGI application
pycsw_rpi.wsgi module contains WSGI application object (function) ready to be deployed with WSGI server (e.g. gunicorn, uwsgi). No WSGI server is installed with this package as dependecy.
To deploy with gunicorn:
# `gunicorn` package need to installed separately
pip install --user gunicorn
gunicorn pycsw_rpi.wsgi:application
Modifications implemented (via monkey patches) to original pycsw
Added queryables to APISO plugin:
rpi:OrganizationUUIDrpi:IsViewablerpi:IsSearchable
Modified APISO queryables:
apiso:ParentIdentifiersupport for gmx:Anchor encoding addedapiso:SpecificationTitlesupport for gmx:Anchor encoding addedapiso:Subjectsupport for gmx:Anchor encoding added in keywords parsing
Transaction web hook:
On succesfull insert/delete CSW transaction HTTP POST request is made
on transactions_webhook_url set in manager section in configuration
file. Request body contains json list of executed transaction description
[
{
"transaction": <transaction_type>,
"id": <metadata_record_identifier>,
"type": <metadata_record_type>,
"record" <metadata_record_xml>
},
...
]
record key is included only if insert transaction has been made
If transaction_webhook_url is not set in configuration file webhook is skipped.
Feature is implemented as monkey patch of pycsw.core.repository.Repository.insert and pycsw.core.repository.Repository.delete methods.
Contributions
Metadata
Release files for pycsw-rpi 0.1.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pycsw_rpi-0.1.6.tar.gz | 5.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pycsw_rpi-0.1.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 13.8 kB
Release files / pycsw_rpi-0.1.6.tar.gz
| Download URL | pycsw_rpi-0.1.6.tar.gz |
|---|---|
| Size | 5.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
90e632a90edfbc6fadf1428c37a4643138dd83298f20f0785918707c5355b1c8
|
|
BLAKE2b-256 checksum How to use checksums |
b7be7e4ddfc425a86befa5ce6c86d0d0469db77fd668f11aaf3ce493cbf50ae8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.3 CPython/3.12.3 Linux/6.8.0-45-generic
|
Release files / pycsw_rpi-0.1.6-py3-none-any.whl
| Download URL | pycsw_rpi-0.1.6-py3-none-any.whl |
|---|---|
| Size | 7.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7017e6e5c4f523d764a1586376c2194ad48dd70e7367255d7588239240979685
|
|
BLAKE2b-256 checksum How to use checksums |
fb6aded4c3545528f495042c3d067017117fc0e28ac7e790ed3dffc286ca4485
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.3 CPython/3.12.3 Linux/6.8.0-45-generic
|