mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-03-07 00:11:37 +00:00
Compare commits
1 Commits
automated/
...
fix/databa
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
45ac3d32bc |
@@ -416,7 +416,6 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- wealthfolio: update cors [@CrazyWolf13](https://github.com/CrazyWolf13) ([#12617](https://github.com/community-scripts/ProxmoxVE/pull/12617))
|
||||
- CryptPad: Better update handling [@tremor021](https://github.com/tremor021) ([#12611](https://github.com/community-scripts/ProxmoxVE/pull/12611))
|
||||
|
||||
- #### ✨ New Features
|
||||
|
||||
@@ -29,11 +29,8 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
|
||||
if grep -q '^WF_CORS_ALLOW_ORIGINS=\*$' /opt/wealthfolio/.env; then
|
||||
sed -i "s|^WF_CORS_ALLOW_ORIGINS=\*$|WF_CORS_ALLOW_ORIGINS=http://${LOCAL_IP}:8080|" /opt/wealthfolio/.env
|
||||
fi
|
||||
|
||||
if check_for_gh_release "wealthfolio" "afadil/wealthfolio"; then
|
||||
RELEASE="3.0.3"
|
||||
if check_for_gh_release "wealthfolio" "afadil/wealthfolio" "${RELEASE}"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop wealthfolio
|
||||
msg_ok "Stopped Service"
|
||||
@@ -43,7 +40,7 @@ function update_script() {
|
||||
cp /opt/wealthfolio/.env /opt/wealthfolio_env_backup
|
||||
msg_ok "Backed up Data"
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "wealthfolio" "afadil/wealthfolio" "tarball"
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "wealthfolio" "afadil/wealthfolio" "tarball" "v${RELEASE}"
|
||||
|
||||
msg_info "Building Frontend (patience)"
|
||||
cd /opt/wealthfolio
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"generated": "2026-03-06T18:13:12Z",
|
||||
"generated": "2026-03-06T12:10:39Z",
|
||||
"versions": [
|
||||
{
|
||||
"slug": "2fauth",
|
||||
@@ -501,9 +501,9 @@
|
||||
{
|
||||
"slug": "grocy",
|
||||
"repo": "grocy/grocy",
|
||||
"version": "v4.6.0",
|
||||
"version": "v4.5.0",
|
||||
"pinned": false,
|
||||
"date": "2026-03-06T17:35:19Z"
|
||||
"date": "2025-03-28T19:02:22Z"
|
||||
},
|
||||
{
|
||||
"slug": "guardian",
|
||||
@@ -641,9 +641,9 @@
|
||||
{
|
||||
"slug": "kapowarr",
|
||||
"repo": "Casvt/Kapowarr",
|
||||
"version": "V1.3.0",
|
||||
"version": "V1.2.0",
|
||||
"pinned": false,
|
||||
"date": "2026-03-06T16:38:21Z"
|
||||
"date": "2025-04-16T14:55:28Z"
|
||||
},
|
||||
{
|
||||
"slug": "karakeep",
|
||||
@@ -872,9 +872,9 @@
|
||||
{
|
||||
"slug": "metube",
|
||||
"repo": "alexta69/metube",
|
||||
"version": "2026.03.06",
|
||||
"version": "2026.03.03",
|
||||
"pinned": false,
|
||||
"date": "2026-03-06T13:52:56Z"
|
||||
"date": "2026-03-03T19:15:55Z"
|
||||
},
|
||||
{
|
||||
"slug": "miniflux",
|
||||
@@ -1229,9 +1229,9 @@
|
||||
{
|
||||
"slug": "pulse",
|
||||
"repo": "rcourtman/Pulse",
|
||||
"version": "v5.1.21",
|
||||
"version": "v5.1.20",
|
||||
"pinned": false,
|
||||
"date": "2026-03-06T12:13:08Z"
|
||||
"date": "2026-03-06T00:30:32Z"
|
||||
},
|
||||
{
|
||||
"slug": "pve-scripts-local",
|
||||
@@ -1411,9 +1411,9 @@
|
||||
{
|
||||
"slug": "silverbullet",
|
||||
"repo": "silverbulletmd/silverbullet",
|
||||
"version": "2.5.2",
|
||||
"version": "2.5.1",
|
||||
"pinned": false,
|
||||
"date": "2026-03-06T12:20:58Z"
|
||||
"date": "2026-03-05T15:13:22Z"
|
||||
},
|
||||
{
|
||||
"slug": "slskd",
|
||||
@@ -1474,9 +1474,9 @@
|
||||
{
|
||||
"slug": "stirling-pdf",
|
||||
"repo": "Stirling-Tools/Stirling-PDF",
|
||||
"version": "v2.7.0",
|
||||
"version": "v2.6.0",
|
||||
"pinned": false,
|
||||
"date": "2026-03-06T11:21:47Z"
|
||||
"date": "2026-03-03T20:46:42Z"
|
||||
},
|
||||
{
|
||||
"slug": "streamlink-webui",
|
||||
@@ -1593,9 +1593,9 @@
|
||||
{
|
||||
"slug": "traefik",
|
||||
"repo": "traefik/traefik",
|
||||
"version": "v3.6.10",
|
||||
"version": "v3.6.9",
|
||||
"pinned": false,
|
||||
"date": "2026-03-06T15:08:35Z"
|
||||
"date": "2026-02-23T17:21:17Z"
|
||||
},
|
||||
{
|
||||
"slug": "trilium",
|
||||
@@ -1740,9 +1740,9 @@
|
||||
{
|
||||
"slug": "wealthfolio",
|
||||
"repo": "afadil/wealthfolio",
|
||||
"version": "v3.0.3",
|
||||
"pinned": true,
|
||||
"date": "2026-03-03T21:47:55Z"
|
||||
"version": "v3.0.4",
|
||||
"pinned": false,
|
||||
"date": "2026-03-05T19:58:24Z"
|
||||
},
|
||||
{
|
||||
"slug": "web-check",
|
||||
|
||||
@@ -51,8 +51,8 @@ WF_DB_PATH=/opt/wealthfolio_data/wealthfolio.db
|
||||
WF_SECRET_KEY=${SECRET_KEY}
|
||||
WF_AUTH_PASSWORD_HASH=${WF_PASSWORD_HASH}
|
||||
WF_STATIC_DIR=/opt/wealthfolio/dist
|
||||
WF_CORS_ALLOW_ORIGINS=*
|
||||
WF_REQUEST_TIMEOUT_MS=30000
|
||||
WF_CORS_ALLOW_ORIGINS=http://${LOCAL_IP}:8080
|
||||
EOF
|
||||
echo "WF_PASSWORD=${WF_PASSWORD}" >~/wealthfolio.creds
|
||||
msg_ok "Configured Wealthfolio"
|
||||
|
||||
@@ -2008,6 +2008,8 @@ verify_gpg_fingerprint() {
|
||||
# 0 on success (tag printed to stdout), 1 on failure
|
||||
#
|
||||
# Notes:
|
||||
# - When a prefix is given, uses the matching-refs API for server-side
|
||||
# filtering (avoids pagination issues with repos that have 100+ tags)
|
||||
# - Skips tags containing "rc", "alpha", "beta", "dev", "test"
|
||||
# - Sorts by version number (sort -V) to find the latest
|
||||
# - Respects GITHUB_TOKEN for rate limiting
|
||||
@@ -2021,11 +2023,21 @@ get_latest_gh_tag() {
|
||||
[[ -n "${GITHUB_TOKEN:-}" ]] && header_args=(-H "Authorization: Bearer $GITHUB_TOKEN")
|
||||
|
||||
local http_code=""
|
||||
local api_url=""
|
||||
|
||||
# When a prefix is given, use the matching-refs API for server-side filtering.
|
||||
# This avoids pagination issues with repos that have hundreds of tags (e.g. mongodb/mongo-tools).
|
||||
if [[ -n "$prefix" ]]; then
|
||||
api_url="https://api.github.com/repos/${repo}/git/matching-refs/tags/${prefix}"
|
||||
else
|
||||
api_url="https://api.github.com/repos/${repo}/tags?per_page=100"
|
||||
fi
|
||||
|
||||
http_code=$(curl -sSL --max-time 20 -w "%{http_code}" -o /tmp/gh_tags.json \
|
||||
-H 'Accept: application/vnd.github+json' \
|
||||
-H 'X-GitHub-Api-Version: 2022-11-28' \
|
||||
"${header_args[@]}" \
|
||||
"https://api.github.com/repos/${repo}/tags?per_page=100" 2>/dev/null) || true
|
||||
"$api_url" 2>/dev/null) || true
|
||||
|
||||
if [[ "$http_code" == "401" ]]; then
|
||||
msg_error "GitHub API authentication failed (HTTP 401)."
|
||||
@@ -2063,12 +2075,19 @@ get_latest_gh_tag() {
|
||||
tags_json=$(</tmp/gh_tags.json)
|
||||
rm -f /tmp/gh_tags.json
|
||||
|
||||
# Extract tag names, filter by prefix, exclude pre-release patterns, sort by version
|
||||
# Extract tag names depending on API response format
|
||||
local latest=""
|
||||
latest=$(echo "$tags_json" | grep -oP '"name":\s*"\K[^"]+' |
|
||||
{ [[ -n "$prefix" ]] && grep "^${prefix}" || cat; } |
|
||||
grep -viE '(rc|alpha|beta|dev|test|preview|snapshot)' |
|
||||
sort -V | tail -n1)
|
||||
if [[ -n "$prefix" ]]; then
|
||||
# matching-refs API returns {"ref": "refs/tags/100.14.1", ...}
|
||||
latest=$(echo "$tags_json" | grep -oP '"ref":\s*"refs/tags/\K[^"]+' |
|
||||
grep -viE '(rc|alpha|beta|dev|test|preview|snapshot)' |
|
||||
sort -V | tail -n1)
|
||||
else
|
||||
# tags API returns {"name": "v1.2.3", ...}
|
||||
latest=$(echo "$tags_json" | grep -oP '"name":\s*"\K[^"]+' |
|
||||
grep -viE '(rc|alpha|beta|dev|test|preview|snapshot)' |
|
||||
sort -V | tail -n1)
|
||||
fi
|
||||
|
||||
if [[ -z "$latest" ]]; then
|
||||
msg_warn "No matching tags found for ${repo}${prefix:+ (prefix: $prefix)}"
|
||||
|
||||
Reference in New Issue
Block a user