readysettech / readyset

Readyset is a MySQL and Postgres wire-compatible caching layer that sits in front of existing databases to speed up queries and horizontally scale read throughput. Under the hood, ReadySet caches the results of cached select statements and incrementally updates these results over time as the underlying data changes.
https://readyset.io
Other
4.54k stars 125 forks source link

build: Add rpm builds to release pipeline #1228

Open ronh-rs opened 7 months ago

ronh-rs commented 7 months ago

While we had been supporting builds of debian packages for Ubuntu 22, this update adds support for RPM packages as well. RPM packages are built with cargo generate-rpm, and common files like the systemd service script and the default readyset.conf have been moved into a common location referenced by both package builds. The debian-specific installation scripts now live in public/readyset/pkg/debian while the RPM ones live in public/readyset/pkg/rpm.

Two RPMs are being generated with this update. The first is actually built at the same time as the debian package, and on the same Ubuntu image. This RPM has been successfully tested on Fedora 39, but may work on other distros using GLIBCXX_3.4.30 or later. It will not work on RHEL 9 or similar distros due to outdated GLIBC++. The second RPM is built for Amazon Linux 2023 along with the readyset binary we package for our own cloud deployments. This RPM should work with current Amazon Linux 2023.