You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@karaf.apache.org by "Grzegorz Grzybek (JIRA)" <ji...@apache.org> on 2017/12/02 14:55:00 UTC

[jira] [Comment Edited] (KARAF-4181) blacklist.properties and overrides.properties are not properties file

    [ https://issues.apache.org/jira/browse/KARAF-4181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16275583#comment-16275583 ] 

Grzegorz Grzybek edited comment on KARAF-4181 at 12/2/17 2:54 PM:
------------------------------------------------------------------

I changed it like this:

# If during assembly construction we have preconfigured {{etc/org.apache.karaf.features.xml}} (e.g., in resource KAR), blacklisted repos/features/bundles will be used from this file (see: KARAF-5376), e.g.:
{code:xml}
<?xml version="1.0" encoding="UTF-8"?>

<featuresProcessing xmlns="http://karaf.apache.org/xmlns/features-processing/v1.0.0">

    <blacklistedRepositories>
        <repository>mvn:org.spring/*</repository>
    </blacklistedRepositories>

    <blacklistedBundles>
        <bundle>mvn:org.ops4j.pax.tipi/org.ops4j.pax.tipi.undertow.websocket-jsr</bundle>
    </blacklistedBundles>

...
</featuresProcessing>
{code}
# If karaf-maven-plugin configuration includes:
{code:xml}
<configuration>
...
    <blacklistedRepositories>
        <repository>mvn:org.jclouds/*</repository>
    </blacklistedRepositories>
    <blacklistedFeatures>
        <feature>*jclouds*</feature>
    </blacklistedFeatures>
    <blacklistedBundles>
        <bundle>mvn:org.ops4j.pax.cdi/*</bundle>
    </blacklistedBundles>
...
</configuration>
{code}
These will be used as well
# After I fix KARAF-5339, profile-defined blacklists will also be used

With the above, we can see in Maven build logs:
{noformat}
[INFO] --- karaf-maven-plugin:4.2.0-SNAPSHOT:assembly (default-assembly) @ test-karaf-plugins ---
[INFO] Using repositories:
[INFO]    https://repo.maven.apache.org/maven2@id=central
[INFO] Creating work directory: /data/sources/_testing/grgr-test-karaf-plugins/target/assembly
...
[INFO] Startup stage
[INFO]    Loading startup repositories
[INFO]    Resolving startup features and bundles
[INFO]       Features: undertow, my-startup-feature
[INFO]       Bundles: mvn:commons-beanutils/commons-beanutils/1.9.2, mvn:commons-collections/commons-collections/3.2.2, mvn:commons-logging/commons-logging/1.2, mvn:commons-io/commons-io/2.4
...
[INFO]       skipping blacklisted maven bundle: mvn:org.ops4j.pax.tipi/org.ops4j.pax.tipi.undertow.websocket-jsr/1.3.25.1
...
[INFO] Boot stage
...
[INFO]    Feature undertow/1.3.25.1 is defined as a boot feature
[INFO]       adding maven artifact: mvn:javax.annotation/javax.annotation-api/1.2
...
[INFO]       skipping blacklisted maven artifact: mvn:org.ops4j.pax.tipi/org.ops4j.pax.tipi.undertow.websocket-jsr/1.3.25.1
...
[INFO] Install stage
[INFO]    Loading installed repositories
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
{noformat}

And target assembly will have {{etc/org.apache.karaf.features.xml}} regenerated (merging information from different sources):
{code:xml}
<?xml version="1.0" encoding="UTF-8"?>
<!--
    Configuration generated by Karaf Assembly Builder
-->
<featuresProcessing xmlns="http://karaf.apache.org/xmlns/features-processing/v1.0.0" xmlns:f="http://karaf.apache.org/xmlns/features/v1.5.0">

    <!-- A list of blacklisted features XML repository URIs - they can't be added later -->
    <blacklistedRepositories>
        <repository>mvn:org.spring/*</repository>
        <repository>mvn:org.jclouds/*</repository>
    </blacklistedRepositories>

    <!-- A list of blacklisted feature identifiers that can't be installed in Karaf and are not part of the distribution -->
    <blacklistedFeatures>
        <feature>*jclouds*</feature>
    </blacklistedFeatures>

    <!-- A list of blacklisted bundle URIs that are not installed even if they are part of some features -->
    <blacklistedBundles>
        <bundle>mvn:org.ops4j.pax.tipi/org.ops4j.pax.tipi.undertow.websocket-jsr</bundle>
        <bundle>mvn:org.ops4j.pax.cdi/*</bundle>
    </blacklistedBundles>
...
</featuresProcessing>
{code}



was (Author: gzres):
I changed it like this:

# If during assembly construction we have preconfigured {{etc/org.apache.karaf.features.xml}} (e.g., in resource KAR), blacklisted repos/features/bundles will be used from this file (see: KARAF-5376)
# If karaf-maven-plugin configuration includes:
{code:xml}
<configuration>
...
    <blacklistedRepositories>
        <repository>mvn:org.jclouds/*</repository>
    </blacklistedRepositories>
    <blacklistedFeatures>
        <feature>*jclouds*</feature>
    </blacklistedFeatures>
    <blacklistedBundles>
        <bundle>mvn:org.ops4j.pax.cdi/*</bundle>
    </blacklistedBundles>
...
</configuration>
{code}
These will be used as well
# After I fix KARAF-5339, profile-defined blacklists will also be used

With the above, we can see in Maven build logs:
{noformat}
[INFO] --- karaf-maven-plugin:4.2.0-SNAPSHOT:assembly (default-assembly) @ test-karaf-plugins ---
[INFO] Using repositories:
[INFO]    https://repo.maven.apache.org/maven2@id=central
[INFO] Creating work directory: /data/sources/_testing/grgr-test-karaf-plugins/target/assembly
...
[INFO] Startup stage
[INFO]    Loading startup repositories
[INFO]    Resolving startup features and bundles
[INFO]       Features: undertow, my-startup-feature
[INFO]       Bundles: mvn:commons-beanutils/commons-beanutils/1.9.2, mvn:commons-collections/commons-collections/3.2.2, mvn:commons-logging/commons-logging/1.2, mvn:commons-io/commons-io/2.4
...
[INFO]       skipping blacklisted maven bundle: mvn:org.ops4j.pax.tipi/org.ops4j.pax.tipi.undertow.websocket-jsr/1.3.25.1
...
[INFO] Boot stage
...
[INFO]    Feature undertow/1.3.25.1 is defined as a boot feature
[INFO]       adding maven artifact: mvn:javax.annotation/javax.annotation-api/1.2
...
[INFO]       skipping blacklisted maven artifact: mvn:org.ops4j.pax.tipi/org.ops4j.pax.tipi.undertow.websocket-jsr/1.3.25.1
...
[INFO] Install stage
[INFO]    Loading installed repositories
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
{noformat}

And target assembly will have {{etc/org.apache.karaf.features.xml}} regenerated (merging information from different sources):
{code:xml}
<?xml version="1.0" encoding="UTF-8"?>
<!--
    Configuration generated by Karaf Assembly Builder
-->
<featuresProcessing xmlns="http://karaf.apache.org/xmlns/features-processing/v1.0.0" xmlns:f="http://karaf.apache.org/xmlns/features/v1.5.0">

    <!-- A list of blacklisted features XML repository URIs - they can't be added later -->
    <blacklistedRepositories>
        <repository>mvn:org.spring/*</repository>
        <repository>mvn:org.jclouds/*</repository>
    </blacklistedRepositories>

    <!-- A list of blacklisted feature identifiers that can't be installed in Karaf and are not part of the distribution -->
    <blacklistedFeatures>
        <feature>*jclouds*</feature>
    </blacklistedFeatures>

    <!-- A list of blacklisted bundle URIs that are not installed even if they are part of some features -->
    <blacklistedBundles>
        <bundle>mvn:org.ops4j.pax.tipi/org.ops4j.pax.tipi.undertow.websocket-jsr</bundle>
        <bundle>mvn:org.ops4j.pax.cdi/*</bundle>
    </blacklistedBundles>
...
</featuresProcessing>
{code}


> blacklist.properties and overrides.properties are not properties file
> ---------------------------------------------------------------------
>
>                 Key: KARAF-4181
>                 URL: https://issues.apache.org/jira/browse/KARAF-4181
>             Project: Karaf
>          Issue Type: Bug
>          Components: karaf-profile
>    Affects Versions: 4.0.3
>            Reporter: Benson Margulies
>            Assignee: Grzegorz Grzybek
>             Fix For: 4.2.0
>
>
> It's confusing that a file named 'blacklist.properties' does not, in fact, contain a properties file. Rather, it's just a list of blacklisted bundles. It seems to me that the name 'blacklist.properties' might be deprecated and the name 'bundle-blacklist.txt' would be more informative.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)