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:
Another picture below contains a sequence diagram
Usage
- Update all the submodules:
git submodule update --remote --recursive
cd circulation-lcp-test
git submodule update --remote --recursive
cd ..
- Run the LCP testbed:
docker-compose --file circulation-lcp-test/docker-compose.yml --env-file circulation-lcp-test/.env up -d
-
Follow the instructions in LCP testbed's README.md file to set it up
-
Run the server:
docker-compose --file circulation-lcp-test/docker-compose.yml --file docker-compose.yml --env-file circulation-lcp-test/.env up -d
- Create and activate a virtual environment:
python -m venv .venv
source .venv/bin/activate
- Install circulation-import from PyPi:
pip install circulation-import
- 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
- 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)
| File | Size | Uploaded | |
|---|---|---|---|
| circulation-import-0.0.1.tar.gz | 16.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|