CI: Supporting building custom Docker images for cypress#8862
Conversation
Signed-off-by: David Teller <davidt@element.io> Type: task
| matrixImage = `matrix-react-sdk-test-${template}`; | ||
| try { | ||
| childProcess.execFileSync('docker', [ | ||
| "build", |
There was a problem hiding this comment.
We shouldn't be building ci run images on every ci run. This will expend a lot of time. Also given that our cypress jobs will gain automatic load balancing it'll possibly be done multiple times per run as the parallel runners will be on separate VMs. This slows down tests considerably and can hit dockerhub pull rate limits even. We should be publishing the ci images like we do for other things
There was a problem hiding this comment.
I suggest some ci which publishes images automatically from a directory within cypress into the github package space which can then be used by the cypress runners in ci
There was a problem hiding this comment.
I'll try and find out how to do this without breaking local testing.
Note, however, that on my computer, building the images takes about 4-5 seconds, so the impact is much lower than adding even a single test.
There was a problem hiding this comment.
Through our move to github ci we're trying to deduplicate as much as possible. To not make the same anti patterns we had in buildkite where each job built the app itself and a pr commit would do the same work a handful of times. Waste of compute
For local testing you can build those tags locally also
|
Looks like this PR has rotted - if you'd like to continue on this work, please re-open or make a new PR. Thanks! |
This changeset introduces a mechanism to build custom Docker images for Synapse. This will let us test with custom spam-check Python modules as needed for e.g. #8722.
This PR currently has none of the required changelog labels.
A reviewer can add one of:
T-Deprecation,T-Enhancement,T-Defect,T-Taskto indicate what type of change this is, or addType: [enhancement/defect/task]to the description and I'll add them for you.