Hi Robert,

Here are my quick thoughts about this.

It seems like this approach would lose the benefits of running the
analyse-features goal to find any conflicts that the new SNAPSHOT may have
introduced.  The errors from the feature analyzer are more descriptive (and
fail faster) than just getting an error that the server timed out after
failing to start due to some bundle failing to resolve.

How would you feel about using the slingfeature-maven-plugin to generate a
new testing_oak_tar aggregate that includes the starter's oak_tar feature +
adds the new SNAPSHOT with an artifactsOverrides configuration to prefer
the SNAPSHOT version?  I believe that this approach would not require any
changes to the sling-feature-launcher-maven-plugin at all.  Plus this
approach should make it possible to override features and configurations as
well if any are defined in the project you are testing (for example,
the org-apache-sling-jcr-maintenance project)

Regards,
-Eric

On Mon, Jun 13, 2022 at 7:41 AM Robert Munteanu <romb...@apache.org> wrote:

> Hi,
>
> I think it would be useful to be able to optionally run the Starter ITs
> when building a module that is part of the Sling Starter. This way we
> catch various errors sooner and we can get this feedback as part of PR
> checks.
>
> I have written down some notes about how this could work at [0]. I have
> also worked on a proof of concept that has two parts:
>
> 1. The ability to override the version of an artifact when using the
> feature-launcher-maven-plugin - [1], [2]
> 2. A parent pom profile that sets up the Maven executions needed to run
> the ITs with the overridden version of the bundle - [3], [4]
>
> With this solution, all that is going to be needed in the end is to run
>
> $ mvn clean verify -Dit.starter.version=13-SNAPSHOT
>
> My plan is to merge the needed changes on Friday so I can work on the
> Jenkins part next week and enable it in a couple of sensitive modules.
>
> I don't plan to enable it unconditionally on all modules from the
> Starter until:
>
> - we have a good understanding of how well this works
> - have a solution that does not require touching every module
> definition to enable the tests
>
> Thoughts?
>
> Thanks,
> Robert
>
>
> [0]:
>
> https://cwiki.apache.org/confluence/display/SLING/Running+Sling+Starter+integration+tests+with+module+builds
> [1]: https://issues.apache.org/jira/browse/SLING-11387
> [2]:
> https://github.com/apache/sling-feature-launcher-maven-plugin/pull/8
> [3]: https://issues.apache.org/jira/browse/SLING-11395
> [4]:
> https://github.com/apache/sling-feature-launcher-maven-plugin/pull/8
>

Reply via email to