Add/reuse models to export top level project relations during Project Export
ProjectExportWorker is now executed as part of 1 Sidekiq job as one export process.
In order to parallelize the export projcess we need to export relations in separate sidekiq jobs. For that, we need to be able to:
- Track individual partial exports state
- Upload partial exports in object storage
- Download partial exports from object storage, combine them in one tarball and upload back to object storage in order to keep the end result the same - a single
.tar.gz
file
In order to accomplish that, we need to create new (or reuse existing/inherit from BulkImports::Export
model, since we do similar partial exports there) partial project export model to keep track of state and upload it to object storage when finished.
Edited by George Koltsov