private void setupSolrPackaging(Project p, PackagingExtension extension, Path packageFolder, Zip zipPackage, Task cleanTargetFolder) { // FIXME This is only POC for Solr configuration only. Set<String> environments = extension.getEnvironments().get(); Path configurationFolder = extension.getConfigurationFolder().getAsFile().get().toPath(); for (String environment : environments) { Path sourceFolder = configurationFolder.resolve(environment).resolve("solr"); Path commonFolder = configurationFolder.resolve(COMMON_CONFIG).resolve("solr"); Path targetFolder = packageFolder.resolve("solr/config/" + environment); Copy copySolrCommonConfig = p.getTasks().create("copySolrCommonEnv_" + environment, Copy.class, t -> { t.from(commonFolder); t.into(targetFolder); t.setDuplicatesStrategy(DuplicatesStrategy.INCLUDE); t.exclude(SOLR_CONFIG_EXCLUDE); }); copySolrCommonConfig.dependsOn(cleanTargetFolder); Copy copySolrConfig = p.getTasks().create("copySolrEnv_" + environment, Copy.class, t -> { t.from(sourceFolder); t.into(targetFolder); t.setDuplicatesStrategy(DuplicatesStrategy.INCLUDE); t.exclude(SOLR_CONFIG_EXCLUDE); }); copySolrConfig.dependsOn(copySolrCommonConfig); zipPackage.dependsOn(copySolrConfig); } }
t.from(commonFolder); t.into(targetFolder); t.setDuplicatesStrategy(DuplicatesStrategy.INCLUDE); t.exclude(DATAHUB_CONFIG_EXCLUDE); }); t.from(sourceFolder); t.into(targetFolder); t.setDuplicatesStrategy(DuplicatesStrategy.INCLUDE); t.exclude(DATAHUB_CONFIG_EXCLUDE); });
t.from(commonFolder); t.into(targetFolder); t.setDuplicatesStrategy(DuplicatesStrategy.INCLUDE); t.exclude(HYBRIS_CONFIG_EXCLUDE); }); t.from(environmentFolder); t.into(targetFolder); t.setDuplicatesStrategy(DuplicatesStrategy.INCLUDE); t.exclude(HYBRIS_CONFIG_EXCLUDE); }); t.from(commonMiscFolder); t.into(packageMiscFolder); t.setDuplicatesStrategy(DuplicatesStrategy.INCLUDE); }); copyCommonMiscToTarget.dependsOn(cleanTargetFolder); t.from(environmentMiscFolder); t.into(packageMiscFolder); t.setDuplicatesStrategy(DuplicatesStrategy.INCLUDE); }); copyEnvMiscToTarget.dependsOn(copyCommonMiscToTarget);