Skip to content

Update BulkImports::Configuration to support offline transfer config

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

The existing BulkImport::Configuration model will be used to store object storage configuration as it's currently used to store source instance configuration. The following columns must be added to support this:

  • offline, :boolean, default: false, null: false flag that says the BulkImport is an offline transfer
  • :export_prefix, :text the "folder" for the current export files
  • :bucket, :text the object storage bucket that holds all export files
  • :offline_entities_mapping, :jsonb hash of object storage paths to the entity's original full_path because they can be quite long when used as object keys
  • :encrypted_object_storage_credentials, :jsonb object storage credentials stored in an encrypted attribute
  • :encrypted_object_storage_credentials_iv, :jsonb

Alternate proposal

Since direct transfer and offline transfer configuration have no attributes in common besides bulk_import_id and it will be used for exports and imports, creating a new configuration model with the attributes above may make more sense.

Edited by Sam Word