fix: multiple tasks
This commit is contained in:
@@ -15,16 +15,42 @@ export function registerPublishHandlers(safeHandle: SafeHandle): void {
|
||||
const publishEngine = getPublishEngine();
|
||||
publishEngine.setProjectContext(project.id, project.dataPath!);
|
||||
|
||||
return taskManager.runTask({
|
||||
id: `publish-upload-${Date.now()}`,
|
||||
name: 'Upload Site',
|
||||
groupId: 'publish',
|
||||
groupName: 'Site Publishing',
|
||||
execute: async (onProgress) => {
|
||||
return publishEngine.uploadSite(credentials, (progress, message) => {
|
||||
onProgress(progress, message);
|
||||
});
|
||||
},
|
||||
const ts = Date.now();
|
||||
const groupId = `publish-${ts}`;
|
||||
const groupName = 'Site Publishing';
|
||||
|
||||
// Launch three parallel tasks, one per directory
|
||||
const htmlTask = taskManager.runTask({
|
||||
id: `publish-html-${ts}`,
|
||||
name: 'Upload HTML',
|
||||
groupId,
|
||||
groupName,
|
||||
execute: (onProgress) => publishEngine.uploadHtml(credentials, onProgress),
|
||||
});
|
||||
|
||||
const thumbsTask = taskManager.runTask({
|
||||
id: `publish-thumbnails-${ts}`,
|
||||
name: 'Upload Thumbnails',
|
||||
groupId,
|
||||
groupName,
|
||||
execute: (onProgress) => publishEngine.uploadThumbnails(credentials, onProgress),
|
||||
});
|
||||
|
||||
const mediaTask = taskManager.runTask({
|
||||
id: `publish-media-${ts}`,
|
||||
name: 'Upload Media',
|
||||
groupId,
|
||||
groupName,
|
||||
execute: (onProgress) => publishEngine.uploadMedia(credentials, onProgress),
|
||||
});
|
||||
|
||||
const [html, thumbnails, media] = await Promise.all([htmlTask, thumbsTask, mediaTask]);
|
||||
|
||||
return {
|
||||
htmlFilesUploaded: html.filesUploaded,
|
||||
thumbnailFilesUploaded: thumbnails.filesUploaded,
|
||||
mediaFilesUploaded: media.filesUploaded,
|
||||
filesSkipped: html.filesSkipped + thumbnails.filesSkipped + media.filesSkipped,
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user