feat: Object stores in the dashboard - #99
Merged
Merged
Conversation
The Object Stores page can now deploy a self-hosted store or connect an existing deployment as one, and shows each connected store. Deploying an object store picks from the available store templates and optionally auto-registers the result. Marketplace installs now open the full deployment flow so an app gets the same name, domain, SSL, and database options as deploying from anywhere else.
Clicking a connected store opens a browser listing its objects with size and modified time, and supports uploading, downloading, and deleting them.
Each connected store gains a "use in app" action that picks a deployment and a variable prefix, then injects the store's connection details into it and reports the variables written.
Each connected store gains a replicate action that picks a target store, runs the copy, and reports how many objects were copied, skipped, and failed.
Opening a store now navigates to its own page showing the store's details, its objects, and the use-in-app and replicate actions, instead of a cramped modal.
Object uploads inherited the client's default JSON content type, so the file was never received. They are now sent as multipart form data.
Deleting an object now asks for confirmation instead of removing it on the first click.
The store page now lists the server's buckets and lets you create and switch between them, browsing and uploading within the selected one. The backup bucket is marked and its objects cannot be deleted. Image and text objects can be previewed inline instead of only downloaded.
The store page now lists its buckets with object counts and sizes and lets you create or delete buckets. Opening a bucket shows its files on their own page with a breadcrumb, upload, previews, delete, and load-more paging for large buckets.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The dashboard for object stores (agent side: flatrun/agent#199).
From the Object Stores page you can deploy a self-hosted store or connect an existing deployment as one. Opening a store browses it:
Delete is guarded: it confirms first, and the backup bucket's objects can't be deleted from the browser. Separately, Marketplace installs now open the standard deployment flow instead of a one-field modal, so an app gets the same name, domain, SSL, and database options as deploying anywhere else.
Depends on flatrun/agent#199 for the endpoints.