This is a draft to merge the extensions and installer repo to the core repo


Why?

  • The release process is complicated, so that we have problems to get enough votes as it is really time-consuming
  • The release process is also complicated for the RM
  • Having a single repo makes it easier for new users and developers to work with StreamPipes
  • Versioning and refactoring becomes easier
  • Users can download a single source artifact containing all installation options


Proposed steps

  • Move the content from incubator-streampipes-extensions into an extensions subfolder of the core project
  • Move the content from incubator-streampipes-installer into an installer subfolder of the core project
  • Merge the code including the git history if possible
  • Clean and harmonize the pom file of incubator-streampipes-extensions
  • Add a relative path to the pom files of each extensions module
  • Ask Infra to archive the incubator-streampipes-extensions and incubator-streampipes-installer repos


Branches to transfer from incubator-streampipes-extensions

  • dev


Branches to transfer from incubator-streampipes-installer

  • dev
  • No labels

5 Comments

  1. Hi Dominik, 

    thanks for creating the wiki page.

    I was wondering how the final folder structure will look like, because you only mentioned to create a folder for extensions and installer.

    My suggestion would be to also create a separate folder for the backend and ui.

    So my suggestion would be:

    • /
    • /backend
    • /extensions
    • /installer
    • /ui

    Any thoughts on that?

  2. Such a structuring would def provide the most radical initial overview on the project itself. Yet, if proceeding with this I would suggest not to name it "backend" but "core" as it is not only containing backend service with the pipeline management etc but also foundational underlying modules, e.g., for wrappers etc.

    • streampipes-core
    • streampipes-extensions
    • streampipes-installer
    • streampipes-ui


    But for me I also think simply adding streampipes-extensions and streampipes-installer would work as well. Yet they are not easily "spotted" due to the alphabetical ordering.

  3. Patrick WienerI agree, core is a better name then backend 

  4. I'd prefer to keep all core modules at the top level so that the core pom file manages the whole project.

    When moving both core and extensions to separate subfolders, we would need to deal with more relative path settings, which makes project builds more complicated.

    At least for the installer, I'd also prefer to name it without a "streampipes" prefix to make clear it's not a Maven module.

  5. Dominik Riemerthis is fine me. I agree this would serve the project management better. Then having extensions including prefix "streampipes" and installer without