neondatabase / autoscaling

Postgres vertical autoscaling in k8s
Apache License 2.0
157 stars 21 forks source link

Make CI faster #660

Closed shayanh closed 8 months ago

shayanh commented 10 months ago

Problem description / Motivation

As of now, the entire CI process takes about 20 minutes, which is not the worst thing in the world but still it's long and annoying.

Feature idea(s) / DoD

As a starting point, a DoD can be decreasing CI time to less than 10m.

Implementation ideas

Most expensive parts of the pipeline are make kernel and make example-vms, which I think we can use pre-built image and avoid building them every time.

sharnoff commented 10 months ago

Some history around make kernel:

Until recently, we used a pre-built kernel image, periodically updated by the vm-kernel job. We recently switched to rebuilding the kernel every time with #637, because some experimentation with kernel configuration messed up the global images used and CI started failing without a clear reason why.

See also https://neondb.slack.com/archives/C059ZC138NR/p1700487216332599?thread_ts=1700435685.425779&cid=C059ZC138NR (original reason for #637) and https://github.com/neondatabase/autoscaling/pull/651#discussion_r1412296929

bayandin commented 10 months ago

https://github.com/neondatabase/autoscaling/pull/661 brings e2e-test workflow to around 10m. https://github.com/neondatabase/autoscaling/pull/642 shaves off another 1.5m

sharnoff commented 8 months ago

Since merging #748, at first glance it appears e2e-test times are around 8-9 minutes (at least, when there's no contention for runners).

@shayanh wdyt, is this done? should we wait a little longer to validate e2e-test times are still low?

shayanh commented 8 months ago

<10 is nice. Great progress. I close the issue. We can re-open if the times go up again.