in src/index.ts [160:194]
createHubResources(options: IResourceDefinitionProps) {
var service = this.createService({
resource: options,
env: {
GRID_BROWSER_TIMEOUT: '200000',
GRID_TIMEOUT: '180',
SE_OPTS: '-debug',
},
image: 'selenium/hub:'+this.seleniumVersion,
});
// Create autoscaling policy
this.createScalingPolicy({
clusterName: options.cluster.clusterName,
serviceName: service.serviceName,
identifier: options.identifier,
stack: options.stack,
minInstances: options.minInstances,
maxInstances: options.maxInstances
});
// Default target routing for 4444 so webdriver client can connect to
const listener = options.loadBalancer.addListener('Listener', { port: 4444, protocol: elbv2.ApplicationProtocol.HTTP });
service.registerLoadBalancerTargets({
containerName: 'selenium-hub-container',
containerPort: 4444,
newTargetGroupId: 'ECS',
protocol: ecs.Protocol.TCP,
listener: ecs.ListenerConfig.applicationListener(listener, {
protocol: elbv2.ApplicationProtocol.HTTP,
port: 4444,
targets: [service],
}),
});
}