I’ve found some success now using 
org.apache.maven.plugin-testing:maven-plugin-testing-harness:3.3.0. You may 
disregard the following questions.

Cheers,
-Rob

> On Jan 6, 2018, at 2:03 PM, Rob Tompkins <chtom...@gmail.com> wrote:
> 
> Hello again Maven Team,
> 
> I’ve made substantive progress towards getting the commons team a release 
> plugin (https://github.com/chtompki/commons-release-plugin 
> <https://github.com/chtompki/commons-release-plugin>). However, in my attempt 
> at writing plugin unit tests for the first time, I’ve found myself running 
> into difficulties in dealing with which dependencies need to be in the 
> classpath to effectively run the maven-plugin-testing-harness. 
> 
> I was hoping to get another set of eyes on my work, namely the pom and the 
> unit test that is in flight (see the above repository), such that I can get 
> around these classpath issues and start writing proper tests for the plugin. 
> It is quite easy to see the issues that I’m having by cloning the project and 
> running “mvn test:"
> 
> Running org.apache.commons.release.plugin.mojos.CommonsSiteCompressionMojoTest
> Jan 06, 2018 2:00:13 PM org.eclipse.sisu.inject.Logs$JULSink warn
> WARNING: Error injecting: 
> org.apache.maven.artifact.resolver.DefaultArtifactResolver
> java.lang.NoClassDefFoundError: 
> Lorg/apache/maven/artifact/transform/ArtifactTransformationManager;
>         at java.lang.Class.getDeclaredFields0(Native Method)
>         at java.lang.Class.privateGetDeclaredFields(Class.java:2583)
>         at java.lang.Class.getDeclaredFields(Class.java:1916)
> 
> Any guidance here would be much welcomed, and moreover I can’t thank you guys 
> enough for the previous insights because they gave me the ability to make 
> solid progress on our release automation.
> 
> Many thanks and all the best,
> -Rob
> 
> 
>> On Dec 28, 2017, at 4:53 PM, Rob Tompkins <chtom...@gmail.com 
>> <mailto:chtom...@gmail.com>> wrote:
>> 
>> 
>> 
>>> On Dec 28, 2017, at 4:05 AM, Hervé BOUTEMY <herve.bout...@free.fr 
>>> <mailto:herve.bout...@free.fr>> wrote:
>>> 
>>> Hi Rob,
>>> 
>>> one additional point: currently, for Maven itself, instead of adding new 
>>> Maven-specific ReleasePhase(s) to the default configuration, or configure 
>>> them in 
>>> our parent pom (I'm not sure documentation on how to do that is available: 
>>> I 
>>> could not find it), we chose first to create a separate "dist-tool" to 
>>> check 
>>> consistency of what is currently published in misc places and provide some 
>>> commands to fix when an inconsistency is found.
>>> 
>>> This happens through daily reports done by a Jenkins job [1]:
>>> - distribution area vs Maven Central [2] 
>>> - version from Maven site vs Maven Central [3]
>>> 
>>> We did not produce any release nor made it really configurable for 
>>> conventions 
>>> different from Maven ones (like Common's -src & -bin), but at least there 
>>> is a 
>>> configuration file to define artifacts to check [4]
>> 
>> Interesting. Thanks,.
>> 
>> -Rob
>> 
>>> 
>>> HTH
>>> 
>>> Hervé
>>> 
>>> 
>>> [1] https://builds.apache.org/view/M-R/view/Maven/job/dist-tool-plugin/ 
>>> <https://builds.apache.org/view/M-R/view/Maven/job/dist-tool-plugin/>
>>> 
>>> [2] 
>>> https://builds.apache.org/view/M-R/view/Maven/job/dist-tool-plugin/site/ 
>>> <https://builds.apache.org/view/M-R/view/Maven/job/dist-tool-plugin/site/>
>>> dist-tool-check-source-release.html
>>> 
>>> [3] 
>>> https://builds.apache.org/view/M-R/view/Maven/job/dist-tool-plugin/site/ 
>>> <https://builds.apache.org/view/M-R/view/Maven/job/dist-tool-plugin/site/>
>>> dist-tool-check-index-page.html
>>> 
>>> [4] 
>>> https://builds.apache.org/view/M-R/view/Maven/job/dist-tool-plugin/site/ 
>>> <https://builds.apache.org/view/M-R/view/Maven/job/dist-tool-plugin/site/>
>>> dist-tool.conf.html
>>> 
>>> Le mercredi 27 décembre 2017, 23:32:49 CET Rob Tompkins a écrit :
>>>> Stephen,
>>>> 
>>>> I can’t thank you enough for your reply. I’ll take your suggestions and
>>>> continue to sandbox around using the maven-release-plugin as a guideline.
>>>> 
>>>> All the best and happy holidays,
>>>> -Rob
>>>> 
>>>>> On Dec 26, 2017, at 5:27 AM, Stephen Connolly
>>>>> <stephen.alan.conno...@gmail.com 
>>>>> <mailto:stephen.alan.conno...@gmail.com>> wrote:> 
>>>>> On Tue 26 Dec 2017 at 03:10, Rob Tompkins <chtom...@apache.org 
>>>>> <mailto:chtom...@apache.org> 
>>> <mailto:chtom...@apache.org <mailto:chtom...@apache.org>>> wrote:
>>>>>> Hello all,
>>>>>> 
>>>>>> Pardon, maybe this should have gone to your @user list, but why not ping
>>>>>> the dev crew. I’ve been playing around the ideas surrounding our fairly
>>>>>> manual release process for the components in Commons, and I was hoping
>>>>>> for
>>>>>> some insights.
>>>>>> 
>>>>>> Scripting the version changes isn’t really that big of a deal for us, and
>>>>>> that I can manage. But, when it comes to publishing our artifacts to the
>>>>>> apache nexus repository, and then separately publishing our -src and -bin
>>>>>> assemblies to the dev dist subversion repository (and consequently
>>>>>> deleting
>>>>>> those artifacts from nexus as they’re “attached” for the purpose of gpg
>>>>>> signing), I feel it a tad cumbersome.
>>>>>> 
>>>>>> I’ve fiddled around a little with the idea of detaching the -src and -bin
>>>>>> assemblies after gpg signing with some success, but then I have to delve
>>>>>> into the mechanics of publishing those up to the subversion repository,
>>>>>> and
>>>>>> clearly that problem has already been solved.
>>>>> 
>>>>> Is your problem you don’t want those going to Nexus staging but only to
>>>>> dist? Or is it that you want them *also* going to dist.
>>>>> 
>>>>> Personally... I see no reason to remove them from going to Nexus staging
>>>>> (in fact I have a background plan to add secondary signing support to
>>>>> staging... i’m Waiting to see the Nexus 3 staging APIs before attempting
>>>>> though. That would mean that the PMC would be able to *add* their GPG
>>>>> signature to the staged artifacts as part of the voting... in which case
>>>>> you’d want to hold off uploading to dist until *after* the vote so you get
>>>>> the full set of signatures)
>>>>> 
>>>>> If you want to upload a subset of attached artifacts to dist as part of
>>>>> the
>>>>> release, that seems much more tenable... just a derivative of the
>>>>> scm-publish plugin from what I can see.
>>>>> 
>>>>> So I find myself in the space of trying to shoehorn our process into its
>>>>> 
>>>>>> the main maven-release-plugin, which I’ve found a tad difficult, versus
>>>>>> writing our own release plugin, which feels like I would be duplicating
>>>>>> tons of code (which I don’t want to do).
>>>>> 
>>>>> So the release plugin is really two parts:
>>>>> 
>>>>> 1. A toolkit for writing release plugins
>>>>> 
>>>>> 2. An example that does the job for the requirements of the Maven TLP and
>>>>> has seemed “sufficient” for a lot of other people.
>>>>> 
>>>>> As such, if you have different needs, do not feel bad about having to
>>>>> encode differently... hopefully the toolkit half of the codebase is
>>>>> sufficient for you.
>>>>> 
>>>>>> I’m curious if you guys have any thoughts on the matter as I’ve been
>>>>>> playing around in the space for a little while now.
>>>>>> 
>>>>>> Cheers and happy holidays from UTC-5,
>>>>>> -Rob
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org 
>>>>>> <mailto:dev-unsubscr...@maven.apache.org>
>>>>>> <mailto:dev-unsubscr...@maven.apache.org 
>>>>>> <mailto:dev-unsubscr...@maven.apache.org>> For additional commands,
>>>>>> e-mail: dev-h...@maven.apache.org <mailto:dev-h...@maven.apache.org> 
>>>>>> <mailto:dev-h...@maven.apache.org <mailto:dev-h...@maven.apache.org>>
>>>>>> 
>>>>>> --
>>>>> 
>>>>> Sent from my phone
> 

Reply via email to