Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Dependabot Fehler beim Automerge

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Dependabot Fehler beim Automerge

    This topic has been deleted. Only users with topic management privileges can see it.
    • AlCalzone
      AlCalzone Developer @weggetor last edited by

      @weggetor Zeig am besten mal, was genau schiefläuft. Aber an sich sollten die aus dem Baseline-Verzeichnis passen, z.B.:
      https://github.com/ioBroker/create-adapter/blob/master/test/baselines/adapter_JS_ESLint_TypeChecking_Spaces_SingleQuotes_Apache-2.0/.github/workflows/test-and-release.yml

      W OliverIO 2 Replies Last reply Reply Quote 0
      • W
        weggetor Developer @AlCalzone last edited by weggetor

        @alcalzone Hier ein Beispiel:
        8f0ffaed-9217-40e3-9d21-5df49bfe3e26-image.png

        c2e936f7-e17e-4f59-9e1c-31ccbb106e69-image.png

        Edit: Habe mal die baseline-yaml mit meiner verglichen und genau der Teil mit dem Fehler der auftaucht fehlt in der baseline version. Habs mal geändert und bin gespannt ob es jetzt läuft

        AlCalzone 1 Reply Last reply Reply Quote 0
        • OliverIO
          OliverIO @AlCalzone last edited by

          @alcalzone

          ich hab da auch Schwierigkeiten.
          https://github.com/oweitman/ioBroker.tvprogram/blob/master/.github/workflows/dependabot-automerge.yml

          Hier die Fehlermeldung
          8ee8b6c0-d7fc-430d-b03a-6b6bf0205a64-image.png

          und hier der token in den repo-einstellungen
          34ee8386-2138-46d7-8559-7628f35b6151-image.png

          evtl kann mir da jemand helfen. ich find den punkt nicht wo ich was falsch mache

          muss ich den tatsächlich für jedes repo einen eigenen token erzeugen?

          AlCalzone 1 Reply Last reply Reply Quote 0
          • AlCalzone
            AlCalzone Developer @weggetor last edited by

            @weggetor Ah, ja das haben wir auch schon festgestellt:
            https://github.com/ioBroker/create-adapter/issues/807

            Wenn du TypeScript im Adapter-Repo downgradest, sollte es wieder gehen. Dazu ändere in package.json die Zeile

            "typescript": "^4.4.2"
            

            oder so ähnlich zu

            "typescript": "~4.3.5"
            

            und führe

            npm install
            

            aus.

            AlCalzone created this issue in ioBroker/create-adapter

            closed Generated adapters cause errors on TS 4.4, which is included in the `^` dependency #807

            1 Reply Last reply Reply Quote 1
            • AlCalzone
              AlCalzone Developer @OliverIO last edited by

              @oliverio Hast du denn gelesen, was ich @weggetor vorher geschrieben habe?
              ==> https://github.com/ioBroker/create-adapter/blob/master/docs/updates/20210405_automerge_fixes.md

              OliverIO 1 Reply Last reply Reply Quote 0
              • OliverIO
                OliverIO @AlCalzone last edited by OliverIO

                @alcalzone

                Beziehend auf hier
                https://forum.iobroker.net/topic/50721/core-entwicklung-zu-schnell/21?_=1640570914958

                Die Anpassung war schon eingearbeitet.
                Die Benachrichtigung des Forums über die Antwort hat gefehlt. Kommt zwar selten vor, aber kommt vor.

                Wie gesagt, dependabot bzw Automarke funktioniert immer noch nicht.
                Workflowdatei ist oben verlinkt, evtl findet noch jemand ein Problem darin.

                apollon77 1 Reply Last reply Reply Quote 0
                • apollon77
                  apollon77 @OliverIO last edited by apollon77

                  @oliverio Mal das versucht? https://github.com/ahmadnassri/action-dependabot-auto-merge/issues/58#issuecomment-981520187

                  Ich verstehe nicht warum es bei hunderten Repos tut und bei deine nicht, aber scheinst nicht allein zu sein weil ein paar in dem genannten Issue kommentiert haben.

                  peterbe created this issue in ahmadnassri/action-dependabot-auto-merge

                  open "Error: Input required and not supplied: github-token" #58

                  OliverIO 1 Reply Last reply Reply Quote 0
                  • OliverIO
                    OliverIO @apollon77 last edited by

                    @apollon77
                    Ich hab jetzt github–token nach token geändert.
                    Muss aber warten bis wieder eine Änderung ansteht, bei re–run
                    Kommt skipped

                    Danke

                    AlCalzone 1 Reply Last reply Reply Quote 0
                    • AlCalzone
                      AlCalzone Developer @OliverIO last edited by AlCalzone

                      @oliverio sagte in Dependabot Fehler beim Automerge:

                      Ich hab jetzt github–token nach token geändert.

                      Das wird auch nicht helfen. Die Action erwartet github-token. Der letzte Kommentar dort im Issue bezieht sich auf den checkout step!

                      Und du bist sicher, dass dein Token wirklich existiert und ein personal access token mit Schreibrecht aufs repo ist?
                      Bei mir läufts nämlich: https://github.com/AlCalzone/ioBroker.zwave2/blob/master/.github/workflows/dependabot-automerge.yml

                      b06e541b-bbb5-41bf-9e0b-b600d7790606-grafik.png

                      OliverIO 1 Reply Last reply Reply Quote 0
                      • OliverIO
                        OliverIO @AlCalzone last edited by

                        @alcalzone

                        Nein bin ich nicht.
                        Aber meinen Screenshot der dem deinen entspricht hatte ich oben eingefügt.

                        AlCalzone 1 Reply Last reply Reply Quote 0
                        • AlCalzone
                          AlCalzone Developer @OliverIO last edited by

                          @oliverio Dann vergleich den nochmal ganz genau mit meinem 🙂

                          OliverIO 1 Reply Last reply Reply Quote 0
                          • OliverIO
                            OliverIO @AlCalzone last edited by

                            @alcalzone

                            Hm was ist der Unterschied zwischen den Knöpfen
                            New repository secret auf der secret-Seite und dem
                            Knopf new repository secret auf der Seite secret/actions/dependabot?

                            AlCalzone 1 Reply Last reply Reply Quote 0
                            • AlCalzone
                              AlCalzone Developer @OliverIO last edited by

                              @oliverio Letzeres scheint nur für die direkte Verwendung durch Dependabot gedacht zu sein:

                              When you add a secret it's encrypted before it reaches GitHub and it remains encrypted until it's used by Dependabot to access a private package registry
                              https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/managing-encrypted-secrets-for-dependabot#about-encrypted-secrets-for-dependabot

                              Du willst es aber einer Action übergeben, und die kann dann damit nix anfangen.

                              1 Reply Last reply Reply Quote 0
                              • OliverIO
                                OliverIO last edited by

                                @alcalzone
                                so also nochmal probiert, aber leider erfolglos. hier mal Schritt für schritt was ich gemacht habe:

                                Personal Access Token (PAT) angelegt mit Namen DEPENDABOT
                                Folgende Scopes wurden angekreuzt:
                                repo (mit allen unterkreuzen) und zur Sicherheit noch workflow. Bei workflow bin ich mir nicht sicher ob der eigentlich notwendig ist
                                c37dae4f-1474-4c9c-b494-61b10012316a-image.png
                                622c49a2-2c4e-44d1-9e97-b1202f67007e-image.png
                                2)
                                die beiden Dateien angelegt. Die notwendigen Änderungen sind mE eingearbeitet, die im letzen Jahr aus Sicherheitsgründen durch github eingeführt wurden.
                                https://github.com/oweitman/ioBroker.mytime/blob/master/.github/auto-merge.yml
                                https://github.com/oweitman/ioBroker.mytime/blob/master/.github/workflows/dependabot-auto-merge.yml
                                3) der PAT-Name ist in der Datei ebenfalls notiert
                                https://github.com/oweitman/ioBroker.mytime/blob/master/.github/workflows/dependabot-auto-merge.yml
                                4d691b03-c90e-4843-a82f-87330131c6fa-image.png
                                4) als Ergebnis eines Pull Requests schläg die Action fehl. Als Fehlermeldung wird das folgende angegeben:

                                /usr/bin/docker run --name ghcrioahmadnassriactiondependabotautomergev2_18c66d --label 6a6825 --workdir /github/workspace --rm -e INPUT_GITHUB-TOKEN -e INPUT_COMMAND -e INPUT_CONFIG -e INPUT_BOTNAME -e INPUT_APPROVE -e INPUT_TARGET -e HOME -e GITHUB_JOB -e GITHUB_REF -e GITHUB_SHA -e GITHUB_REPOSITORY -e GITHUB_REPOSITORY_OWNER -e GITHUB_RUN_ID -e GITHUB_RUN_NUMBER -e GITHUB_RETENTION_DAYS -e GITHUB_RUN_ATTEMPT -e GITHUB_ACTOR -e GITHUB_WORKFLOW -e GITHUB_HEAD_REF -e GITHUB_BASE_REF -e GITHUB_EVENT_NAME -e GITHUB_SERVER_URL -e GITHUB_API_URL -e GITHUB_GRAPHQL_URL -e GITHUB_REF_NAME -e GITHUB_REF_PROTECTED -e GITHUB_REF_TYPE -e GITHUB_WORKSPACE -e GITHUB_ACTION -e GITHUB_EVENT_PATH -e GITHUB_ACTION_REPOSITORY -e GITHUB_ACTION_REF -e GITHUB_PATH -e GITHUB_ENV -e RUNNER_OS -e RUNNER_ARCH -e RUNNER_NAME -e RUNNER_TOOL_CACHE -e RUNNER_TEMP -e RUNNER_WORKSPACE -e ACTIONS_RUNTIME_URL -e ACTIONS_RUNTIME_TOKEN -e ACTIONS_CACHE_URL -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" -v "/home/runner/work/_temp/_runner_file_commands":"/github/file_commands" -v "/home/runner/work/ioBroker.mytime/ioBroker.mytime":"/github/workspace" ghcr.io/ahmadnassri/action-dependabot-auto-merge:v2
                                /action/node_modules/@actions/core/lib/core.js:94
                                        throw new Error(`Input required and not supplied: ${name}`);
                                              ^
                                
                                Error: Input required and not supplied: github-token
                                    at Object.getInput (/action/node_modules/@actions/core/lib/core.js:94:15)
                                    at file:///action/index.js:28:15
                                    at ModuleJob.run (node:internal/modules/esm/module_job:185:25)
                                    at async Promise.all (index 0)
                                    at async ESMLoader.import (node:internal/modules/esm/loader:281:24)
                                    at async loadESM (node:internal/process/esm_loader:88:5)
                                    at async handleMainPromise (node:internal/modules/run_main:65:12)
                                

                                In der PAT Übersicht steht, das der Token nie verwendet wurde.
                                Keine Ahnung was ich hier noch falsch mache oder wo ich noch was ändern kann

                                AlCalzone 1 Reply Last reply Reply Quote 0
                                • AlCalzone
                                  AlCalzone Developer @OliverIO last edited by AlCalzone

                                  @oliverio Das Personal Access Token musst du noch als Repository Secret (unter Actions, NICHT Dependabot!) eintragen, wie in meinem Screenshot in folgendem Post:
                                  https://forum.iobroker.net/post/727936

                                  OliverIO 1 Reply Last reply Reply Quote 0
                                  • OliverIO
                                    OliverIO @AlCalzone last edited by

                                    @alcalzone
                                    Dann verstehe ich das noch nicht. In der github Doku seht nirgends was vom diesem 2 stufigen System.
                                    Wenn ich ein repository Secret anlege, was trage ich dann bei value ein?

                                    AlCalzone 1 Reply Last reply Reply Quote 0
                                    • AlCalzone
                                      AlCalzone Developer @OliverIO last edited by AlCalzone

                                      @oliverio sagte in Dependabot Fehler beim Automerge:

                                      was trage ich dann bei value ein

                                      Den Inhalt deines personal access tokens.

                                      Ein Secret ist erst mal nur ein Wert, der an eine Action übergeben wird (siehe Doku), ohne dass dieser irgendwo geloggt wird. Der Inhalt brauch eine Bedeutung, z.B. ein npm-Token, um bei npm was zu publishen, oder eben wie hier ein PAT, damit die Action in deinem Namen Dependabot sagen darf, dass er mergen soll.

                                      In der github Doku seht nirgends was vom diesem 2 stufigen System.

                                      Doch, in der Doku zur Action:
                                      https://github.com/ahmadnassri/action-dependabot-auto-merge#token-scope

                                      The GitHub token is a Personal Access Token with the following scopes:

                                      • repo for private repositories
                                      • public_repo for public repositories

                                      The token MUST be created from a user with push permission to the repository.


                                      Und da das alles etwas versteckt ist, steht es etwas konkreter auch in der vom Creator erzeugten Action YML:
                                      https://github.com/ioBroker/create-adapter/blob/ef7c9693559e580c6156d1c6aaab1ec7e9bb1ef7/test/baselines/adapter_JS_React/.github/workflows/dependabot-auto-merge.yml#L22-L25

                                                # 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
                                                github-token: ${{ secrets.AUTO_MERGE_TOKEN }}
                                      
                                      OliverIO 1 Reply Last reply Reply Quote 0
                                      • OliverIO
                                        OliverIO @AlCalzone last edited by

                                        @alcalzone

                                        Aber wo steht da was davon das ich zunächst ein PAT anlegen muss und dann noch eine Repository Secret.
                                        Ich lese immer nur, das ich ein PAT anlegen muss. Das PAT hat einen Namen, der Namen ist in der Action eingetragen. Ich habe das ja oben mit Screenshots dokumentiert.

                                        Du sagst ich soll den Inhalt des PAT in die Value des Repository Secrets eintragen:
                                        Bei mir wird beim Anlegen des PAT nach Kreuzchen gefragt (wie oben beschrieben und mit Screenshot dargestellt, habe ich dort Repo und Workflow angekreuzt).
                                        Ich gebe da ja nix individuelles geheimes ein.
                                        Was verstehst du jetzt unter Inhalt des PATs? Den Namen?

                                        AlCalzone 1 Reply Last reply Reply Quote 0
                                        • AlCalzone
                                          AlCalzone Developer @OliverIO last edited by

                                          @oliverio sagte in Dependabot Fehler beim Automerge:

                                          Das PAT hat einen Namen, der Namen ist in der Action eingetragen

                                          Nochmal: Access Tokens und Secrets sind zwei paar Schuhe! Access Tokens ermöglichen es, Anwendungen sich als dich auszugeben. Mit Secrets gibst du Actions Zugriff auf geheime Werte, z.B. tokens. Wie du deine Tokens oder Secrets nennst, ist erst mal zweitranging. Dass ein Token zufällig so heißt wie ein Secret, macht es noch nicht in Actions verfügbar.

                                          Ich lese immer nur, das ich ein PAT anlegen muss. Das PAT hat einen Namen, der Namen ist in der Action eingetragen

                                          Wenn jede Action einfach so auf deine PATs zugreifen könnte, wäre das grob unsicher. Wenn du das Access-Token anlegst, bekommst du einmalig den Inhalt (eine zufällige Nummer) angezeigt. DAS ist das Token. Das kannst du jetzt an verschiedenen Stellen nutzen, die sich als dein User authentifizieren müssen. Der Name ist nur für dich, damit du nachher weißt, wofür es war.

                                          8e905293-2657-4b07-8b77-fb29103ad3d6-grafik.png

                                          Dieses ☝ Token musst du als Wert des Secrets eintragen.

                                          OliverIO 1 Reply Last reply Reply Quote 0
                                          • OliverIO
                                            OliverIO @AlCalzone last edited by OliverIO

                                            @alcalzone

                                            ah ok,
                                            hab das doch jedesmal übersehen, das da oben noch was angezeigt wird.
                                            jetzt hat das soweit funktioniert, das die automerge action mit häkchen durchgelaufen ist. allerdings hat es nix gemerged bzw müsste ja dann noch die automatisierten tests loslaufen, bevor das tatsächlich committed ist.
                                            im pullrequest zeigt er alles ok an, sagt "Merging can be performed automatically" und ich könnte selbst den knopf drücken.
                                            Automatisch passiert das aktuell noch nicht.
                                            Woran könnte das noch liegen?

                                            die automatisierten tests laufen los, sobald ich den merge knopf gedrückt habe

                                            737f8683-03ab-4a0d-be54-42e9d2bb3564-image.png

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            787
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            28
                                            1296
                                            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