Community
Participate
Working Groups
Nearly every project needs some kind of initialization and configuration. E.g. the Database has to be initialized or zookeeper configurations have to be written. Furthermore are migration scripts required. To address this a simple solution will be achieved, that is oriented on the concept of the database migration tool liquibase. An abstract class with the following methods to implement will be provided: IStatus doRun(); IStatus doRollback(); String getId(); String getScope() MaintenanceStep shouldRunAfter(); The concept will be the following: A Step will be registered as a service and executed automatically if necessary. A step can have a scope, that determines if the step should only run once for the whole cloud or on every node. A step can depend on a previous step. The order of the steps will be esteblished via the shouldRunAfter method. A step with a given ID will run only once in its scope and the result will be noted in the zookeeper. In the case that the doRun throws an Exception or returns a status that is not okay doRollback will be executed, to make cleanup of half finished jobs possible.
Assigning to you Jürgen!
New Gerrit change created: https://git.eclipse.org/r/46252 WARNING: this patchset contains 2680 new lines of code and may require a Contribution Questionnaire (CQ) if the author is not a committer on the project. Please see:https://wiki.eclipse.org/Project_Management_Infrastructure/Creating_A_Contribution_Questionnaire