...
1. Open an JIRA issue
Open a JIRA issue at https://issues.apache.org/jira/browse/CAMEL, if does not already exist.
The issue type should be "New Feature". A sample can be found here: https://issues.apache.org/jira/browse/CAMEL-3468
2. Check the license of all dependencies
You have to check whether or not all required dependencies have an Apache compatible license.
Please refer to Third-Party Licensing Policy for detailed information and acceptable licenses (see especially about excluded licenses).
This doesn't mean, if one of the dependencies are not compatible with the Apache license we can't accept the component. In this case, we might have to add the component to the Camel-Extra repository.
...
The source and resources have to follow some Apache/Camel coding rules:
- Make sure every added source and resource contains the Apache license header.
- Make sure the new component has an adequate test coverage.
- Run a build with checkstyle to ensure the sources are conform with the Apache Camel coding rules: Building Camel (look for
Building with checkstyle
) - Make sure the log output is adequate on the INFO log level.
6. Check whether all dependencies are available as OSGI bundles
If a dependency is not available as an OSGI bundle, ask the Apache Servicemix guys for an OSGI-fied version of this dependency. You should do this by opening a JIRA issue at https://issues.apache.org/jira/browse/SMX4
The issue type should be "Task". A sample can be found here: https://issues.apache.org/jira/browse/SMX4-723
7. Add a new feature
...
To ensure you do not break the build, run a complete build from the new component directory:
Code Block |
---|
mvn clean install
|
10. Add the component to distribution
Add the new component to the following files
- parent/pom.xml
- apache-camel/src/main/descriptors/common-bin.xml
Build the kit by running the following maven goal from the apache-camel
directory:
Code Block |
---|
mvn clean install
|
Check the generated .zip file in the target folder contains the new component.