Re: [DISCUSSION] Kubernetes Helm
It certainly doesn't sound right to have to have separate builds of
Brooklyn for different platforms, and especially not just for this
feature. Can we build the dependency package into a bundle for each
platform, so that it is the only thing that is platform specific, and
provide all three bundles along with the distribution of Brooklyn? Then on
whatever target platform you are on, OSX, Linux, Windows, you install the
right dependency bundle for that platform into Brooklyn's Karaf?
On Mon, 16 Apr 2018 at 12:18 Thomas Bouron <thomas.bouron@xxxxxxxxxxxxxxxxx>
> Hi Brooklyners.
> You might have noticed that the Brooklyn builds started to fail more than
> usual recently. I spent some time last week to fix those issues but I just
> realised that there is a deeper one with the recent change I merged (about
> Kubernetes Helm)
> This change requires a dependency, which depends on some native code. Now,
> this dependency exists for 3 platforms: macOS, Linux and Window. The issue
> is that the "right" dependency is included at build time via the maven
> classifier, and the way it is picked is by looking at the current build OS
> and selecting the corresponding one. Obviously, this leads to nasty
> problem: as all our builds are done on Linux, Brooklyn artifacts only work
> on Linux. Not only that, the classifier is dynamically picked and set as
> envvar by a plugin. This is also an issue for any downstream projects.
> While we want this feature in Brooklyn, I don't think this is acceptable
> for our users therefore I reverted the changes and started this
> conversation. What do you think would be the best approach to fix this?
> Having 1 build per platform doesn't sound good as it won't be portable
> anymore. Maybe we can find another dependency without a link to native
> Thomas Bouron • Senior Software Engineer @ Cloudsoft Corporation •
> Github: https://github.com/tbouron
> Twitter: https://twitter.com/eltibouron