You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@karaf.apache.org by "Martin Herbst (JIRA)" <ji...@apache.org> on 2017/10/08 17:49:02 UTC

[jira] [Commented] (KARAF-5352) KARAF_ETC envvar ignored

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

Martin Herbst commented on KARAF-5352:
--------------------------------------

[~jbonofre], [~kkreuzer] asked me to perform some additional tests with a clean Karaf 4.1.2 on Windows 10. 

These are my results:
First test with unchanged system.properties:
KARAF_ETC not set => everything works fine
KARAF_ETC set to the installation etc directory => everything works fine
KARAF_ETC set to some other directory => start of Karaf fails with an error message, this is OK

Now I changed the entry of karaf.shell.init.scipt in system.properties to the following value:

{noformat}
karaf.shell.init.script = ${karaf.etc}/shell.init.script,${karaf.etc}/scripts/*.script
{noformat}
KARAF_ETC not explicitly set => error message: Error in initialization script: E:\karaf\karafetc\shell.init.script: E:\karaf\karafetc\shell.init.script
KARAF_ETC set to E:\karaf\etc\ => Karaf does not start, parameters for execution of java are wrong
KARAF_ETC set to E:\ikaraf\etc  => error message: Error in initialization script: E:\karaf\karafetc\shell.init.script: E:\karaf\karafetc\shell.init.script
KARAF_ETC set to E:/karaf/etc => error message: Error in initialization script: E:\karaf\karafetc\shell.init.script: E:\karaf\karafetc\shell.init.script

I have echoed the content of KARAF_ETC immediately before Java is called and it is set correctly. To me it seems that somehwere in the Java code the content is modified.

> KARAF_ETC envvar ignored
> ------------------------
>
>                 Key: KARAF-5352
>                 URL: https://issues.apache.org/jira/browse/KARAF-5352
>             Project: Karaf
>          Issue Type: Bug
>          Components: karaf-core
>    Affects Versions: 4.1.2
>         Environment: Tested on CentOS 7.x
>            Reporter: Thomas Bouron
>            Assignee: Jean-Baptiste Onofré
>             Fix For: 4.2.0, 4.1.3
>
>
> I'm currently working on upgrading the RPM and DEB packaging for Apache Brooklyn. The project uses Karaf and has the following folder structure for the RPM package:
> {code}
> /-
>  +- etc
>  |+- brooklyn
>  +- opt
>  |+- brooklyn-0.12.0-SNAPSHOT
>  ||+- bin
>  ||+- data
>  ||+- deploy
>  ||+- lib
>  ||+- system
> {code}
> The {{etc}} folder is not part of {{KARAF_HOME}} but in {{/etc/brooklyn}}. I setup my {{KARAF_ETC}} to point to this folder, however when I start Karaf, I get the followoing
> {code}
> Sep 07 15:27:14 br-ovx1by-amp-appl-om8x-empty-t0ww-280 systemd[1]: Started Apache Brooklyn Service.
> Sep 07 15:27:14 br-ovx1by-amp-appl-om8x-empty-t0ww-280 systemd[1]: Starting Apache Brooklyn Service...
> Sep 07 15:27:14 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: JAVA_HOME not set; results may vary
> Sep 07 15:27:14 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: karaf: Ignoring predefined value for KARAF_HOME
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: 15:27:17.085 [pool-1-thread-2] ERROR org.apache.karaf.features.inte
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: java.io.IOException: /opt/brooklyn-0.12.0-SNAPSHOT/etc/0d218152-8d8
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at org.apache.karaf.features.internal.service.RepositoryImpl.load(R
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at org.apache.karaf.features.internal.service.FeaturesServiceImpl.l
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at org.apache.karaf.features.internal.service.FeaturesServiceImpl.a
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at org.apache.karaf.features.internal.service.FeaturesServiceImpl.a
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at org.apache.karaf.features.internal.service.BootFeaturesInstaller
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at org.apache.karaf.features.internal.service.BootFeaturesInstaller
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at org.apache.karaf.features.internal.osgi.Activator.doStart(Activa
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at org.apache.karaf.util.tracker.BaseActivator.run(BaseActivator.ja
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at java.util.concurrent.Executors$RunnableAdapter.call(Executors.ja
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExec
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExe
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at java.lang.Thread.run(Thread.java:748) [?:?]
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: Caused by: java.io.FileNotFoundException: /opt/brooklyn-0.12.0-SNAP
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at java.io.FileInputStream.open0(Native Method) ~[?:?]
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at java.io.FileInputStream.open(FileInputStream.java:195) ~[?:?]
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at java.io.FileInputStream.<init>(FileInputStream.java:138) ~[?:?]
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at java.io.FileInputStream.<init>(FileInputStream.java:93) ~[?:?]
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at sun.net.www.protocol.file.FileURLConnection.connect(FileURLConne
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at sun.net.www.protocol.file.FileURLConnection.getInputStream(FileU
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at java.net.URL.openStream(URL.java:1045) ~[?:?]
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: at org.apache.karaf.features.internal.service.RepositoryImpl.load(R
> Sep 07 15:27:17 br-ovx1by-amp-appl-om8x-empty-t0ww-280 karaf[1919]: ... 12 more
> {code}
> As you can see, karaf expect the {{etc}} folder to be inside {{KARAF_HOME}} even though I specified my {{KARAF_ETC}} envvar.
> If I softlink {{/etc/brooklyn}} to {{/opt/brooklyn-0.12.0-SNAPSHOT/etc}}, it works. 
> It's also worth mentioning that I don't have this issue with Karaf 4.0.8



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