1%YAML 1.2 2--- | 3 @rem Copyright 2016 gRPC authors. 4 @rem 5 @rem Licensed under the Apache License, Version 2.0 (the "License"); 6 @rem you may not use this file except in compliance with the License. 7 @rem You may obtain a copy of the License at 8 @rem 9 @rem http://www.apache.org/licenses/LICENSE-2.0 10 @rem 11 @rem Unless required by applicable law or agreed to in writing, software 12 @rem distributed under the License is distributed on an "AS IS" BASIS, 13 @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 @rem See the License for the specific language governing permissions and 15 @rem limitations under the License. 16 17 @rem Current package versions 18 set VERSION=${settings.csharp_version} 19 20 @rem Adjust the location of nuget.exe 21 set NUGET=C:\nuget\nuget.exe 22 set DOTNET=dotnet 23 24 mkdir ..\..\artifacts 25 26 @rem Collect the artifacts built by the previous build step 27 mkdir nativelibs 28 powershell -Command "cp -r ..\..\input_artifacts\csharp_ext_* nativelibs" 29 30 @rem Collect protoc artifacts built by the previous build step 31 mkdir protoc_plugins 32 powershell -Command "cp -r ..\..\input_artifacts\protoc_* protoc_plugins" 33 34 %%DOTNET% restore Grpc.sln || goto :error 35 36 @rem To be able to build, we also need to put grpc_csharp_ext to its normal location 37 xcopy /Y /I nativelibs\csharp_ext_windows_x64\grpc_csharp_ext.dll ..\..\cmake\build\x64\Release${"\\"} 38 39 %%DOTNET% pack --configuration Release Grpc.Core --output ..\..\..\artifacts || goto :error 40 %%DOTNET% pack --configuration Release Grpc.Core.Testing --output ..\..\..\artifacts || goto :error 41 %%DOTNET% pack --configuration Release Grpc.Auth --output ..\..\..\artifacts || goto :error 42 %%DOTNET% pack --configuration Release Grpc.HealthCheck --output ..\..\..\artifacts || goto :error 43 %%DOTNET% pack --configuration Release Grpc.Reflection --output ..\..\..\artifacts || goto :error 44 45 %%NUGET% pack Grpc.nuspec -Version %VERSION% -OutputDirectory ..\..\artifacts || goto :error 46 %%NUGET% pack Grpc.Core.NativeDebug.nuspec -Version %VERSION% -OutputDirectory ..\..\artifacts 47 %%NUGET% pack Grpc.Tools.nuspec -Version %VERSION% -OutputDirectory ..\..\artifacts 48 49 @rem copy resulting nuget packages to artifacts directory 50 xcopy /Y /I *.nupkg ..\..\artifacts\ || goto :error 51 52 @rem create a zipfile with the artifacts as well 53 powershell -Command "Add-Type -Assembly 'System.IO.Compression.FileSystem'; [System.IO.Compression.ZipFile]::CreateFromDirectory('..\..\artifacts', 'csharp_nugets_windows_dotnetcli.zip');" 54 xcopy /Y /I csharp_nugets_windows_dotnetcli.zip ..\..\artifacts\ || goto :error 55 56 goto :EOF 57 58 :error 59 echo Failed! 60 exit /b %errorlevel% 61