Search in sources :

Example 1 with RegisterFreeIpaDnsRequest

use of com.sequenceiq.cloudbreak.reactor.api.event.stack.loadbalancer.RegisterFreeIpaDnsRequest in project cloudbreak by hortonworks.

the class StackLoadBalancerUpdateActions method registerFreeIpaDnsAction.

@Bean(name = "REGISTERING_FREEIPA_DNS_STATE")
public Action<?, ?> registerFreeIpaDnsAction() {
    return new AbstractStackLoadBalancerUpdateAction<>(RegisterPublicDnsSuccess.class) {

        @Override
        protected void doExecute(StackContext context, RegisterPublicDnsSuccess payload, Map<Object, Object> variables) {
            stackLoadBalancerUpdateService.registeringFreeIpaDns(context.getStack());
            StackContext newContext = new StackContext(context.getFlowParameters(), payload.getStack(), context.getCloudContext(), context.getCloudCredential(), context.getCloudStack());
            sendEvent(newContext);
        }

        @Override
        protected Selectable createRequest(StackContext context) {
            return new RegisterFreeIpaDnsRequest(context.getStack());
        }
    };
}
Also used : StackContext(com.sequenceiq.cloudbreak.core.flow2.stack.StackContext) RegisterPublicDnsSuccess(com.sequenceiq.cloudbreak.reactor.api.event.stack.loadbalancer.RegisterPublicDnsSuccess) RegisterFreeIpaDnsRequest(com.sequenceiq.cloudbreak.reactor.api.event.stack.loadbalancer.RegisterFreeIpaDnsRequest) Map(java.util.Map) Bean(org.springframework.context.annotation.Bean)

Example 2 with RegisterFreeIpaDnsRequest

use of com.sequenceiq.cloudbreak.reactor.api.event.stack.loadbalancer.RegisterFreeIpaDnsRequest in project cloudbreak by hortonworks.

the class RegisterFreeIpaDnsHandler method doAccept.

@Override
protected Selectable doAccept(HandlerEvent<RegisterFreeIpaDnsRequest> event) {
    RegisterFreeIpaDnsRequest request = event.getData();
    Stack stack = request.getStack();
    try {
        LOGGER.info("Registering load balancer DNS entry with FreeIPA");
        clusterPublicEndpointManagementService.registerLoadBalancerWithFreeIPA(stack);
        LOGGER.info("Load balancer FreeIPA DNS registration was successful");
        return new RegisterFreeIpaDnsSuccess(stack);
    } catch (Exception e) {
        LOGGER.warn("Failed to register load balancers with FreeIPA.", e);
        return new RegisterFreeIpaDnsFailure(request.getResourceId(), e);
    }
}
Also used : RegisterFreeIpaDnsSuccess(com.sequenceiq.cloudbreak.reactor.api.event.stack.loadbalancer.RegisterFreeIpaDnsSuccess) RegisterFreeIpaDnsFailure(com.sequenceiq.cloudbreak.reactor.api.event.stack.loadbalancer.RegisterFreeIpaDnsFailure) RegisterFreeIpaDnsRequest(com.sequenceiq.cloudbreak.reactor.api.event.stack.loadbalancer.RegisterFreeIpaDnsRequest) Stack(com.sequenceiq.cloudbreak.domain.stack.Stack)

Aggregations

RegisterFreeIpaDnsRequest (com.sequenceiq.cloudbreak.reactor.api.event.stack.loadbalancer.RegisterFreeIpaDnsRequest)2 StackContext (com.sequenceiq.cloudbreak.core.flow2.stack.StackContext)1 Stack (com.sequenceiq.cloudbreak.domain.stack.Stack)1 RegisterFreeIpaDnsFailure (com.sequenceiq.cloudbreak.reactor.api.event.stack.loadbalancer.RegisterFreeIpaDnsFailure)1 RegisterFreeIpaDnsSuccess (com.sequenceiq.cloudbreak.reactor.api.event.stack.loadbalancer.RegisterFreeIpaDnsSuccess)1 RegisterPublicDnsSuccess (com.sequenceiq.cloudbreak.reactor.api.event.stack.loadbalancer.RegisterPublicDnsSuccess)1 Map (java.util.Map)1 Bean (org.springframework.context.annotation.Bean)1