diff options
-rw-r--r-- | src/csharp/Grpc.Core/Grpc.Core.nuspec | 2 | ||||
-rw-r--r-- | src/csharp/Grpc.Core/VersionInfo.cs | 2 | ||||
-rw-r--r-- | src/csharp/build_packages.bat | 7 | ||||
-rw-r--r-- | templates/src/csharp/Grpc.Core/VersionInfo.cs.template | 48 | ||||
-rw-r--r-- | templates/src/csharp/build_packages.bat.template | 58 |
5 files changed, 111 insertions, 6 deletions
diff --git a/src/csharp/Grpc.Core/Grpc.Core.nuspec b/src/csharp/Grpc.Core/Grpc.Core.nuspec index 67a04afc22..a3a629822d 100644 --- a/src/csharp/Grpc.Core/Grpc.Core.nuspec +++ b/src/csharp/Grpc.Core/Grpc.Core.nuspec @@ -16,7 +16,7 @@ <tags>gRPC RPC Protocol HTTP/2</tags> <dependencies> <dependency id="Ix-Async" version="1.2.3" /> - <dependency id="grpc.native.csharp" version="$GrpcNativeCsharpVersion$" /> + <dependency id="grpc.native.csharp" version="$version$" /> </dependencies> </metadata> <files> diff --git a/src/csharp/Grpc.Core/VersionInfo.cs b/src/csharp/Grpc.Core/VersionInfo.cs index 818ddb83b9..4c6d50356c 100644 --- a/src/csharp/Grpc.Core/VersionInfo.cs +++ b/src/csharp/Grpc.Core/VersionInfo.cs @@ -41,6 +41,6 @@ namespace Grpc.Core /// <summary> /// Current version of gRPC C# /// </summary> - public const string CurrentVersion = "0.12.0"; + public const string CurrentVersion = "0.13.0"; } } diff --git a/src/csharp/build_packages.bat b/src/csharp/build_packages.bat index 6912dad213..7a34bf3fd6 100644 --- a/src/csharp/build_packages.bat +++ b/src/csharp/build_packages.bat @@ -1,8 +1,7 @@ @rem Builds gRPC NuGet packages @rem Current package versions -set VERSION=0.12.0 -set CORE_VERSION=0.12.0 +set VERSION=0.13.0 set PROTOBUF_VERSION=3.0.0-beta2 @rem Packages that depend on prerelease packages (like Google.Protobuf) need to have prerelease suffix as well. @@ -38,9 +37,9 @@ endlocal @rem TODO(jtattermusch): re-enable protoc plugin building @rem @call ..\..\vsprojects\build_plugins.bat || goto :error -%NUGET% pack grpc.native.csharp\grpc.native.csharp.nuspec -Version %CORE_VERSION% || goto :error +%NUGET% pack grpc.native.csharp\grpc.native.csharp.nuspec -Version %VERSION% || goto :error %NUGET% pack Grpc.Auth\Grpc.Auth.nuspec -Symbols -Version %VERSION% || goto :error -%NUGET% pack Grpc.Core\Grpc.Core.nuspec -Symbols -Version %VERSION% -Properties GrpcNativeCsharpVersion=%CORE_VERSION% || goto :error +%NUGET% pack Grpc.Core\Grpc.Core.nuspec -Symbols -Version %VERSION% || goto :error %NUGET% pack Grpc.HealthCheck\Grpc.HealthCheck.nuspec -Symbols -Version %VERSION_WITH_BETA% -Properties ProtobufVersion=%PROTOBUF_VERSION% || goto :error %NUGET% pack Grpc.nuspec -Version %VERSION% || goto :error diff --git a/templates/src/csharp/Grpc.Core/VersionInfo.cs.template b/templates/src/csharp/Grpc.Core/VersionInfo.cs.template new file mode 100644 index 0000000000..00a14e7b89 --- /dev/null +++ b/templates/src/csharp/Grpc.Core/VersionInfo.cs.template @@ -0,0 +1,48 @@ +%YAML 1.2 +--- | + #region Copyright notice and license + + // Copyright 2015, Google Inc. + // All rights reserved. + // + // Redistribution and use in source and binary forms, with or without + // modification, are permitted provided that the following conditions are + // met: + // + // * Redistributions of source code must retain the above copyright + // notice, this list of conditions and the following disclaimer. + // * Redistributions in binary form must reproduce the above + // copyright notice, this list of conditions and the following disclaimer + // in the documentation and/or other materials provided with the + // distribution. + // * Neither the name of Google Inc. nor the names of its + // contributors may be used to endorse or promote products derived from + // this software without specific prior written permission. + // + // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + #endregion + + namespace Grpc.Core + { + /// <summary> + /// Provides info about current version of gRPC. + /// </summary> + public static class VersionInfo + { + /// <summary> + /// Current version of gRPC C# + /// </summary> + public const string CurrentVersion = "${settings.version.major}.${settings.version.minor}.${settings.version.micro}"; + } + } diff --git a/templates/src/csharp/build_packages.bat.template b/templates/src/csharp/build_packages.bat.template new file mode 100644 index 0000000000..bf831a9e3b --- /dev/null +++ b/templates/src/csharp/build_packages.bat.template @@ -0,0 +1,58 @@ +%YAML 1.2 +--- | + @rem Builds gRPC NuGet packages + + @rem Current package versions + set VERSION=${settings.version.major}.${settings.version.minor}.${settings.version.micro} + set PROTOBUF_VERSION=3.0.0-beta2 + + @rem Packages that depend on prerelease packages (like Google.Protobuf) need to have prerelease suffix as well. + set VERSION_WITH_BETA=%VERSION%-beta + + @rem Adjust the location of nuget.exe + set NUGET=C:\nuget\nuget.exe + + @rem Collect the artifacts built by the previous build step if running on Jenkins + @rem TODO(jtattermusch): is there a better way to do this? + xcopy /Y /I ..\..\architecture=x86,language=csharp,platform=windows\artifacts\* grpc.native.csharp\windows_x86${"\\"} + xcopy /Y /I ..\..\architecture=x64,language=csharp,platform=windows\artifacts\* grpc.native.csharp\windows_x64${"\\"} + xcopy /Y /I ..\..\architecture=x86,language=csharp,platform=linux\artifacts\* grpc.native.csharp\linux_x86${"\\"} + xcopy /Y /I ..\..\architecture=x64,language=csharp,platform=linux\artifacts\* grpc.native.csharp\linux_x64${"\\"} + xcopy /Y /I ..\..\architecture=x86,language=csharp,platform=macos\artifacts\* grpc.native.csharp\macosx_x86${"\\"} + xcopy /Y /I ..\..\architecture=x64,language=csharp,platform=macos\artifacts\* grpc.native.csharp\macosx_x64${"\\"} + + @rem Fetch all dependencies + %%NUGET% restore ..\..\vsprojects\grpc_csharp_ext.sln || goto :error + %%NUGET% restore Grpc.sln || goto :error + + setlocal + + @call "%VS120COMNTOOLS%\..\..\vc\vcvarsall.bat" x86 + + @rem We won't use the native libraries from this step, but without this Grpc.sln will fail. + msbuild ..\..\vsprojects\grpc_csharp_ext.sln /p:Configuration=Release /p:PlatformToolset=v120 || goto :error + + msbuild Grpc.sln /p:Configuration=ReleaseSigned || goto :error + + endlocal + + @rem TODO(jtattermusch): re-enable protoc plugin building + @rem @call ..\..\vsprojects\build_plugins.bat || goto :error + + %%NUGET% pack grpc.native.csharp\grpc.native.csharp.nuspec -Version %VERSION% || goto :error + %%NUGET% pack Grpc.Auth\Grpc.Auth.nuspec -Symbols -Version %VERSION% || goto :error + %%NUGET% pack Grpc.Core\Grpc.Core.nuspec -Symbols -Version %VERSION% || goto :error + %%NUGET% pack Grpc.HealthCheck\Grpc.HealthCheck.nuspec -Symbols -Version %VERSION_WITH_BETA% -Properties ProtobufVersion=%PROTOBUF_VERSION% || goto :error + %%NUGET% pack Grpc.nuspec -Version %VERSION% || goto :error + + @rem TODO(jtattermusch): re-enable building Grpc.Tools package + @rem %NUGET% pack Grpc.Tools.nuspec -Version %VERSION% || goto :error + + @rem copy resulting nuget packages to artifacts directory + xcopy /Y /I *.nupkg ..\..\artifacts${"\\"} + + goto :EOF + + :error + echo Failed! + exit /b %errorlevel% |