We have a multi-module Apache project, with an extra project just for specifying
the aggregation of the parts (it has <modules> element) and doing the aggregate
source and binary assemblies. 

These assemblies are fairly large - 16 mb each, by the time the javaDocs etc.
are included.

When a release happens, we previously have been putting these artifacts in the
Apache distribution spot (only), for the Apache mirror system to make available
- all works fine.

Now, we are trying to better align with the Maven way, and are using Nexus.  The
default for assemblies will attach these 16 mb things as artifacts of the
aggregation project, and mvn release:perform will put them into the Nexus
repository.

And when we then vote and the vote passes, they will get "released" from the
staging spot in Nexus up to Maven central.

Is this OK for these big assemblies (both binary and source)?  I would also copy
these to the Apache distribution spot, to have them automatically mirrored, in
addition.  Is this the right approach?

I experimented with marking the binary assembly with the configuration
<attach>false</attach> - this works, and prevents it from going up to Nexus (and
then on to Maven central), but has the bad side effect of preventing the
maven-gpg-plugin from signing that artifact.  This is because the maven gpg
plugin only signs "attached" artifacts.  So, I'm thinking the Maven standard
conventional way is to just go ahead and include these big assemblies as
attached artifacts, and let them take up space in Maven central, even though
they're also in the conventional Apache distribution (with mirrors) system.  Is
that the best practice?

-Marshall Schor

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

Reply via email to