release r011 fix CA preview file checks
This commit is contained in:
1 parent
771b8c43a1
commit
1abd047946
6 files changed
+15
-13
No files matched your search
@@ -76,10 +76,10 @@ Oder manuell:
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
# .txz von Gitea laden
|
# .txz von Gitea laden
|
||||||
curl -O http://192.168.1.2:4000/michael/MUA-Mikes-Unraid-Agent/raw/branch/main/dist/mua-2026.08.21.r010-x86_64-1.txz
|
curl -O http://192.168.1.2:4000/michael/MUA-Mikes-Unraid-Agent/raw/branch/main/dist/mua-2026.08.21.r011-x86_64-1.txz
|
||||||
|
|
||||||
# Installieren
|
# Installieren
|
||||||
upgradepkg --install-new mua-2026.08.21.r010-x86_64-1.txz
|
upgradepkg --install-new mua-2026.08.21.r011-x86_64-1.txz
|
||||||
```
|
```
|
||||||
|
|
||||||
### 2. Service starten
|
### 2. Service starten
|
||||||
@@ -94,7 +94,7 @@ Der Service startet automatisch bei jedem Boot (SysVinit).
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
curl http://192.168.1.2:3002/health
|
curl http://192.168.1.2:3002/health
|
||||||
# → {"status":"ok","version":"2026.08.21.r010","auth":"required"}
|
# → {"status":"ok","version":"2026.08.21.r011","auth":"required"}
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|||||||
BIN
Binary file not shown.
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "mua",
|
"name": "mua",
|
||||||
"version": "2026.08.21.r010",
|
"version": "2026.08.21.r011",
|
||||||
"description": "Mikes Unraid Agent - MCP over HTTP (Streamable HTTP) for Unraid",
|
"description": "Mikes Unraid Agent - MCP over HTTP (Streamable HTTP) for Unraid",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
|
|||||||
+6
-4
@@ -2,13 +2,13 @@
|
|||||||
<!DOCTYPE PLUGIN [
|
<!DOCTYPE PLUGIN [
|
||||||
<!ENTITY name "mua">
|
<!ENTITY name "mua">
|
||||||
<!ENTITY author "Michael">
|
<!ENTITY author "Michael">
|
||||||
<!ENTITY version "2026.08.21.r010">
|
<!ENTITY version "2026.08.21.r011">
|
||||||
<!ENTITY launch "Settings/mua">
|
<!ENTITY launch "Settings/mua">
|
||||||
<!ENTITY pluginURL "http://192.168.1.2:4000/michael/MUA-Mikes-Unraid-Agent/raw/branch/main/plugin/mua.plg">
|
<!ENTITY pluginURL "http://192.168.1.2:4000/michael/MUA-Mikes-Unraid-Agent/raw/branch/main/plugin/mua.plg">
|
||||||
<!ENTITY pluginLOC "/boot/config/plugins/&name;">
|
<!ENTITY pluginLOC "/boot/config/plugins/&name;">
|
||||||
<!ENTITY emhttpLOC "/usr/local/emhttp/plugins/&name;">
|
<!ENTITY emhttpLOC "/usr/local/emhttp/plugins/&name;">
|
||||||
<!ENTITY txzURL "http://192.168.1.2:4000/michael/MUA-Mikes-Unraid-Agent/raw/branch/main/dist/mua-2026.08.21.r010-x86_64-1.txz">
|
<!ENTITY txzURL "http://192.168.1.2:4000/michael/MUA-Mikes-Unraid-Agent/raw/branch/main/dist/mua-2026.08.21.r011-x86_64-1.txz">
|
||||||
<!ENTITY txzSHA256 "24e9efd787109c385b282daf056c54e6ca9984281fbde612cc39131f4107eaf1">
|
<!ENTITY txzSHA256 "fcbcce197a4eb14e4f039645027a94d9d037f1e469c8da2e079fca7bf96f36d3">
|
||||||
]>
|
]>
|
||||||
|
|
||||||
<PLUGIN name="&name;"
|
<PLUGIN name="&name;"
|
||||||
@@ -23,6 +23,8 @@
|
|||||||
>
|
>
|
||||||
|
|
||||||
<CHANGES>
|
<CHANGES>
|
||||||
|
### 2026.08.21.r011
|
||||||
|
- CA-Vorschau-Fix: asynchrone Bun-Dateiprüfungen werden korrekt abgewartet; freie Container- und Templatenamen werden nicht mehr fälschlich als belegt gemeldet.
|
||||||
### 2026.08.21.r010
|
### 2026.08.21.r010
|
||||||
- Sieben kompakte Unraid-Lesewerkzeuge für Systemzustand, Storage/Parity, SMART, Benachrichtigungen, Shares und Docker-Update-Status.
|
- Sieben kompakte Unraid-Lesewerkzeuge für Systemzustand, Storage/Parity, SMART, Benachrichtigungen, Shares und Docker-Update-Status.
|
||||||
- Community Applications: offizieller Feed, kompakte Suche sowie sicherer Vorschau- und Installationsablauf.
|
- Community Applications: offizieller Feed, kompakte Suche sowie sicherer Vorschau- und Installationsablauf.
|
||||||
@@ -103,7 +105,7 @@ Das .txz enthält:
|
|||||||
install/doinst.sh (läuft nach Installation)
|
install/doinst.sh (läuft nach Installation)
|
||||||
===========================================
|
===========================================
|
||||||
-->
|
-->
|
||||||
<FILE Name="/boot/config/plugins/&name;/mua-2026.08.21.r010-x86_64-1.txz" Run="upgradepkg --install-new" Mode="755" Min="7.0.0">
|
<FILE Name="/boot/config/plugins/&name;/mua-2026.08.21.r011-x86_64-1.txz" Run="upgradepkg --install-new" Mode="755" Min="7.0.0">
|
||||||
<URL>&txzURL;</URL>
|
<URL>&txzURL;</URL>
|
||||||
<SHA256>&txzSHA256;</SHA256>
|
<SHA256>&txzSHA256;</SHA256>
|
||||||
</FILE>
|
</FILE>
|
||||||
|
|||||||
+1
-1
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "mua",
|
"name": "mua",
|
||||||
"author": "Michael",
|
"author": "Michael",
|
||||||
"version": "2026.08.21.r010",
|
"version": "2026.08.21.r011",
|
||||||
"minver": "7.0.0",
|
"minver": "7.0.0",
|
||||||
"pluginDirectory": "/usr/local/emhttp/plugins/mua",
|
"pluginDirectory": "/usr/local/emhttp/plugins/mua",
|
||||||
"configDirectory": "/boot/config/plugins/mua",
|
"configDirectory": "/boot/config/plugins/mua",
|
||||||
|
|||||||
+4
-4
@@ -14,7 +14,7 @@ import { createHash, randomUUID } from "node:crypto";
|
|||||||
|
|
||||||
// ── Konstanten ──────────────────────────────────────────────────────────
|
// ── Konstanten ──────────────────────────────────────────────────────────
|
||||||
export const MUA_SERVER_NAME = "mua";
|
export const MUA_SERVER_NAME = "mua";
|
||||||
export const MUA_VERSION = "2026.08.21.r010";
|
export const MUA_VERSION = "2026.08.21.r011";
|
||||||
export const MUA_PROTOCOL_VERSION = "2025-03-26";
|
export const MUA_PROTOCOL_VERSION = "2025-03-26";
|
||||||
export const PHP_HELPER = "/usr/local/bin/unraid-docker-mcp-helper.php";
|
export const PHP_HELPER = "/usr/local/bin/unraid-docker-mcp-helper.php";
|
||||||
export const STATUS_HELPER = "/usr/local/bin/unraid-mcp-status-helper.php";
|
export const STATUS_HELPER = "/usr/local/bin/unraid-mcp-status-helper.php";
|
||||||
@@ -236,14 +236,14 @@ export async function runPhpHelper(
|
|||||||
...args: string[]
|
...args: string[]
|
||||||
): Promise<string> {
|
): Promise<string> {
|
||||||
const helper = PHP_HELPER;
|
const helper = PHP_HELPER;
|
||||||
if (!Bun.file(helper).exists()) {
|
if (!(await Bun.file(helper).exists())) {
|
||||||
throw new Error(`PHP helper not found: ${helper}`);
|
throw new Error(`PHP helper not found: ${helper}`);
|
||||||
}
|
}
|
||||||
return runArgv(`php_helper:${action}`, ["/usr/bin/php", helper, action, ...args], 300);
|
return runArgv(`php_helper:${action}`, ["/usr/bin/php", helper, action, ...args], 300);
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function runStatusHelper(action: string, ...args: string[]): Promise<string> {
|
export async function runStatusHelper(action: string, ...args: string[]): Promise<string> {
|
||||||
if (!Bun.file(STATUS_HELPER).exists()) {
|
if (!(await Bun.file(STATUS_HELPER).exists())) {
|
||||||
throw new Error(`Status helper not found: ${STATUS_HELPER}`);
|
throw new Error(`Status helper not found: ${STATUS_HELPER}`);
|
||||||
}
|
}
|
||||||
return runArgv(`status_helper:${action}`, ["/usr/bin/php", STATUS_HELPER, action, ...args], 60);
|
return runArgv(`status_helper:${action}`, ["/usr/bin/php", STATUS_HELPER, action, ...args], 60);
|
||||||
@@ -875,7 +875,7 @@ export async function previewCommunityAppInstall(
|
|||||||
}
|
}
|
||||||
const names = (await dockerExec("ps -a --format '{{.Names}}'", 30)).split("\n").map((x) => x.trim());
|
const names = (await dockerExec("ps -a --format '{{.Names}}'", 30)).split("\n").map((x) => x.trim());
|
||||||
if (names.includes(containerName)) throw new Error(`Container already exists: ${containerName}`);
|
if (names.includes(containerName)) throw new Error(`Container already exists: ${containerName}`);
|
||||||
if (Bun.file(`/boot/config/plugins/dockerMan/templates-user/my-${containerName}.xml`).exists()) {
|
if (await Bun.file(`/boot/config/plugins/dockerMan/templates-user/my-${containerName}.xml`).exists()) {
|
||||||
throw new Error(`Unraid user template already exists: ${containerName}`);
|
throw new Error(`Unraid user template already exists: ${containerName}`);
|
||||||
}
|
}
|
||||||
const ticket = randomUUID();
|
const ticket = randomUUID();
|
||||||
|
|||||||
Reference in new issue
Block a user