Release v0.1.6: identify gallery destinations by provider and NAS name [skip ci]

This commit is contained in:
渡口浪人
2026-10-16 18:58:01 +08:00
parent d3f40cfea3
commit 106b6f311f
19 changed files with 218 additions and 13 deletions
+4
View File
@@ -43,6 +43,10 @@ WEB_PORT=6005. The latter binds every NAS interface, so use the LAN IP when
strict LAN-only binding is required. No firewall/router/proxy edits are performed.
Copy deploy/devices.yml.example to config/devices.yml if multiple devices are desired.
Set `FRAME_FLOW_STORAGE_NAME` to the NAS display name. The gallery tab shows
this name followed by “本地图库” (or “Local gallery”). For Actions deployment,
set the repository Variable of the same name. It is a display label, not a path.
## 3. Validate, build, start / 验证构建启动
Synology Docker is /usr/local/bin/docker. The SSH user may require sudo. Do not
+19
View File
@@ -23,3 +23,22 @@ The UI labels the top card **Shared connection**, displays source IDs and paths
on each source card, and explains each source's connection dependency. Shared
session disconnect is available only in the shared connection card and asks for
confirmation of its impact on all people-filtered sources.
## Gallery destination labels / 图库目的地标签
图库标签描述可保存图片的具体目的地,照片来源连接不自动成为图库目的地。
当前为 `KoKonna 云端图库` 与 `<FRAME_FLOW_STORAGE_NAME> 本地图库`;
NAS 名称通过部署配置设置,空值回退为 NAS,不使用容器 ID 代替 NAS 名称。
英文使用同一实例名称与 cloud gallery / Local gallery。
`GET /api/v1/settings` 的 `gallery_destinations` 提供目的地 ID、适配器、
实例/服务商名称、存储类型、连接状态和保存能力。只有连接有效、明确支持上传且
前端存在对应适配器的目的地才进入标签栏。能力默认关闭;全局写入保护仍单独生效,
目的地的保存能力不等于当前用户获准写入。
后续网盘接入须先实现其读取/保存适配器、校验授权及能力,再注册目的地。
命名规则为“服务商/实例名称 + 云端图库”,例如已实现保存能力后才可展示
“百度网盘·家庭 云端图库”。多个账号/实例必须能从名称区分。
目前 Google Drive、阿里云盘、百度网盘和 WebDAV 仅作为只读照片来源,
不出现在可保存目的地标签栏,不显示尚未实现的上传入口。
+1
View File
@@ -37,6 +37,7 @@ Repository Settings → Actions configuration (private paths/addresses use Secre
| `PROD_PHOTOS_DIR` (Secret) | Existing read-only photos source if present; otherwise empty |
| `PROD_WEB_BIND` (Secret) | Exact existing Docker HostIp (`0.0.0.0` or NAS LAN IP etc.) |
| `PROD_WEB_PORT` | Exact existing mapped port |
| `FRAME_FLOW_STORAGE_NAME` | Optional NAS display name for the local gallery; defaults to NAS |
| `PROD_STATE_VOLUME` | Dedicated new deployment journal volume, e.g. `pigway-frame-flow-cd-state` |
| `PROD_MOCK` | Explicit `true`/`false`, consistent with intended production mode |
| `PROD_WRITE_ENABLED` | Explicit `true`/`false`; preserve owner's existing write policy |
+57 -3
View File
@@ -2,7 +2,7 @@
"openapi": "3.1.0",
"info": {
"title": "Pigway Frame Flow API",
"version": "0.1.5"
"version": "0.1.6"
},
"paths": {
"/api/v1/devices/{device_id}/widgets/selection": {
@@ -15047,6 +15047,48 @@
],
"title": "FutureContent"
},
"GalleryDestination": {
"properties": {
"id": {
"type": "string",
"title": "Id"
},
"adapter": {
"type": "string",
"title": "Adapter"
},
"name": {
"type": "string",
"title": "Name"
},
"storage": {
"type": "string",
"enum": [
"cloud",
"local"
],
"title": "Storage"
},
"connected": {
"type": "boolean",
"title": "Connected",
"default": false
},
"supports_upload": {
"type": "boolean",
"title": "Supports Upload",
"default": false
}
},
"type": "object",
"required": [
"id",
"adapter",
"name",
"storage"
],
"title": "GalleryDestination"
},
"GalleryImage": {
"properties": {
"starred": {
@@ -15156,7 +15198,7 @@
"version": {
"type": "string",
"title": "Version",
"default": "0.1.5"
"default": "0.1.6"
}
},
"type": "object",
@@ -17091,6 +17133,18 @@
},
"SettingsView": {
"properties": {
"storage_name": {
"type": "string",
"title": "Storage Name",
"default": "NAS"
},
"gallery_destinations": {
"items": {
"$ref": "#/components/schemas/GalleryDestination"
},
"type": "array",
"title": "Gallery Destinations"
},
"version": {
"type": "string",
"title": "Version"
@@ -17333,7 +17387,7 @@
"version": {
"type": "string",
"title": "Version",
"default": "0.1.5"
"default": "0.1.6"
},
"api_version": {
"type": "string",
+29
View File
@@ -0,0 +1,29 @@
# Pigway Frame Flow v0.1.6
## 简体中文
- 图库使用具体目的地标签:`KoKonna 云端图库` 与 `<NAS 名称> 本地图库`,NAS 名称通过 `FRAME_FLOW_STORAGE_NAME` 配置。
- Settings API 增加目的地元数据,标签仅展示连接已配置、明确支持保存且存在适配器的目的地;全局写入保护保持独立。
- 后续网盘须实现读取/保存适配器并完成连接后才能加入标签栏,显示具体服务商/实例名称。当前只读照片来源不会作为保存目的地展示。
- 长标签在手机上换行,避免整页横向溢出;中英文保持相同目的地身份。
- Compose 和自动部署透传 NAS 展示名称;分支 CI 完整验证后发布标签,避免相同提交的标签推送重复占用构建队列。
### 验证
本地 507 项 Python 测试、Ruff、格式检查、mypy、JavaScript 语法检查通过。
图库目的地标签与能力过滤 18 项浏览器检查通过;覆盖 320–1440 像素、中英文、明暗主题和长 NAS 名称。
本次不增加任何网盘写入功能,不改变画框写入策略。
### 升级
Compose 设置 `FRAME_FLOW_STORAGE_NAME`;Actions 设置同名仓库 Variable。
名称只描述实例,不作为路径或授权凭据。未设置时回退为 NAS。
默认访问端口仍为 6005,容器内部端口仍为 18787。
NAS 源码包与 SHA256 附件不含运行配置、密钥、数据库或私人照片,需自行构建镜像。
## English
Gallery tabs identify the concrete destination: KoKonna cloud gallery and the configured NAS name plus Local gallery.
Destination metadata includes connection and upload capabilities; only implemented writable adapters are shown.
Existing read-only cloud photo sources are not presented as save destinations. Long labels wrap on mobile.
Set FRAME_FLOW_STORAGE_NAME in Compose or the Actions repository Variables. No cloud-drive write support or device write policy is changed.