Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaSkripts - Versionierung und BackUp Skript

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    10
    1
    312

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.5k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.4k

JavaSkripts - Versionierung und BackUp Skript

Scheduled Pinned Locked Moved Skripten / Logik
11 Posts 5 Posters 1.1k Views 10 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • B Offline
    B Offline
    bloop
    wrote on last edited by bloop
    #1

    Liebe Community,

    Ich würde gerne meine Erfahrungen und das daraus entstandene Resultat mit euch teilen.
    Leider ist es im JavaSkript Adapter aktuell nicht möglich alte Versionen von Skripts, Blocklys usw. zurückzuholen. Weshalb ich bereits vor einiger Zeit nach einer "Papierkorb" Funktion angefragt habe.
    Hier wurde ich darauf aufmerksam gemacht, dass des möglich sei ein Spiegel Verzeichnis von allen Skripts anlegen zu lassen und von diesem ein regelmäßiges Backup zu machen.
    Aus diesem Anstupser entstand nun eine Art Versionierung Skript.
    Danke an @bahnuhr für den Tip!

    Vorab: Da ich selbst zwar Code lesen und mit Einschränkungen Versehen kann, mir aber beim code schreiben wirklich schwer tue, wurde der Code sowie das Readme zu 90% von KI generiert.

    https://github.com/bloop16/iobroker-JavaSkript-Backup-System/

    Bin gespannt auf eure Rückmeldungen!

    Herzlichen Dank!

    arteckA bahnuhrB 2 Replies Last reply
    0
    • B bloop

      Liebe Community,

      Ich würde gerne meine Erfahrungen und das daraus entstandene Resultat mit euch teilen.
      Leider ist es im JavaSkript Adapter aktuell nicht möglich alte Versionen von Skripts, Blocklys usw. zurückzuholen. Weshalb ich bereits vor einiger Zeit nach einer "Papierkorb" Funktion angefragt habe.
      Hier wurde ich darauf aufmerksam gemacht, dass des möglich sei ein Spiegel Verzeichnis von allen Skripts anlegen zu lassen und von diesem ein regelmäßiges Backup zu machen.
      Aus diesem Anstupser entstand nun eine Art Versionierung Skript.
      Danke an @bahnuhr für den Tip!

      Vorab: Da ich selbst zwar Code lesen und mit Einschränkungen Versehen kann, mir aber beim code schreiben wirklich schwer tue, wurde der Code sowie das Readme zu 90% von KI generiert.

      https://github.com/bloop16/iobroker-JavaSkript-Backup-System/

      Bin gespannt auf eure Rückmeldungen!

      Herzlichen Dank!

      arteckA Offline
      arteckA Offline
      arteck
      Developer Most Active
      wrote on last edited by arteck
      #2

      @bloop nicht schlecht aber..

      wenn in scripten user , password kombinationen genutzt wird postest du das auf GIT ..

      NICHT SCHÖN

      das bitte auf jeden Fall in die doku aufnehmen...
      noch schöner währe wenn es ausgefilter werden könnte

      zigbee hab ich, zwave auch, nuc's genauso und HA auch

      B 2 Replies Last reply
      0
      • arteckA arteck

        @bloop nicht schlecht aber..

        wenn in scripten user , password kombinationen genutzt wird postest du das auf GIT ..

        NICHT SCHÖN

        das bitte auf jeden Fall in die doku aufnehmen...
        noch schöner währe wenn es ausgefilter werden könnte

        B Offline
        B Offline
        bloop
        wrote on last edited by
        #3

        @arteck Danke für dein Feedback!
        Da ich in keinem meiner Skripts Passwörter und Userdaten gespeichert habe, ist mir das komplett entfallen.
        Werde ich in die Doku aufnehmen.
        Für das Problem findet sich bestimmt ebenfalls eine Lösung.

        1 Reply Last reply
        0
        • arteckA arteck

          @bloop nicht schlecht aber..

          wenn in scripten user , password kombinationen genutzt wird postest du das auf GIT ..

          NICHT SCHÖN

          das bitte auf jeden Fall in die doku aufnehmen...
          noch schöner währe wenn es ausgefilter werden könnte

          B Offline
          B Offline
          bloop
          wrote on last edited by
          #4

          @arteck
          Guten Abend,
          Ich habe mich erneut an die Arbeit gemacht und eine Funktion zum "schwärzen" von Passwörtern eingebaut.
          Variablen, Direkt Zuweisungen usw. werden auf password, pass, passwort, passwd, user, usw. überprüft und anschließend mit XXX überschrieben.
          Ebenfalls kann der Git upload auch deaktiviert werden.

          BananaJoeB U 2 Replies Last reply
          0
          • B bloop

            @arteck
            Guten Abend,
            Ich habe mich erneut an die Arbeit gemacht und eine Funktion zum "schwärzen" von Passwörtern eingebaut.
            Variablen, Direkt Zuweisungen usw. werden auf password, pass, passwort, passwd, user, usw. überprüft und anschließend mit XXX überschrieben.
            Ebenfalls kann der Git upload auch deaktiviert werden.

            BananaJoeB Offline
            BananaJoeB Offline
            BananaJoe
            Most Active
            wrote on last edited by
            #5

            @bloop GitHub ist da hart verdrahtet drin? Ich nutze Gitea ( https://docs.gitea.com/ ) als eigenes Repo. Da liegen meine Skripte auch schon (ich mache das per Hand mit den gespiegelten Scripten im Dateisystem). Und ich kann es auf "nicht öffentlich" stellen.
            Da dürfen dann auch alle Passwörter drin bleiben.

            ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

            B 1 Reply Last reply
            0
            • BananaJoeB BananaJoe

              @bloop GitHub ist da hart verdrahtet drin? Ich nutze Gitea ( https://docs.gitea.com/ ) als eigenes Repo. Da liegen meine Skripte auch schon (ich mache das per Hand mit den gespiegelten Scripten im Dateisystem). Und ich kann es auf "nicht öffentlich" stellen.
              Da dürfen dann auch alle Passwörter drin bleiben.

              B Offline
              B Offline
              bloop
              wrote on last edited by
              #6

              @bananajoe Was verstehst du unter hart verdrahtet? :sweat_smile:
              Meine Repo steht bei git ebenfalls auf privat. Aber Gitea wäre selbstverständlich ebenfalls eine Option.

              1 Reply Last reply
              0
              • B bloop

                @arteck
                Guten Abend,
                Ich habe mich erneut an die Arbeit gemacht und eine Funktion zum "schwärzen" von Passwörtern eingebaut.
                Variablen, Direkt Zuweisungen usw. werden auf password, pass, passwort, passwd, user, usw. überprüft und anschließend mit XXX überschrieben.
                Ebenfalls kann der Git upload auch deaktiviert werden.

                U Offline
                U Offline
                Unterstedter
                wrote on last edited by
                #7

                @bloop erst einmal vielen Dank für das Skript, find ich klasse! Könntest du ggf. die Funktion zum "schwärzen" von Passwörtern optional in den Skript-Configs mit true/false auswählbar machen? Speichere die Skripte nur lokal, da würd ich die PW gerne beibehalten. Hab die betreffenden Zeilen erstmal auskommentiert, aber das wäre sicherlich die elegantere Lösung.

                B 1 Reply Last reply
                0
                • B bloop

                  Liebe Community,

                  Ich würde gerne meine Erfahrungen und das daraus entstandene Resultat mit euch teilen.
                  Leider ist es im JavaSkript Adapter aktuell nicht möglich alte Versionen von Skripts, Blocklys usw. zurückzuholen. Weshalb ich bereits vor einiger Zeit nach einer "Papierkorb" Funktion angefragt habe.
                  Hier wurde ich darauf aufmerksam gemacht, dass des möglich sei ein Spiegel Verzeichnis von allen Skripts anlegen zu lassen und von diesem ein regelmäßiges Backup zu machen.
                  Aus diesem Anstupser entstand nun eine Art Versionierung Skript.
                  Danke an @bahnuhr für den Tip!

                  Vorab: Da ich selbst zwar Code lesen und mit Einschränkungen Versehen kann, mir aber beim code schreiben wirklich schwer tue, wurde der Code sowie das Readme zu 90% von KI generiert.

                  https://github.com/bloop16/iobroker-JavaSkript-Backup-System/

                  Bin gespannt auf eure Rückmeldungen!

                  Herzlichen Dank!

                  bahnuhrB Online
                  bahnuhrB Online
                  bahnuhr
                  Forum Testing Most Active
                  wrote on last edited by bahnuhr
                  #8

                  @bloop
                  Guten Morgen,
                  ich kopiere mir die Scripte aus dem Spiegelverzeichnis täglich auf meine NAS und habe somit eine tägliche Sicherung und Versionierung meiner erstellten Scripte.

                  Was will man:
                  Ziel ist doch, dass man (wenn etwas schief läuft, etc.) auf ältere Scripte zurückgreifen kann.
                  Und dies müssen dann doch unverändert sein (so wie der Stand halt damals war).

                  Mir ist noch nicht so richtig begreiflich warum :

                  • Versionierung bei Änderung zeitgleich notwendig ?
                  • extra pakete installiert werden müssen
                  • Scripte werden öffentlich ?? gestellt
                  • Ordnerstruktur geändert wird
                  • Scripte verändert werden (pass raus/rein, etc.)

                  Ist dies nicht to much ?


                  Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                  Danke.
                  gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                  ScreenToGif :https://www.screentogif.com/downloads.html

                  B 1 Reply Last reply
                  0
                  • bahnuhrB bahnuhr

                    @bloop
                    Guten Morgen,
                    ich kopiere mir die Scripte aus dem Spiegelverzeichnis täglich auf meine NAS und habe somit eine tägliche Sicherung und Versionierung meiner erstellten Scripte.

                    Was will man:
                    Ziel ist doch, dass man (wenn etwas schief läuft, etc.) auf ältere Scripte zurückgreifen kann.
                    Und dies müssen dann doch unverändert sein (so wie der Stand halt damals war).

                    Mir ist noch nicht so richtig begreiflich warum :

                    • Versionierung bei Änderung zeitgleich notwendig ?
                    • extra pakete installiert werden müssen
                    • Scripte werden öffentlich ?? gestellt
                    • Ordnerstruktur geändert wird
                    • Scripte verändert werden (pass raus/rein, etc.)

                    Ist dies nicht to much ?

                    B Offline
                    B Offline
                    bloop
                    wrote on last edited by
                    #9

                    @bahnuhr
                    Guten Morgen,
                    Während ich an den Scripts arbeite ist mir die einmal tägliche Sicherung zu wenig. Kann sein das es nur an mir liegt, aber wenn ich große Veränderungen an Skripts vornehme und diese dann austeste, kommt es schon mal vor dass ich lieber wieder zu einer älteren "Version" zurück möchte.

                    Das Paket inotify-tools überwacht und erkennt ob eine Datei im skriptMirror verändert wurde. Anschließend wird eine Kopie der Datei incl. Zeitstempel im vorab definierten Ziel Pfad abgelegt. - Könnte in deinem Fall auch die NAS sein. Die Anzahl der Kopien lässt sich begrenzen.

                    Wer git verwenden möchte, benötigt selbstverständlich auch das Paket dazu. Meine Scripts werden in einem Privaten Repository abgelegt. Um hier etwas mehr Sicherheit zu gewährleisten werden die Scripts ohne Benutzername und Passwörter, APIs hochgeladen.

                    Ob das jetzt zu viel des guten ist, kann jeder selbst für sich entscheiden und hätte bei bedarf auch die Möglichkeit nicht benötigte Funktionen zu deaktivieren.

                    1 Reply Last reply
                    0
                    • U Unterstedter

                      @bloop erst einmal vielen Dank für das Skript, find ich klasse! Könntest du ggf. die Funktion zum "schwärzen" von Passwörtern optional in den Skript-Configs mit true/false auswählbar machen? Speichere die Skripte nur lokal, da würd ich die PW gerne beibehalten. Hab die betreffenden Zeilen erstmal auskommentiert, aber das wäre sicherlich die elegantere Lösung.

                      B Offline
                      B Offline
                      bloop
                      wrote on last edited by
                      #10

                      @unterstedter
                      Erledigt! v1.1.0

                      U 1 Reply Last reply
                      0
                      • B bloop

                        @unterstedter
                        Erledigt! v1.1.0

                        U Offline
                        U Offline
                        Unterstedter
                        wrote on last edited by
                        #11

                        @bloop danke!

                        1 Reply Last reply
                        0
                        Reply
                        • Reply as topic
                        Log in to reply
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        318

                        Online

                        32.5k

                        Users

                        81.7k

                        Topics

                        1.3m

                        Posts
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                        ioBroker Community 2014-2025
                        logo
                        • Login

                        • Don't have an account? Register

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Home
                        • Recent
                        • Tags
                        • Unread 0
                        • Categories
                        • Unreplied
                        • Popular
                        • GitHub
                        • Docu
                        • Hilfe