Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/main' into ui/node-status-prep3
Browse files Browse the repository at this point in the history
  • Loading branch information
KaWaite committed Mar 7, 2025
2 parents 8b803b7 + 718dae6 commit 6c7d4c0
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 17 deletions.
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
* @reearth/flow-admin

/ui/ @KaWaite
/server/ @pyshx @KaWaite
/server/ @pyshx
7 changes: 6 additions & 1 deletion server/api/internal/usecase/interactor/project.go
Original file line number Diff line number Diff line change
Expand Up @@ -225,6 +225,11 @@ func (i *Project) Run(ctx context.Context, p interfaces.RunProjectParam, operato
return nil, err
}

workflowURL, err := i.file.UploadWorkflow(ctx, p.Workflow)
if err != nil {
return nil, err
}

metadataURL, err := i.file.UploadMetadata(ctx, j.ID().String(), []string{})
if err != nil {
return nil, fmt.Errorf("failed to upload metadata: %v", err)
Expand All @@ -237,7 +242,7 @@ func (i *Project) Run(ctx context.Context, p interfaces.RunProjectParam, operato
return nil, err
}

gcpJobID, err := i.batch.SubmitJob(ctx, j.ID(), p.Workflow.Path, j.MetadataURL(), nil, p.ProjectID, prj.Workspace())
gcpJobID, err := i.batch.SubmitJob(ctx, j.ID(), workflowURL.String(), j.MetadataURL(), nil, p.ProjectID, prj.Workspace())
if err != nil {
return nil, fmt.Errorf("failed to submit job: %v", err)
}
Expand Down
33 changes: 18 additions & 15 deletions ui/src/hooks/useProjectImport.ts
Original file line number Diff line number Diff line change
Expand Up @@ -65,44 +65,47 @@ export default () => {
if (!project) return console.error("Failed to create project");

const yDoc = new Y.Doc();
Y.applyUpdate(yDoc, yDocBinary);

const { websocket } = config();

if (websocket && projectMeta) {
(async () => {
const token = await getAccessToken();
const token = await getAccessToken();

const yWebSocketProvider = new WebsocketProvider(
websocket,
`${project.id}:${DEFAULT_ENTRY_GRAPH_ID}`,
yDoc,
{ params: { token } },
);
const yWebSocketProvider = new WebsocketProvider(
websocket,
`${project.id}:${DEFAULT_ENTRY_GRAPH_ID}`,
yDoc,
{ params: { token } },
);

await new Promise<void>((resolve) => {
yWebSocketProvider.once("sync", () => {
yDoc.transact(() => {
Y.applyUpdate(yDoc, yDocBinary);
});

const yWorkflows = yDoc.getArray<YWorkflow>("workflows");
if (!yWorkflows.length) {
console.warn("Imported project has no workflows");
}

setIsProjectImporting(false);
yWebSocketProvider?.destroy();
resolve();
});
})();
});
}
} catch (error) {
console.error("Error importing project:", error);
console.error("Failed to import project:", error);
setIsProjectImporting(false);
}
},
[currentWorkspace, t, createProject, getAccessToken],
[createProject, currentWorkspace, getAccessToken, t],
);

return {
fileInputRef,
isProjectImporting,
setIsProjectImporting,
handleProjectImportClick,
handleProjectFileUpload,
fileInputRef,
};
};

0 comments on commit 6c7d4c0

Please sign in to comment.