On 21 September 2013 23:09, Jason van Zyl <ja...@tesla.io> wrote:
>
> On Sep 21, 2013, at 2:51 PM, sebb <seb...@gmail.com> wrote:
>
>> On 21 September 2013 22:28, Jason van Zyl <ja...@tesla.io> wrote:
>>> You will now be infamous :-)
>>>
>>> https://github.com/jvanzyl/sebbalizer
>>>
>>> If you don't like the name, happy to change it. I thought it was 
>>> appropriate and meant as a compliment for being thorough.
>>
>> Thanks, but no thanks.
>> Sorry, but I don't like the association.
>>
>
> No problem.
>
> https://github.com/jvanzyl/source-release-validator

Thanks.

>>> With a given staging URL, groupId, artifact, and version it will retrieve 
>>> the source archive, and binary archive and the corresponding SHA1s and 
>>> validates the SHA1s are right. It unpacks both the archives, digs into the 
>>> binary archive to find the maven-core JAR to retrieve the build.properties 
>>> which contains the SHA1 of the release revision from which the source 
>>> archive was made. A git clone is performed and moved to the release 
>>> revision. A check is performed to ensure that each file in the source 
>>> archive is present in the release revision and that the SHA1 of the each 
>>> file in the source archive matches the SHA1 of the file from the 
>>> corresponding release revision.
>>>
>>> So for this release using the Sebbalizer I only found the DEPENDENCIES file 
>>> to not exist in the release revision, every other file I consider valid and 
>>> verified. I believe that for this release no errant files slipped in and 
>>> it's good.
>>>
>>> People should review the code. I spent an hour on this by yanking a bunch 
>>> of stuff together so it might very well have errors. I have one hardcoded 
>>> url for the Git repository but I'll pull that out of the POM and then 
>>> hopefully it can be used generally to validate source archives for releases.
>>
>> The general procedure seems fine, but the SCM coordinates still need
>> to be in the release vote in order to tie everything together for the
>> release vote, and for the historical record.
>>
>> Rather than pick out the details from the maven-core jar, the
>> information should be taken from the release vote e-mail.
>
> No, I think an automated way is better.

It would still be automated.
However the source data would come form the vote e-mail, which makes
more sense to me.

> As part of the release the release revision should be made available for use 
> in the email.

I agree the release revision needs to be part of the e-mail; that is
what I have been requesting all along.

>> That can then be used to ensure that the artifacts match the release
>> vote, and that the sources match the SCM tag.
>> The build.properties entry should be checked to ensure it is the same
>> as the value from the release vote mail.
>
> I want to go in the direction of automation and to generate this as part of 
> the release so it will contain the revision.

+1

> Going from a manually generated email is not a good solution.

I disagree; so long as the e-mail has a reasonably standard format, it
should be easy enough to extract the data to to the checks.

> I can see the need for a secondary reference but I'm going to fully automate 
> it.

It's not a secondary reference.
The vote e-mail is the primary reference.

> If I turn this tool into a Nexus Plugin I can potentially just generate the 
> email.

Again, I think that's backwards.

The point is that any reviewer needs to be able to check the release.

> At any rate, I understand your concern to make sure there are no errant files 
> and I believe this tool addresses those concerns.

The problem is that without the SCM coordinates it's not possible for
a reviewer to independently check the source contents.
They may use your tool to do so, or they may use other methods; that
is up to them.
The point is that it must be possible to independently audit the source release.

The vote e-mail chain is the official means by which releases are sanctioned.
Therefore the vote e-mail needs to contain all the required
information; it should not be necessary for the reviewer to go digging
for the information.

> I think at this point with this it's not really necessary to put the release 
> revision in the email template but that's for the PMC to decide. I'll 
> continue to use the official template but I will also run this tool as part 
> of the core releases.

>>
>>> On Sep 20, 2013, at 5:40 PM, sebb <seb...@gmail.com> wrote:
>>>
>>>> On 17 September 2013 16:39, Jason van Zyl <ja...@tesla.io> wrote:
>>>>> Hi,
>>>>>
>>>>> Maven Core ITs are good, and the license/notice issue has been resolved 
>>>>> so I'm rolling 3.1.1 again.
>>>>>
>>>>> Here is a link to Jira with 6 issues resolved:
>>>>> https://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=10500&version=18968
>>>>>
>>>>> Staging repo:
>>>>> https://repository.apache.org/content/repositories/maven-065/
>>>>>
>>>>> The distributable binaries and sources for testing can be found here:
>>>>> https://repository.apache.org/content/repositories/maven-065/org/apache/maven/apache-maven/3.1.1/
>>>>>
>>>>> Specifically the zip, tarball, and source archives can be found here:
>>>>> https://repository.apache.org/content/repositories/maven-065/org/apache/maven/apache-maven/3.1.1/apache-maven-3.1.1-bin.zip
>>>>> https://repository.apache.org/content/repositories/maven-065/org/apache/maven/apache-maven/3.1.1/apache-maven-3.1.1-bin.tar.gz
>>>>> https://repository.apache.org/content/repositories/maven-065/org/apache/maven/apache-maven/3.1.1/apache-maven-3.1.1-src.zip
>>>>> https://repository.apache.org/content/repositories/maven-065/org/apache/maven/apache-maven/3.1.1/apache-maven-3.1.1-src.tar.gz
>>>>>
>>>>> Source release checksum(s):
>>>>> apache-maven-3.1.1-src.zip sha1: 2251357aa47129674df578e787504b72cd57ed4d
>>>>
>>>> The full scm coordinates are needed.
>>>> The pom includes the git URL and tag, but that is not immutable.
>>>> Exactly the same tag was used for the previous vote.
>>>>
>>>> To identify the source archive uniquely, additional info such as a
>>>> hash is needed, so the hash is now included in the vote e-mail.
>>>> The same applies to the SCM tag.
>>>>
>>>>> Staging site:
>>>>> http://people.apache.org/~jvanzyl/maven-3.1.1/
>>>>>
>>>>> Vote open for 72 hours.
>>>>>
>>>>> [ ] +1
>>>>> [ ] +0
>>>>> [ ] -1
>>>>>
>>>>> Thanks,
>>>>>
>>>>> The Maven Team
>>>>> Thanks,
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
>>>> For additional commands, e-mail: dev-h...@maven.apache.org
>>>>
>>>
>>> Thanks,
>>>
>>> Jason
>>>
>>> ----------------------------------------------------------
>>> Jason van Zyl
>>> Founder,  Apache Maven
>>> http://twitter.com/jvanzyl
>>> ---------------------------------------------------------
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
>> For additional commands, e-mail: dev-h...@maven.apache.org
>>
>
> Thanks,
>
> Jason
>
> ----------------------------------------------------------
> Jason van Zyl
> Founder,  Apache Maven
> http://twitter.com/jvanzyl
> ---------------------------------------------------------
>
>
>
>
>
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org

Reply via email to