You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2020/11/08 05:21:09 UTC

[karaf] branch master updated: [KARAF-6897] Include conditional bundles on karaf-maven-plugin generated kar (offline deploy support)

This is an automated email from the ASF dual-hosted git repository.

jbonofre pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/karaf.git


The following commit(s) were added to refs/heads/master by this push:
     new ef17616  [KARAF-6897] Include conditional bundles on karaf-maven-plugin generated kar (offline deploy support)
     new f20afa6  Merge pull request #1246 from paulojramos/master
ef17616 is described below

commit ef17616e4bf5149dfec664e40ec5f21484e7e046
Author: PauloRamos <pa...@pst.asseco.com>
AuthorDate: Wed Nov 4 12:34:51 2020 +0000

    [KARAF-6897] Include conditional bundles on karaf-maven-plugin generated kar (offline deploy support)
---
 .../src/main/java/org/apache/karaf/tooling/KarMojo.java        | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/KarMojo.java b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/KarMojo.java
index c4731ec..d252518 100644
--- a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/KarMojo.java
+++ b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/KarMojo.java
@@ -28,6 +28,7 @@ import java.util.regex.Pattern;
 
 import org.apache.karaf.deployer.kar.KarArtifactInstaller;
 import org.apache.karaf.features.BundleInfo;
+import org.apache.karaf.features.Conditional;
 import org.apache.karaf.features.ConfigFileInfo;
 import org.apache.karaf.features.internal.model.Feature;
 import org.apache.karaf.features.internal.model.Features;
@@ -205,10 +206,17 @@ public class KarMojo extends MojoSupport {
             Features features = JaxbUtil.unmarshal(featuresFile.toURI().toASCIIString(), false);
             for (Feature feature : features.getFeature()) {
                 for (BundleInfo bundle : feature.getBundles()) {
-                    if (ignoreDependencyFlag || (!ignoreDependencyFlag && !bundle.isDependency())) {
+                    if (ignoreDependencyFlag || !bundle.isDependency()) {
                         resources.add(resourceToArtifact(bundle.getLocation(), false));
                     }
                 }
+                for (Conditional conditional : feature.getConditional()) {
+                    for (BundleInfo bundle : conditional.getBundles()) {
+                        if (ignoreDependencyFlag || !bundle.isDependency()) {
+                            resources.add(resourceToArtifact(bundle.getLocation(), false));
+                        }
+                    }
+                }
                 for (ConfigFileInfo configFile : feature.getConfigurationFiles()) {
                     resources.add(resourceToArtifact(configFile.getLocation(), false));
                 }