ops4j / org.ops4j.pax.scanner Goto Github PK
View Code? Open in Web Editor NEWHome Page: http://www.ops4j.org
Home Page: http://www.ops4j.org
NiclasH created PAXSCANNER-4
There does not currently appear to be a way to have pax run deploy an exploded bundle even though the OSGI containers allow this. This would be a huge benefit for deploying fragments that contain configurations that may need to be modified. The current code just iterates through any directories that it finds to pull out the files in the directories.
Votes: 0, Watches: 0
Referenced issues
blocks:
Alin Dreghiciu created PAXSCANNER-5
Currently scanners know how to scan specific resources and this is done on request of provision service.
It can be interesting if provision service will support "monitoring" of the scanned resource and react on changes. For example for dir scanner the scanned directory can be monitored and if there are bundles added/removed from that directory the bundle will be installed/uninstalled from the platform. For an file scanner it will monitor the scanned file for changes. If content of file changes bundles are again installed/uninstalled.
An option to implement this can be to allow an extra option on the scan-x urls to specify the interval between the scans. If this option is not specified then they will act as before (no rescan) and if it is specified then a scanning process is repeated after the specified time interval.
This should be supported for stand alone use of scanners not when they run as part of pax runner.
Votes: 0, Watches: 0
Alin Dreghiciu created PAXSCANNER-11
Make a bundle out of main provisioning service and all scanners.
Fixed in: 1.1.0
Votes: 0, Watches: 0
Alin Dreghiciu created PAXSCANNER-12
Pax Scanners should work with optional import for "org.osgi.service.cm" package.
Fixed in: 1.1.0
Votes: 0, Watches: 0
Alin Dreghiciu created PAXSCANNER-7
This functionality is generic enough to be reused.
Fixed in: 1.0.0
Votes: 0, Watches: 0
Alin Dreghiciu created PAXSCANNER-6
Scanning a directory using spaces results in an exception being thrown. For example:
101:work alindreghiciu$ pax-run "some folder with spaces/plugins" --log=trace
__________ __________
\______ \_____ ___ ___ \______ \__ __ ____ ____ ___________
| ___/\__ \ \ \/ / | _/ | \/ \ / \_/ __ \_ __ \
| | / __ \_> < | | \ | / | \ | \ ___/| | \/
|____| (____ /__/\_ \ |____|_ /____/|___| /___| /\___ >__|
\/ \/ \/ \/ \/ \/
Pax Runner (1.2.0-SNAPSHOT) from OPS4J - http://www.ops4j.org
-------------------------------------------------------------
...
-> Searching for [file:/Users/alindreghiciu/work/some folder with spaces/plugins/]
-> Specification is not a valid file url: Illegal character in path at index 35: file:/Users/alindreghiciu/work/some folder with spaces/plugins/. Continue discovery...
-> Specification is not a valid file. Continue discovery...
-> Specification is not a valid zip: error in opening zip fileContinue discovery...
-> Specification is not a valid jar: Illegal character in path at index 35: file:/Users/alindreghiciu/work/some folder with spaces/plugins/
-> Specification urlSpec cannot be used. Stopping.
___
/ /
/ / Oops, there has been a problem!
/ /
/__/ org.ops4j.pax.scanner.MalformedSpecificationException: Specification [file:/Users/alindreghiciu/work/some folder with spaces/plugins/] could not be used
___
/__/
-> Exception catched during execution:
java.lang.RuntimeException: org.ops4j.pax.scanner.MalformedSpecificationException: Specification [file:/Users/alindreghiciu/work/some folder with spaces/plugins/] could not be used
at org.ops4j.pax.runner.Run.installBundles(Run.java:491)
at org.ops4j.pax.runner.Run.start(Run.java:217)
at org.ops4j.pax.runner.Run.main(Run.java:148)
at org.ops4j.pax.runner.Run.main(Run.java:120)
Caused by: org.ops4j.pax.scanner.MalformedSpecificationException: Specification [file:/Users/alindreghiciu/work/some folder with spaces/plugins/] could not be used
at org.ops4j.pax.scanner.dir.internal.DirScanner.scan(DirScanner.java:206)
at org.ops4j.pax.scanner.internal.ProvisionServiceImpl.scan(ProvisionServiceImpl.java:154)
at org.ops4j.pax.scanner.internal.ProvisionServiceImpl.scan(ProvisionServiceImpl.java:92)
at org.ops4j.pax.runner.Run.installBundles(Run.java:479)
... 3 more
Fixed in: 1.0.0
Votes: 0, Watches: 0
Referenced issues
blocks:
Tuomas Kiviaho created PAXSCANNER-23
I'm having problems with pax runner --execute=init,d
options. Apache Felix Gogo requires -Dgosh.args="--nointeractive --noshutdown"
property in order to became truly headless, but what I'm getting is partially working result. felix/config.in will have gosh.args="--nointeractive --noshutdown"
system properties that it doesn't understand due to the surrounding quotes. If I remove them, the InitDRunner will print out the properties without quotes.
In my opinion the correct solution would be to strip down the quotes at scanner and serve the properties as System.getProperty()
does and leave it to the implementor to add them back if so deemed. pax-runner-platform-felix/src/main/java/org/ops4j/pax/runner/platform/felix/internal/FelixPlatformBuilderF140T141.java
would work as-is, but runners such as init.d would also require a fix to come with the change.
Fixed in: 1.2.0
Votes: 0, Watches: 1
Referenced issues
relates to:
Xavier Fournet created PAXSCANNER-22
When using scan-bundle with assembly protocol this issue prevent the filter to be applied by assembly
scan-bundle:assembly:/my/directory/!/filter
Fixed in: 1.2.0
Votes: 0, Watches: 0
Alin Dreghiciu created PAXSCANNER-15
A scanner that is able to scan a Deployment Package as defined in OSGi Deployment Admin specifications.
Votes: 0, Watches: 1
Thomas Joseph created PAXSCANNER-3
SpringSource bundle repository hosts many Library Definitions (libd) and is a popular way to manage bundle dependencies. Pax Runner should be capable of provisioning from these libd files.
Votes: 0, Watches: 0
Alin Dreghiciu created PAXSCANNER-14
While stopping scanner service bundle the following happens:
ERROR: Error stopping bundle. (java.util.ConcurrentModificationException)
java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793)
at java.util.HashMap$EntryIterator.next(HashMap.java:834)
at java.util.HashMap$EntryIterator.next(HashMap.java:832)
at org.ops4j.pax.scanner.internal.ProvisionServiceImpl.removeScanner(ProvisionServiceImpl.java:189)
at org.ops4j.pax.scanner.internal.Activator$1.removedService(Activator.java:149)
at org.osgi.util.tracker.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:922)
at org.osgi.util.tracker.AbstractTracked.untrack(AbstractTracked.java:351)
at org.osgi.util.tracker.ServiceTracker.close(ServiceTracker.java:403)
at org.ops4j.pax.scanner.internal.Activator.stop(Activator.java:89)
at org.ops4j.pax.scanner.all.internal.CompositeActivator.stop(CompositeActivator.java:80)
at org.apache.felix.framework.util.SecureAction.stopActivator(SecureAction.java:689)
at org.apache.felix.framework.Felix.stopBundle(Felix.java:2073)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1094)
at org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:264)
at java.lang.Thread.run(Thread.java:637)
Affects: 1.0.0
Fixed in: 1.1.0
Votes: 0, Watches: 0
Alin Dreghiciu created PAXSCANNER-13
As all about features was moved to Apache Karaf, features scanner should use the release 1.0.0 of karaf.
Fixed in: 1.1.0
Votes: 0, Watches: 0
Pieter created PAXSCANNER-16
I am looking into using the composite scanner in Pax Runner to split up my provisioning file. I create a 'parent' provision file that includes two other files using scan-composite:file. This works, but when I make a change to one of the provision files it is ignored when starting Pax Runner. It appears the composite scanner loads everything it scans via a cached url. I think this is a good thing for loading bundles, but not for loading provision files since these may change.
Votes: 0, Watches: 0
Ioan Eugen Stan created PAXSCANNER-24
Provisioning karaf features from 3.0.2 is not possible because of schema validation.
Caused by: java.lang.IllegalArgumentException: Unable to validate mvn:org.apache.karaf.features/standard/3.0.2/xml/features
at org.apache.karaf.features.internal.FeatureValidationUtil.validate(FeatureValidationUtil.java:71)
at org.apache.karaf.features.internal.FeaturesServiceImpl.validateRepository(FeaturesServiceImpl.java:199)
at org.apache.karaf.features.internal.FeaturesServiceImpl.internalAddRepository(FeaturesServiceImpl.java:210)
at org.apache.karaf.features.internal.FeaturesServiceImpl.addRepository(FeaturesServiceImpl.java:204)
at org.ops4j.pax.scanner.features.internal.FeaturesScanner.scan(FeaturesScanner.java:88)
... 10 more
Caused by: org.xml.sax.SAXParseException; cvc-elt.1: Cannot find the declaration of element 'features'.
Affects: 1.1.0
Fixed in: 1.2.0
Votes: 0, Watches: 1
Ioan Eugen Stan created PAXSCANNER-27
Using it with new versions of Pax runner gives:
java.lang.NoSuchMethodError: org.osgi.framework.Version.compareTo(Lorg/osgi/framework/Version;)I
at org.apache.karaf.features.internal.FeaturesServiceImpl.getFeature(FeaturesServiceImpl.java:781)
at org.ops4j.pax.scanner.features.internal.FeaturesScanner.features(FeaturesScanner.java:137)
at org.ops4j.pax.scanner.features.internal.FeaturesScanner.scan(FeaturesScanner.java:106)
at org.ops4j.pax.scanner.internal.ProvisionServiceImpl.scan(ProvisionServiceImpl.java:155)
at org.ops4j.pax.scanner.internal.ProvisionServiceImpl.scan(ProvisionServiceImpl.java:93)
at org.ops4j.pax.scanner.composite.internal.Activator$1.scan(Activator.java:57)
at org.ops4j.pax.scanner.composite.internal.CompositeScanner.scan(CompositeScanner.java:168
Affects: 1.1.0
Fixed in: 1.2.0
Votes: 0, Watches: 1
Alin Dreghiciu created PAXSCANNER-2
Implement a new scanner that is able to scan maven artifacts and install them as bundles. This should be able to install the main artifact (if not a pom?) all dependencies or transitive dependencies.
To implement this we should use Mercury: in its Maven 3.0 effort the Maven guys have rewritten the artifact resolution as a separated component that will evolve in the future to support osgi.
We shoudl support two types of provisioning specs:
1. scan-maven:g:a[:v][:t][:c]
where the group/artifact/version/type/classifier are specified, and eventual some otions like @noDependencies
and @noTransitive
2. scan-maven:<url>
where url is an url to a file (xml?) that can specify the g:a[:v][:t][:c] and exclusions ala maven and if dependencies/transitive dependencies should be scanned.
If this is down we may deprecate the scan-pom: scanner.
Mercury related:
http://www.sonatype.com/people/2008/11/what-is-mercury/
http://docs.codehaus.org/display/MAVEN/Mercury
Votes: 0, Watches: 2
Referenced issues
aggregation of:
Alin Dreghiciu created PAXSCANNER-1
By default maven 2 pom scanner will exclude the hardcoded packaging type "pom". This should be made configurable with a default value of "pom,libd".
Fixed in: 1.0.0
Votes: 0, Watches: 0
Ioan Eugen Stan created PAXSCANNER-29
https://ops4j1.jira.com/wiki/display/ops4j/Releasing
Affects: 1.1.0
Fixed in: 1.2.0
Votes: 0, Watches: 1
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.