Version-To-Release.bat 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. @echo off
  2. :: #1 get csproj
  3. for /f "delims=" %%a in ('findstr /M /s /i /r "<pack> <publish>" "..\..\..\*.csproj"') do set "csproj=%%~a"
  4. ::echo %csproj%
  5. :: #2 get version
  6. for /f "tokens=3 delims=><" %%a in ('type %csproj%^|findstr "<Version>.*Version"') do set version=%%a
  7. :: set version=2.1.3
  8. :: echo %version%
  9. :: #3 get v1 v2 v3
  10. for /f "tokens=1 delims=-" %%i in ("%version%") do set numVersion=%%i
  11. :: v1 v2 v3
  12. for /f "tokens=1 delims=." %%i in ("%numVersion%") do set v1=%%i
  13. for /f "tokens=2 delims=." %%i in ("%numVersion%") do set v2=%%i
  14. for /f "tokens=3 delims=." %%i in ("%numVersion%") do set v3=%%i
  15. :: #4 newVersion
  16. :: set /a v3=1+%v3%
  17. set newVersion=%v1%.%v2%.%v3%
  18. :: echo %newVersion%
  19. echo [%version%]-^>[%newVersion%]
  20. :: #5 replace version in csproj
  21. VsTool.exe replace -r --path "..\..\.." --file "*.csproj" --old "<Version>%version%</Version>" --new "<Version>%newVersion%</Version>"
  22. VsTool.exe replace -r --path "..\..\.." --file "packages.config" --old "%version%" --new "%newVersion%"
  23. :: #6 replace version in docker image file
  24. VsTool.exe replace -r --path "..\..\..\Publish\ReleaseFile\docker-image" --file "*.md" --old "%version%" --new "%newVersion%"
  25. echo.
  26. echo.
  27. echo.
  28. echo replace version success [%version%]-^>[%newVersion%]
  29. pause