default OpenShiftRuntimeId getRuntimeId() { return new OpenShiftRuntimeId(getProjectName(), getServiceName(), getApplicationName()); }
private void createFromTemplate(OpenShiftRuntimeConfig runtimeConfig) throws OpenShiftClientException { OpenShiftTemplate template = new OpenShiftTemplate(this, runtimeConfig); Map<String, String> parameters = new LinkedHashMap<String, String>(); parameters.putAll(OpenShiftParameters.fromRuntimeConfig(runtimeConfig)); String kieServerContainerDeployment = runtimeConfig.getKieServerContainerDeployment(); if (kieServerContainerDeployment != null && !kieServerContainerDeployment.trim().isEmpty()) { parameters.put(OpenShiftProperty.KIE_SERVER_CONTAINER_DEPLOYMENT.envKey(), kieServerContainerDeployment); } KubernetesList kubeList = template.process(parameters); if (kubeList != null && kubeList.getItems().size() > 0) { try { DeploymentConfig dc = getDeploymentConfig(kubeList, runtimeConfig.getServiceName()); if (dc != null) { dc.getSpec().setReplicas(0); } String prjName = runtimeConfig.getProjectName(); delegate.lists().inNamespace(prjName).create(kubeList); } catch (Throwable t) { throw new OpenShiftClientException(t.getMessage(), t); } } }
@Override public void trigger(OpenShiftClient client, OpenShiftRuntimeConfig runtimeConfig) { String prjName = runtimeConfig.getProjectName(); RouteList routeList = client.getDelegate().routes().inNamespace(prjName).list(); String routerHost = System.getProperty(OpenShiftNameServiceClientListener.class.getName() + ".routerHost", "10.34.75.115"); OpenShiftNameService.setRoutes(routeList, routerHost); }
@Override public void trigger(OpenShiftClient client, OpenShiftRuntimeConfig runtimeConfig) { String prjName = runtimeConfig.getProjectName(); RouteList routeList = client.getDelegate().routes().inNamespace(prjName).list(); String routerHost = System.getProperty(OpenShiftNameServiceClientListener.class.getName() + ".routerHost", "10.34.75.115"); OpenShiftNameService.setRoutes(routeList, routerHost); }
public OpenShiftTemplate(OpenShiftClient client, OpenShiftRuntimeConfig runtimeConfig) { Loadable<TemplateResource<Template, KubernetesList, DoneableTemplate>> loadable = null; String prjName = runtimeConfig.getProjectName(); String templateUri = runtimeConfig.getResourceTemplateUri(); String templateName = runtimeConfig.getResourceTemplateName(); if (prjName != null) { loadable = client.getDelegate().templates().inNamespace(prjName); } else { loadable = client.getDelegate().templates(); } TemplateResource<Template, KubernetesList, DoneableTemplate> res = null; if (templateUri != null) { URL templateUrl = client.toUrl(templateUri); if (templateUrl != null) { res = loadable.load(templateUrl); } } else if (templateName != null && !templateName.isEmpty()) { res = loadable.load(templateName); } resource = res; template = res != null ? res.get() : null; if (template == null) { throw new OpenShiftClientException(String.format("could not load template with project [%s] and uri [%s] or name [%s]", prjName, templateUri, templateName)); } }
public OpenShiftRuntimeState create(OpenShiftRuntimeConfig runtimeConfig) throws OpenShiftClientException { try { String prjName = runtimeConfig.getProjectName(); String svcName = runtimeConfig.getServiceName(); String appName = runtimeConfig.getApplicationName(); OpenShiftRuntimeId runtimeId = new OpenShiftRuntimeId(prjName, svcName, appName); OpenShiftRuntimeState runtimeState = getRuntimeState(runtimeId); if (OpenShiftRuntimeState.UNKNOWN.equals(runtimeState.getState())) { createProject(prjName); createFromUri(prjName, runtimeConfig.getResourceSecretsUri()); createFromUri(prjName, runtimeConfig.getResourceStreamsUri()); createFromTemplate(runtimeConfig); runtimeState = getRuntimeState(runtimeId); } if (postCreateListener != null) { postCreateListener.trigger(this, runtimeConfig); } return runtimeState; } catch (Throwable t) { if (t instanceof OpenShiftClientException) { throw (OpenShiftClientException)t; } else { throw new OpenShiftClientException(t.getMessage(), t); } } }
@Override public OpenShiftRuntimeConfig asNewClone(final OpenShiftRuntimeConfig source) { return new OpenShiftRuntimeConfigImpl( source.getRuntimeName(), source.getProviderId(), source.getApplicationName(), source.getKieServerContainerDeployment(), source.getProjectName(), source.getResourceSecretsUri(), source.getResourceStreamsUri(), source.getResourceTemplateName(), source.getResourceTemplateParamDelimiter(), source.getResourceTemplateParamAssigner(), source.getResourceTemplateParamValues(), source.getResourceTemplateUri(), source.getServiceName()); }