Add zizmor pre-commit configuration
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 45/100
Direzione di ricerca
Ispeziona la configurazione GitHub Actions esistente in .github, quindi esamina la modifica referenziata beeware/.github#378 e l'esempio .github/zizmor.yml. Aggiungi zizmor alla pipeline pre-commit, eseguilo sulla configurazione Actions e risolvi tutti i problemi segnalati, mantenendo i riferimenti a beeware/.github su @main e documentando con il core team qualsiasi esclusione necessaria.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
What is the problem or limitation you are having?
zizmor is a useful tool for performing a static analysis of GitHub actions configurations, auditing for common security issues and related problems. It can be run standalone, but it can also be integrated into pre-commit.
Describe the solution you'd like
We should add zizmor to this project's pre-commit pipeline.
This will require fixing any issues that zizmor identifies with the existing Github actions configuration. Zizmor is able to automatically fix many problem, and it is able to make suggestions about other fixes. However, there are some problems where investigation and a manual fix will be required.
Zimor was recently added to the .github repository (see beeware/.github#378). That pull request may be instructive for how to add a zizmor configuration, the types of problems that Zizmor reports, and the fixes for those problems. The most invasive fixes are:
unpinned-uses- this requires providing a full hash for a reference to a GitHub Action, rather than just a version number. These hashes must be manually determined. This must be done for all action reference, except for references tobeeware/.githubactions; see details below.template-injection- Use of${{ }}syntax is a possible vector for security issues because the content isn't escaped; instead of using direct variable substitution, it is necessary to proxy GitHub variables through environment variables.
However, zizmor may find other problems; they should all be resolved.
References to beeware/.github
References to beeware/.github actions are the only actions that are allowed to remain unpinned. As these actions are in the BeeWare repository, the security exposure is different - someone who already has enough access to tamper with those actions likely has access to tamper with other repositories directly.
Any reference to a beeware/.github action should be retained as a reference to @main. A zizmor configuration like this one can be used to silence the zizmor error about unpinned uses.
Describe alternatives you've considered
No real alternative.
Additional context
Skipping rules, excluding files, or raising the minimum report level should not be considered unless absolutely necessary. A member of the core team can advise if you believe you have found a situation that requires an exclusion of this kind; post a comment on this ticket, or ask on Discord if you believe a rule cannot be satisfied.
- Lingua principale
- Python
- Stelle
- 7
- Fork
- 8
- Merge medio
- 9h 41m
- PR unite (30g)
- 1
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di beeware/Python-support-testbed
-
enhancement good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
-
enhancement good first issue
Difficoltà 3/5 1-2 giorni Idoneità per principianti 42/100
beeware/Python-support-testbed#123 · 1 commento ·
Tutte le issue di beeware/Python-support-testbed
Issue simili
-
area: harness bug status: needs-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
Human-Agent-Society/reef#625 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 80/100
learningequality/kolibri#15351 · 2 commenti ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Name consistency Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
eellak/triplestore#65 · 1 commento ·