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 API for CCM to be used to provision and manipulate clusters in integration tests #336

Open
dkropachev opened this issue Nov 15, 2024 · 0 comments

Comments

@dkropachev
Copy link
Collaborator

dkropachev commented Nov 15, 2024

Basic functional requirements

  1. It is possible to have couple of clusters alive at the same time
  2. Logs should be accessible at the end, user should be able to track them down to the test
  3. It should be possible to use one cluster for multiple tests
  4. Actual scylla version is read from the cluster
  5. Input scylla version should support CCM format: release:6.1, unstable:master/latest, unstable/master:2020-02-15T03:02:19Z, etc
  6. Input scylla version should support regular format: 6.2.0, 2024.1
  7. It assumes that CCM is already present in the system

Additional functional requirements

  1. Have a cluster pool with resource limitations: memory, CPU. Say you want to make it possible tests to run in parallel on different clusters, but you can't spawn all the clusters at the same time, so you need to have a pool and a queue, tests submitting requests to provision a cluster to the queue, pool eventually fulfills the requests when resources test wants are available, when test is done, cluster is stopped, resources are returned back to a pool and it can provision another cluster.
  2. Make it possible for a pool to reuse cluster. Need to test if it makes sense, just to check if it is easier to clean cluster up or spawn new one, after 6.2.0 cluster provisioning very quick.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants