Uploaded image for project: 'Camel'
  1. Camel
  2. CAMEL-19465

Move Apache snapshots repository to a separate Maven profile for better build reproducibility



    • Task
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 4.0-RC2, 4.0.0
    • build system
    • None
    • Unknown


      Remote Maven snapshots are handy for third parties to quickly integrate with the newest changes in Camel. However, they should not be enabled as a part of the default build of Camel itself. Enabling them may cause or hide several kinds of issues:

      • There is no guarantee that the state of the snapshot repository is consistent: at any point in time it can contain artifacts from one or more builds that were based on one or more source commits. Combining artifacts built from multiple builds can lead to all kinds of incompatibilities or the other way round, it can happily hide an incompatibility introduced recently.
      • The snapshots are deployed with some delay against the state of the main branch. A new module merged to main now will be available only after few hours in the snapshots repo. This will inevitably make all PR CI jobs that rely on snapshots fail in that period.
      • Snapshots are simply "the latest": latest today is not the same as latest tomorrow. That breaks the reproducibility of the builds.

      Hence I am hereby proposing to move Apache snapshots repository to a separate Maven profile so that folks wanting to use it can continue to do so, but the default build will become more reliable and reproducible.


        Issue Links



              ppalaga Peter Palaga
              ppalaga Peter Palaga
              0 Vote for this issue
              2 Start watching this issue