Skip to content
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

Build Linux packages via CPack #5239

Draft
wants to merge 1 commit into
base: develop
Choose a base branch
from
Draft

Conversation

legleux
Copy link
Collaborator

@legleux legleux commented Jan 9, 2025

High Level Overview of Change

Use native CMake functionality to produce Linux binary packages during CI runs. Developers will know more quickly if changes broke binary package functionality and have better insight into why and how to resolve them.

Context of Change

The current packages are being produced in Ripple's corp network with legacy code and with significant delay and opacity to development on GitHub.
The current packaging pipeline uses native functionality of Debian and Red Hat systems and as such requires more specialized knowledge than just defining the package contents with CMake.

Using CPack/CMake certainly doesn't remove esoteric knowledge but it at least leverages the same tool already used to build rippled.

Type of Change

  • New feature (non-breaking change which adds functionality)
  • Refactor (non-breaking change that only restructures code)

Before / After

In this PR, the overhead for having Linux packages is about 3 minutes which is at least 90% faster than the current system which most people can't even see.

There will be additional GitHub actions jobs to install and test the packages before being published for public consumption.

  1. CMake targets to produce the packages directly.
  2. Testing of packages from installation to clean systems and upgrades/rollbacks.
  3. Deployment to the Releases page via automated workflows.
  4. Additional architectures and OS packages.

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.

1 participant