public void setPkg(Package pkg) { this.pkg = pkg; this.packageMetadataId = pkg.getMetadata().getId(); this.repositoryId = pkg.getMetadata().getRepositoryId(); ObjectMapper mapper = new ObjectMapper(); try { // Note that @JsonIgnore is on the package file byte array field. this.pkgJsonString = mapper.writeValueAsString(pkg); } catch (JsonProcessingException e) { throw new SkipperException("Error processing pkg json string", e); } }
public void setPkg(Package pkg) { this.pkg = pkg; this.packageMetadataId = pkg.getMetadata().getId(); this.repositoryId = pkg.getMetadata().getRepositoryId(); ObjectMapper mapper = new ObjectMapper(); try { // Note that @JsonIgnore is on the package file byte array field. this.pkgJsonString = mapper.writeValueAsString(pkg); } catch (JsonProcessingException e) { throw new SkipperException("Error processing pkg json string", e); } }
String dependencyName = dependency.getMetadata().getName(); Map<String, Object> currentPackageValueMapForDependency = (Map<String, Object>) currentPackageValueMap .getOrDefault(dependencyName, new TreeMap<>()); mergedValues.put(dependency.getMetadata().getName(), mergeOverrideMap(dependency, currentPackageValueMapForDependency));
String dependencyName = dependency.getMetadata().getName(); Map<String, Object> currentPackageValueMapForDependency = (Map<String, Object>) currentPackageValueMap .getOrDefault(dependencyName, new TreeMap<>()); mergedValues.put(dependency.getMetadata().getName(), mergeOverrideMap(dependency, currentPackageValueMapForDependency));
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()); } }
@Override public File write(Package pkg, File targetDirectory) { PackageMetadata packageMetadata = pkg.getMetadata(); File tmpDir = TempFileUtils.createTempDirectory("skipper" + packageMetadata.getName()).toFile(); File rootPackageDir = new File(tmpDir, String.format("%s-%s", packageMetadata.getName(), packageMetadata.getVersion())); rootPackageDir.mkdir(); writePackage(pkg, rootPackageDir); if (!pkg.getDependencies().isEmpty()) { File packagesDir = new File(rootPackageDir, "packages"); packagesDir.mkdir(); for (Package dependencyPkg : pkg.getDependencies()) { File packageDir = new File(packagesDir, dependencyPkg.getMetadata().getName()); packageDir.mkdir(); writePackage(dependencyPkg, packageDir); } } File targetZipFile = PackageFileUtils.calculatePackageZipFile(pkg.getMetadata(), targetDirectory); ZipUtil.pack(rootPackageDir, targetZipFile, true); FileSystemUtils.deleteRecursively(tmpDir); return targetZipFile; }
@Override public File write(Package pkg, File targetDirectory) { PackageMetadata packageMetadata = pkg.getMetadata(); File tmpDir = TempFileUtils.createTempDirectory("skipper" + packageMetadata.getName()).toFile(); File rootPackageDir = new File(tmpDir, String.format("%s-%s", packageMetadata.getName(), packageMetadata.getVersion())); rootPackageDir.mkdir(); writePackage(pkg, rootPackageDir); if (!pkg.getDependencies().isEmpty()) { File packagesDir = new File(rootPackageDir, "packages"); packagesDir.mkdir(); for (Package dependencyPkg : pkg.getDependencies()) { File packageDir = new File(packagesDir, dependencyPkg.getMetadata().getName()); packageDir.mkdir(); writePackage(dependencyPkg, packageDir); } } File targetZipFile = PackageFileUtils.calculatePackageZipFile(pkg.getMetadata(), targetDirectory); ZipUtil.pack(rootPackageDir, targetZipFile, true); FileSystemUtils.deleteRecursively(tmpDir); return targetZipFile; }
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 (packageValueMap.containsKey(dependency.getMetadata().getName())) { packageValueMap.remove(dependency.getMetadata().getName());
if (packageValueMap.containsKey(dependency.getMetadata().getName())) { packageValueMap.remove(dependency.getMetadata().getName());
Assert.isTrue(unpackagedFile.exists(), "Package is expected to be unpacked, but it doesn't exist"); Package packageToUpload = this.packageReader.read(unpackagedFile); PackageMetadata packageMetadata = packageToUpload.getMetadata(); if (!packageMetadata.getName().equals(uploadRequest.getName()) || !packageMetadata.getVersion().equals(uploadRequest.getVersion())) {
Assert.isTrue(unpackagedFile.exists(), "Package is expected to be unpacked, but it doesn't exist"); Package packageToUpload = this.packageReader.read(unpackagedFile); PackageMetadata packageMetadata = packageToUpload.getMetadata(); if (!packageMetadata.getName().equals(uploadRequest.getName()) || !packageMetadata.getVersion().equals(uploadRequest.getVersion())) {
String packageName = releaseToDelete.getPkg().getMetadata().getName(); if (this.packageMetadataService.filterReleasesFromLocalRepos( Arrays.asList(releaseToDelete), packageName).isEmpty()) {
String packageName = releaseToDelete.getPkg().getMetadata().getName(); if (this.packageMetadataService.filterReleasesFromLocalRepos( Arrays.asList(releaseToDelete), packageName).isEmpty()) {
packageIdentifier.setPackageName(releaseToRollback.getPkg().getMetadata().getName()); packageIdentifier.setPackageVersion(releaseToRollback.getPkg().getMetadata().getVersion()); packageIdentifier.setRepositoryName(releaseToRollback.getPkg().getMetadata().getRepositoryName());
packageIdentifier.setPackageName(releaseToRollback.getPkg().getMetadata().getName()); packageIdentifier.setPackageVersion(releaseToRollback.getPkg().getMetadata().getVersion()); packageIdentifier.setRepositoryName(releaseToRollback.getPkg().getMetadata().getRepositoryName());