Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate cloud API to Fast API #16296

Merged
merged 18 commits into from
Jul 30, 2023
Merged

Migrate cloud API to Fast API #16296

merged 18 commits into from
Jul 30, 2023

Conversation

heisner-tillman
Copy link
Contributor

@heisner-tillman heisner-tillman commented Jun 22, 2023

This is a part of #10889.

Summary

  • Add pydantic models
  • Operations now return pydanctic models
  • Removed the mapping to the legacy route and add FastAPI routes

How to test the changes?

cloud

License

  • I agree to license these and all my past contributions to the core galaxy codebase under the MIT license.

@github-actions github-actions bot added this to the 23.2 milestone Jun 22, 2023
@heisner-tillman
Copy link
Contributor Author

I have not written any tests for this yet as I do not have cloud-based storage.
I would appreciate it if someone could help me with this.
I also suspect that there are still bugs, but it is hard to find or fix them without tests.

@mvdbeek
Copy link
Member

mvdbeek commented Jun 22, 2023

Are you planning to do more routes ? I think it'd be good to coordinate a little, this route for instance we should probably deprecate.

@bgruening
Copy link
Member

@mvdbeek we are planning to migrate a few more routes yes. Can we use the meta issue to track which ones are needed and which not?

@heisner-tillman
Copy link
Contributor Author

@mvdbeek I was planning to try my hand at the old users routes next.

@mvdbeek
Copy link
Member

mvdbeek commented Jun 26, 2023

That seems like a good idea for these routes:
Screenshot 2023-06-26 at 17 41 10

There are more specific routes for various small things like these:

Screenshot 2023-06-26 at 17 42 24

the ones that end with /inputs are anlittle weird and tied to the shape of the form we use for the UI. You can port them if you really want, but those should probably be refactored or dropped soon-ish.

Copy link
Contributor

@davelopez davelopez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice first try! 👍

I guess the important part here is to have the routes marked as deprecated in the interactive docs, but we should try to keep the same response models while they are still part of the API.

lib/galaxy/schema/cloud.py Outdated Show resolved Hide resolved
lib/galaxy/schema/cloud.py Outdated Show resolved Hide resolved
lib/galaxy/webapps/galaxy/api/cloud.py Outdated Show resolved Hide resolved
lib/galaxy/webapps/galaxy/api/cloud.py Outdated Show resolved Hide resolved
lib/galaxy/webapps/galaxy/api/cloud.py Outdated Show resolved Hide resolved
@mvdbeek mvdbeek merged commit e6507fb into galaxyproject:dev Jul 30, 2023
@mvdbeek mvdbeek added the kind/refactoring cleanup or refactoring of existing code, no functional changes label Jul 30, 2023
@galaxyproject galaxyproject deleted a comment from github-actions bot Jul 30, 2023
@heisner-tillman heisner-tillman deleted the cloud branch August 12, 2023 15:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/API area/UI-UX kind/refactoring cleanup or refactoring of existing code, no functional changes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants