Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[3.2.0-beta.67] scripts-Datei wird nicht gefunden unter user #2782

Closed
mcuiobroker opened this issue Sep 7, 2024 · 51 comments
Closed

[3.2.0-beta.67] scripts-Datei wird nicht gefunden unter user #2782

mcuiobroker opened this issue Sep 7, 2024 · 51 comments
Assignees
Labels
alpha / beta 🚧 Issue related to an alpha or beta version bug 🐛 Something isn't working #prio:HIGH ❗ Priority: HIGH :exclamation: v3.2 Roadmap for v3.2

Comments

@mcuiobroker
Copy link
Collaborator

mcuiobroker commented Sep 7, 2024

#2716 (comment)

Setze ich eine scripts-Datei hier displayMark.js in
/opt/iobroker/node_modules/iobroker.jarvis/www/jarvis/user
mache ein Upload von jarvis -> iob upload jarvis erscheint die Datei auch unter Dateien
image
Rufe ich sie nun auf mit
@import "https://192.168.178.150:8400/user/displayMark.js";

und starte jarvis bekomme ich den Fehler
image

Für die Datei wurde auch der user auf iobroker geändert mit sudo chown -R iobroker:iobroker ./user
und dann der upload gemacht.
image

Wenn ich allerdings die Datei im Browser aufrufe ist sie erreichbar.
image

image
Hängt anscheinend mit dem angehängten ?ts=... zusammen
image

Ist die IP beim import eine andere als der Server kann man ?ts0.... anhängen, bei gleicher IP nicht.

@mcuiobroker mcuiobroker changed the title scripts-Datei wird nicht gefunden unter user [3.2.0-beta.67] scripts-Datei wird nicht gefunden unter user Sep 7, 2024
@Zefau Zefau added bug 🐛 Something isn't working #prio:HIGH ❗ Priority: HIGH :exclamation: alpha / beta 🚧 Issue related to an alpha or beta version v3.2 Roadmap for v3.2 labels Sep 8, 2024
@Zefau
Copy link
Owner

Zefau commented Sep 8, 2024

Ich hab eraseOnUpload mit der nächsten beta abgestellt, d.h. die benutzerspezifischen Skripte sollten damit nicht mehr gelöscht werden.

@mcuiobroker
Copy link
Collaborator Author

Wie werden dann Änderungen erkannt?

@Zefau
Copy link
Owner

Zefau commented Sep 8, 2024

So wie bisher auch. Bisher war es nur so, dass alte Dateien gelöscht werden, damit die Ordner-Struktur nicht vollgemüllt wird (da sich die Hashes ja immer ändern, also statt index-96edf5db.js dann index-abcdef123.js). Dies hab ich nun manuell implementiert. Dadurch bleiben die Dateien in user erhalten, aber alte jarvis Dateien werden gelöscht.

@Zefau
Copy link
Owner

Zefau commented Sep 8, 2024

Mit der nächsten beta müssen die benutzerspezifischen Dateien unter /opt/iobroker/node_modules/iobroker.jarvis/www/user abgelegt werden. Ein Upload ist nicht mehr notwendig.

@Zefau Zefau added the #status: implemented-locally 🛠️ Status: Issue has been implemented locally (but not pushed to repository yet) label Sep 8, 2024
@Zefau
Copy link
Owner

Zefau commented Sep 8, 2024

Die Version v3.2.0-beta.68 sollte den Fehler beheben - bitte einmal prüfen. Sofern es behoben ist, gerne das Issue schließen.


The version v3.2.0-beta.68 should fix the bug - please verify. If the bug has been solved, you may close the issue.

@Zefau Zefau added #status: ready-to-test ✔️ Status: Issue fixed and ready-to-test and removed #status: implemented-locally 🛠️ Status: Issue has been implemented locally (but not pushed to repository yet) labels Sep 8, 2024
@mcuiobroker
Copy link
Collaborator Author

mcuiobroker commented Sep 8, 2024

image

  • Verzeichnis /user wird bei jedem Upgrade gelöscht
  • Laden vom Fileserver auch nicht mehr möglich? @import "https://192.168.178.170/html/download/stateListItemHistory.js"; funktioniert nicht mehr

