Skip to content

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:

  1. Track individual partial exports state
  2. Upload partial exports in object storage
  3. 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