[Draft]: CSPL-2758: Optional level 2 validation in SOK #1371
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Summary:
Introduce support for an optional Splunk Level 2 upgrade path in Splunk Operator 2.5.0, allowing customers to bypass the upgrade flow validation.
Description:
Splunk Operator 2.5.0 introduces support for Splunk Level 2 Upgrade Path validation, which enforces a specific flow for upgrading Splunk instances. However, some customers have reported issues with this process as they prefer to use newer images stored in their own repositories, which are not currently supported by the upgrade path validation.
Resolution:
To accommodate this request, we plan to introduce a change in the Splunk Operator's ConfigMap by adding a new key-value pair: SPLUNK_LEVEL_2. The default value will be set to true, ensuring that the upgrade path validation is enforced. However, if customers set this value to false, the Splunk upgrade process will bypass the validation and will not follow any specific flow.
Action Items:
Introduce the SPLUNK_LEVEL_2 key-value pair in the Splunk Operator ConfigMap.
Ensure the default value is set to true.
Modify the upgrade logic to bypass the validation if SPLUNK_LEVEL_2 is set to false.
Testing:
Verify that both scenarios (validation enabled and disabled) function correctly across all upgrade paths.
Ensure that all related pipelines function properly.
Implement and validate unit test cases to cover all possible scenarios.