Karaf Cave provides an OSGi Bundle Repository (OBR) and Karaf
Features Repository (KFR).
OBR provides a service that can automatically install a bundle, with its deployment dependencies, from a bundle
Apache Karaf Cave provides the following features:
- Storage: Karaf Cave provides a filesystem storage. The storage backend is designed with a kind of plugin system, it means that we can change the default filesystem storage by another kind of storage
- OBR metadata generation: Karaf Cave automatically creates the OBR metadata for you, using the artifacts presents in the Cave repository.
- OBR registration: Karaf Cave allows you to directly register a Cave repository into the OBR RepositoryAdmin OSGi service.
- Artifact upload: you can update any OSGi bundle in a Cave repository, using advanced URL, e.g. mvn:groupId/artifactId/version
- "External" repository proxy: you can proxy an existing repository (like a Maven one) into a Cave repository. In that case, the artifacts are still resident on the proxied repository, Cave handles the OBR metadata. Cave supports file: and http: like URL, it means that Cave is able to browse a remote HTTP Maven repository.
- "External" repository population: you can populate your local Cave repository from an external repository. It means that Cave browse the external repository URL (file: or http:), looking for OSGi bundles in the artifacts, and copy the bundles in the Cave repository storage.
To install and start Cave into a running Karaf instance, you have to install the Cave server feature:
karaf@root> features:addurl mvn:org.apache.karaf.cave/apache-karaf-cave/3.0.0-SNAPSHOT/xml/features
karaf@root> features:install cave-obr-server
You're ready to use Cave server. Take a look on the user guide.