How-To contribute

From AGILE IoT Wiki
Revision as of 12:08, 27 November 2018 by Cskiraly (talk | contribs) (Reporting Issues)
Jump to: navigation, search

Report Bugs and Enhancements

Download the latest version of AGILE and verify that the issue still appears. If it does, please check the the agile-issues repository for for the same problem encountered by others and join the discussion, or create a new issue following the provided report template. Note that this repository is for bug reports and feature requests only. Support requests should be sent to

Enhancements: the the agile-issues repository is also available for starting a structured discussion on your killer feature ideas! Noy yet ready to formulate your idea? Head to and talk to the community!

Code Contribution

code is licensed under the Eclipse Public License 2.0. In order to keep the code clean, code contribution should also follow Eclipse procedures. We differentiate several types of contributions and procedures slightly differ between them, so please make sure to follow the appropriate one. We are also happy to discuss feature request or other proposals on

Fixes for existing repositories

For your code to be considered, you should use the GitHub pull request (PR) mechanism of the specific repository. Please create a GitHub user, fork our repository, develop your change on a dedicated (topic) branch, and prepare an upstream PR against our repository (preferably the master branch).

For you code to be accepted, you should also be either an Eclipse Committer or Contributor. This latter is a simple procedure, which we need in order to guarantee that your code is compliant with the terms of the License.

New device implementation

Please create a GitHub PR against the agile-core repository. Your PR should not contain anything else than the implementation of the device class. For your device can be included, we need to code under EPL2.0, and therefore you should either be an Eclipse Committer or Contributor.

New protocol implementations

Protocol implementations are added to the system at docker compose level. We can include your protocol implementation in the codebase if it is correctly licensed under the Eclipse Public License 2.0. For closed source and non EPL licensed protocol implementations, we are happy to host pointers in our Wiki, but we cannot directly link them to the code.

In both cases, please provide a "feature request issue in the agile-issues repository, containing:

  1. Link to a repository with your code,
  2. The docker-compose fragment required to add your code the the system,
  3. A walk-through like example of how your protocol can be used in the system.