Skip to content

Commit

Permalink
Fix seed-nodes endpoint used by ClusterBootstrap (#2636)
Browse files Browse the repository at this point in the history
* Fix seed-nodes endpoint used by ClusterBootstrap

* Fix return value

---------

Co-authored-by: Aaron Stannard <aaron@petabridge.com>
  • Loading branch information
Arkatufus and Aaronontheweb committed Jul 12, 2024
1 parent 73b2684 commit 339a0d8
Showing 1 changed file with 15 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,18 @@ public override async Task<bool> HandleAsync(IAkkaHttpContext context)

var cluster = Akka.Cluster.Cluster.Get(context.ActorSystem);

ClusterMember MemberToClusterMember(Member m) =>
new (m.UniqueAddress.Address, m.UniqueAddress.Uid, m.Status, m.Roles);

if (cluster.SelfMember.Status
is MemberStatus.Down
or MemberStatus.Exiting
or MemberStatus.Leaving
or MemberStatus.Removed)
{
var body = JsonConvert.SerializeObject(
new SeedNodes(cluster.SelfMember.UniqueAddress.Address, ImmutableList<ClusterMember>.Empty));
await context.HttpContext.Response.WriteAllJsonAsync(body);
return true;
}

var state = cluster.State;

var members = state.Members
Expand All @@ -74,6 +83,9 @@ ClusterMember MemberToClusterMember(Member m) =>
await context.HttpContext.Response.WriteAllJsonAsync(json);

return true;

ClusterMember MemberToClusterMember(Member m) =>
new (m.UniqueAddress.Address, m.UniqueAddress.Uid, m.Status, m.Roles);
}
}

Expand Down

0 comments on commit 339a0d8

Please sign in to comment.