public void trigger(Long accountId) { ConfigUpdateRequest request = ConfigUpdateRequest.forResource(Account.class, accountId); request.addItem(STACKS); request.withDeferredTrigger(true); itemManager.updateConfig(request); }
public void updateMetadata(Long accountId) { long revision = accountDao.incrementRevision(accountId); List<Long> internalAgents = agentInstanceDao.getAgentProviderIgnoreHealth(SystemLabels.LABEL_AGENT_SERVICE_METADATA, accountId); List<Long> foreignAgents = agentInstanceDao.getExternalAgentProvider(SystemLabels.LABEL_AGENT_SERVICE_METADATA, accountId); List<Long> agentIds = new ArrayList<>(); agentIds.addAll(internalAgents); agentIds.addAll(foreignAgents); for (long agentId : agentIds) { ConfigUpdateRequest request = ConfigUpdateRequest.forResource(Agent.class, agentId); request.addItem("metadata-answers").withSetVersion(revision); statusManager.updateConfig(request); } }
@Override public void reconcileServiceEndpoints(Service service) { ConfigUpdateRequest request = ConfigUpdateRequest.forResource(Service.class, service.getId()); request.addItem(SERVICE_ENDPOINTS_UPDATE); request.withDeferredTrigger(false); itemManager.updateConfig(request); }
@Override public void reconcileServices(Collection<? extends Service> services) { for (Service service: services) { ConfigUpdateRequest request = ConfigUpdateRequest.forResource(Service.class, service.getId()); request.addItem(RECONCILE); request.withDeferredTrigger(true); itemManager.updateConfig(request); } }
@Override public void reconcileHostEndpoints(Host host) { ConfigUpdateRequest request = ConfigUpdateRequest.forResource(Host.class, host.getId()); request.addItem(HOST_ENDPOINTS_UPDATE); request.withDeferredTrigger(false); itemManager.updateConfig(request); }
@Override public HandlerResult handle(ProcessState state, ProcessInstance process) { List<Service> services = new ArrayList<>(); Set<Long> stackIds = new HashSet<>(); if (state.getResource() instanceof Stack) { stackIds.add(((Stack) state.getResource()).getId()); } else if (state.getResource() instanceof Service) { services.add((Service) state.getResource()); } else if (state.getResource() instanceof Instance) { services.addAll(instanceDao.findServicesFor((Instance) state.getResource())); } for (Service service : services) { stackIds.add(service.getStackId()); } for (Long stackId : stackIds) { ConfigUpdateRequest request = ConfigUpdateRequest.forResource(Stack.class, stackId); request.addItem(STACK); request.withDeferredTrigger(true); itemManager.updateConfig(request); } return null; }
protected ConfigUpdateRequest before(ConfigUpdateRequest request, Agent agent) { if (request == null) { request = ConfigUpdateRequest.forResource(Agent.class, agent.getId()); for (String item : ITEMS.get()) { request.addItem(item).withIncrement(false).setCheckInSyncOnly(true); } } statusManager.updateConfig(request); return request; }
@Override public HandlerResult handle(ProcessState state, ProcessInstance process) { Instance instance = (Instance)state.getResource(); if (!Boolean.TRUE.equals(instance.getSystem())) { return null; } List<Long> agentIds = agentInstanceDao.getAgentProviderIgnoreHealth(SystemLabels.LABEL_AGENT_SERVICE_IPSEC, instance.getAccountId()); for (long agentId : agentIds) { ConfigUpdateRequest request = ConfigUpdateRequest.forResource(Agent.class, agentId); ConfigUpdateItem item = request.addItem("psk"); item.setApply(true); item.setIncrement(false); statusManager.updateConfig(request); } return null; }