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

[EPIC] Redesign CNF installation process #2120

Open
kosstennbl opened this issue Jul 31, 2024 · 0 comments
Open

[EPIC] Redesign CNF installation process #2120

kosstennbl opened this issue Jul 31, 2024 · 0 comments
Labels
enhancement New feature or request

Comments

@kosstennbl
Copy link
Collaborator

kosstennbl commented Jul 31, 2024

[EPIC] Redesign CNF installation process

Current installation process is quite limiting and hard to maintain. Multiple issues are already created and they only build up: #2095, #2106, #2036.

The idea is to redesign CNF installation process in a way that fixes some of the current issues and makes it easier to expand installation functionality (and possibly, in the future, make addition of new installation methods much easier).

Central idea of this change is to install CNFs in different ways, but then gather all installed resources as manifest files. Then, during testing, all tests would have to work only with manifest files regardless of installation method of CNF.

This planned redesign seems to be quite complex and time-consuming, so better approach would be to split it into several different issues and PRs, the following is the plan for the change (up to discussion, can be changed):

  1. Implement new cnf-testsuite.yml config format and its parsing ([Feature] CNF installation (1), Implement new config format #2121).
  2. Implement additional functionality tied to configuration.
    1. Implement a way to transform old configs into new format.
    2. Implement generate_config for new format.
  3. Rewrite all sample/example CNF configs and change default config format to new one.
  4. Implement a way to create common manifest, use it for all tests that require manifest ([Feature] CNF installation (4), Create and use common manifest #2125).
  5. Redesign tests that are not compliant with the common manifest or require deployment type-specific functionality to function.
  6. Prepare new installation process (and multiple charts support as a part of this).
  7. Check how specs would be affected, prepare for required fixes.
  8. Switch to new installation (use all prepared code), fix tests, remove old code.

It is planned to create GitHub issues and link them there when they would be ready for start.
This issue should be resolved as soon as all connected issues and tasks are completed.

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

No branches or pull requests

1 participant