public Pod getPodTemplate()

in teamcity-kubernetes-plugin-server/src/main/java/jetbrains/buildServer/clouds/kubernetes/podSpec/DeploymentBuildAgentPodTemplateProvider.java [46:71]


  public Pod getPodTemplate(@NotNull String instanceName,
                            @NotNull CloudInstanceUserData cloudInstanceUserData,
                            @NotNull KubeCloudImage kubeCloudImage,
                            @NotNull KubeApiConnector apiConnector) {
    String sourceDeploymentName = kubeCloudImage.getSourceDeploymentName();
    if (StringUtil.isEmpty(sourceDeploymentName)) {
      throw new KubeCloudException("Deployment name is not set in kubernetes cloud image " + kubeCloudImage.getId());
    }


    Deployment sourceDeployment = apiConnector.getDeployment(sourceDeploymentName);
    if (sourceDeployment == null) {
      throw new KubeCloudException("Can't find source deployment by name " + sourceDeploymentName);
    }

    //final String agentNameProvided = cloudInstanceUserData.getAgentName();
    //final String instanceName = StringUtil.isEmpty(agentNameProvided) ? sourceDeploymentName + "-" + UUID.randomUUID().toString() : agentNameProvided;

    return patchedPodTemplateSpec(sourceDeployment.getSpec().getTemplate(),
                                  instanceName,
                                  apiConnector.getNamespace(),
                                  myServerSettings.getServerUUID(),
                                  kubeCloudImage.getId(),
                                  cloudInstanceUserData
    );
    }