Development Workflow





Depending on your role, there are different approaches on how to contribute to Kieker.

PDF export: Kieker deployment workflow.pdf

Original draw.io (only available when draw.io subscription active):


See additional details about the delivery pipeline on a separate page.

Contributing not being a member of the Kieker development team

  1. Fork the stable branch of the Kieker Git repository: https://github.com/kieker-monitoring/kieker/tree/stable
    (a guide on the general steps you have to take can be found here: https://help.github.com/articles/fork-a-repo/ )
  2. Develop on the forked repository.
  3. When you completed your work, you can create a pull request from your repository to the Kieker master branch.
    (a guide on the general steps you have to take can be found here: https://help.github.com/articles/using-pull-requests/ )
  4. The code will be checked by our Jenkins-based pipeline and a Kieker developer will be notified to review the pull request.
  5. If both finished successfully, the merge is initiated by a Kieker developer.
  6. Finally the new state of the master branch will run through the Jenkins pipeline and eventually (if the pipeline succeeded) pushed to the stable branch.

Contributing as a member of the Kieker developer team

  1. Create a new ticket in the Kieker JIRA https://kieker-monitoring.atlassian.net/secure/Dashboard.jspa
  2. Create a corresponding branch in the Kieker repository named like the following: KIEKER-<ticketID> (if the ticket ID would be 1234, the branch should be named "KIEKER-1234")
    1. Example:
      git checkout -b KIEKER-1234
  3. Develop on the created branch. If you push your branch, the Snap-CI pipeline is automatically triggered and gives feedback whether it passed all checks.
    1. git push origin KIEKER-1234

  4. When you completed your work, you can create a pull request from your branch to the Kieker master branch.
    (a guide on the general steps you have to take can be found here: https://help.github.com/articles/using-pull-requests/ )
  5. The code will be checked by our Jenkins pipeline and a Kieker developer will be notified to review the pull request.
  6. If both finished successfully, the merge is initiated by a Kieker developer.
  7. Finally the new state of the master branch will run through the Jenkins pipeline and eventually (if the pipeline succeeded) pushed to the stable branch.