[ subscribe | archives ]
[ subscribe | archives ]
[ visit ]
There are many ways you can help make Karaf a better piece of software - please dive in and help !
If you'd rather have a more gentle introduction to working on the Karaf project, try looking at the test coverage report and help us get it even more green by supplying more test cases to get us closer to 100% coverage.
Did you find a bug or want something implemented? Please report an issue in our issue tracker. When creating a bug make sure you document the steps to reproduce the issue and provide all necessary information like OS, versions your use, logs. When creating a feature request document your requirements first. Try to not directly describe the solution.
If you want to dive into development yourself then you can also browse for open issues or features that need to be implemented. Take ownership of an issue and try fix it. Before doing a bigger change describe the concept/design of what you plan to do. If unsure if the design is good or will be accepted discuss it on the dev list.
The best way to provide changes is to fork karaf repo on github and provide a pull request with your changes. To make it easy to apply your changes please use the following conventions :
git clone http://github.com/apache/karaf
git fetch --all
git checkout -b my-branch origin/main
git pull --rebase
git push GitHubUser my-branch --force
git rebase -i apache/main
mvn clean verify -Prat
Anyone can review pull requests but the merge can be done only by a committer.
If you want to review a PR and if you are a committer, use the "Reviewer" entry on the right menu on GitHub.
When reviewing check if the changes are done in a clean way and are tested with a unit and possibly integration test. Check that the build does not report more test failures than before. If you are not a committer then write a comment if you recommend a merge or not. Provide good instructions for the contributor how to improve his PR if it is not yet ok. Make sure you do a review timely. By commenting that you do a review you kind of block others from applying the change.
NB: Jenkins performs a build for each pull request. You can trigger a new build on a pull request using "retest this please" in a PR comment.
This can obviously only be done by a committer. Do the following steps.
> git remote add apache https://gitbox.apache.org/repos/asf/karaf.git
> git remote rename origin github
> git config --local --add remote.github.fetch '+refs/pull/*/head:refs/remotes/github/pr/*'
> git remote -v
apache https://gitbox.apache.org/repos/asf/karaf.git (fetch)
apache https://gitbox.apache.org/repos/asf/karaf.git (push)
github https://github.com/apache/karaf.git (fetch)
github https://github.com/apache/karaf.git (push)
username firstname.lastname@example.org:username/karaf.git (fetch)
username email@example.com:username/karaf.git (push)
> git fetch --all
> git checkout -b pr-xxx github/pr/xxx
> git rebase -i apache/main
> git branch -D pr-xxx
The content of the website https://karaf.apache.org is stored in the git repo karaf site. See the README.md on top level for how to test and publish the website.
If you are experiencing problems using Karaf then please report your problem to our issue tracker.
You may also find it useful to discuss your issues with the community on the mailing lists or IRC.
Whenever you are reporting a problem please be sure to include as much information as possible; the more we know the more chance of a quicker resolution :
We may be able to help you much more quickly if you try the following :
Apache Karaf is a widely used project. As such, several companies have built products and services around Karaf.
Companies are definitely encouraged to update this page directly or send a mail to the Karaf PMC with a description of your offerings and we can update the page. The products and services listed on this page are provided for information use only to our users. The Karaf PMC does not endorse or recommend any of the products or services on this page :