Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build: use reusable workflows in ci [WPB-14852] #823

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

coriolinus
Copy link
Contributor

@coriolinus coriolinus commented Dec 19, 2024

What's new in this PR

  • ensure docs get built in all cases, but only deployed when main does
  • identify all cases where multiple workflows do the same things and isolate those in workflows
  • use parallel jobs wherever possible

PR Submission Checklist for internal contributors
  • The PR Title
    • conforms to the style of semantic commits messages¹ supported in Wire's Github Workflow²
    • contains a reference JIRA issue number like SQPIT-764
    • answers the question: If merged, this PR will: ... ³
  1. https://sparkbox.com/foundry/semantic_commit_messages
  2. https://github.com/wireapp/.github#usage
  3. E.g. feat(conversation-list): Sort conversations by most emojis in the title #SQPIT-764.

Copy link

github-actions bot commented Dec 19, 2024

🐰 Bencher Report

Branchprgn/feat/reusable-workflows
Testbedubuntu-latest
Click to view all benchmark results
BenchmarkLatencynanoseconds (ns)
Commit add f(group size)/cs1/mem/1002📈 view plot
🚷 view threshold
18,845,000.00
Commit add f(group size)/cs1/mem/2📈 view plot
🚷 view threshold
6,760,500.00
Commit add f(group size)/cs1/mem/202📈 view plot
🚷 view threshold
9,718,300.00
Commit add f(group size)/cs1/mem/402📈 view plot
🚷 view threshold
11,849,000.00
Commit add f(group size)/cs1/mem/602📈 view plot
🚷 view threshold
14,690,000.00
Commit add f(group size)/cs1/mem/802📈 view plot
🚷 view threshold
16,718,000.00
Commit add f(number clients)/cs1/mem/1002📈 view plot
🚷 view threshold
984,590,000.00
Commit add f(number clients)/cs1/mem/2📈 view plot
🚷 view threshold
7,028,000.00
Commit add f(number clients)/cs1/mem/202📈 view plot
🚷 view threshold
84,901,000.00
Commit add f(number clients)/cs1/mem/402📈 view plot
🚷 view threshold
220,550,000.00
Commit add f(number clients)/cs1/mem/602📈 view plot
🚷 view threshold
426,760,000.00
Commit add f(number clients)/cs1/mem/802📈 view plot
🚷 view threshold
675,610,000.00
Commit pending proposals f(group size)/cs1/mem/1002📈 view plot
🚷 view threshold
117,010,000.00
Commit pending proposals f(group size)/cs1/mem/2📈 view plot
🚷 view threshold
28,802,000.00
Commit pending proposals f(group size)/cs1/mem/202📈 view plot
🚷 view threshold
46,334,000.00
Commit pending proposals f(group size)/cs1/mem/402📈 view plot
🚷 view threshold
61,573,000.00
Commit pending proposals f(group size)/cs1/mem/602📈 view plot
🚷 view threshold
79,866,000.00
Commit pending proposals f(group size)/cs1/mem/802📈 view plot
🚷 view threshold
94,553,000.00
Commit pending proposals f(pending size)/cs1/mem/1📈 view plot
🚷 view threshold
18,786,000.00
Commit pending proposals f(pending size)/cs1/mem/101📈 view plot
🚷 view threshold
115,890,000.00
Commit pending proposals f(pending size)/cs1/mem/21📈 view plot
🚷 view threshold
36,067,000.00
Commit pending proposals f(pending size)/cs1/mem/41📈 view plot
🚷 view threshold
57,456,000.00
Commit pending proposals f(pending size)/cs1/mem/61📈 view plot
🚷 view threshold
75,892,000.00
Commit pending proposals f(pending size)/cs1/mem/81📈 view plot
🚷 view threshold
95,781,000.00
Commit remove f(group size)/cs1/mem/1002📈 view plot
🚷 view threshold
26,689,000.00
Commit remove f(group size)/cs1/mem/2📈 view plot
🚷 view threshold
6,819,200.00
Commit remove f(group size)/cs1/mem/202📈 view plot
🚷 view threshold
9,126,700.00
Commit remove f(group size)/cs1/mem/402📈 view plot
🚷 view threshold
11,747,000.00
Commit remove f(group size)/cs1/mem/602📈 view plot
🚷 view threshold
17,103,000.00
Commit remove f(group size)/cs1/mem/802📈 view plot
🚷 view threshold
22,016,000.00
Commit remove f(number clients)/cs1/mem/1002📈 view plot
🚷 view threshold
30,549,000.00
Commit remove f(number clients)/cs1/mem/2📈 view plot
🚷 view threshold
137,510,000.00
Commit remove f(number clients)/cs1/mem/202📈 view plot
🚷 view threshold
114,710,000.00
Commit remove f(number clients)/cs1/mem/402📈 view plot
🚷 view threshold
93,327,000.00
Commit remove f(number clients)/cs1/mem/602📈 view plot
🚷 view threshold
71,886,000.00
Commit remove f(number clients)/cs1/mem/802📈 view plot
🚷 view threshold
50,936,000.00
Commit update f(group size)/cs1/mem/1002📈 view plot
🚷 view threshold
137,570,000.00
Commit update f(group size)/cs1/mem/2📈 view plot
🚷 view threshold
7,122,100.00
Commit update f(group size)/cs1/mem/202📈 view plot
🚷 view threshold
33,722,000.00
Commit update f(group size)/cs1/mem/402📈 view plot
🚷 view threshold
59,721,000.00
Commit update f(group size)/cs1/mem/602📈 view plot
🚷 view threshold
86,851,000.00
Commit update f(group size)/cs1/mem/802📈 view plot
🚷 view threshold
112,280,000.00
🐰 View full continuous benchmarking report in Bencher

@coriolinus coriolinus force-pushed the prgn/feat/reusable-workflows branch 2 times, most recently from 04409c4 to 29cb3de Compare December 19, 2024 15:46
@coriolinus
Copy link
Contributor Author

coriolinus commented Dec 19, 2024

Actions to extract into common workflows:

  • build rust target (?)
  • build wasm target
  • build kotlin/jvm target
  • build android target
  • build ios target
  • rm either documentation/rust or rust/docs jobs; they do the same thing
  • parallelize rust/check jobs with a matrix
  • rm rust/build job as it provides no particular benefits or artifacts
  • rm rust/wasm-build job as it provides no particular benefits or artifacts

@coriolinus coriolinus force-pushed the prgn/feat/reusable-workflows branch 2 times, most recently from 9cc68b3 to 323d327 Compare December 19, 2024 16:30
Note that this adjusts TS docs generation because it had previously
been silently failing.
These jobs do nothing that the `check` jobs don't do for correctness,
and they just take up runtime
@coriolinus coriolinus force-pushed the prgn/feat/reusable-workflows branch from f20239b to df92a9c Compare December 20, 2024 14:18
@coriolinus coriolinus force-pushed the prgn/feat/reusable-workflows branch from df92a9c to 640a317 Compare December 20, 2024 14:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant