Giter Site home page Giter Site logo

Comments (6)

FernetMenta avatar FernetMenta commented on July 18, 2024 1

Ich habe jetzt eine Lösung, die funktioniert:

  var cp = require('child_process');
  var child = cp.spawn('bash', ['iob', 'maint', 'restart', '-y'], 
                        { detached: true, stdio: [ 'ignore', 'ignore', 'ignore' ] });
  child.unref();

from iobroker.docker.

buanet avatar buanet commented on July 18, 2024

Hi, can you please confirm if the issue still exists with actual beta image?
I made some changes to the maintenance script since v9.0.1 was released. Might be possible that this no longer exists...

Regards,
André

from iobroker.docker.

FernetMenta avatar FernetMenta commented on July 18, 2024

Hi André,

I tried beta.3 and noticed no difference in regard to the mentioned behavoir. If I exec to the container and call "iob maint restart -y" from the cmd line, it works. But when I call this from within a javascript it fails. After the script has run from the javascript adapter there is no iobroker owned process left:

root@iobroker:/opt/iobroker# pgrep --list-full -u iobroker
647 tail -f /dev/null

Now calling "iob maint restart -y" from the command line fails too. The script terminates with this line: https://github.com/buanet/ioBroker.docker/blob/beta/debian12/scripts/maintenance.sh#L158
(no idea why)

Regards,
Rainer

from iobroker.docker.

buanet avatar buanet commented on July 18, 2024

Hallo Rainer,

mir sind heute leider die englischen Worte ausgegangen, daher switche (ups, da war wohl doch noch eins) ich jetzt mal in meine Muttersprache. Ich denke das ist ok, oder?

Wenn ich dich recht verstehe, dann scheitert mit der Beta jetzt nur noch der Aufruf aus einem ioBroker JavaScript heraus, richtig?
Das würde sich zumindest mit dem decken, was ich heute nachgestellt habe. Denn bei mir funktioniert der Aufruf (über die Kommandozeile) in jedem Fall/ Szenario korrekt und zuverlässig.

Ich weiß, dass ich zu dem Thema "Aufruf des Maintenance Scripts aus ioBroker heraus" schon mal eine Diskussion geführt habe. Ich habe verzweifelt gesucht, es aber leider nicht wieder gefunden. :(
Das Resultat war damals aber, dass es so in der aktuellen Form nicht funktionieren kann und ich dazu das Maintenance Script um-/ bzw. neubauen müsste um dies zu ermöglichen. Leider komme ich nicht mehr drauf, warum genau das so war!
Es hatte irgendwas damit zu tun, dass sich der Script-Aufruf beim Beenden von ioBroker selbst beendet hat.

Wenn meine Vermutung von oben bezüglich deines Problems zutrifft, würde ich den issue gerne von bug auf enhancement ändern und du bekommst von mir vorerst ein "works as designed". :) Ich nehme das Thema aber natürlich gerne als Feature Request mit auf meine To-Do-Liste!

MfG,
André

from iobroker.docker.

buanet avatar buanet commented on July 18, 2024

Ach gucke mal da! 🙈
Hier übrigens der Eintrag auf meiner To-Do-Liste... (habe ich gefunden als ich es eintragen wollte)

image

Die Diskussion gab es vor nem halben Jahr offenbar im Discord Channel. Hatte mir sogar die Begründung raus kopiert.

MfG,
André

from iobroker.docker.

FernetMenta avatar FernetMenta commented on July 18, 2024

Hallo André,

Wenn ich dich recht verstehe, dann scheitert mit der Beta jetzt nur noch der Aufruf aus einem ioBroker JavaScript heraus, richtig?

Ja, das stimmt zum Teil. Es gab keinen Unterschied von der beta zur v9.0.1. Es scheitert bei beiden aus den JavaScript heraus und funktioniert von der Kommandozeile. Komisch ist allerdings, dass wenn es erst mal gescheitert ist, es von der Kommandozeile auch nicht mehr geht. Wie kann man sich das erklären?

Wenn meine Vermutung von oben bezüglich deines Problems zutrifft, würde ich den issue gerne von bug auf enhancement ändern und du bekommst von mir vorerst ein "works as designed". :) Ich nehme das Thema aber natürlich gerne als Feature Request mit auf meine To-Do-Liste!

Ja, klingt gut. Danke!
Hast du schon eine Idee, wie man das lösen könnte? Evtl mit child_process.spawn mit detach direckt im Javascript arbeiten?

Viele Grüße,
Rainer

from iobroker.docker.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.