Skip to content

Conversation

@anonrig
Copy link
Member

@anonrig anonrig commented Jun 27, 2025

Let's run container tests on CI

@anonrig anonrig requested review from a team as code owners June 27, 2025 19:56
@anonrig anonrig force-pushed the yagiz/run-container-tests-on-ci branch 2 times, most recently from 01716e9 to d190cba Compare June 27, 2025 20:06
@anonrig anonrig requested a review from a team as a code owner June 27, 2025 20:06
@anonrig anonrig force-pushed the yagiz/run-container-tests-on-ci branch from d190cba to 65698b1 Compare June 27, 2025 20:08
@anonrig anonrig force-pushed the yagiz/run-container-tests-on-ci branch from 65698b1 to da08a21 Compare June 27, 2025 20:11
@anonrig anonrig enabled auto-merge (rebase) June 27, 2025 20:12
@anonrig anonrig force-pushed the yagiz/run-container-tests-on-ci branch 6 times, most recently from aaf586d to 3ccf40a Compare June 27, 2025 21:15
@anonrig anonrig disabled auto-merge June 27, 2025 21:19
@anonrig anonrig requested a review from fhanau June 27, 2025 21:19
@anonrig anonrig requested a review from danlapid June 27, 2025 21:21
@anonrig anonrig force-pushed the yagiz/run-container-tests-on-ci branch from 3ccf40a to 2f53eb4 Compare June 27, 2025 21:24
@anonrig anonrig force-pushed the yagiz/run-container-tests-on-ci branch from 2f53eb4 to 86b5ce1 Compare June 30, 2025 13:46
@anonrig anonrig force-pushed the yagiz/run-container-tests-on-ci branch 2 times, most recently from 9fd8f76 to 4ea1d5b Compare July 16, 2025 16:05
@gpanders gpanders force-pushed the yagiz/run-container-tests-on-ci branch from ba785bf to b610ade Compare December 1, 2025 21:03
@gpanders
Copy link
Member

gpanders commented Dec 1, 2025

@anonrig @danlapid Container tests (and associated images) are now built and run by Bazel in Linux CI. Please re-review when you're able.

@gpanders gpanders self-assigned this Dec 1, 2025
@codspeed-hq

This comment was marked as off-topic.

@gpanders gpanders force-pushed the yagiz/run-container-tests-on-ci branch from 19694f3 to 33f398d Compare December 2, 2025 14:42
@github-actions
Copy link

github-actions bot commented Dec 2, 2025

The generated output of @cloudflare/workers-types matches the snapshot in types/generated-snapshot 🎉

@gpanders gpanders force-pushed the yagiz/run-container-tests-on-ci branch 2 times, most recently from 0f08162 to 76a11ca Compare December 2, 2025 14:50
Copy link
Contributor

@fhanau fhanau left a comment

Choose a reason for hiding this comment

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

@gpanders This looks like it should be several PRs – one making test changes, one adding container tests to CI. Easier to review that way.
The changes look good for the most part (only took a brief look so far). Do you have numbers for how much overhead this adds? As I understand you already only run this in the test-linux job, but keep in mind that the workers-sdk-test job depends on test-linux and runs after it, so test-linux may be in the critical path for CI duration already.

@danlapid danlapid self-requested a review December 10, 2025 20:15
@gpanders
Copy link
Member

@gpanders This looks like it should be several PRs – one making test changes, one adding container tests to CI. Easier to review that way.

This PR only does the latter. The only changes to the tests are those that were required to get them to work when run by Bazel.

The changes look good for the most part (only took a brief look so far). Do you have numbers for how much overhead this adds? As I understand you already only run this in the test-linux job, but keep in mind that the workers-sdk-test job depends on test-linux and runs after it, so test-linux may be in the critical path for CI duration already.

Using https://github.com/cloudflare/workerd/actions/runs/19862763581/job/56917088984 as a reference, the "Build and load container images step" adds 14s. "Bazel build" took 3m13s and "Bazel test" took 1m5s. Compared to https://github.com/cloudflare/workerd/actions/runs/19832826061/job/56822887495 (which is the last commit on main that this PR is based on right now), where "Bazel build" took 4m7s and "Bazel test" took 1m46s. The large difference is probably due to caching. But it doesn't seem like this PR adds any significant time.

I'll add too that I'm working on this PR at @anonrig's request, who asked that this be done before #5491 is merged. I'll leave it up to you all whether or not you want to run these tests in CI, as long as we can unblock #5491.

@danlapid
Copy link
Collaborator

@gpanders This looks like it should be several PRs – one making test changes, one adding container tests to CI. Easier to review that way.

This PR only does the latter. The only changes to the tests are those that were required to get them to work when run by Bazel.

The changes look good for the most part (only took a brief look so far). Do you have numbers for how much overhead this adds? As I understand you already only run this in the test-linux job, but keep in mind that the workers-sdk-test job depends on test-linux and runs after it, so test-linux may be in the critical path for CI duration already.

Using cloudflare/workerd/actions/runs/19862763581/job/56917088984 as a reference, the "Build and load container images step" adds 14s. "Bazel build" took 3m13s and "Bazel test" took 1m5s. Compared to cloudflare/workerd/actions/runs/19832826061/job/56822887495 (which is the last commit on main that this PR is based on right now), where "Bazel build" took 4m7s and "Bazel test" took 1m46s. The large difference is probably due to caching. But it doesn't seem like this PR adds any significant time.

I'll add too that I'm working on this PR at @anonrig's request, who asked that this be done before #5491 is merged. I'll leave it up to you all whether or not you want to run these tests in CI, as long as we can unblock #5491.

We definitely want these tests in CI.
This PR does not need to be split, it is perfectly reasonable as it is.
We can accept the additional test time required to run these tests.

gpanders and others added 6 commits December 11, 2025 11:34
We use the rules_oci module to build an OCI image along with the very
convenient js_image_layer rule provided by Aspect's rules_js.
This will prevent these targets from building in configurations that
can't (or don't) run container tests.
@gpanders gpanders force-pushed the yagiz/run-container-tests-on-ci branch from 47370ef to bd8efb4 Compare December 11, 2025 17:34
Copy link
Contributor

@fhanau fhanau left a comment

Choose a reason for hiding this comment

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

LGTM otherwise

@fhanau fhanau merged commit a17426d into main Dec 15, 2025
30 of 33 checks passed
@fhanau fhanau deleted the yagiz/run-container-tests-on-ci branch December 15, 2025 19:57
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.

5 participants