Search in sources :

Example 6 with GrpcConfiguration

use of com.netflix.titus.federation.startup.GrpcConfiguration in project titus-control-plane by Netflix.

the class AggregatingJobServiceGatewayWithSingleCellTest method setUp.

@Before
public void setUp() {
    stackName = UUID.randomUUID().toString();
    GrpcConfiguration grpcClientConfiguration = mock(GrpcConfiguration.class);
    when(grpcClientConfiguration.getRequestTimeoutMs()).thenReturn(1000L);
    TitusFederationConfiguration titusFederationConfiguration = mock(TitusFederationConfiguration.class);
    when(titusFederationConfiguration.getStack()).thenReturn(stackName);
    when(titusFederationConfiguration.getCells()).thenReturn("one=1");
    when(titusFederationConfiguration.getRoutingRules()).thenReturn("one=(app1.*|app2.*);two=(app3.*)");
    CellInfoResolver cellInfoResolver = new DefaultCellInfoResolver(titusFederationConfiguration);
    ApplicationCellRouter cellRouter = new ApplicationCellRouter(cellInfoResolver, titusFederationConfiguration);
    List<Cell> cells = cellInfoResolver.resolve();
    cellToServiceMap = ImmutableMap.of(cells.get(0), cell);
    RemoteFederationConnector fedConnector = mock(RemoteFederationConnector.class);
    when(fedConnector.getChannel()).thenReturn(remoteFederationRule.getChannel());
    CellConnector cellConnector = mock(CellConnector.class);
    when(cellConnector.getChannels()).thenReturn(cellToServiceMap.entrySet().stream().collect(Collectors.toMap(Map.Entry::getKey, cellPairEntry -> cellPairEntry.getValue().getChannel())));
    when(cellConnector.getChannelForCell(any(Cell.class))).thenAnswer(invocation -> Optional.ofNullable(cellToServiceMap.get(invocation.<Cell>getArgument(0))).map(GrpcServerRule::getChannel));
    final AggregatingCellClient aggregatingCellClient = new AggregatingCellClient(cellConnector);
    final AnonymousCallMetadataResolver anonymousCallMetadataResolver = new AnonymousCallMetadataResolver();
    service = new AggregatingJobServiceGateway(grpcClientConfiguration, titusFederationConfiguration, cellConnector, cellRouter, aggregatingCellClient, new AggregatingJobManagementServiceHelper(aggregatingCellClient, grpcClientConfiguration), titusRuntime);
    clock = Clocks.test();
    dataGenerator = new ServiceDataGenerator(clock, TASKS_IN_GENERATED_JOBS);
}
Also used : TitusFederationConfiguration(com.netflix.titus.federation.startup.TitusFederationConfiguration) ApplicationCellRouter(com.netflix.titus.federation.service.router.ApplicationCellRouter) AnonymousCallMetadataResolver(com.netflix.titus.runtime.endpoint.metadata.AnonymousCallMetadataResolver) Cell(com.netflix.titus.api.federation.model.Cell) GrpcConfiguration(com.netflix.titus.federation.startup.GrpcConfiguration) Before(org.junit.Before)

Aggregations

Cell (com.netflix.titus.api.federation.model.Cell)6 GrpcConfiguration (com.netflix.titus.federation.startup.GrpcConfiguration)6 Before (org.junit.Before)6 ApplicationCellRouter (com.netflix.titus.federation.service.router.ApplicationCellRouter)3 AnonymousCallMetadataResolver (com.netflix.titus.runtime.endpoint.metadata.AnonymousCallMetadataResolver)3 ManagedChannel (io.grpc.ManagedChannel)3 HashMap (java.util.HashMap)3 TitusFederationConfiguration (com.netflix.titus.federation.startup.TitusFederationConfiguration)1