API Docs¶
Index syncing module.
-
class
invenio_index_migrator.api.
Job
(name, migration, config)[source]¶ Index migration job.
Initialize a migration job.
Parameters: - name – job’s name.
- migration – an invenio_index_migrator.api.migration.Migration object.
- config – job’s configuration.
-
document_name
¶ Get the document name for the job.
-
src_es_client
¶ Get the source ES client.
-
class
invenio_index_migrator.api.
Migration
(name, **config)[source]¶ Index migration base class.
-
classmethod
create_from_config
(recipe_name, **recipe_config)[source]¶ Create Migration instance from config.
-
classmethod
create_from_state
(recipe_name, **recipe_config)[source]¶ Create Migration instance from ES state.
-
classmethod
-
class
invenio_index_migrator.api.
MultiIndicesReindexJob
(name, migration, config)[source]¶ Reindex job that uses Elasticsearch’s reindex API.
Initialize a migration job.
Parameters: - name – job’s name.
- migration – an invenio_index_migrator.api.migration.Migration object.
- config – job’s configuration.
-
class
invenio_index_migrator.api.
ReindexJob
(name, migration, config)[source]¶ Reindex job that uses Elasticsearch’s reindex API.
Initialize a migration job.
Parameters: - name – job’s name.
- migration – an invenio_index_migrator.api.migration.Migration object.
- config – job’s configuration.
-
class
invenio_index_migrator.api.
ReindexAndSyncJob
(name, migration, config)[source]¶ Job that both reindexes with ES reindex API and syncs with the DB.
The first run will use the reindex API and the subsequent runs will fetch from the database and sync the data.
Initialize a migration job.
Parameters: - name – job’s name.
- migration – an invenio_index_migrator.api.migration.Migration object.
- config – job’s configuration.
Utilities¶
Utility functions for index migration.
-
class
invenio_index_migrator.utils.
State
(index, document_id, client=None)[source]¶ Migration ES state.
The state is stored in ElasticSearch and can be accessed similarly to a python dictionary.
Synchronization job state in ElasticSearch.