Simplify the release process
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
Direzione di ricerca
Start by reading the existing release instructions and GitHub CI workflows that handle beta and stable releases; the issue does not name specific files. Map the manual steps for rustup-init.sh, the stable branch, and publication through t-release, then identify which steps can be safely triggered together. Done means one release trigger automates the agreed steps without making CI workflows too hard to debug.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
It is clear that with the 1.29.2 release our release process has become a bottleneck in terms of DX.
In other projects I maintain, making a release is as simple as adding a tag: GitHub CI will handle the rest. However, this is more complicated for rustup because:
- We have 2 stages (beta/stable) rule to push to two different environments.
- There are more markdown files to write.
t-releaseis involved for the final publication.
Main burdens
- Having to handle 2 stages: this means a lot of work will have to be done twice for every version number
- Requiring a separate PR to bump
rustup-init.shand its E2E test snapshot for every given release, which is currently painfully manual - Having to write 3 different but similar markdown posts: changelog, forum post (beta stage) and announcement post (stable stage) and syncing between them
- Manually maintaining the
stablebranch - Patiently waiting for the
stableCI/CD to turn green - Remembering to tag the stable release when everything is done with the stable stage
Expected outcome
One trigger that does almost everything, ideally without t-rustup human interaction afterwards.
Ideas
Some random ideas for automation include:
- Using tags as CI triggers, or provide explicit CI triggers to start the release automation (with the automatic creation of the tag at the end)
- Using the name of the tag to distinguish beta/release stages
- The automation then automatically bumps
rustup-init.shand maintainsstable - The automation could, at the same time, accept markdown input (from the changelog maybe?) so that we can copy-paste as the corresponding forum/announcement post
- The post part may better not be automated because we may not want to add the forum post for emergency releases, or we may want to slightly adjust the wording for certain posts.
- When the
stableCI turns green, we may want to hook some Zulip bot here to indicate that we can move on to the next step
But the crucial point is that we don't want to go too far on this since GitHub CI workflows are famously hard to debug.
- Lingua principale
- Rust
- Stelle
- 7.1k
- Fork
- 1.1k
- Merge medio
- 1g 3h
- PR unite (30g)
- 38
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi 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 rust-lang/rustup
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
rust-lang/rustup#5172 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement O-shell
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Proposal: Establish a charter for `t-rustup`Forse già presa @rami3l l’ha presa 1 giorno fa. Apertameta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 55/100
rust-lang/rustup#5191 · 3 reazioni · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Rustup OOMForse già presa @Kaileshwar16 l’ha presa 3 giorni fa. Apertabug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 52/100
rust-lang/rustup#5173 · 9 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
1.29.3 release planningApertarelease
Difficoltà 4/5 1-2 giorni Idoneità per principianti 20/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di rust-lang/rustup
Issue simili
-
bug i18n priority: medium ui
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
storytold/craft-anything#983 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
`swf` upgrade to 0.4.0Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
Dinnerbone/Rascal#91 · 2 reazioni ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
higress-group/HiRoute#405 ·
I maintainer di solito rispondono entro 1 giorno
-
rust_analyzer flycheck: no CLI way to enable clippy from `check.overrideCommand`Forse già presa @TrapsterDK l’ha presa oggi. Apertaneeds-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
bazelbuild/rules_rust#4392 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno