-
Notifications
You must be signed in to change notification settings - Fork 36
Object storage improvements #368
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
Merged
Merged
Changes from all commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
920cb64
object-storage: Restructure documentation
tdgroot a70b619
object-storage: Add object versioning article
tdgroot 44231ac
bin/watch: Allow build_docs to fail
tdgroot 5b98c40
docs/conf.py: Fix weird HTML title suffix
tdgroot fe4615a
object-storage: Fix formatting errors
tdgroot 68d179c
small fixes
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
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
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
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| --- | ||
| myst: | ||
| html_meta: | ||
| description: Learn how to cancel Hypernode Object Storage | ||
| title: Hypernode Object Storage | Cancellation | ||
| --- | ||
|
|
||
| # Cancellation | ||
|
|
||
| To cancel an Object Storage Workspace, you can SSH into the Hypernode that is linked to that Object Storage and run `hypernode-object-storage cancel`. | ||
|
|
||
| ```{note} | ||
| The cancellation will be in effect from the end of the month. | ||
| Also if you change your mind or forgot to pull some data. It will still be available for 7 days after the cancellation. You can always reach out to the support team for help if that happens. | ||
| ``` |
125 changes: 0 additions & 125 deletions
125
docs/hypernode-platform/object-storage/getting-started-with-object-storage.md
This file was deleted.
Oops, something went wrong.
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,68 @@ | ||
| --- | ||
| myst: | ||
| html_meta: | ||
| description: Getting started with Object Storage | ||
| title: Hypernode Object Storage | Getting Started | ||
| redirect_from: | ||
| - hypernode-platform/object-storage/getting-started-with-object-storage | ||
| --- | ||
|
|
||
| # Getting started with Hypernode Object Storage | ||
|
|
||
| You can run the CLI command with the `--help` flag to find out about all the options and arguments. | ||
|
|
||
| ```bash | ||
| hypernode-object-storage --help | ||
| ``` | ||
|
|
||
| ## Creating a Hypernode Object Storage Workspace | ||
|
|
||
| **Command-line interface (CLI)** | ||
|
|
||
| 1. SSH into your server. | ||
| 1. Run `hypernode-object-storage create` | ||
| 1. Fill in the prompts with a name and desired storage. | ||
| 1. Confirm your order and give it a few minutes before your storage is ready. | ||
|
|
||
| **Control Panel** | ||
|
|
||
| 1. Go to the [Control Panel](https://my.hypernode.com). | ||
| 1. Click the **Order a workspace** button in the top-right. | ||
| 1. Select the desired options for your workspace and proceed to checkout. | ||
|
|
||
| ```{note} | ||
| You can use one object storage across multiple Hypernodes. But you can only use one object storage space per Hypernode. | ||
| ``` | ||
|
|
||
| ## Retrieve object storage information | ||
|
|
||
| **Command-line interface (CLI)** | ||
|
|
||
| 1. Run `hypernode-object-storage info` | ||
| 1. If you want to retrieve your credentials for the workspace pass in the flag `--with-credentials`. | ||
|
|
||
| The output should look like the following: | ||
|
|
||
| ```console | ||
| app@abcdef-example-magweb-cmbl:~$ hypernode-object-storage info | ||
| UUID | d8770125-6c90-4770-b00f-1716f699990a | ||
| Name | example-storage | ||
| Plan | OS50GB | ||
| Versioning | Disabled | ||
| Hypernodes | example | ||
| Endpoint URL | **sensitive** | ||
| Access Key | **sensitive** | ||
| Secret Key | **sensitive** | ||
| ``` | ||
|
|
||
| **Control Panel** | ||
|
|
||
| 1. Go to the [Control Panel](https://my.hypernode.com). | ||
| 1. Click on the **Object Storage** tab in the left sidebar. | ||
| 1. Click your workspace. | ||
| 1. Click the **Show credentials** button in the top-right corner. | ||
|
|
||
| You can use the credentials and the URL now to configure remote storage for your application with the help of the following articles: | ||
|
|
||
| 1. [How to configure remote storage for Magento 2.x](../../ecommerce-applications/magento-2/how-to-configure-remote-storage-for-magento-2-x.md) | ||
| 1. [How to configure remote storage for Shopware 6.x](../../ecommerce-applications/shopware-6/how-to-configure-remote-storage-for-shopware-6-x.md) |
56 changes: 56 additions & 0 deletions
56
docs/hypernode-platform/object-storage/managing-objects.md
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,56 @@ | ||
| --- | ||
| myst: | ||
| html_meta: | ||
| description: Learn how to manage objects in Hypernode Object Storage | ||
| title: Hypernode Object Storage | Managing Objects | ||
| --- | ||
|
|
||
| # Managing Objects | ||
|
|
||
| You can manage your objects using the `hypernode-object-storage objects` subcommand. | ||
| It supports all common operations--listing, copying, moving, and deleting files--while also allowing you to sync files in the background and monitor the progress of an ongoing sync. | ||
|
|
||
| ```console | ||
| app@abcdef-example-magweb-cmbl:~$ hypernode-object-storage objects --help | ||
| usage: hypernode-object-storage objects [-h] {sync,cp,ls,mv,rm,show} ... | ||
|
|
||
| Manage objects in object storage | ||
|
|
||
| positional arguments: | ||
| {sync,cp,ls,mv,rm,show} | ||
| sync Synchronize files between a local directory and an object storage location | ||
| cp Copy a file or object from one location to another | ||
| ls List objects in an S3 bucket or folder | ||
| mv Move or rename a file or object | ||
| rm Delete an object from S3 | ||
| show Display the current status of an ongoing sync process | ||
|
|
||
| options: | ||
| -h, --help show this help message and exit | ||
| ``` | ||
|
|
||
| It is important to note that `hypernode-object-storage objects` supports all optional flags available in `aws s3`, allowing you to customize its behavior for advanced configurations. | ||
|
|
||
| ## Syncing files and monitoring progress | ||
|
|
||
| Syncing files between your local directory and object storage is simple. Run the following command: | ||
|
|
||
| ```console | ||
| app@abcdef-example-magweb-cmbl:~$ hypernode-object-storage objects sync /example/local/path/ s3://example/bucket/uri/ | ||
| Syncing objects from /example/local/path/ to s3://example/bucket/uri/... | ||
| Sync process started with PID 1234 in the background. | ||
| ``` | ||
|
|
||
| The `sync` operation runs in the background, and you can monitor its progress by using the `show` command, for example: | ||
|
|
||
| ```console | ||
| app@abcdef-example-magweb-cmbl:~$ hypernode-object-storage objects show 1234 | ||
| Completed 9.7 GiB/~30.0 GiB (118.2 MiB/s) with ~5 file(s) remaining (calculating...) | ||
| ``` | ||
|
|
||
| If you run the `show` command after the sync operation has finished, you’ll see output like this: | ||
|
|
||
| ```console | ||
| app@abcdef-example-magweb-cmbl:~$ hypernode-object-storage objects show 1234 | ||
| Process 1234 does not exist anymore | ||
| ``` | ||
53 changes: 53 additions & 0 deletions
53
docs/hypernode-platform/object-storage/object-versioning.md
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,53 @@ | ||
| --- | ||
| myst: | ||
| html_meta: | ||
| description: Learn how to enable and use Hypernode Object Storage Versioning | ||
| title: Hypernode Object Storage | Object Versioning | ||
| --- | ||
|
|
||
| # Object Versioning | ||
|
|
||
| With object versioning, you can keep track of changes made to your objects in the Object Storage workspace. This allows you to restore previous versions of your objects when needed. | ||
|
|
||
| ## Enabling Object Versioning | ||
|
|
||
| To enable object versioning, you can use the `update` command with the `--enable-versioning` flag. This will enable versioning for all objects in your Object Storage workspace. | ||
|
|
||
| ```console | ||
| app@abcdef-example-magweb-cmbl:~$ hypernode-object-storage update --enable-versioning | ||
| Enabling versioning... | ||
| ``` | ||
|
|
||
| It's also possible to enable versioning in the Control Panel. To do this, go to the Object Storage workspace you want to enable versioning for, and flip the Object Versioning toggle. | ||
|
|
||
| ```{note} | ||
| Object versioning increases the storage space used by your objects. Each version of an object is stored separately, so if you have a lot of changes to your objects, you may need a bigger storage plan at some point. | ||
| ``` | ||
|
|
||
| ## Restoring object revisions | ||
|
|
||
| With the `restore` command, you can restore an object to the state it was in at a specific point in time. You can specify the date and time of the revision you want to restore, as well as the object path. | ||
|
|
||
| The date and time should be in the format `YYYY-MM-DD HH:MM:SS`. The object path can be the full path to the object you want to restore or a path to a directory. If you specify a directory, all objects in that directory will be restored to the specified revision. | ||
|
|
||
| ```console | ||
| app@abcdef-example-magweb-cmbl:~$ hypernode-object-storage restore main "2025-04-24 06:00:00" media/catalog/product/e/x/example.jpg | ||
| ``` | ||
|
|
||
| By default, the `restore` command will only show what it would do without actually restoring the objects. To actually restore the objects, you need to add the `--apply` flag. | ||
|
|
||
| ```{note} | ||
| The `restore` command restores objects in place. This means that the current version of the object will be replaced with the version you are restoring. If you want to keep the current version of the object (or directory), you should make a copy of it before running the `restore` command. | ||
| ``` | ||
|
|
||
| ## Interactively exploring revisions | ||
|
|
||
| You can also explore your objects and their revisions interactively using the `explore` subcommand. This will open a terminal UI file browser where you can navigate through your objects and their versions. | ||
|
|
||
| ```console | ||
| app@abcdef-example-magweb-cmbl:~$ hypernode-object-storage explore | ||
| ``` | ||
|
|
||
| Here's an example of how the terminal UI looks when you run the `explore` command: | ||
|
|
||
|  |
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn't restore and explore be apart of this?