Skip to content

Commit

Permalink
2: Setup maven-site
Browse files Browse the repository at this point in the history
Task-Url: #2
  • Loading branch information
cvgaviao committed Oct 23, 2018
1 parent 7ddeae5 commit e084080
Show file tree
Hide file tree
Showing 6 changed files with 158 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Example of how setup in order to generate a Eclipse P2 and a Target Platform file.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Example of how setup in order to generate a Eclipse P2 and a Target Platform file.
43 changes: 43 additions & 0 deletions src/site/markdown/index.md.vm
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
Introduction
--------------

The OSGi Repository Generator maven plugin is aimed to manage the lifecycle of a project that can generate both P2 or OSGi R5 indexed files based on bundle hosted in P2 or maven repositories.
This plugin provides a 'osgi-repository' packaging that should be used in order to be able to manage is lifecycle.


### Main features:

* download and locally cache bundle or subsystem artifacts from maven or p2 external repositories. The artifacts to be downloaded can be from the declared dependencies as can be described in the plug-in's configuration tag.
* generate P2 or compressed repository index artifact (.zip) using the cached bundles or subsystem artifacts.
* generate a local maven repository artifacts using the cached bundles or subsystem artifacts.
* generate a R5 OSGi index XML file or as compressed artifact (.zip) using the cached bundles or subsystem artifacts.


Quickstart
----------

The plugin provides the `osgi.repository` *packaging type*

<groupId>my-project</groupId>
<artifactId>my-osgi-repository</artifactId>
<packaging>osgi.repository</packaging>


Add the following to your plugins section:

<plugin>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
</plugin>

And then use the *osgi.repository* as the packaging type of your repository project.

See [usage](usage.html) for more details.



Prerequisites
-------------

The plugin requires **Maven ${project.prerequisites.maven}** or later and **Java 8** or later.
44 changes: 44 additions & 0 deletions src/site/markdown/usage.md.vm
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
The OSGi Subsystem Archive Generator Maven Plugin
------------------------------------------------------

This plugin was designed to generate an OSGi Subsystem `.esa` archive containing a manifest file and contents based on the dependencies defined in the project POM file.


Each type will instruct the plugin to generate the subsystem manifest accordingly.

The plugin can embed the declared dependencies into the generated archive.


The artifact generated by this plugin can be used by the [Repository Plugin](../osgi-repository-maven-plugin/index.html).

Quickstart
----------
The plugin provides three `packaging types` that the developer must be chosen:

* subsystem-application
* subsystem-composite
* subsystem-feature

```
<groupId>my-project</groupId>
<artifactId>my-osgi-repository</artifactId>
<packaging>osgi.repository</packaging>
```


Add the following to your plugins section:

<plugin>
<groupId>${this.groupId}</groupId>
<artifactId>${this.artifactId}</artifactId>
<version>${this.version}</version>
<extensions>true</extensions>
</plugin>

Release your project by running `mvn releaser:release`


Prerequisites
-------------

The plugin requires **Maven ${project.prerequisites.maven}** or later and **Java 8** or later.
Binary file added src/site/resources/images/c8tech.logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
69 changes: 69 additions & 0 deletions src/site/site.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
<?xml version="1.0" encoding="UTF-8"?>

<project name="C8Tech OSGi Subsystem Maven Plugin"
xmlns="http://maven.apache.org/DECORATION/1.4.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/DECORATION/1.4.0
http://maven.apache.org/xsd/decoration-1.4.0.xsd">
<skin>
<groupId>org.apache.maven.skins</groupId>
<artifactId>maven-fluido-skin</artifactId>
<version>1.7</version>
</skin>

<custom>
<fluidoSkin>
<topBarEnabled>false</topBarEnabled>
<sideBarEnabled>true</sideBarEnabled>
<gitHub>
<projectId>
cvgaviao/osgi-subsystem-maven-plugin
</projectId>
<ribbonOrientation>right</ribbonOrientation>
<ribbonColor>black</ribbonColor>
</gitHub>
</fluidoSkin>
</custom>

<bannerLeft>
<name>${this.organization.name}</name>
<src>images/c8tech.logo.png</src>
<href>${this.organization.url}</href>
</bannerLeft>
<bannerRight>
<name>${this.name}</name>
<href>${this.url}</href>
</bannerRight>

<body>

<links>
<item name="Subsystem Spec"
href="https://osgi.org/specification/osgi.cmpn/7.0.0/service.subsystem.html" />
<item name="Apache Aries Subsystems"
href="http://aries.apache.org/modules/subsystems.html" />
</links>

<menu name="Overview">
<item name="Introduction" href="./index.html" />
<item name="Goals" href="./plugin-info.html" />
<item name="Usage" href="./usage.html" />
<item name="License"
href="http://www.eclipse.org/legal/epl-v10.html" />
<item name="Changelog" href="./changelog.html" />
</menu>
<menu name="Examples">
<item name="description1"
href="examples/example-one.html" />
<item name="description2"
href="examples/example-two.html" />
</menu>
<menu ref="reports" />
</body>

<poweredBy>
<logo name="Maven" href="https://maven.apache.org/"
img="https://maven.apache.org/images/logos/maven-feather.png" />
</poweredBy>

</project>

0 comments on commit e084080

Please sign in to comment.