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

feature(packaging): debian and rpm packaging #37

Open
wants to merge 11 commits into
base: master
Choose a base branch
from

Conversation

CodeLieutenant
Copy link
Collaborator

@CodeLieutenant CodeLieutenant commented Dec 23, 2024

Adding Debian and RPM Packaging

Tasks

Preview Give feedback

@CodeLieutenant CodeLieutenant added the enhancement New feature or request label Dec 23, 2024
@CodeLieutenant CodeLieutenant self-assigned this Dec 23, 2024
@mykaul
Copy link

mykaul commented Dec 23, 2024

What's the value of packaging it, if a container works great?

@CodeLieutenant
Copy link
Collaborator Author

CodeLieutenant commented Dec 23, 2024

What's the value of packaging it, if a container works great?

@mykaul We need it without a container, container works great, but we want to test it on bare metal.
It's bad for performance testing, just to avoid the overhead that we have with containers,
and also customers want to run it without docker. Cassandra stress was supplied with .deb and .rpm before, in scylla-tools-java so we are bringing the support back

@CodeLieutenant CodeLieutenant requested a review from fruch December 23, 2024 14:29
@mykaul
Copy link

mykaul commented Dec 23, 2024

What's the value of packaging it, if a container works great?

@mykaul We need it without a container, container works great, but we want to test it on bare metal. It's bad for performance testing, just to avoid the overhead that we have with containers, and also customers want to run it without docker. Cassandra stress was supplied with .deb and .rpm before, in scylla-tools-java so we are bringing the support back

This isn't true. Containers work at 99-99.9% of the performance of bare metal.

I haven't heard of a customer asking to run non-containerized cassandra-stress. They may want to, they can use older versions that are still available. We have more important tasks (IMHO) to focus on that we can bring value to customers with.
(Random examples - move to newer Java - which will be faster most likely; move away from cassandra-stress to newer tools, using more modern drivers and architecture; extend c-s with more feature to provide more realistic workload simulations).

@fruch
Copy link

fruch commented Dec 23, 2024

What's the value of packaging it, if a container works great?

@mykaul We need it without a container, container works great, but we want to test it on bare metal. It's bad for performance testing, just to avoid the overhead that we have with containers, and also customers want to run it without docker. Cassandra stress was supplied with .deb and .rpm before, in scylla-tools-java so we are bringing the support back

This isn't true. Containers work at 99-99.9% of the performance of bare metal.

It's close, if you use the correct options
Our throughput test so show a difference, and we still keeps the option of running without docker cause of it.

I haven't heard of a customer asking to run non-containerized cassandra-stress. They may want to, they can use older versions that are still available. We have more important tasks (IMHO) to focus on that we can bring value to customers with.

You didn't heard, cause there isn't any release without it yet.

(Random examples - move to newer Java - which will be faster most likely; move away from cassandra-stress to newer tools, using more modern drivers and architecture; extend c-s with more feature to provide more realistic workload simulations).

Not sure how those examples are counter to have other delivery option but docker ?

I can give one actual example, I know of a user (inside Scylla) that was given the docker image, he extracted the jar files from it, and replace them with installed c-s version he had.

I think it's a bit too soon to assume what users need in that regards.

We as users in SCT of c-s stress, need a debian package as well.

…stress, simplify classpath and jar building

Signed-off-by: Dusan Malusev <[email protected]>
@mykaul
Copy link

mykaul commented Dec 24, 2024

Not sure how those examples are counter to have other delivery option but docker ?

Matter of priorities. If we do this, we don't do them.

@fruch
Copy link

fruch commented Dec 24, 2024

Not sure how those examples are counter to have other delivery option but docker ?

Matter of priorities. If we do this, we don't do them.

there is not list of those other things you mentioned, hence they are not taken into any priority making

@fruch
Copy link

fruch commented Jan 2, 2025

@CodeLieutenant

I've tried this branch, and I couldn't build a debian package out of it.

meanwhile we lower the priority of this one, since we don't need it as urgently in SCT as before.

@CodeLieutenant CodeLieutenant marked this pull request as ready for review January 9, 2025 18:40
@CodeLieutenant
Copy link
Collaborator Author

@CodeLieutenant

I've tried this branch, and I couldn't build a debian package out of it.

meanwhile we lower the priority of this one, since we don't need it as urgently in SCT as before.

I just didn't push the latest changes from my machine to the GH, sorry about that, it's working well.

I dont think there is need to pause this, cause it's finished, we can pause the other stuff, testing in SCT etc, but the core building is working

Makefile Outdated Show resolved Hide resolved
URL: http://www.scylladb.com/
Source0: cassandra-stress.tar.gz
BuildArch: noarch
Requires: (jre-11-headless or temurin-11-jre) snappy
Copy link

Choose a reason for hiding this comment

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

that's a bit limiting, i.e. if one choose different distro of java, it won't be able to install ?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Yes it is, but this is what I consider the official supported version of JRE, with which I'm testing locally, there are 3 more which are good candidates: Azul, AWS Correto and Oracle distribution, we can add them if there is a need for it

dist/debian/control Outdated Show resolved Hide resolved
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants