I would argue that examples depend more directly on runtimes, apps or
drools than in tools or images, basically because a regression in tools
code will hardly make any example IT to fail, but a regression in runtimes,
apps or drools will certainly cause almost all examples to malfunction. In
fact, in most cases, tool dependency is just an optional add-on to the
example, it's not part of the core functionality of the example. A proof of
that is that if the tool dependency is removed, most examples will still
work (without the fancy graphical tool, but will still work). So, from that
point of view, it is kind of strange that examples are moved precisely to
the repo they have the weaker link to (I'm not arguing to remove the
dependency because I feel tools are a pivotal part of the platform that
makes a difference and we want to showcase that in our examples). We also
have a couple of examples that, trying to illustrate k8s usage (which is
also pivotal, but not strictly needed, because the platform also runs on
baremetal), are really required to be executed after everything else has
been compiled, tested and deployed.
With that in mind, I think that moving stuff to the last repository in the
chain (because I guess that's the reason Tools was the chosen one) should
be a kind of last resort, we need to explore the CI issue first. Maybe it
is not that hard (for a person with enough knowledge of the internals of
the CI pipeline, I'm clearly not that person) to execute examples at the
end of the CI pipeline. And definitely branching examples repo for release
at the same time than the other repos should not be a huge problem either
and I think it can be done independently of the CI order question.







On Wed, Jan 8, 2025 at 8:17 PM Alex Porcelli <[email protected]> wrote:

> Francisco, I think some clarifications are needed.
>
> By “properly maintained,” I’m referring to examples that are fully
> integrated into our CI pipeline and constantly updated to track the
> project’s versions, including release versions. In my view, ensuring
> that examples work not just with 999-SNAPSHOT but also released
> versions is critical.
>
> Regarding Snapshot Usage, while having examples automatically point to
> 999-SNAPSHOT is helpful for early testing, we need to be cautious.
> Apache guidelines discourage the promotion of snapshot artifacts as a
> primary means of distribution. Hence, it’s important to offer examples
> that align with actual release versions as well.
>
> Current CI Limitations, although the examples repo is nominally
> integrated into CI for the runtimes and apps, the setup is not
> functioning as intended. Many examples require DevUI or container
> images built in the kie-tools repository, which aren’t fully captured
> in the current pipeline. This makes it difficult to trust CI results
> entirely.
>
> And finally, my last proposal includes relocating the examples to the
> kie-tools repo (under an /examples folder) so they can be developed,
> built, and tested alongside the assets they depend on (DevUI,
> container images, etc.). And part of this move, I commit myself to
> adjust the release CI to produce a dedicated “examples artifact”. This
> should resolve the dependency and version-sync issues while still
> allowing us to release the examples separately.
>
> I hope these clarifications help. Please let me know if you have any
> questions or concerns.
>
>
>
>
> On Wed, Jan 8, 2025 at 4:55 AM Francisco Javier Tirado Sarti
> <[email protected]> wrote:
> >
> > Hi Alex,
> > We need to define "properly maintained" ;). Currently, examples repo is
> > integrated into the CI pipeline for runtimes and apps. This means that if
> > some change in runtimes or apps repos breaks an example, the PR will be
> red
> > and won't be merged.
> > That's another layer of "security" from a quality perspective and forces
> us
> > to keep examples working.
> > They are also a good way for community users to test the latest changes
> on
> > main before they are released. If they checkout main branch, since, by
> > default, examples on main point to 999-SNAPSHOT version, they will be
> using
> > latest snapshot, which is a good alternative for users that do not want
> to
> > wait  for a release to perform experiments.
> > Therefore, I think your latest proposal is great. We keep everything as
> it
> > is and release examples separately.
> > Thanks a lot.
> >
> >
> >
> > On Wed, Jan 8, 2025 at 1:17 AM Alex Porcelli <[email protected]> wrote:
> >
> > > Thanks for sharing your perspective, Francisco. You raise a valid
> > > point about user experience; however having a dedicated examples repo
> > > doesn’t necessarily help if it isn’t properly maintained—what’s the
> > > purpose of an examples repository if it doesn’t reference the current
> > > release?
> > >
> > > One idea to address this, which we could borrow from our IBM
> > > colleagues, is to create a separate release artifact for the examples.
> > > We could then publish the artifact content into a dedicated repository
> > > manually whenever we cut a release. This way:
> > >
> > > - Maintenance & Integration: We still integrate the examples in our
> > > main build process (so they remain aligned with each release).
> > > - User-Friendly Browsing: At the same time, the standalone examples
> > > repository remains easy to browse, avoiding the complexity of a large,
> > > all-in-one codebase.
> > >
> > > This approach keeps the examples maintained in sync with releases
> > > while offering a simpler path for users to find and explore them
> > > without wading through the entire repository structure—which can be
> > > overwhelming.
> > >
> > > I volunteer myself to adjust the CI to produce this artifact in the
> > > release pipeline.
> > >
> > > On Tue, Jan 7, 2025 at 6:51 AM Francisco Javier Tirado Sarti
> > > <[email protected]> wrote:
> > > >
> > > > Hi,
> > > > I can see why it is easier, from a technical point of view, since
> some
> > > > examples rely on tooling, to move all examples to tooling repo.
> > > > However, I hardly see why this makes users' experience better.
> > > > Let me elaborate, With examples repo, we currently have a place where
> > > users
> > > > can browse all examples starting from the repo root.
> > > > With tooling repo, I guess they will start browsing under examples
> > > > directory?
> > > > If we are going for technical simplicity, I guess it is probably
> time to
> > > be
> > > > coherent and move all KIE content under the same repo (I'm not for
> it,
> > > but
> > > > I have the feeling that there is a majority in favour of that, so
> > > probably
> > > > time to vote?).
> > > > Which I feel is really awkward is to have different strategies under
> the
> > > > same label (some content in some separate repos and gradually moving
> > > > everything to a repo named "tools" which is not really just "tools"
> > > > anymore)
> > > >
> > > >
> > > > On Mon, Jan 6, 2025 at 5:26 PM Jason Porter <[email protected]
> >
> > > wrote:
> > > >
> > > > > I know it makes for a larger repo, but I’m all for fewer
> repositories,
> > > and
> > > > > an easier setup for not only contributors, but all users.
> > > > >
> > > > > --
> > > > > Jason Porter
> > > > > Software Engineer
> > > > > He/Him/His
> > > > >
> > > > > IBM
> > > > >
> > > > >
> > > > > From: Alex Porcelli <[email protected]>
> > > > > Date: Monday, January 6, 2025 at 03:01
> > > > > To: [email protected] <[email protected]>
> > > > > Subject: [EXTERNAL] [DISCUSS] Missing kogito-examples update for
> the
> > > > > 10.0.0 release!
> > > > > Happy new 2025, everyone!
> > > > >
> > > > > As we discussed when we started the 10.0.0 release process, the
> > > > > kogito-examples repository was neither included in the release nor
> > > fully
> > > > > integrated into CI. Although some PR checks consider
> kogito-examples,
> > > this
> > > > > gap ultimately led to absent examples for the 10.0.0 release.
> > > > >
> > > > > Currently:
> > > > >
> > > > > - The stable branch remains on versions 1.44 and 8.44
> > > > > - The main branch is on 999-SNAPSHOT
> > > > >
> > > > > Given that many of the kogito-examples rely on container images and
> > > Dev UI,
> > > > > we'd need to incorporate the repository into our CI system to
> improve
> > > the
> > > > > current situation, which might take some time and will likely
> impact
> > > the
> > > > > upcoming releases.
> > > > >
> > > > > Alternatively, we could move the examples to kie-tools (a repo that
> > > already
> > > > > hosts all images and DevUI) so no CI changes would be required.
> > > > >
> > > > > I would love to hear your thoughts, alternative ideas, or concerns
> so
> > > we
> > > > > can have an actionable plan to do better in the next release.
> > > > >
> > > > > Regards,
> > > > > Alex
> > > > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [email protected]
> > > For additional commands, e-mail: [email protected]
> > >
> > >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>

Reply via email to