Netflix / mantis

A platform that makes it easy for developers to build realtime, cost-effective, operations-focused applications
Apache License 2.0
1.42k stars 202 forks source link

enable consumers to implement MasterMain and rename LeadershipManager to remove ZK #672

Closed mcowgill-stripe closed 2 months ago

mcowgill-stripe commented 6 months ago

Context

In order for teams to re-implement the MasterMain functionality of the Mantis Server the ServiceLifecycle functions need to be available to teams. I've changed those to be public, but I'm happy to find another solution or extract an interface here.

UPDATE: I am reverting this part of the change.

Second the LeadershipManagerZKImpl to the best of my knowledge is a ZK independent leadership manager. We are implementing a leader elector based on DynamoDB and are able to use this LeadershipManager without modifying it. This name change is proposing to reflect the fact other teams can reuse the Leadership Manager when implementing their own leader election.

In order to change this name it appears I'll need to deprecate as some tests are failing. I'll consider this in a future PR to expand leader election options in Mantis.

Checklist

github-actions[bot] commented 6 months ago

Test Results

134 files  ±0  134 suites  ±0   7m 46s :stopwatch: +18s 517 tests ±0  510 :white_check_mark:  - 1  6 :zzz: ±0  1 :x: +1  518 runs  +1  511 :white_check_mark: ±0  6 :zzz: ±0  1 :x: +1 

For more details on these failures, see this check.

Results for commit dbd6e88a. ± Comparison against base commit 56e0a1c7.

:recycle: This comment has been updated with latest results.

crioux-stripe commented 2 months ago

Closing as this has been addressed in https://github.com/Netflix/mantis/pull/682 which was an extension of @mcowgill-stripe 's work.