Funktionsweise der Aktivierung in Ihrem Unternehmen
Code Quality wird auf drei Ebenen gesteuert, sodass Sie entscheiden können, wie viel Autonomie Sie Organisationen und Repositorys geben können:
- Unternehmen: Der Inhaber des Unternehmens muss zunächst Code Quality für das Unternehmen zulassen. Bis sie dies tun, können Organisationsbesitzer sie nicht aktivieren.
- Organisation: Organisationsbesitzer steuern, welche Repositorys aktiviert oder deaktiviert wurden Code Quality , indem sie Zugriff auf alle Repositorys, eine ausgewählte Liste oder Repositorys gewähren, die einem Filter entsprechen. Sie können diese Einstellungen auch erzwingen, damit Repositoryadministratoren sie nicht ändern können.
- Repository: Repository-Administratoren können Code Quality für einzelne Repositorys aktivieren oder deaktivieren, sofern keine Erzwingung auf Organisationsebene gilt.
Wenn Code Quality für ein Repository aktiviert ist, wird die CodeQL-Analyse über GitHub Actions ausgeführt und die Ergebnisse werden in Pull Requests und im Standardbranch angezeigt. Entwickler sehen Qualitätsprüfungen und Anmerkungen zu ihren Pullanforderungen.
Zugriff auf Repository auf Organisationsebene
Auf Organisationsebene steuern Sie Code Quality über eine einzige Repositoryzugriff-Einstellung. Diese Einstellung bestimmt, welche Repositorys aktiviert sind Code Quality und welche deaktiviert sind: Repositorys innerhalb Ihrer Auswahl sind aktiviert, und Repositorys außerhalb Ihrer Auswahl sind deaktiviert.
Wichtig
Wenn Sie die Einstellung für den Repository-Zugriff ändern, kann dadurch **** für viele Repositorys gleichzeitig sowohl aktiviert Code Quality deaktiviert werden. Wenn Sie zum Beispiel Code Quality für Repositorys aktivieren, die einem Filter entsprechen, wird jedes Repository deaktiviert, das nicht dem Filter entspricht. Bevor Ihre Änderung angewendet wird, zeigt ein Dialogfeld die Gesamtzahl der aktivierten und deaktivierten Repositorys zusammen mit den Auswirkungen auf die Abrechnung an.
Repositoryzugriffsoptionen
Sie können jeweils eine der folgenden Optionen anwenden.
| Auswahl | Behavior |
|---|---|
| Keine Repositorys | Deaktiviert Code Quality für alle aktuellen und zukünftigen Repositories der Organisation. |
| Repositories entscheiden lassen | Die Organisation aktiviert oder deaktiviert Code Qualityweder . Repository-Administratoren entscheiden, ob es für ihre eigenen Repositorys aktiviert werden soll. Diese Option kann nicht erzwungen werden. |
| Alle Repositorys | Aktiviert Code Quality für alle aktuellen und zukünftigen Repositories. |
| Ausgewählte Repositorys | Aktiviert Code Quality für eine von Ihnen ausgewählte Liste von Repositorys. Repositorys, die Sie nicht auswählen, sind deaktiviert, und neue Repositorys werden nicht automatisch aktiviert. Am besten geeignet für Pilotprojekte oder Ausnahmen. |
| Abgleichen eines Filters | Aktiviert Code Quality für Repositories, die einem von Ihnen definierten Filter entsprechen, jetzt und künftig. Repositorys, die nicht übereinstimmen, sind deaktiviert. Siehe Repositorien filtern. |
Filtern von Repositorys
Wenn Sie "Abgleichen eines Filters" auswählen, erstellen Sie einen dynamischen Filter, der automatisch vorhandene und zukünftige Repositorys aktiviert Code Quality , die Ihren Kriterien entsprechen. Dies ist nützlich für die laufende Governance im großen Maßstab.
Sie können nach einer beliebigen Kombination der folgenden Kriterien filtern:
- Sichtbarkeit: Unabhängig davon, ob Repositorys öffentlich, privat oder intern sind. Nützlich für übergreifende Richtlinien, z. B. die Aktivierung von Code Quality für alle privaten Repositories.
- Fork-Status: Gibt an, ob Repositorys Forks sind. Nützlich, wenn Forks keine Analyseressourcen verbrauchen sollten.
- Benutzerdefinierte Eigenschaft: Gibt an, ob Repositorys einen bestimmten benutzerdefinierten Eigenschaftswert aufweisen. Sie können z. B. Repositorys mit einer
team:platformEigenschaft als Ziel verwenden.
Alle Bedingungen in einem Filter werden mit ANDkombiniert, sodass ein Repository mit jeder Bedingung übereinstimmen muss, um aktiviert zu werden. Sie können auch Repositorys ausschließen, die bestimmten Bedingungen entsprechen.
Erzwingen des Zugriffs
Standardmäßig können Repositoryadministratoren Einstellungen für ihre eigenen Repositorys ändern Code Quality . Um dies zu verhindern, aktivieren Sie "Zugriff erzwingen".
Durch die Erzwingung werden sowohl der aktivierte als auch der deaktivierte Zustand festgelegt, die durch Ihre Option Repositoryzugriff gesetzt werden, sodass Repository-Administratoren diese nicht überschreiben können. Dies verbessert die Konsistenz in Ihrer Organisation, verringert jedoch die Flexibilität für einzelne Repositoryadministratoren.
- Die Durchsetzung gilt für die meisten von Ihnen ausgewählten Optionen für den Repositoryzugriff, einschließlich Keine Repositorys, wodurch Code Quality als deaktiviert durchgesetzt wird.
- Das Erzwingen ist mit Let repositories decide nicht verfügbar, wodurch die Entscheidung bewusst den Repository-Administratoren überlassen wird.
Planen des Rollouts
Da eine einzelne Änderung der Einstellung für den RepositoryzugriffCode Quality gleichzeitig für viele Repositorys aktivieren kann und jede Analyse GitHub Actions Minuten in Anspruch nimmt, lohnt es sich, die Einführung schrittweise statt alles auf einmal vorzunehmen. Beachten Sie bei Ihrer Planung Folgendes:
- Kosten und Kapazität. Vergewissern Sie sich, dass Ihre Runner die zusätzliche GitHub Actions Belastung bewältigen können, bevor Sie Code Quality sie breitflächig aktivieren.
- Wie viel zu erzwingen ist. Die Erzwingung bietet Ihnen eine konsistente Abdeckung und stoppt die Abmeldung von Repositoryadministratoren, entfernt jedoch ihre Flexibilität. Wenn Sie es deaktiviert lassen, können Teams es nach ihrem eigenen Zeitplan aktivieren.
- Wann erweitert werden soll. Beginnen Sie mit einer kleinen, repräsentativen Pilotgruppe, stellen Sie sicher, dass die Analyse reibungslos ausgeführt wird, und Entwickler vertrauen den Ergebnissen, und erweitern Sie dann Ihre Auswahl oder Ihren Filter, um weitere Repositorys abzudecken.
Eine schrittweise Einführung, einschließlich der Pilotierung Ihrer Qualitätsschwellenwerte im Auswertungsmodus, bevor Sie sie erzwingen, finden Sie unter Einführung von GitHub Code Quality in großem Maßstab.