Merge pull request #10847 from appwrite/feat-csv-export

Set downloadUrl on realtime event
This commit is contained in:
Jake Barnby 2025-11-20 06:01:06 +00:00 committed by GitHub
commit 0cdabbf959
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -411,7 +411,7 @@ class Migrations extends Action
$source?->success();
if ($migration->getAttribute('destination') === DestinationCSV::getName()) {
$this->handleCSVExportComplete($project, $migration, $queueForMails);
$this->handleCSVExportComplete($project, $migration, $queueForMails, $queueForRealtime);
}
}
}
@ -432,7 +432,8 @@ class Migrations extends Action
protected function handleCSVExportComplete(
Document $project,
Document $migration,
Mail $queueForMails
Mail $queueForMails,
Realtime $queueForRealtime,
): void {
$options = $migration->getAttribute('options', []);
$bucketId = 'default'; // Always use platform default bucket
@ -530,6 +531,9 @@ class Migrations extends Action
$endpoint = System::getEnv('_APP_DOMAIN', '');
$protocol = System::getEnv('_APP_OPTIONS_FORCE_HTTPS', 'disabled') === 'enabled' ? 'https' : 'http';
$downloadUrl = "{$protocol}://{$endpoint}/v1/storage/buckets/{$bucketId}/files/{$fileId}/push?project={$project->getId()}&jwt={$jwt}";
$options['downloadUrl'] = $downloadUrl;
$migration->setAttribute('options', $options);
$this->updateMigrationDocument($migration, $project, $queueForRealtime);
$this->sendCSVEmail(
success: true,