Skip to main content

circulation-import

Set of tools facilitating the process of importing book collections into SimplyE's Circulation Manager by using SFTP protocol.

Architecture

circulation-import consists of two parts:

  • client responsible for uploading content to the SFTP server, waiting for a report, downloading it and converting it to CSV format
  • server responsible for watching for new book collections, importing them into CM using its directory_import script and uploading a report to the SFTP server

Picture below illustrates the architecture of the solution: circulation-import architecture

Another picture below contains a sequence diagram Import workflow

Usage

  1. Update all the submodules:
git submodule update --remote --recursive
cd circulation-lcp-test
git submodule update --remote --recursive
cd ..
  1. Run the LCP testbed:
docker-compose --file circulation-lcp-test/docker-compose.yml --env-file circulation-lcp-test/.env up -d
  1. Follow the instructions in LCP testbed's README.md file to set it up

  2. Run the server:

docker-compose --file circulation-lcp-test/docker-compose.yml --file docker-compose.yml --env-file circulation-lcp-test/.env up -d
  1. Create and activate a virtual environment:
python -m venv .venv
source .venv/bin/activate
  1. Install circulation-import from PyPi:
pip install circulation-import
  1. Run the client:
python -m circulation-import client import \
    --collection-name=lcp \
    --data-source-name=data_source_1 \
    --books-directory=./circulation-lcp-test/lcp-collection/collection \
    --covers-directory=./circulation-lcp-test/lcp-collection/collection \
    --reports-directory=./reports \
    --metadata-file=./circulation-lcp-test/lcp-collection/collection/onix.xml \
    --metadata-format=onix \
    --configuration-file=./configuration/client-configuration.yml \
    --logging-configuration-file=./configuration/logging.yml
  1. Go to reports folder and find a report in CSV format

Metadata

Release files for circulation-import 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for circulation-import 0.0.1
File Size Uploaded
circulation-import-0.0.1.tar.gz 16.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for circulation-import 0.0.1
File Interpreter ABI Platform
circulation_import-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 39.0 kB

Release files / circulation-import-0.0.1.tar.gz

Download URL circulation-import-0.0.1.tar.gz
Size 16.5 kB
Tags Source
SHA-256 checksum
How to use checksums
c95a4157334448f05e9c52d109cca4c9b8d6928ba9def7c752992afab1d89eb4
BLAKE2b-256 checksum
How to use checksums
223b860627f91ff6f8824148433f7599fa50e192252ce3e38209a6ddc0227d06
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.0.10 CPython/3.7.5 Darwin/19.6.0

Release files / circulation_import-0.0.1-py3-none-any.whl

Download URL circulation_import-0.0.1-py3-none-any.whl
Size 22.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3c7f5193a43d24fdb967ee7146bcdb716a64977700ef4c37ea6ebe8ff8261fc2
BLAKE2b-256 checksum
How to use checksums
9ea3187ed90ddaa1ddc9268ccf44c9cdc3c79329659ef115f78a34bfceb8d4e6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.0.10 CPython/3.7.5 Darwin/19.6.0

Release history Release notifications | RSS feed

This release

0.0.1 This release

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