private void writePackage(Package pkg, File directory) { String packageMetadata = generatePackageMetadata(pkg.getMetadata()); writeText(new File(directory, "package.yml"), packageMetadata); if (pkg.getConfigValues() != null && StringUtils.hasText(pkg.getConfigValues().getRaw())) { writeText(new File(directory, "values.yml"), pkg.getConfigValues().getRaw()); } if (!pkg.getTemplates().isEmpty()) { File templateDir = new File(directory, "templates/"); templateDir.mkdirs(); File templateFile = new File(templateDir, pkg.getMetadata().getName() + ".yml"); writeText(templateFile, getDefaultTemplate()); } }
private void writePackage(Package pkg, File directory) { String packageMetadata = generatePackageMetadata(pkg.getMetadata()); writeText(new File(directory, "package.yml"), packageMetadata); if (pkg.getConfigValues() != null && StringUtils.hasText(pkg.getConfigValues().getRaw())) { writeText(new File(directory, "values.yml"), pkg.getConfigValues().getRaw()); } if (!pkg.getTemplates().isEmpty()) { File templateDir = new File(directory, "templates/"); templateDir.mkdirs(); File templateFile = new File(templateDir, pkg.getMetadata().getName() + ".yml"); writeText(templateFile, getDefaultTemplate()); } }
private static String applyManifestTemplate(Package packageToDeploy, Map<String, ?> model) { // Aggregate all valid manifests into one big doc. StringBuilder sb = new StringBuilder(); // Top level templates. List<Template> templates = packageToDeploy.getTemplates(); if (templates != null) { for (Template template : templates) { String templateAsString = new String(template.getData()); com.samskivert.mustache.Template mustacheTemplate = Mustache.compiler().compile(templateAsString); sb.append("\n---\n# Source: " + template.getName() + "\n"); sb.append(mustacheTemplate.execute(model)); } } for (Package pkg : packageToDeploy.getDependencies()) { String packageName = pkg.getMetadata().getName(); Map<String, Object> modelForDependency; if (model.containsKey(packageName)) { modelForDependency = (Map<String, Object>) model.get(pkg.getMetadata().getName()); } else { modelForDependency = new TreeMap<>(); } sb.append(applyManifestTemplate(pkg, modelForDependency)); } return sb.toString(); }
private static String applyManifestTemplate(Package packageToDeploy, Map<String, ?> model) { // Aggregate all valid manifests into one big doc. StringBuilder sb = new StringBuilder(); // Top level templates. List<Template> templates = packageToDeploy.getTemplates(); if (templates != null) { for (Template template : templates) { String templateAsString = new String(template.getData()); com.samskivert.mustache.Template mustacheTemplate = Mustache.compiler().compile(templateAsString); sb.append("\n---\n# Source: " + template.getName() + "\n"); sb.append(mustacheTemplate.execute(model)); } } for (Package pkg : packageToDeploy.getDependencies()) { String packageName = pkg.getMetadata().getName(); Map<String, Object> modelForDependency; if (model.containsKey(packageName)) { modelForDependency = (Map<String, Object>) model.get(pkg.getMetadata().getName()); } else { modelForDependency = new TreeMap<>(); } sb.append(applyManifestTemplate(pkg, modelForDependency)); } return sb.toString(); }
if (existingRelease.getPkg().getTemplates().size() == 0 && replacingRelease.getPkg().getTemplates().size() == 0) { logger.info("Existing Package and Upgrade package both have no top level templates"); return analyzeDependentPackagesOnly(existingApplicationSpecList,
if (existingRelease.getPkg().getTemplates().size() == 0 && replacingRelease.getPkg().getTemplates().size() == 0) { logger.info("Existing Package and Upgrade package both have no top level templates"); return analyzeDependentPackagesOnly(existingApplicationSpecList,