private void recreateSystemContainer(ContainerState containerState, String containerHostLink) { logFine("recreate system container %s", containerState.documentSelfLink); deleteSystemContainer(containerState, (o, error) -> { if (error) { logSevere("Failure deleting system container."); } else { if (o.customProperties != null) { String systemContainerName = o.customProperties.get(SYSTEM_CONTAINER_NAME); installSystemContainerToHost(containerHostLink, systemContainerName, null); } } }, null); }
.query(containerServicesQuery, (r) -> { if (r.hasException()) { logSevere("Failed to get container %s : %s", containerState.names.get(0), r.getException().getMessage()); callback.accept(r.getException());
private void createDiscoveredContainerDescription(ContainerState containerState) { logFine("Creating ContainerDescription for discovered container: %s", containerState.id); ContainerDescription containerDesc = ContainerUtil .createContainerDescription(containerState); sendRequest(OperationUtil .createForcedPost(this, ContainerDescriptionService.FACTORY_LINK) .setBodyNoCloning(containerDesc) .setCompletion((o, ex) -> { if (ex != null) { logSevere("Failed to create ContainerDescription for discovered container" + " (id=%s): %s", containerState.id, ex.getMessage()); } else { logInfo("Created ContainerDescription for discovered container: %s", containerState.id); } })); }
.setCompletion((o, ex) -> { if (ex != null) { logSevere("Failure to retrieve host [%s]. Error: %s", callback.containerHostLink, Utils.toString(ex)); unlockCurrentDataCollectionForHost(callback.containerHostLink);
private void patchHostState(String containerHostLink, ComputeState state) { sendRequest(Operation .createPatch(this, containerHostLink) .setBody(state) .setCompletion((operation, e) -> { if (e != null) { logSevere("Failure updating host [%s] with container count. Error: %s", containerHostLink, Utils.toString(e)); return; } logInfo("Host [%s] updated with container count.", containerHostLink); })); }
.setCompletion((o, e) -> { if (e != null) { logSevere("Failure creating callback handler. Error %s", Utils.toString(e)); return;
private BiConsumer<CallbackServiceHandlerState, Boolean> createSystemContainerReadyHandler( ContainerState container) { return (o, error) -> { if (error) { logSevere("Failure creating system container."); } else { // Upload trusted self-signed registry certificates to host logFine("Distribute certificates for host %s", container.parentLink); HostConfigCertificateDistributionState distState = new HostConfigCertificateDistributionState(); distState.hostLink = container.parentLink; distState.tenantLinks = container.tenantLinks; sendRequest(Operation .createPost(this, HostConfigCertificateDistributionService.SELF_LINK) .setBodyNoCloning(distState)); // Import agent SSL certificate importAgentSslCertificate(container, null, SYSTEM_CONTAINER_SSL_RETRIES_COUNT); } }; }
private Consumer<ServiceDocumentQuery.ServiceDocumentQueryElementResult<ContainerState>> processContainerStatesQueryResults( ContainerListCallback body) { String containerHostLink = body.containerHostLink; List<ContainerState> existingContainerStates = new ArrayList<>(); return (r) -> { if (r.hasException()) { logSevere("Failed to query for existing ContainerState instances: %s", r.getException() instanceof CancellationException ? r.getException().getMessage() : Utils.toString(r.getException())); unlockCurrentDataCollectionForHost(containerHostLink); } else if (r.hasResult()) { existingContainerStates.add(r.getResult()); } else { listHostContainers(body, (o, ex) -> { if (ex == null) { ContainerListCallback callback = o.getBody(ContainerListCallback.class); if (callback.hostAdapterReference == null) { callback.hostAdapterReference = ContainerHostDataCollectionService .getDefaultHostAdapter(getHost()); } updateContainerStates(callback, existingContainerStates, containerHostLink); } else { unlockCurrentDataCollectionForHost(containerHostLink); } }); } }; }
containerState.id); } else { logSevere("Failed to create ContainerState for discovered container" + " (id=%s): %s", containerState.id, ex.getMessage()); callback.accept(ex);
(ContainerState c) -> { if (c.ports == null) { logSevere("Couldn't get valid ports for system container %s", container.documentSelfLink); } else { request.hostUri = ContainerUtil.getShellUri(host, container); } catch (Exception e) { logSevere("Exception getting shell URI for system container %s:\n%s", container.documentSelfLink, Utils.toString(e)); return; }, SYSTEM_CONTAINER_SSL_RETRIES_WAIT, TimeUnit.MILLISECONDS); } else { logSevere("Exception importing system container SSL certificate from" + " '%s':\n%s", request.hostUri, Utils.toString(e));