> Thanks Dawid – great work!

Thank you all. I don't think it's particularly great, but definitely a
step forward from ant which has gotten very complex and where simple
things are difficult to achieve. Gradle is not without its own issues
(some known, some waiting to be discovered) but it is manageable I
think.

> there is a small problem with Jenkins (still running ANT build; I may add a 
> second one running the gradle build!):

Gradle on a CI will require some overrides -- I'd disable the daemon
and set the number of workers manually. Something like:

./gradlew --no-daemon --max-workers=5 ...

In the initial stage it'd be enough if you just ran precommit and
other checks, without tests:

./gradlew --no-daemon --max-workers=5 precommit check -x test

This would be helpful enough! Of course you can run tests as well but
they take approximately the same amount of time as with ant in my
experience.

> The Jenkins build does a license and JAR file check by first deleting all 
> checksum files and then regenerate all of them from the downloaded artifacts. 
> Afterwards it checks that the GIT checkout is clean. This is done to detect 
> obsolete or incorrect checksum files.

This only works for sha files, right? Because I removed quite a few
other dangling files when I implemented this for the gradle
counterpart (Gradle build does this kind of check as part of
precommit).

> With the gradle update you added the shaded jetty JAR file, but the old ANT 
> build seems to still use the old/different name. It means after checksum 
> regeneration the checkout is no longer clean:

Correct. The shaded jetty jar file is the only exception I made. It
just didn't fit the logical way those files are looked up (by their
real artifact name). In fact I ignore "start.jar" in gradle, otherwise
it'd be reported as a dangling file...

> /home/jenkins/workspace/Lucene-Solr-master-Linux/build.xml:494: Source 
> checkout is dirty (unversioned/missing files) after running tests!!! 
> Offending files:
>
> * solr/licenses/jetty-start-9.4.24.v20191120-shaded.jar.sha1

Can we correct it on ant's side somehow (by ignoring jetty-start-*)?
This file points at a real dependency and you can tell what this
dependency is while "start.jar.sha1" doesn't really mean anything (and
it isn't easy to figure out which license applies to it, etc.). There
are more oddball checksums in there that don't really match true
redistributed project dependencies [1] but this one is the most
annoying one I think.

D.

[1] 
https://github.com/apache/lucene-solr/blob/master/gradle/validation/jar-checks.gradle#L340-L368

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to