Skip to content
This repository was archived by the owner on Sep 11, 2024. It is now read-only.

CI: Supporting building custom Docker images for cypress#8862

Closed
Yoric wants to merge 2 commits into
matrix-org:developfrom
Yoric:yoric/docker
Closed

CI: Supporting building custom Docker images for cypress#8862
Yoric wants to merge 2 commits into
matrix-org:developfrom
Yoric:yoric/docker

Conversation

@Yoric
Copy link
Copy Markdown
Contributor

@Yoric Yoric commented Jun 17, 2022

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-Task to indicate what type of change this is, or add Type: [enhancement/defect/task] to the description and I'll add them for you.

Signed-off-by: David Teller <davidt@element.io>
Type: task
matrixImage = `matrix-react-sdk-test-${template}`;
try {
childProcess.execFileSync('docker', [
"build",
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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

@andybalaam
Copy link
Copy Markdown
Member

Looks like this PR has rotted - if you'd like to continue on this work, please re-open or make a new PR. Thanks!

@andybalaam andybalaam closed this Jul 20, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants