diff options
author | gjoranv <gv@verizonmedia.com> | 2023-02-17 13:41:16 +0100 |
---|---|---|
committer | gjoranv <gv@verizonmedia.com> | 2023-02-17 14:26:31 +0100 |
commit | 83b51daa3b9a979d202ebea537f29132783ea476 (patch) | |
tree | 3d522ff98239ad05927b68184b86d19cc26d7c17 /node-admin/src/test | |
parent | d0a29336502507e506c0846dc9ad79807d2200cf (diff) |
Implement getting exclave nodes in node repo client.
Diffstat (limited to 'node-admin/src/test')
2 files changed, 36 insertions, 13 deletions
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepositoryTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepositoryTest.java index 9c33db0355f..8ed7eac6a41 100644 --- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepositoryTest.java +++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepositoryTest.java @@ -199,24 +199,42 @@ public class RealNodeRepositoryTest { } @Test - void wireguard_peer_config_for_configservers_can_be_retrieved() { + void wireguard_peer_config_can_be_retrieved_for_configservers_and_exclave_nodes() { + + //// Configservers //// + List<ConfigserverPeer> cfgPeers = nodeRepositoryApi.getConfigserverPeers(); assertEquals(2, cfgPeers.size()); - var cfg1 = cfgPeers.get(0); - assertEquals("cfg1.yahoo.com", cfg1.hostname().value()); - assertEquals(2, cfg1.ipAddresses().size()); - assertIp(cfg1.ipAddresses().get(0), "127.0.201.1", 4); - assertIp(cfg1.ipAddresses().get(1), "::201:1", 6); - assertEquals("lololololololololololololololololololololoo=", cfg1.publicKey().get().value()); + assertWireguardPeer(cfgPeers.get(0), "cfg1.yahoo.com", + "::201:1", "127.0.201.1", + "lololololololololololololololololololololoo="); + + assertWireguardPeer(cfgPeers.get(1), "cfg2.yahoo.com", + "::202:1", "127.0.202.1", + "olololololololololololololololololololololo="); + + //// Exclave nodes //// - var cfg2 = cfgPeers.get(1); - assertEquals("cfg2.yahoo.com", cfg2.hostname().value()); - assertEquals(2, cfg1.ipAddresses().size()); - assertIp(cfg2.ipAddresses().get(0), "127.0.202.1", 4); - assertIp(cfg2.ipAddresses().get(1), "::202:1", 6); - assertEquals("olololololololololololololololololololololo=", cfg2.publicKey().get().value()); + List<ConfigserverPeer> exclavePeers = nodeRepositoryApi.getExclavePeers(); + System.out.println(exclavePeers); + assertEquals(2, exclavePeers.size()); + + assertWireguardPeer(exclavePeers.get(0), "dockerhost2.yahoo.com", + "::101:1", "127.0.101.1", + "000011112222333344445555666677778888999900c="); + + assertWireguardPeer(exclavePeers.get(0), "host3.yahoo.com", + "::3:1", "127.0.3.1", + "333344445555666677778888999900001111222211c="); + } + private void assertWireguardPeer(ConfigserverPeer peer, String hostname, String ipv6, String ipv4, String publicKey) { + assertEquals(hostname, peer.hostname().value()); + assertEquals(2, peer.ipAddresses().size()); + assertIp(peer.ipAddresses().get(0), ipv6, 6); + assertIp(peer.ipAddresses().get(1), ipv4, 4); + assertEquals(publicKey, peer.publicKey().get().value()); } private void assertIp(VersionedIpAddress ip, String expectedIp, int expectedVersion) { diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integration/NodeRepoMock.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integration/NodeRepoMock.java index 06729083494..11033681177 100644 --- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integration/NodeRepoMock.java +++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integration/NodeRepoMock.java @@ -48,6 +48,11 @@ public class NodeRepoMock implements NodeRepository { } @Override + public List<ConfigserverPeer> getExclavePeers() { + throw new UnsupportedOperationException(); + } + + @Override public List<ConfigserverPeer> getConfigserverPeers() { throw new UnsupportedOperationException(); } |