@Zefau
Copy link
Owner

Zefau commented Sep 8, 2024

Nochmal uploaden?

@mcuiobroker
Copy link
Collaborator Author

mcuiobroker commented Sep 8, 2024

/user Inhalt wird nicht automatisch upgedatet , F5 reicht nicht
image
links original Datei //let -> rechts Datei im jarvis-Speicher let ... noch vorhanden

@mcuiobroker
Copy link
Collaborator Author

Nochmal uploaden?

Du meinst die /user -Daten?

@Zefau
Copy link
Owner

Zefau commented Sep 8, 2024

Verzeichnis /user wird bei jedem Upgrade gelöscht

Wo hast du das Verzeichnis denn angelegt?

@mcuiobroker
Copy link
Collaborator Author

/opt/iobroker/node_modules/iobroker.jarvis/www/user

@Zefau
Copy link
Owner

Zefau commented Sep 8, 2024

Jo, das ist richtig. Und der Ordner wird gelöscht?

@Zefau
Copy link
Owner

Zefau commented Sep 8, 2024

Ach, sorry, wird beim Upgrade gelöscht. Jo, Mist, das macht ioBroker... daran hab ich wieder nicht gedacht.

@mcuiobroker
Copy link
Collaborator Author

mcuiobroker commented Sep 8, 2024

Kann man da mit symlinks arbeiten?
ln -s quelle ziel
Dann wäre Quelle in /opt/iobroker/iobroker-data/files/0_userdata.0/scripte (müsste man dann evtl in den jarvis-Einstellungen Instanz eingebenn können) und ziel /opt/iobroker/node_modules/iobroker.jarvis/www/user

@mcuiobroker
Copy link
Collaborator Author

mcuiobroker commented Sep 8, 2024

image

image
Hierfür hilft kein Upload

image

@Zefau Zefau removed the #status: ready-to-test ✔️ Status: Issue fixed and ready-to-test label Sep 8, 2024
@Zefau
Copy link
Owner

Zefau commented Sep 9, 2024

Ist denn /opt/iobroker/iobroker-data/files/0_userdata.0 ein "offizielles" Verzeichnis?

@mcuiobroker
Copy link
Collaborator Author

mcuiobroker commented Sep 9, 2024

Ja
image
image

@Zefau
Copy link
Owner

Zefau commented Sep 9, 2024

Pfad wird dann mit der nächsten beta 0_userdata.0/jarvis-scripts sein.

@Bernd9000
Copy link

Kleine Zwischenfrage :-)
Wollte von v3.2.0-beta.6 auf v3.2.0-beta.73 gehen.
jarvis startet nicht mehr und ich krieg folgende Meldungen.
Was muß ich jetzt mit vorhandenen scripten machen damit jarvis wieder startet ?

iob Host Warnung:

1

iob Log:

