NEWS
Script Mirroring - Einschränkung bei Pfaden seit v5.5.0
-
Ich verwende Script Mirroring und wollte die Javascript-Engine updaten. Dabei kommt aber die Warnung, dass jetzt Ordner unterhalb der ioBroker Ordner verboten sind.
Auf https://github.com/ioBroker/ioBroker.javascript
Since v5.5.0 of the JavaScript adapter the following locations (relative to the ioBroker Base directory, usually /opt/iobroker) are not allowed to be used:
- The ioBroker base directory itself and any path above!
- ./iobroker-data itself, custom subdirectory (choose a name that do not overlap with any adapter!)
- ./iobroker-data/backup-objects or anything below
- ./iobroker-data/files or anything below
- ./iobroker-data/backitup or anything below
- ./backups or anything below
- ./node_modules or anything below
- ./log or anything below
Die 2. Zeile verstehe ich nicht ganz. Heißt das, dass ein Unterverzeichnis von iobroker-data doch erlaubt ist? Ich glaube mich dunkel erinnern zu können, dass das früher mal jemand empfohlen hat, weil das gebackuped wird.
Gibt's eine Empfehlung für ein Verzeichnis (z.B. Raspbian)
Ich hätte auch noch eine Frage dazu:
When enabling the Script Filesystem mirroring please make sure to create a dedicated new directory and do not use an existing directory with other content. Please also make sure that no other script or process changes files in the provided directory to prevent access issues. Any location needs to be writable by the "iobroker" user!
Der Sinn vom Script Mirroring ist ja, dass ich dann einen externen Editor verwenden kann, oder? D.h. der ändert ja die Scripts in diesem Verzeichnis. Ich nehme an, das ist OK?
Meine Situation ist allerdings etwas speziell. Ich habe zwei Verzeichnisse. Das Script-Mirroring-Verzeichnis. Und dann ein zweites Verzeichnis in dem ich meinen Code mit Visual Studio Code editiere. Hier kann ich "import {}" verwenden (mit Typescript). Ich hab dann ein Syncronisations-Script, dass die Objekte aus den "import"-Statements in das eigentliche Script einfügt und ins Script-Mirroring-Verzeichnis kopiert. Also ähnliche Funktionalität wie die globalen Scripte, aber ich kann halt gezielt einzelne Klassen, Interfaces, Enums, etc. aus verschiedenen "Modulen" einbinden.
Könnte dieses Synchronisationsscript ein Problem machen? Aktuell läuft das in derselben Javascript-Instanz. Sollte das besser in einer eigenen Instanz laufen oder überhaupt außerhalb von ioBroker?
Aktuell habe ich Script-Mirroring unter /opt/iobroker/scripts. Das müsste ich dann jedenfalls ändern. Mein 2. Verzeichnis ist /opt/iobroker/iobroker-data/scripts. Wäre das OK?
-
Leg das Mirror-Verzeichnis z. B. in /home/iobroker/skripte oder sowas an.
-
@noox sagte in Script Mirroring - Einschränkung bei Pfaden seit v5.5.0:
weil das gebackuped wird.
eben darum nicht in dieses Verzeichnis, weil es ja schon im backup integriert ist, daher ausserhalb von /opt/iobroker, wie bereits genannt z.b. ins home Verzeichnis
-
@Thomas-Braun , @crunchip
Vielen Dank für die schnellen Antworten! Hab es auf /home/iobroker/... geändert und den Javascript-Adapter upgedatet. Scheint fürs Erste mal zu funktionieren.Ein zusätzliches Backup ist eigentlich überflüssig, weil ich den Code auf Github habe.