Axe Watcher in Continuous Integration (CI)-omgevingen
Hoe Axe Watcher CI-pijplijnen detecteert en canonieke bronnen gebruikt voor toegankelijkheidstest-baselines
Wanneer Axe Watcher in continuous integration (CI) draait op de standaard Git-tak van je repository (bijv. main), wordt dat resultaat de canonieke bron (de enige basislijn waartegen elke andere scan wordt vergeleken).
Wat Canonieke Bron Betekent
- Alleen de standaardtak komt in aanmerking. Pijplijnwerkzaamheden op feature-takken of pull-request-takken worden geregistreerd, maar zij worden niet de canonieke bron.
- De nieuwste pijplijnuitvoering wint. Elke nieuwe CI-run op de standaardtak vervangt de vorige basislijn, zodat vergelijkingen altijd de meest recente CI-status weerspiegelen.
- Lokale runs vergelijken met CI. Wanneer een ontwikkelaar Axe Watcher lokaal uitvoert, worden hun resultaten vergeleken met de nieuwste canonieke bron in plaats van met hun eigen meest recente scan. Dit geeft elk teamlid een gedeeld referentiepunt in plaats van individuele, mogelijk afwijkende basislijnen.
Benodigde Machtigingen
De API-sleutel die in je CI-pijplijn wordt gebruikt, moet afkomstig zijn van een project beheerder.
Niet-beheerder projectleden kunnen geen gegevens via een pijplijn verzenden (het verzoek zal met een fout mislukken).
Wanneer je je CI-omgeving configureert, zorg ervoor dat de API-sleutel is gegenereerd vanuit een account met beheerdersrechten tot het doelproject in Axe Developer Hub.
Pijplijnuitvoeringen op Niet-Standaardtakken
Je kunt Axe Watcher in CI draaien op elke tak, maar het gedrag verschilt van uitvoeringen op de standaardtak:
- Resultaten worden toegeschreven aan "Pijplijn", niet aan de individuele gebruiker wiens API-sleutel werd gebruikt. In Axe Developer Hub verschijnt pijplijndata onder een speciale "Pijplijn" vermelding in plaats van onder een specifiek teamlid.
- Deze uitvoeringen worden niet de canonieke bron. Alleen pijplijnuitvoeringen op de standaardtak stellen de basislijn voor vergelijkingen vast.
- Feature-takresultaten worden nog steeds geregistreerd. Ze zijn zichtbaar in Axe Developer Hub wanneer de "Pijplijn"-weergave is geselecteerd, wat nuttig is voor het overzien van toegankelijkheid op pull requests voordat ze worden samengevoegd.
CI Detectie
Axe Watcher bepaalt of het draait in CI via omgevingsvariabelen:
-
Standaard CI-variabele: Als
CIis ingesteld optrue, behandelt Watcher de uitvoering als een pijplijnuitvoering en stelt het overeenkomstig de canonieke bron in. De meeste CI-platformen stellen dit automatisch in (zie Platform Ondersteuning). -
Expliciete overschrijving:
AXE_IS_CIheeft voorrang bovenCIwanneer beide aanwezig zijn.Gebruik
AXE_IS_CIwanneer de standaardCI-variabele niet aan je behoeften voldoet:-
Schakel CI-modus in een niet-standaard omgeving in, bijvoorbeeld een zelf-gehoste runner of gepland taak die
CIniet naartrueinstelt doorAXE_IS_CInaartruein te stellen. -
Schakel CI-modus uit in een pijplijn, bijvoorbeeld om een verkennende scan in CI uit te voeren zonder de canonieke bron te overschrijven door
AXE_IS_CInaarfalsein te stellen.
-
Wanneer AXE_IS_CI is ingesteld, wordt de waarde van CI volledig genegeerd.
Platform Ondersteuning
| Platform | CI stelt true standaard in |
Documentatie |
|---|---|---|
| GitHub Acties | ja | GitHub Documentatie - Variabelen Referentie |
| GitLab CI | ja | GitLab Documentatie - Voorgedefinieerde Variabelen |
| CircleCI | ja | CircleCI Documentatie - Projectwaarden en Variabelen |
| Bitbucket Pipelines | ja | Atlassian Ondersteuning - Variabelen en Geheimen |
| Jenkins | nee (stel CI=true of AXE_IS_CI=true in in je environment blok) |
Omgevingsvariabelen gebruiken |
Intrekken van API-sleutels
Als de API-sleutel die in je CI-pipeline wordt gebruikt, wordt verwijderd of als het bijbehorende gebruikersaccount wordt gedeactiveerd, kunnen pipeline-runs niet meer succesvol worden geauthenticeerd. Eerder opgenomen resultaten blijven zichtbaar in Axe Developer Hub, maar er kan geen nieuwe data worden verzonden totdat de pipeline is geherconfigureerd met een geldige beheerder-API-sleutel.
Om CI-fouten te voorkomen wanneer teamleden vertrekken of sleutels roteren, overweeg een toegewijd serviceaccount voor pipeline API-sleutels te gebruiken.
