CLI app to clone Lucidworks Fusion datasources and linked configuration objects
Project description
fusion-datasource-cloner
A real Python CLI that clones a Lucidworks Fusion datasource in the same Fusion instance and also copies the linked configuration objects it references.
What it clones:
- datasource configuration
- linked index pipeline
- linked query pipeline
- linked index profile
- scheduler entries that reference the datasource
- optionally the parser
What it does not clone by default:
- collections and indexed data
- connector binaries / plugin jars
- blob contents referenced by custom stages
Install
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
Run
Basic auth:
python3 -m fusion_ds_clone.cli \
--fusion-url https://fusion.example.com \
--app demo \
--basic-auth admin:password \
--source-datasource products-json \
--target-datasource products-json-copy \
--verbose
API key:
python3 -m fusion_ds_clone.cli \
--fusion-url https://fusion.example.com \
--app demo \
--api-key 'Bearer eyJhbGciOi...' \
--source-datasource products-json \
--target-datasource products-json-copy
Dry run:
python3 -m fusion_ds_clone.cli \
--fusion-url https://fusion.example.com \
--app demo \
--basic-auth admin:password \
--source-datasource products-json \
--target-datasource products-json-copy \
--dry-run
Clone and also move the clone to a different collection reference:
python3 -m fusion_ds_clone.cli \
--fusion-url https://fusion.example.com \
--app demo \
--basic-auth admin:password \
--source-datasource products-json \
--target-datasource products-json-copy \
--collection products_copy
Clone parser too:
python3 -m fusion_ds_clone.cli \
--fusion-url https://fusion.example.com \
--app demo \
--basic-auth admin:password \
--source-datasource products-json \
--target-datasource products-json-copy \
--clone-parser
Replace already-existing target objects:
python3 -m fusion_ds_clone.cli \
--fusion-url https://fusion.example.com \
--app demo \
--basic-auth admin:password \
--source-datasource products-json \
--target-datasource products-json-copy \
--overwrite
Notes
The tool derives new linked object IDs from the target datasource ID. Example:
- source datasource:
my-source - source index pipeline:
my-source - target datasource:
my-source-copy - target index pipeline:
my-source-copy
If a linked object ID does not start with the source datasource ID, the tool creates a stable derived ID by suffixing the target datasource ID, for example:
- source query pipeline:
shared-catalog-qp - target query pipeline:
shared-catalog-qp-my-source-copy
The parser API is still supported by the tool, but it is disabled by default because the current Lucidworks docs label parts of parser CRUD as deprecated.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fusion_datasource_cloner-0.1.0.tar.gz.
File metadata
- Download URL: fusion_datasource_cloner-0.1.0.tar.gz
- Upload date:
- Size: 7.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fc397ac4ca69c1b3afb54dc56eb384920fca6b8680465276c7ca28c6b6f50df8
|
|
| MD5 |
8506f3e1031d06949ebeed1cc9b2b90c
|
|
| BLAKE2b-256 |
b37c2b85c9b423199bc76d1b2c8a2749e213ffd00495db81086c06f0c40c99d2
|
File details
Details for the file fusion_datasource_cloner-0.1.0-py3-none-any.whl.
File metadata
- Download URL: fusion_datasource_cloner-0.1.0-py3-none-any.whl
- Upload date:
- Size: 7.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ed5aeaeeda1193919362ee6e4ff46c7a9c1683eae22e05903f65030c7e153a40
|
|
| MD5 |
8c118988620c49f69caa9717ab7285e2
|
|
| BLAKE2b-256 |
66d885bf51aec67ad4f50ad8438aa9567d8b3d19fe617eefd29282b837a962c2
|