`

host.ServerSmartHome) 2024-09-11 12:11:44.682 warn host.Server(SmartHome) Do not restart adapter system.adapter.jarvis.0 because restart loop detected
host.ServerSmartHome) 2024-09-11 12:11:44.682 info host.Server(SmartHome) Restart adapter system.adapter.jarvis.0 because enabled
host.ServerSmartHome) 2024-09-11 12:11:44.682 error host.Server(SmartHome) instance system.adapter.jarvis.0 terminated with code 6 (UNCAUGHT_EXCEPTION)
jarvis.0 2024-09-11 12:11:44.409 info terminating
jarvis.0 2024-09-11 12:11:43.893 warn Terminated (UNCAUGHT_EXCEPTION): Without reason
jarvis.0 2024-09-11 12:11:43.892 info terminating
jarvis.0 2024-09-11 12:11:43.891 info Adapter stopped und unloaded.
jarvis.0 2024-09-11 12:11:43.877 warn Failed moving user scripts due to "ENOENT: no such file or directory, lstat 'C:\Software\ioBroker\iobroker-data\files\0_userdata.0\jarvis-scripts'"!
jarvis.0 2024-09-11 12:11:43.875 error Exception-Code: ENOENT: ENOENT: no such file or directory, watch 'C:\Software\ioBroker\node_modules\iobroker.jarvis/../../iobroker-data/files/0_userdata.0/jarvis-scripts'
jarvis.0 2024-09-11 12:11:43.874 error Error: ENOENT: no such file or directory, watch 'C:\Software\ioBroker\node_modules\iobroker.jarvis/../../iobroker-data/files/0_userdata.0/jarvis-scripts' at FSWatcher. (node:internal/fs/watchers:247:19) at watch (node:fs:2491:36) at JarvisServer.init (C:\Software\ioBroker\node_modules\iobroker.jarvis\lib\jarvis.server.js:1:2258) at C:\Software\ioBroker\node_modules\iobroker.jarvis\jarvis.min.js:1:2631
jarvis.0 2024-09-11 12:11:43.873 error unhandled promise rejection: ENOENT: no such file or directory, watch 'C:\Software\ioBroker\node_modules\iobroker.jarvis/../../iobroker-data/files/0_userdata.0/jarvis-scripts'
jarvis.0 2024-09-11 12:11:43.872 error Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
jarvis.0 2024-09-11 12:11:43.837 info starting. Version 3.2.0-beta.72 (non-npm: Zefau/ioBroker.jarvis#3b70f52cf5c5caf6834b4fd38a37f8302adcfb3f) in C:/Software/ioBroker/node_modules/iobroker.jarvis, node: v20.17.0, js-controller: 6.0.11
`

@mcuiobroker
Copy link
Collaborator Author

mcuiobroker commented Sep 11, 2024

@Bernd9000
Verzeichnis jarvis-scripts unter files/0_userdata.0 anlegen
image
Läuft aber momentan nicht mit beta.73, nur mit beta.72

@Bernd9000
Copy link

Okay, Danke.
Jetzt startet jarvis wieder, aber jarvis wurde irgendwie zurückgesetzt, alle Einstellungen weg.
Ich warte mal weiter ab.....

@mcuiobroker
Copy link
Collaborator Author

Welche Einstellungen? Bzgl scripts.

@Bernd9000

This comment was marked as off-topic.

@Zefau Zefau added #status: implemented-locally 🛠️ Status: Issue has been implemented locally (but not pushed to repository yet) and removed #status: ready-to-test ✔️ Status: Issue fixed and ready-to-test labels Sep 11, 2024
@Zefau
Copy link
Owner

Zefau commented Sep 11, 2024

Die Version v3.2.0-beta.74 sollte den Fehler beheben - bitte einmal prüfen. Sofern es behoben ist, gerne das Issue schließen.


The version v3.2.0-beta.74 should fix the bug - please verify. If the bug has been solved, you may close the issue.

@Zefau Zefau added #status: ready-to-test ✔️ Status: Issue fixed and ready-to-test and removed #status: implemented-locally 🛠️ Status: Issue has been implemented locally (but not pushed to repository yet) labels Sep 11, 2024
@mcuiobroker
Copy link
Collaborator Author

Genau wie vorher, einmal wird bei Änderung korrekt geladen, dann nicht mehr.
Man muss dann kompletten Browserdaten-Speicher löschen, Instanz neu starten hilft leider nicht.

@Zefau
Copy link
Owner

Zefau commented Sep 11, 2024

Zum Verständnis: Du änderst den Skript-Input in jarvis nicht, richtig? Dort hast du quasi nur einen import. Der import verweist auf eine Datei, die du dann außerhalb von jarvis in einem Editor anpasst. Nach der Anpassung machst du einen Reload der Seite, aber deine Anpassungen werden nicht übernommen.

Im Cache befindet sich nämlich nur der Skript-Input, keine externen Dateien.
Wenn du die Datei normal im Browser per URL aufrufst, wird dort der aktuelle Stand dargestellt?

@Zefau Zefau removed #status: ready-to-test ✔️ Status: Issue fixed and ready-to-test labels Sep 11, 2024
@mcuiobroker
Copy link
Collaborator Author

