Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Frage zur Veröffentlichung von Adapter Updates

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Frage zur Veröffentlichung von Adapter Updates

    This topic has been deleted. Only users with topic management privileges can see it.
    • mcm1957
      mcm1957 @haus-automatisierung last edited by mcm1957

      Wie im PR geschrieben werde ich dir voraussichtlich morgen einen PR schicken der die notwendigen Anpassungen am test-and-and release workflow vornimmt (wegen node 12-> 16 bis 20). Ich werd da auch den automatischen deploy auf npm aktivieren sodass du dann nur mehr dein Secret hinterlegen musst.

      @haus-automatisierung
      DANKE für den Link

      1 Reply Last reply Reply Quote 1
      • A
        AxLED last edited by

        @mcm57
        @haus-automatisierung

        danke für die vielen Antworten und den Link zum Video, dann versuche ich diese mal zusammenzufassen, wie ich diese verstanden habe.

        Das Portal https://www.iobroker.dev ist mir neu, sieht aber vielversprechend aus.

        • Anpassung Code in der eigenen Entwicklungsumgebung (bei mir Win10 mit Visual Studio Code)
        • Upload Code in sein eigenes github repository mittels folgender Befehle (im Arbeitsverzeichnis des Adapters ausführen, in meinem Fall: C:\iobroker\node_modules\ioBroker.powerfox2)
          git add .
          git status
          git commit -m "changes"
          npm test
          git push origin main
        • (Alternativ upload zu Github mittels Quellcodeverwaltung in Visual Studio Code)
        • ggfls. von weiteren Usern testen lassen

        Ab hier ist es mir noch nicht ganz klar wie es weitergeht:

        • wie geht es korrekterweise weiter oder gibt es mehrere Wege?
        • im Portal Portal https://www.iobroker.dev den Adapter Check ausführen?
        • Angezeigte Fehler im Code beheben und neu auf github hochladen und Adapter Check ausführen (diesen Schritt ggfls. wiederholen bis alles passt)
        • auf npm veröffentlichen mit npm run release
        • Versionsnummer des geänderten Adapters in sources-dist-stable.json in einem Fork von https://github.com/ioBroker/ioBroker.repositories durchführen und PullRequest durchführen
        • welchen der "unklaren" Schritte/Reihenfolge könnne alternativ über https://www.iobroker.dev erfolgen?

        Gruß

        AxLED

        T 1 Reply Last reply Reply Quote 0
        • T
          ticaki Developer @AxLED last edited by

          @axled sagte in Frage zur Veröffentlichung von Adapter Updates:

          Es gibt mehrere Wege. Deiner ist soweit ok. Es ist aber npm run test

          Bevor du eine PR für stable machst, lassen den Adapter mal etwas testen, ne Woche oder so. 🙂

          mcm1957 1 Reply Last reply Reply Quote 1
          • mcm1957
            mcm1957 @ticaki last edited by

            AxLED

            Zuerst mal eine Frage: Benutzt du Telegram? Interaktive Hilfe bei konkreten Schritten kann dort leichter und schneller erfolgen da 90% der Entwickelr dort mitlesen. Discord ist auch OK (da mit Telegramm synchronisiert) ur kann ich dir dort beim Einstieg nicht helfen.

            Zu deinem Ablauf:

            • Anpassung Code in der eigenen Entwicklungsumgebung (bei mir Win10 mit Visual Studio Code)

            Richtig, Ich benutze ebenfalls VS Code unter Win 10.

            • Upload Code in sein eigenes github repository mittels folgender Befehle (im Arbeitsverzeichnis des Adapters ausführen, in meinem Fall: C:\iobroker\node_modules\ioBroker.powerfox2)
              git add .
              git status
              git commit -m "changes"
              npm test
              git push origin main
              (Alternativ upload zu Github mittels Quellcodeverwaltung in Visual Studio Code)
              ggfls. von weiteren Usern testen lassen

            Teilweise richtig 🙂

            Du kannst mit npm run test alles testen bevor du irgendwas committest. Die Tests laufen ja lokal.

            Bezüglich Upload zu Github verwende ich den Github Desktop: https://desktop.github.com/
            Ich empfinde ihn angenehmer als die vs Integration - aber das ist wie bei den meisten Dev-Tools Geschmacksache. Schau ihn dir einfach mal an. Die Commandline ist für 0815 Dinge nicht meine Erste Wahl. Sie zu kennen ist aber seht gut.

            Ab hier ist es mir noch nicht ganz klar wie es weitergeht:
            wie geht es korrekterweise weiter oder gibt es mehrere Wege?

            im Portal Portal https://www.iobroker.dev den Adapter Check ausführen?
            Angezeigte Fehler im Code beheben und neu auf github hochladen und Adapter Check ausführen (diesen Schritt ggfls. wiederholen bis alles passt)

            Ja das ist ein guter Zeitpunkt das mal zu tun

            auf npm veröffentlichen mit npm run release

            Dieser Befehl legt eine neue Release an. Das bedeutet, dass in diverse Files (package.json, io-package.json) die neue Versionsnummer eingetragen wird, releasenotes aktualisisert werden etc.

            Technisch werden die Änderungen dann auf Github kopiert und dort getagged. Der commit und das Taggen lösen den Github Workflow test-and-release aus. Ist dieser erfolgreich veröffentlicht er das Package (die neue Release) auch gleich auf npm.

            Sobald die Release auf npm veröffentlicht wurde wird diese binnen 24h im LATEST Repository zur Installation angeboten. Sinnvoller Weise eröffnest oder aktualisiserst du nun einen Thread im TESTER Bereich hier im Forum https://forum.iobroker.net/category/91/tester. (Falls du dort nicht posten darfs schreib hier z,B. Homoran an dass er dich freischaltet). Damit infirmierst du potenziell Testinterissierte dass es da was neues gibt.

            Nach frühestens eienr Woche kannst du dann die Adapterrelease in Stable veröffentlichen lassen sofern beim test im Latest keine ernsten Probleme entdeckt wurden. (Ausnahmen für Feuer-Hot-Fixes sind möglich, das sprengt aber hier den Rahmen. Gib einfach Bescheid, wenn du galubst dass das notwendig wäre.) Nach 14 bis 30 Tagen bekommst du ein ErinnerungsIssue im Repository falls du auf stable vergisst.

            Versionsnummer des geänderten Adapters in sources-dist-stable.json in einem Fork von https://github.com/ioBroker/ioBroker.repositories durchführen und PullRequest durchführen

            Zur Veröffentlichung in Stable am besten https://www.iobroker.dev verwenden. Alternativ direkt in Github auf der Webseite editieren (2te Wahl).
            Warum: ioborker.dev prüft gleich mal die wichtigsten Dinge und vor allem stellt es sicher, dass der PR technisch i.O. ist. Vergessene Strichpunkte und verlorene Zeichen gibts da nicht. Und bei einem Fork kriegt der PR öfter mal ältere commits mehr mit was mir im günstigsten Fall nur mehr Arbeit beim Checken macht - im Extremfall aber Nebenwirkungen hat 🙂

            welchen der "unklaren" Schritte/Reihenfolge könnne alternativ über https://www.iobroker.dev erfolgen?

            siehe oben 🙂

            P.S. PR mit Update der Testumgebung ist in Arbeit

            mcm1957 1 Reply Last reply Reply Quote 0
            • mcm1957
              mcm1957 @mcm1957 last edited by

              @AxLED

              Ich habe jetzt mal ein paar PRs für dich erstellt:

              https://github.com/Ax-LED/ioBroker.powerfox2/pull/9

              Der PR aktualisiert die testumgebung auf aktuellen Stand.

              https://github.com/Ax-LED/ioBroker.powerfox2/pull/11

              Der PR aktualisiert das Releasescript auf aktuellen Stand

              https://github.com/Ax-LED/ioBroker.powerfox2/pull/12

              Der PR aktiviert dependabot. Dependabot hilft dir deine Abhängigkeiten auf akteullem Stand zu halten und erstellt automatisch PRs für den Update. Da du "ein wenig" veraltete Abhängigkeiten hast, kann es sein, dass da nach dem Update einige PRs erscheinen. Schau sie dir an und merge sie. Nachher solltes du unbedingt den Adapter neiu testen um allfällige Inkompatibiltäten zu entdecken (und zu beheben). Bitte beachte auch dass es sinnvoll ist VOR dem merge des PRs das im PR angegebene Token in Github einzutragen damit Patchänderungen (= kleine Änderungen) automatisch gemerged werden können.

              Ich zieh mich dann mal aus dem Adapter einw enig zurück. Meld dich wenn du Hilfe brauchst (vorzugsweise auf Telegramm abder gerne auch hier). Bin sicher dass du Hilfe bekommsgt wenn du sie brauchst.

              UND NOCHMALS DANKE für den Adapter und dass du deine Zeit dafür aufwendest !

              mcm1957 created this issue in Ax-LED/ioBroker.powerfox2

              closed Update test environment, fix linter errors at sources #9

              mcm1957 created this issue in Ax-LED/ioBroker.powerfox2

              closed update releasescript #11

              mcm1957 created this issue in Ax-LED/ioBroker.powerfox2

              closed activate dependabot #12

              haus-automatisierung 1 Reply Last reply Reply Quote 2
              • haus-automatisierung
                haus-automatisierung Developer Most Active @mcm1957 last edited by

                @mcm57 Danke auch Dich, für Deine unermüdliche Arbeit in allen Adaptern 🙂

                mcm1957 1 Reply Last reply Reply Quote 0
                • mcm1957
                  mcm1957 @haus-automatisierung last edited by

                  @AxLED

                  Disen Beitrag mal als Link für den Github PR. Inhalt folgt gleich 🙂

                  mcm1957 1 Reply Last reply Reply Quote 0
                  • mcm1957
                    mcm1957 @mcm1957 last edited by

                    @AxLED

                    Sodala - hier ist der besserer Platz für ausführlichere Diskussionen. PRs / Issues sind da nur zweite Wahl.

                    Du schriebst in https://github.com/ioBroker/ioBroker.repositories/pull/2946#issuecomment-1816273341

                    i could merge 2 of the 3 PR in https://github.com/Ax-LED/ioBroker.powerfox2/pulls, the 3rd one shows an error Ax-LED/ioBroker.powerfox2#11.
                    The 2 merged PR produced some more PRs in my repo, also with error.
                    I dont know how to move forward.
                    AxLED

                    Die Ursache des Merge Konflikts war, dass ich nicht beachtet habe, dasss ich den zweiten PR auf Basis des IST Standes erstellt habe und nicht auf Basis meines ersten PRs. Sorry.
                    @ticaki hat dir dazu schon geschrieben (DANKE) wie man auf Github mit Merge Konflikten umgeht und diese Beheben kann.

                    These are merge conflicts, the update of Axios has changed your package.json and therefore git cannot merge them without help.
                    https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-on-github
                    If your conflict is too complex for Github and you need to continue on the command line, please ask again.
                    The 2 merged PR produced some more PRs in my repo, also with error.
                    u can merge them. Error comes from missing token for auto merge.
                    other thing: its near impossible that the native change of io-package.json break ur adapter.

                    DANKE Tim.

                    Da das manulle Beheben eine Merge-Konflikts in package-lock (fast) unmöglich ist, hab ich einen neuen PR erstellt. Generell ist was wohl am besten bei einem Merge Konflikt in package-lock.json "irgendwas" zu committen und anschließen auf dem eigenen Rechner das File neu zu erstellen (= Löchen + mit npm i neu bauen).

                    Zu den zahlreichen anderen PRs mit roten X.
                    Wie @ticaki dir schonr ichtig mitgeteilt hat, die kommen davon dass dur nicht wie im PR geschrieben ein AUTOMERGE_TOKEN angelegt hats.
                    https://github.com/Ax-LED/ioBroker.powerfox2/pull/12

                    This PR activates dependabot.
                    
                    Dependabot creates update PRs to help keeping your dependencies up to date, paatch (and development minor) upodates will be merged automaticall, other PRs miust be reviewed and merged by you.
                    
                    To use automrge the following must be done:
                    
                    # In order to use this, you need to go to https://github.com/settings/tokens and
                    # create a Personal Access Token with the permission "public_repo".
                    # Enter this token in your repository settings under "Secrets" and name it AUTO_MERGE_TOKEN
                    

                    Sofern sie keine Merge Konflikte haben, kannst du sie manuell mergen. Um dein Token zu testen, kannst du aber auch in jeden PR als Kommentar posten "@dependebot recreate".
                    Der Einzrag @dependabot recreate" veranlasst dependabot den PR neu zu erstellen. Dann sollten die Actions neu anlaufen und wenn das Token passt dann sollte der PR gemerged werden.

                    Ich würde dir auch Testgründen den zweiten Weg raten.

                    Bitte beachte, dass sich die PRs gegenseitig beeinflussen. Du solltes als erstes (!) den releasescript PR mergen. Dann kann dependabot seine PRs ggF anpassen.

                    Mcm1957

                    Ax-LED created this issue in ioBroker/ioBroker.repositories

                    closed Update update powerfox2 to 0.0.13 #2946

                    mcm1957 created this issue in Ax-LED/ioBroker.powerfox2

                    closed activate dependabot #12

                    mcm1957 1 Reply Last reply Reply Quote 0
                    • mcm1957
                      mcm1957 @mcm1957 last edited by

                      Und nochmal die Frage:
                      Telegramm?
                      Discord?

                      Wär halt interaktiver als hier das Forum für solche Fälle...

                      A 1 Reply Last reply Reply Quote 0
                      • A
                        AxLED @mcm1957 last edited by

                        @mcm57
                        @ticaki

                        danke für eure unermüdliche Hilfe. Austausch gerne über discord.
                        Schaue mir jetzt mal die ganzen ToDos in euren Anmerkungen an und versuche diese umzusetzen.

                        Gruß

                        AxLED

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        606
                        Online

                        31.7k
                        Users

                        79.8k
                        Topics

                        1.3m
                        Posts

                        4
                        14
                        608
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo