Skip to main content

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:OrganizationUUID
  • rpi:IsViewable
  • rpi:IsSearchable

Modified APISO queryables:

  • apiso:ParentIdentifier support for gmx:Anchor encoding added
  • apiso:SpecificationTitle support for gmx:Anchor encoding added
  • apiso:Subject support 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)

Source distribution for pycsw-rpi 0.1.6
File Size Uploaded
pycsw_rpi-0.1.6.tar.gz 5.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pycsw-rpi 0.1.6
File Interpreter ABI Platform
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

Release history Release notifications | RSS feed

This release

0.1.6 This release

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page