You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucenenet.apache.org by ni...@apache.org on 2020/04/25 08:17:52 UTC
[lucenenet] 03/04: build/Release.targets: Added target for
committing the release and added verification of signatures
This is an automated email from the ASF dual-hosted git repository.
nightowl888 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/lucenenet.git
commit 22345e248e6875010f66282a0f8bdc3ef986d575
Author: Shad Storhaug <sh...@shadstorhaug.com>
AuthorDate: Sat Apr 25 01:05:45 2020 +0700
build/Release.targets: Added target for committing the release and added verification of signatures
---
build/Release.targets | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 67 insertions(+)
diff --git a/build/Release.targets b/build/Release.targets
index b6be3af..c13fc15 100644
--- a/build/Release.targets
+++ b/build/Release.targets
@@ -99,6 +99,19 @@
<Exec WorkingDirectory="$(SvnDevDirectory)\$(PackageVersion)" Command="gpg --print-md MD5 $(ReleaseFileName).src.zip > $(ReleaseFileName).src.zip.md5" />
<Exec WorkingDirectory="$(SvnDevDirectory)\$(PackageVersion)" Command="gpg --print-md SHA512 $(ReleaseFileName).src.zip > $(ReleaseFileName).src.zip.sha512" />
+ <!-- Verify signatures -->
+ <Message Importance="high" Text=""/>
+ <Message Importance="high" Text="Verifying Signature of $(ReleaseFileName).bin.zip.asc..."/>
+ <Exec WorkingDirectory="$(SvnDevDirectory)\$(PackageVersion)" Command="gpg --verify $(ReleaseFileName).bin.zip.asc $(ReleaseFileName).bin.zip" />
+ <Message Importance="high" Text=""/>
+ <Exec WorkingDirectory="$(SvnDevDirectory)\$(PackageVersion)" Command="gpg --verify --status-fd 1 $(ReleaseFileName).bin.zip.asc $(ReleaseFileName).bin.zip" />
+
+ <Message Importance="high" Text=""/>
+ <Message Importance="high" Text="Verifying Signature of $(ReleaseFileName).src.zip.asc..."/>
+ <Exec WorkingDirectory="$(SvnDevDirectory)\$(PackageVersion)" Command="gpg --verify $(ReleaseFileName).src.zip.asc $(ReleaseFileName).src.zip" />
+ <Message Importance="high" Text=""/>
+ <Exec WorkingDirectory="$(SvnDevDirectory)\$(PackageVersion)" Command="gpg --verify --status-fd 1 $(ReleaseFileName).src.zip.asc $(ReleaseFileName).src.zip" />
+
</Target>
<Target Name="CommitReleaseCandidate" Label="Commits a release candidate to Subversion for review before [VOTE]" Condition="'$(AssemblyName)' == 'Lucene.Net' ">
@@ -119,4 +132,58 @@
<Exec WorkingDirectory="$(SvnDevDirectory)" Command="svn commit -m"Added $(ReleaseFileName) to dev/lucenenet"" />
</Target>
+ <PropertyGroup>
+ <SvnDevKeysFile>$(SvnDevDirectory)\KEYS</SvnDevKeysFile>
+ <SvnDevDiscardLocalChanges>true</SvnDevDiscardLocalChanges>
+ <SvnReleaseDiscardLocalChanges>true</SvnReleaseDiscardLocalChanges>
+ </PropertyGroup>
+
+ <ItemGroup>
+ <SvnDevReleaseFiles Include="$(SvnDevDirectory)\$(PackageVersion)\**\*.*" />
+ </ItemGroup>
+
+ <Target Name="CommitRelease" Label="Commits a release to Subversion after successful [VOTE]" DependsOnTargets="CheckoutRelease" Condition="'$(AssemblyName)' == 'Lucene.Net' ">
+ <ItemGroup>
+ <_RequiredProperties Include="ReleaseFileName">
+ <Value>$(ReleaseFileName)</Value>
+ </_RequiredProperties>
+
+ <_RequiredProperties Include="PackageVersion">
+ <Value>$(PackageVersion)</Value>
+ </_RequiredProperties>
+ </ItemGroup>
+
+ <Error Condition =" '%(_RequiredProperties.Value)'=='' "
+ Text=" Missing required property [%(_RequiredProperties.Identity)]" />
+
+ <Error Condition ="!Exists('$(SvnDevDirectory)\$(PackageVersion)')"
+ Text=" Directory '$(SvnDevDirectory)\$(PackageVersion)' doesn't exist in lucenenet/dev" />
+ <Error Condition ="!Exists('$(SvnDevDirectory)\KEYS')"
+ Text=" Keys file '$(SvnDevDirectory)\KEYS' doesn't exist in lucenenet/dev" />
+
+ <Message Importance="high" Text="Releasing $(PackageVersion)..."/>
+
+ <!-- Discard local changes -->
+ <Exec WorkingDirectory="$(SvnDevDirectory)" Command="svn revert --recursive" Condition=" '$(SvnDevDiscardLocalChanges)' == 'true' " />
+ <Exec WorkingDirectory="$(SvnReleaseDirectory)" Command="svn revert --recursive" Condition=" '$(SvnReleaseDiscardLocalChanges)' == 'true' " />
+
+ <!-- Copy KEYS file -->
+ <Message Importance="high" Text="Source: $(SvnDevKeysFile), Destination: $(SvnReleaseDirectory)"/>
+ <Copy SourceFiles="$(SvnDevKeysFile)" DestinationFolder="$(SvnReleaseDirectory)" OverwriteReadOnlyFiles="true" />
+
+ <!-- Copy release assets -->
+ <Message Importance="high" Text="Source: @(SvnDevReleaseFiles), Destination: $(SvnReleaseDirectory)\$(PackageVersion)"/>
+ <Copy SourceFiles="@(SvnDevReleaseFiles)" DestinationFolder="$(SvnReleaseDirectory)\$(PackageVersion)" OverwriteReadOnlyFiles="true" />
+
+ <!-- Delete from svn dev -->
+ <Exec WorkingDirectory="$(SvnDevDirectory)" Command="svn delete $(PackageVersion)\ --force" />
+ <Exec WorkingDirectory="$(SvnDevDirectory)" Command="svn commit -m "Removed $(ReleaseFileName) from dev/lucenenet"" />
+
+ <!-- Add to svn release -->
+ <Exec WorkingDirectory="$(SvnReleaseDirectory)" Command="svn add $(PackageVersion)\" />
+ <Exec WorkingDirectory="$(SvnReleaseDirectory)" Command="svn commit -m "Added $(ReleaseFileName) to release/lucenenet"" />
+
+ <Message Importance="high" Text="Release of $(PackageVersion) Complete"/>
+ </Target>
+
</Project>
\ No newline at end of file