feat: add plugin store index
- Add store.json for plugin listing - Auto-generate store.json in CI workflow
This commit is contained in:
9
.github/workflows/sign.yml
vendored
9
.github/workflows/sign.yml
vendored
@@ -31,10 +31,13 @@ jobs:
|
||||
bash scripts/sign-all.sh /tmp/private.key
|
||||
rm -f /tmp/private.key
|
||||
|
||||
- name: Commit signatures
|
||||
- name: Generate store.json
|
||||
run: bash scripts/generate-store.sh > store.json
|
||||
|
||||
- name: Commit changes
|
||||
run: |
|
||||
git config user.name "GitHub Actions"
|
||||
git config user.email "actions@github.com"
|
||||
git add -A "plugins/**/*.sig"
|
||||
git diff --staged --quiet || git commit -m "chore: update plugin signatures"
|
||||
git add -A "plugins/**/*.sig" store.json
|
||||
git diff --staged --quiet || git commit -m "chore: update signatures and store"
|
||||
git push
|
||||
|
||||
22
scripts/generate-store.sh
Executable file
22
scripts/generate-store.sh
Executable file
@@ -0,0 +1,22 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
REPO_ROOT="$(cd "$(dirname "$0")/.." && pwd)"
|
||||
STORE_FILE="$REPO_ROOT/store.json"
|
||||
|
||||
echo "["
|
||||
|
||||
first=true
|
||||
for manifest in "$REPO_ROOT"/plugins/*/manifest.json; do
|
||||
[ -f "$manifest" ] || continue
|
||||
|
||||
if [ "$first" = true ]; then
|
||||
first=false
|
||||
else
|
||||
echo ","
|
||||
fi
|
||||
|
||||
cat "$manifest"
|
||||
done
|
||||
|
||||
echo "]"
|
||||
9
store.json
Normal file
9
store.json
Normal file
@@ -0,0 +1,9 @@
|
||||
[
|
||||
{
|
||||
"name": "file-manager",
|
||||
"version": "1.0.0",
|
||||
"type": "app",
|
||||
"description": "文件管理器插件,提供远程文件浏览和管理功能",
|
||||
"author": "GoTunnel Official"
|
||||
}
|
||||
]
|
||||
Reference in New Issue
Block a user