Skip to content

chore(ci): cargo timing cb job #2525

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

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

chore(ci): cargo timing cb job #2525

wants to merge 5 commits into from

Conversation

dougch
Copy link
Contributor

@dougch dougch commented Mar 11, 2025

Release Summary:

Resolved issues:

n/a

Description of changes:

Checks in a CodeBuild buildspec for a cargo build timing job. The report at the end is uploaded to s3, example: https://d2vvhsim0lzm9u.cloudfront.net/cargotiming/cargo-timing.html

Call-outs:

The job is scheduled to run once a day, and the metrics are used to track cargo build historical timing.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@camshaft
Copy link
Contributor

Are we aiming to replace the existing one?

https://github.com/aws/s2n-quic/actions/runs/13798807727/job/38596692024?pr=2525

Or I guess what's the overlap?

@dougch dougch requested a review from boquan-fang March 12, 2025 22:30
Copy link
Contributor

@boquan-fang boquan-fang left a comment

Choose a reason for hiding this comment

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

Hi @dougch, I like the idea to put this script in mainline S2N-QUIC. It gives our team more control on the metrics than using your personal branch. In addition to my comments, please also respond to @camshaft's question.

Also, is this PR ready for review? I thought it's still a draft but you did request review from me. Thanks!

- cargo build --timings
post_build:
commands:
- cargo test --exclude s2n-quic-platform --workspace
Copy link
Contributor

Choose a reason for hiding this comment

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

Is there a particular reason to exclude tests on the s2n-quic-platform crate? Are you trying to skip ipv4_test and ipv4_two_socket_test because of those two don't run on CodeBuild? If we have to skip those two tests, can we just skip those two tests without skip testing for the entire crate? What's the effect by skipping this on the metrics that this script generated?

variables:
# This assumes you have a Rust toolchain installed
CARGO: "cargo +nightly"
RUST_TOOLCHAIN: "1.74.1-x86_64-unknown-linux-gnu"
Copy link
Contributor

Choose a reason for hiding this comment

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

Is there a RUST_TOOLCHAIN that's closer to our current MSRV: 1.71.0?

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.

3 participants