IGNITE-28532 Introduce JUnit Rolling Upgrade Testing Framework#13108
IGNITE-28532 Introduce JUnit Rolling Upgrade Testing Framework#13108maksaska wants to merge 5 commits into
Conversation
| import org.apache.ignite.SystemProperty; | ||
| import org.apache.ignite.internal.util.typedef.X; | ||
|
|
||
| /** */ |
There was a problem hiding this comment.
Let's describe what it does.
|
|
||
| /** */ | ||
| public class DistributionProvider { | ||
| /** Base Ignite distribution location */ |
| private static final String DEFAULT_TARGET_REL_PATH = "target/release-package-apache-ignite"; | ||
|
|
||
| /** */ | ||
| private static final String LATEST_VERSION = "2.18.0"; |
There was a problem hiding this comment.
Is there any automation? Do we need to fix this version at each release?
There was a problem hiding this comment.
I don't think there is. We will have to track the latest RU compatible release like we do for the rest compatibility tests.
| public static File resolveTargetDist() { | ||
| String explicit = IgniteSystemProperties.getString(TARGET_DIST); | ||
|
|
||
| if (explicit != null && !explicit.isEmpty()) |
| } | ||
|
|
||
| throw new IllegalStateException( | ||
| "Target distribution not found. " + |
There was a problem hiding this comment.
No chance for single line?
| /** {@inheritDoc} */ | ||
| @Override protected void afterTest() throws Exception { | ||
| for (int i : gridProxies.keySet()) | ||
| stopNode(i); |
There was a problem hiding this comment.
Will it coninue if curent node failed for some reason?
| } | ||
|
|
||
| /** | ||
| * Centralized logic for node lifecycle. |
There was a problem hiding this comment.
Looks like it doesn't stop a node. So, it is not a lifecycle. Let's simplify, smth. like 'starts or restarts node with required version'
| /** | ||
| * Resolves a specific directory for a node index and ensures it exists. | ||
| */ | ||
| private String resolveDir(String root, int idx) { |
| /** | ||
| * Deletes the entire root directory and all subdirectories/files. | ||
| */ | ||
| private void deleteRootDir(String root) throws IOException { |
There was a problem hiding this comment.
Static? Can we use U#delete()?
| /** | ||
| * Builds a classpath string based on the provided Ignite home directory. | ||
| * | ||
| * @param igniteHome The root directory of the Ignite distribution. |
| /** | ||
| * Task to update the cluster state. | ||
| */ | ||
| private static class StateTask extends ClusterTaskAdapter<Void> { |
There was a problem hiding this comment.
Do we need a task for typical API feature? We can change the state with thin client as instance.
Thank you for submitting the pull request to the Apache Ignite.
In order to streamline the review of the contribution
we ask you to ensure the following steps have been taken:
The Contribution Checklist
The description explains WHAT and WHY was made instead of HOW.
The following pattern must be used:
IGNITE-XXXX Change summarywhereXXXX- number of JIRA issue.(see the Maintainers list)
the
green visaattached to the JIRA ticket (see tabPR Checkat TC.Bot - Instance 1 or TC.Bot - Instance 2)Notes
If you need any help, please email dev@ignite.apache.org or ask anу advice on http://asf.slack.com #ignite channel.