Closed deleonio closed 1 month ago
Der Workflow ist für v1
angepasst. Damit alles funktioniert, müssen wir in der public-ui
-Orga noch folgendes erledigen:
1) GitHub App anlegen und wie folgt unter General konfigurieren:
KoliBri Bot
2) GitHub App Permissions konfigurieren
Contents
ready & write erlauben3) GitHub App installieren
kolibri
-Repository installieren4) Neue Secrets für kolibri
-Repository konfigurieren
APP_ID
, PRIVATE_KEY
. App ID kann im Bereich "General" der App gefunden werden. Private Key ist der zuvor heruntergeladene Key.
KI:
Wenn Sie einen Workflow starten möchten, sobald ein neuer Commit auf einen Branch gepusht wird, auch wenn dieser Commit von einem GitHub Action Bot stammt, können Sie den
push
-Event in Ihrer Workflow-Definition verwenden. Wie bereits erwähnt, verhindert GitHub standardmäßig, dass Workflows durch Aktionen ausgelöst werden, die von GitHub Actions selbst innerhalb desselben Repositories verursacht werden, um zirkuläre Workflow-Auslösungen zu vermeiden.Eine Lösung für dieses Problem ist, die Einstellungen für die Workflow-Ausführung anzupassen, um auch Workflows auszulösen, die durch Aktionen von
github-actions[bot]
verursacht wurden. Dies kann durch die Verwendung eines Personal Access Tokens (PAT) anstelle des standardmäßigenGITHUB_TOKEN
erreicht werden. DasGITHUB_TOKEN
hat Einschränkungen, um rekursive Workflow-Auslösungen zu verhindern, während ein PAT diese Einschränkung umgehen kann.Hier ist ein grundlegendes Beispiel für eine Workflow-Definition, die auf jeden
push
-Event reagiert:Um sicherzustellen, dass Ihr Workflow auch bei Commits von GitHub Actions ausgelöst wird, sollten Sie folgende Schritte beachten:
Verwenden eines Personal Access Tokens (PAT):
Aktionen mit dem PAT durchführen:
GITHUB_TOKEN
verwenden. Dies kann oft einfach durch Setzen eines Headers in einemcurl
-Befehl oder durch Konfigurieren der Aktionen, die GitHub API-Anfragen durchführen, erreicht werden.Beachten Sie jedoch, dass die Verwendung eines PAT zusätzliche Sicherheitsüberlegungen mit sich bringt, da PATs mit umfangreichen Berechtigungen das Sicherheitsrisiko erhöhen können. Es ist wichtig, dass der PAT minimale Berechtigungen hat, die für die erforderlichen Aktionen ausreichend sind, und sicher gespeichert wird.
Wenn Sie diesen Ansatz verfolgen, sollten Sie in der Lage sein, Workflows auszulösen, selbst wenn die Commits von einem GitHub Actions Bot kommen, ohne von Ereignissen anderer Workflows abhängig zu sein.