accounts/docs/dl-mirror.md
2025-09-14 10:48:11 +08:00

63 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Download Mirror Storage Layout
This document describes the directory layout and metadata files required for the `ui/dl` static download portal.
## Root Objects
The root of the object storage bucket must contain:
- `manifest.json` lists all top-level buckets shown on the homepage.
- one subdirectory per bucket (e.g. `deb/`, `xray-core/`).
Example `manifest.json`:
```json
{
"generated_at": "2025-09-13T12:00:00Z",
"roots": [
{
"name": "xray-core",
"href": "/xray-core/",
"updated_at": "2025-09-01T10:36:00Z",
"item_count": 7,
"summary": "Xray-core offline bundles"
}
]
}
```
## Bucket Contents
Each bucket directory must include:
- `dir.json` metadata for the bucket or subdirectory.
- optional `tldr.md` short usage snippet rendered on the right panel.
- optional `README.md` detailed documentation.
- artifact files, checksums, SBOMs, etc.
Example `dir.json`:
```json
{
"path": "/xray-core/",
"updated_at": "2025-09-01T10:36:00Z",
"tldr": "/xray-core/tldr.md",
"readme": "/xray-core/README.md",
"items": [
{
"name": "xray-core-offline-amd64-1.8.7.tar.gz",
"size": 148723441,
"updated_at": "2025-09-01T10:36:00Z",
"href": "/xray-core/xray-core-offline-amd64-1.8.7.tar.gz",
"sha256": "/xray-core/sha256sum.txt"
}
]
}
```
Each `items` entry corresponds to a file or subdirectory. If `sha256` is present, the UI exposes a copyable verification command.
## Deployment
After running `next build && next export` inside `ui/dl`, upload the `out/` directory to the root of the object storage bucket alongside `manifest.json` and the per-bucket directories.