Thanks a lot for your response, and sorry for my late response.

how do you intend downstream CIs in flink / flink-statefun to be using
> this?
> Would there be released artifacts from `flink-project-utils` to expose
> each tool (e.g. the `LicenseChecker`)?


My idea was that flink and flink-statefun would just clone the
flink-project-utils repository, build the tool locally and run it, without
releasing the artifacts anywhere.
The build takes just a few seconds, and the maintenance overhead is a
little lower with this approach.

I also considered building a maven plugin, but I guess forking the
maven-shade-plugin is the only feasible option. Adding a custom
maven-shade-transformer is not feasible, since we won't have access to the
required data.
All this sounded too complicated, so I discarded the idea.


Thanks a lot for the list of copied utilities. I guess if we are adding
more sister projects to Flink, or splitting the main repo in the future, we
need to look into coming up with a properly written set of shared release
utilities.

I have the feeling that currently the effort for creating a separate
repository is not justified for just checking one module in flink-statefun.
Let's revisit this in the future.


On Fri, Nov 6, 2020 at 4:28 AM Tzu-Li (Gordon) Tai <tzuli...@apache.org>
wrote:

> Hi Robert,
>
> I think this could be useful in flink-statefun.
>
> StateFun currently has two modules that bundles dependencies, most
> importantly the `flink-statefun-distribution` module which currently
> bundles some Flink dependencies as well as Flink connectors (Kafka,
> Kinesis).
> Upgrading the Flink version in StateFun typically involves a bulk update on
> the NOTICE of that module, so some automatic validation in CI could help
> with that.
> The other module that bundles dependencies is the StateFun examples, which
> we've been thinking about stopping to release Maven artifacts for.
>
> On Thu, Nov 5, 2020 at 9:54 PM Robert Metzger <rmetz...@apache.org> wrote:
>
> > 1. Is this relevant for flink-statefun?
> >
>
> So, really there is only one module that would benefit from this tool
> (which could possibly be enough already for sharing to make sense).
> To justify the efforts for sharing this nice utility, I'd like to have a
> better idea of: how do you intend downstream CIs in flink / flink-statefun
> to be using this? Would there be released artifacts from
> `flink-project-utils` to expose each tool (e.g. the `LicenseChecker`)?
> It almost looks as if it would be easiest to reuse this tool if it was
> provided as a Maven plugin, though I'm not sure how possible that is and
> probably out-of-scope for this discussion.
>
>
> >
> > 2. For the repository name, what do you think about
> "flink-project-utils" ?
> > I'd like to use a generic name so that we can potentially share other
> > internal utilities.
> >
>
> I like the idea of sharing internal utilities in general across the two
> repos.
>
> To gauge how useful this repo would be in the end, here's some info on what
> StateFun has copied already to flink-statefun:
>
>    - About to copy checking for dead links in docs [1]
>    - Several release-related scripts for creating source bundles, deploying
>    staging jars, updating branch version, etc. [2]. However, these have
>    somewhat evolved in StateFun to tailor it for flink-statefun, so I
> guess it
>    would not make sense to share release related tooling.
>    - Utility around building the documentation (currently flink and
>    flink-statefun share the same Jekyll setup).
>
> Best,
> Gordon
>
> [1] https://github.com/apache/flink-statefun/pull/171
> [2] https://github.com/apache/flink-statefun/tree/master/tools/releasing
>

Reply via email to