make it easier to run tasks locally
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
Direzione di ricerca
Start by examining the taskgraph command entry points and the existing run-task or other task runners mentioned in the issue. Define how a task label is resolved, how its container image is built or downloaded, and how dependencies and volume caches are handled locally. Done means a containerized task can be run locally with behavior matching CI, including the supported dependency cases.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
@JohanLorenzo linked me to dagger.io recently. One of the things that it tries to solve is reproducability problems between local and CI executions of the same thing. It does by making it trivial to run exactly what CI does locally. We have a lot of issues with this at the moment (especially in Gecko), to the point where it is often avoided altogether, and I think taskgraph should be able to make this similarly easy for containerized tasks.
I'm envisioning something like a taskgraph run command that can be fed a label or some other unique task identifier. Taskgraph would then either build or download the image the task runs on, launch a container, and run the task.
The trickiest bit here is likely to be what to do with tasks that depend on things from other tasks. In many cases we'd probably want to fetch artifacts from existing tasks, but there may be cases where we'd want to rebuild those tasks locally. This is extra tricky in some Gecko scenarios where something like mozharness is built as part of the build task, but we probably don't want to do a full build to pick up changes to it. (Maybe we can ignore extra complicated scenarios like this to start with. The fix there could be not to build mozharness as part of builds...). Docker images are the most notable thing that nearly all containerized tasks depend on.
Other possible issues we may encounter:
run-taskor other task runners currently only working on our deployed images- Tasks that use volume caches may need some adjustments to run locally
- Lingua principale
- Python
- Stelle
- 26
- Fork
- 55
- Merge medio
- 2g 6m
- PR unite (30g)
- 15
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 taskcluster/taskgraph
-
Dependency Dashboard Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
taskcluster/taskgraph#952 ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
taskcluster/taskgraph#915 ·
-
feature
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
taskcluster/taskgraph#911 · 1 commento ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
taskcluster/taskgraph#882 ·
-
Further optimize Git clones Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
taskcluster/taskgraph#865 · 1 commento ·
Tutte le issue di taskcluster/taskgraph
Issue simili
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
canonical/paas-charm#368 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
tech debt
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
addition to tracking list Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
StevenBlack/hosts#3256 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
qualcomm/qai-appbuilder#275 ·