mcuiobroker commented Sep 11, 2024

Zum Verständnis: Du änderst den Skript-Input in jarvis nicht, richtig?

Richtig. Ja nur einen @import

Verweisen nur noch auf z.B. @import "https://192.168.178.150:8400/user/jarvisDPs.js";
@import "https://192.168.178.150:8400/user/timer.js";

Dann ändere ich die Datei timer.js im Ordner /opt/iobroker/iobroker-data/files/0_userdata.0/jarvis-scripts direkt in iobroker
image
Doppelklick auf die Datei timer.js , dann ändern und Speichern.
Dies funktioniert nach Löschen von den Browserdaten genau einmal, dann nicht mehr.

Browser per URL aufrufst, wird dort der aktuelle Stand dargestellt?

Nein, auch nur einmal nach Borwserdaten löschen. https://192.168.178.150:8400/user/timer.js

Es wird sogar neu geladen, aber es ändert sich nicht?
image
-> Browser cached nicht.

@Zefau
Copy link
Owner

Zefau commented Sep 11, 2024

Du änderst in ioBroker? Wenn ich es direkt auf dem Fileserver ändere geht es bei mir.

@mcuiobroker
Copy link
Collaborator Author

mcuiobroker commented Sep 11, 2024

Ja in iobroker -> Dateien und in dem definierten Verzeichnis. Doppelklick auf Datei.
image

Fileserver ist ja eine andere IP als ioBroker-IP und damit hat man nicht das CORS Problem.
Bei gleicher IP mit unterschiedliche Ports zugreifen.

@Zefau
Copy link
Owner

Zefau commented Sep 11, 2024

Ich meinte den ioBroker-Server mit File-Server. Du kannst den ja per Samba oder NFS einbinden und die Dateien direkt im Verzeichnis ohne ioBroker ändern.

Ist aber egal wie man es macht, bei mir geht es.

2782

grafik

@mcuiobroker
Copy link
Collaborator Author

mcuiobroker commented Sep 11, 2024

Nicht 8089 nutzen 8400
Falsch geguckt.
Ich mach mal ein Video

Also rufe ich die Dateien direkt auf wird die Änderung jetzt angezeigt.
Nutze ich jarvis und schau mir das LOG, wird es dort nicht geändert angezeigt.

@mcuiobroker
Copy link
Collaborator Author

Nach oben scrollen , sonst sieht man nicht alles
scripts-ProblemSpeicher1

@mcuiobroker
Copy link
Collaborator Author

mcuiobroker commented Sep 11, 2024

Jetzt nach ca 3-5Minuten Warten, wurde die Datei anscheinend aktualisiert. Warum auch immer.
Also Daten geändert
3-5 min Warten
F5 -> geänderte Daten sichtbar

Anscheinend Zufallstreffer?
Hab es versucht nachzustellen, ging nicht.

@Zefau Zefau added the #status: implemented-locally 🛠️ Status: Issue has been implemented locally (but not pushed to repository yet) label Sep 12, 2024
@Zefau
Copy link
Owner

Zefau commented Sep 12, 2024

Die Version v3.2.0-rc.1 sollte den Fehler beheben - bitte einmal prüfen. Sofern es behoben ist, gerne das Issue schließen.


The version v3.2.0-rc.1 should fix the bug - please verify. If the bug has been solved, you may close the issue.

@Zefau Zefau added #status: ready-to-test ✔️ Status: Issue fixed and ready-to-test and removed #status: implemented-locally 🛠️ Status: Issue has been implemented locally (but not pushed to repository yet) labels Sep 12, 2024
@mcuiobroker
Copy link
Collaborator Author

Sieht gut aus. Danke.

@Zefau Zefau removed the #status: ready-to-test ✔️ Status: Issue fixed and ready-to-test label Sep 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
alpha / beta 🚧 Issue related to an alpha or beta version bug 🐛 Something isn't working #prio:HIGH ❗ Priority: HIGH :exclamation: v3.2 Roadmap for v3.2
Projects
Status: DONE
Development

No branches or pull requests

3 participants