Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: GitTools/GitVersion
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 6.1.0
Choose a base ref
...
head repository: GitTools/GitVersion
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 6.2.0
Choose a head ref
Loading
Showing with 3,070 additions and 2,197 deletions.
  1. +1 −1 .config/dotnet-tools.json
  2. +1 −1 .devcontainer/Dockerfile
  3. +2 −2 .devcontainer/devcontainer.json
  4. +1 −1 .editorconfig
  5. +1 −1 .github/actions/artifacts-attest/action.yml
  6. +10 −4 .github/actions/docker-manifests/action.yml
  7. +10 −4 .github/actions/docker-publish/action.yml
  8. +16 −0 .github/actions/docker-setup/action.yml
  9. +10 −4 .github/actions/docker-test/action.yml
  10. +3 −3 .github/dependabot.yml
  11. +14 −7 .github/workflows/_artifacts_linux.yml
  12. +1 −1 .github/workflows/_artifacts_windows.yml
  13. +4 −4 .github/workflows/_build.yml
  14. +11 −22 .github/workflows/_docker.yml
  15. +10 −21 .github/workflows/_docker_manifests.yml
  16. +13 −8 .github/workflows/_prepare.yml
  17. +1 −1 .github/workflows/_publish.yml
  18. +6 −6 .github/workflows/_unit_tests.yml
  19. +12 −12 .github/workflows/ci.yml
  20. +1 −1 .github/workflows/codeql-analysis.yml
  21. +3 −3 .github/workflows/docs.yml
  22. +1 −1 .github/workflows/format.yml
  23. +1 −1 .github/workflows/mkdocs.yml
  24. +1 −1 .github/workflows/release.yml
  25. +1 −1 .github/workflows/stale.yml
  26. +1 −1 .github/workflows/winget.yml
  27. +2 −0 .gitignore
  28. +5 −1 BREAKING_CHANGES.md
  29. +1 −0 GitReleaseManager.yml
  30. +1 −1 build/.run/Build.run.xml
  31. +1 −1 build/.run/Clean.run.xml
  32. +1 −1 build/.run/Package.run.xml
  33. +1 −1 build/.run/PublishCoverage.run.xml
  34. +1 −1 build/.run/Test.run.xml
  35. +1 −1 build/CI.sln
  36. +1 −1 build/CI.sln.DotSettings
  37. +1 −1 build/Directory.Build.props
  38. +2 −2 build/Directory.Packages.props
  39. +1 −1 build/build/Build.csproj.DotSettings
  40. +2 −2 build/build/Tasks/Package/PackageNuget.cs
  41. +2 −2 build/config/Tasks/SetMatrix.cs
  42. +87 −80 docs/input/docs/reference/configuration.md
  43. +70 −60 docs/input/docs/reference/mdsource/configuration.source.md
  44. +2 −2 docs/input/docs/reference/modes/continuous-delivery.md
  45. +1 −1 docs/input/docs/reference/modes/continuous-deployment.md
  46. +1 −1 docs/input/docs/reference/modes/manual-deployment.md
  47. +5 −5 docs/input/docs/usage/cli/arguments.md
  48. +21 −0 docs/input/docs/usage/cli/output.md
  49. +7 −8 docs/input/docs/workflows/GitFlow/v1.yml
  50. +5 −6 docs/input/docs/workflows/GitHubFlow/v1.yml
  51. +5 −6 docs/input/docs/workflows/TrunkBased/preview1.yml
  52. +1 −1 global.json
  53. +1 −0 new-cli/.idea/.idea.GitVersion/.idea/icon.svg
  54. +10 −0 new-cli/.idea/.idea.GitVersion/.idea/indexLayout.xml
  55. +1 −1 new-cli/.run/Tester.run.xml
  56. +10 −9 new-cli/Directory.Packages.props
  57. +1 −1 new-cli/GitVersion.Calculation/GitVersion.Calculation.csproj
  58. +7 −7 new-cli/GitVersion.Cli.Generator/Content.cs
  59. +1 −1 new-cli/GitVersion.Cli/GitVersionApp.cs
  60. +1 −1 new-cli/GitVersion.Common.Command/ICommand.cs
  61. +0 −1 new-cli/GitVersion.Common/GitVersion.Common.csproj
  62. +1 −0 new-cli/GitVersion.Core/CoreModule.cs
  63. +1 −3 new-cli/GitVersion.Core/GitVersion.Core.csproj
  64. +1 −1 new-cli/GitVersion.sln
  65. +1 −1 new-cli/GitVersion.sln.DotSettings
  66. +1 −1 new-cli/docs/calculate.rsp
  67. +1 −1 new-cli/docs/output-project.rsp
  68. +1 −1 new-cli/docs/output-wix.rsp
  69. +1 −1 new-cli/nuget.config
  70. +439 −384 package-lock.json
  71. +54 −54 package.json
  72. +229 −197 schemas/6.1/GitVersion.configuration.json
  73. +68 −17 schemas/6.1/GitVersion.json
  74. +426 −0 schemas/6.2/GitVersion.configuration.json
  75. +184 −0 schemas/6.2/GitVersion.json
  76. +1 −1 src/.run/schema.run.xml
  77. +29 −26 src/Directory.Packages.props
  78. +31 −23 src/GitVersion.App.Tests/ArgumentParserTests.cs
  79. +1 −1 src/GitVersion.App.Tests/GitVersion.App.Tests.csproj
  80. +1 −1 src/GitVersion.App.Tests/Helpers/ProgramFixture.cs
  81. +1 −1 src/GitVersion.App.Tests/TestBuildFile.proj
  82. +10 −9 src/GitVersion.App/ArgumentParser.cs
  83. +1 −1 src/GitVersion.App/ArgumentParserExtensions.cs
  84. +10 −5 src/{GitVersion.Core/Logging → GitVersion.App}/FileAppender.cs
  85. +6 −5 src/GitVersion.App/GitVersionExecutor.cs
  86. +2 −1 src/GitVersion.App/GlobbingResolver.cs
  87. +1 −1 src/GitVersion.App/IGlobbingResolver.cs
  88. +4 −2 src/GitVersion.App/OverrideConfigurationOptionParser.cs
  89. +7 −7 src/GitVersion.BuildAgents.Tests/Agents/AzurePipelinesTests.cs
  90. +13 −10 src/GitVersion.BuildAgents.Tests/Agents/BitBucketPipelinesTests.cs
  91. +4 −4 src/GitVersion.BuildAgents.Tests/Agents/BuildKiteTests.cs
  92. +5 −4 src/GitVersion.BuildAgents.Tests/Agents/BuildServerBaseTests.cs
  93. +7 −4 src/GitVersion.BuildAgents.Tests/Agents/CodeBuildTests.cs
  94. +2 −2 src/GitVersion.BuildAgents.Tests/Agents/ContinuaCiTests.cs
  95. +9 −6 src/GitVersion.BuildAgents.Tests/Agents/EnvRunTests.cs
  96. +15 −12 src/GitVersion.BuildAgents.Tests/Agents/GitHubActionsTests.cs
  97. +69 −11 src/GitVersion.BuildAgents.Tests/Agents/GitLabCiTests.cs
  98. +13 −10 src/GitVersion.BuildAgents.Tests/Agents/JenkinsTests.cs
  99. +5 −12 src/GitVersion.BuildAgents.Tests/Agents/MyGetTests.cs
  100. +2 −2 src/GitVersion.BuildAgents.Tests/Agents/SpaceAutomationTests.cs
  101. +4 −4 src/GitVersion.BuildAgents.Tests/Agents/TeamCityTests.cs
  102. +4 −3 src/GitVersion.BuildAgents/Agents/AppVeyor.cs
  103. +5 −4 src/GitVersion.BuildAgents/Agents/AzurePipelines.cs
  104. +6 −5 src/GitVersion.BuildAgents/Agents/BitBucketPipelines.cs
  105. +4 −3 src/GitVersion.BuildAgents/Agents/BuildKite.cs
  106. +5 −4 src/GitVersion.BuildAgents/Agents/CodeBuild.cs
  107. +4 −3 src/GitVersion.BuildAgents/Agents/ContinuaCi.cs
  108. +4 −3 src/GitVersion.BuildAgents/Agents/Drone.cs
  109. +5 −4 src/GitVersion.BuildAgents/Agents/EnvRun.cs
  110. +5 −4 src/GitVersion.BuildAgents/Agents/GitHubActions.cs
  111. +17 −5 src/GitVersion.BuildAgents/Agents/GitLabCi.cs
  112. +5 −4 src/GitVersion.BuildAgents/Agents/Jenkins.cs
  113. +5 −8 src/GitVersion.BuildAgents/Agents/MyGet.cs
  114. +4 −3 src/GitVersion.BuildAgents/Agents/SpaceAutomation.cs
  115. +4 −3 src/GitVersion.BuildAgents/Agents/TeamCity.cs
  116. +4 −3 src/GitVersion.BuildAgents/Agents/TravisCI.cs
  117. +2 −2 src/GitVersion.Configuration.Tests/Configuration/ConfigurationExtensionsTests.cs
  118. +43 −0 src/GitVersion.Configuration.Tests/Configuration/ConfigurationFileLocatorTests.cs
  119. +6 −7 ...ion.Tests/Configuration/ConfigurationProviderTests.CanWriteOutEffectiveConfiguration.approved.txt
  120. +5 −4 src/GitVersion.Configuration.Tests/Configuration/ConfigurationProviderTests.cs
  121. +5 −4 src/GitVersion.Configuration.Tests/Configuration/Extensions.cs
  122. +7 −8 src/GitVersion.Configuration.Tests/Workflows/approved/GitFlow/v1.yml
  123. +5 −6 src/GitVersion.Configuration.Tests/Workflows/approved/GitHubFlow/v1.yml
  124. +5 −6 src/GitVersion.Configuration.Tests/Workflows/approved/TrunkBased/preview1.yml
  125. +0 −9 src/GitVersion.Configuration/BranchConfiguration.cs
  126. +0 −9 src/GitVersion.Configuration/Builders/BranchConfigurationBuilder.cs
  127. +0 −9 src/GitVersion.Configuration/Builders/ConfigurationBuilderBase.cs
  128. +1 −2 src/GitVersion.Configuration/Builders/GitFlowConfigurationBuilder.cs
  129. +1 −2 src/GitVersion.Configuration/Builders/GitHubFlowConfigurationBuilder.cs
  130. +1 −2 src/GitVersion.Configuration/Builders/TrunkBasedConfigurationBuilder.cs
  131. +38 −23 src/GitVersion.Configuration/ConfigurationFileLocator.cs
  132. +3 −2 src/GitVersion.Configuration/ConfigurationProvider.cs
  133. +1 −0 src/GitVersion.Configuration/ConfigurationSerializer.cs
  134. +54 −0 src/GitVersion.Configuration/VersionStrategiesConverter.cs
  135. +3 −2 src/GitVersion.Core.Tests/Core/DynamicRepositoryTests.cs
  136. +19 −10 src/GitVersion.Core.Tests/Core/GitVersionExecutorTests.cs
  137. +7 −3 src/GitVersion.Core.Tests/Core/GitVersionToolDirectoryTests.cs
  138. +16 −10 src/GitVersion.Core.Tests/DocumentationTests.cs
  139. +2 −2 ...tVersion.Core.Tests/Extensions/{GitToolsTestingExtensions.cs → GitRepositoryTestingExtensions.cs}
  140. +1 −0 src/GitVersion.Core.Tests/Extensions/GitVersionVariablesExtensions.cs
  141. +5 −1 src/GitVersion.Core.Tests/Extensions/MockCollectionExtensions.cs
  142. +4 −4 src/GitVersion.Core.Tests/Helpers/GitVersionContextBuilder.cs
  143. +1 −0 src/GitVersion.Core.Tests/Helpers/GitVersionCoreTestModule.cs
  144. +1 −1 src/GitVersion.Core.Tests/IntegrationTests/DevelopScenarios.cs
  145. +7 −4 src/GitVersion.Core.Tests/IntegrationTests/FeatureBranchScenarios.cs
  146. +0 −53 src/GitVersion.Core.Tests/IntegrationTests/FileSystemTests.cs
  147. +1 −1 src/GitVersion.Core.Tests/IntegrationTests/MainlineDevelopmentScenarios.cs
  148. +21 −14 src/GitVersion.Core.Tests/IntegrationTests/OtherScenarios.cs
  149. +8 −5 src/GitVersion.Core.Tests/IntegrationTests/PerformanceScenarios.cs
  150. +5 −1 src/GitVersion.Core.Tests/IntegrationTests/WorktreeScenarios.cs
  151. +28 −28 src/GitVersion.Core.Tests/VersionCalculation/EffectiveBranchConfigurationFinderTests.cs
  152. +2 −2 src/GitVersion.Core.Tests/VersionCalculation/MinDateVersionFilterTests.cs
  153. +2 −2 src/GitVersion.Core.Tests/VersionCalculation/NextVersionCalculatorTests.cs
  154. +5 −5 src/GitVersion.Core.Tests/VersionCalculation/ShaVersionFilterTests.cs
  155. +1 −1 src/GitVersion.Core.Tests/VersionCalculation/Strategies/ConfiguredNextVersionVersionStrategyTests.cs
  156. +4 −4 src/GitVersion.Core.Tests/VersionCalculation/Strategies/MergeMessageBaseVersionStrategyTests.cs
  157. +14 −11 src/GitVersion.Core/Agents/BuildAgentBase.cs
  158. +4 −3 src/GitVersion.Core/Agents/LocalBuild.cs
  159. +1 −0 src/GitVersion.Core/Configuration/ConfigurationConstants.cs
  160. +0 −3 src/GitVersion.Core/Configuration/EffectiveConfiguration.cs
  161. +2 −4 src/GitVersion.Core/Configuration/IBranchConfiguration.cs
  162. +2 −2 src/GitVersion.Core/Configuration/IConfigurationSerializer.cs
  163. +1 −1 src/GitVersion.Core/Configuration/IIgnoreConfiguration.cs
  164. +3 −3 src/GitVersion.Core/Configuration/IPreventIncrementConfiguration.cs
  165. +0 −21 src/GitVersion.Core/Core/Abstractions/IFileSystem.cs
  166. +0 −59 src/GitVersion.Core/Core/FileSystem.cs
  167. +2 −1 src/GitVersion.Core/Core/GitPreparer.cs
  168. +5 −10 src/GitVersion.Core/Core/RegexPatterns.cs
  169. +18 −16 src/GitVersion.Core/Core/TaggedSemanticVersionService.cs
  170. +21 −27 src/GitVersion.Core/Extensions/ConfigurationExtensions.cs
  171. +13 −0 src/GitVersion.Core/Extensions/FileSystemExtensions.cs
  172. +1 −0 src/GitVersion.Core/GitVersion.Core.csproj
  173. +1 −0 src/GitVersion.Core/GitVersionCommonModule.cs
  174. +3 −36 src/{GitVersion.Core.Tests → GitVersion.Core}/Helpers/DirectoryHelper.cs
  175. +0 −95 src/GitVersion.Core/Helpers/EncodingHelper.cs
  176. +15 −2 src/GitVersion.Core/Helpers/PathHelper.cs
  177. +2 −1 src/GitVersion.Core/Options/OutputType.cs
  178. +1 −1 src/GitVersion.Core/Output/IConverterContext.cs
  179. +1 −1 src/GitVersion.Core/Output/IVersionConverter.cs
  180. +3 −22 src/GitVersion.Core/PublicAPI.Shipped.txt
  181. +10 −9 src/GitVersion.Core/VersionCalculation/Caching/GitVersionCacheKeyFactory.cs
  182. +4 −3 src/GitVersion.Core/VersionCalculation/Caching/GitVersionCacheProvider.cs
  183. +1 −2 src/GitVersion.Core/VersionCalculation/IncrementStrategyFinder.cs
  184. +1 −3 src/GitVersion.Core/VersionCalculation/VersionSearchStrategies/BaseVersion.cs
  185. +6 −11 src/GitVersion.Core/VersionCalculation/VersionSearchStrategies/MainlineVersionStrategy.cs
  186. +24 −6 src/GitVersion.Core/VersionCalculation/VersionSearchStrategies/TaggedCommitVersionStrategy.cs
  187. +11 −9 src/GitVersion.LibGit2Sharp/Git/GitRepositoryInfo.cs
  188. +1 −1 src/GitVersion.LibGit2Sharp/Git/Remote.cs
  189. +5 −5 src/GitVersion.MsBuild.Tests/{FileHelperTests.cs → AssemblyInfoFileHelperTests.cs}
  190. +1 −2 src/GitVersion.MsBuild.Tests/GitVersion.MsBuild.Tests.csproj
  191. +1 −1 ...tVersion.MsBuild.Tests/Helpers/{GitToolsTestingExtensions.cs → GitRepositoryTestingExtensions.cs}
  192. +1 −1 src/GitVersion.MsBuild.Tests/Helpers/MsBuildExeFixture.cs
  193. +1 −1 src/GitVersion.MsBuild.Tests/Helpers/MsBuildTaskFixture.cs
  194. +46 −41 src/GitVersion.MsBuild.Tests/InvalidFileCheckerTests.cs
  195. +30 −31 src/GitVersion.MsBuild.Tests/Tasks/GenerateGitVersionInformationTest.cs
  196. +12 −12 src/GitVersion.MsBuild.Tests/Tasks/TestTaskBase.cs
  197. +20 −21 src/GitVersion.MsBuild.Tests/Tasks/UpdateAssemblyInfoTaskTest.cs
  198. +3 −7 src/GitVersion.MsBuild.Tests/Tasks/WriteVersionInfoTest.cs
  199. +1 −0 src/GitVersion.MsBuild/GitVersion.MsBuild.csproj
  200. +1 −8 src/GitVersion.MsBuild/GitVersionTaskBase.cs
  201. +9 −32 src/GitVersion.MsBuild/GitVersionTaskExecutor.cs
  202. +15 −13 src/GitVersion.MsBuild/GitVersionTasks.cs
  203. +14 −13 src/GitVersion.MsBuild/Helpers/{FileHelper.cs → AssemblyInfoFileHelper.cs}
  204. +0 −8 src/GitVersion.MsBuild/PublicAPI.Shipped.txt
  205. +0 −2 src/GitVersion.MsBuild/Tasks/GenerateGitVersionInformation.cs
  206. +0 −2 src/GitVersion.MsBuild/Tasks/GetVersion.cs
  207. +0 −2 src/GitVersion.MsBuild/Tasks/UpdateAssemblyInfo.cs
  208. +1 −4 src/GitVersion.MsBuild/Tasks/WriteVersionInfoToBuildLog.cs
  209. +1 −1 ...ut/Approved/fs/GitVersionInfoGeneratorTests.ShouldProperlyOutputNamespaceDeclaration.approved.txt
  210. +1 −1 ...ut/Approved/vb/GitVersionInfoGeneratorTests.ShouldProperlyOutputNamespaceDeclaration.approved.txt
  211. +29 −25 src/GitVersion.Output.Tests/Output/AssemblyInfoFileUpdaterTests.cs
  212. +127 −0 src/GitVersion.Output.Tests/Output/FormatArgumentTests.cs
  213. +7 −6 src/GitVersion.Output.Tests/Output/GitVersionInfoGeneratorTests.cs
  214. +10 −6 src/GitVersion.Output.Tests/Output/ProjectFileUpdaterTests.cs
  215. +6 −5 src/GitVersion.Output.Tests/Output/WixFileTests.cs
  216. +1 −1 src/GitVersion.Output/AssemblyInfo/AddFormats/VersionAssemblyInfo.fs
  217. +18 −17 src/GitVersion.Output/AssemblyInfo/AssemblyInfoFileUpdater.cs
  218. +13 −12 src/GitVersion.Output/AssemblyInfo/ProjectFileUpdater.cs
  219. +1 −1 src/GitVersion.Output/AssemblyInfo/Templates/VersionAssemblyInfo.cs
  220. +1 −1 src/GitVersion.Output/AssemblyInfo/Templates/VersionAssemblyInfo.fs
  221. +1 −1 src/GitVersion.Output/AssemblyInfo/Templates/VersionAssemblyInfo.vb
  222. +8 −5 src/GitVersion.Output/GitVersionInfo/GitVersionInfoGenerator.cs
  223. +25 −1 src/GitVersion.Output/OutputGenerator/OutputGenerator.cs
  224. +3 −2 src/GitVersion.Output/Serializer/VersionVariableSerializer.cs
  225. +9 −3 src/GitVersion.Output/TemplateManager.cs
  226. +6 −5 src/GitVersion.Output/WixUpdater/WixVersionFileUpdater.cs
  227. +0 −1 src/GitVersion.Schema/Program.cs
  228. +1 −2 src/GitVersion.Testing/Fixtures/RepositoryFixtureBase.cs
  229. +10 −0 src/GitVersion.Testing/GitVersion.Testing.csproj
  230. +0 −79 src/GitVersion.Testing/Helpers/DirectoryHelper.cs
  231. +1 −0 src/GitVersion.sln
  232. +1 −1 src/GitVersion.sln.DotSettings
2 changes: 1 addition & 1 deletion .config/dotnet-tools.json
Original file line number Diff line number Diff line change
@@ -3,7 +3,7 @@
"isRoot": true,
"tools": {
"gitreleasemanager.tool": {
"version": "0.18.0",
"version": "0.19.0",
"commands": [
"dotnet-gitreleasemanager"
]
2 changes: 1 addition & 1 deletion .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM mcr.microsoft.com/devcontainers/dotnet:dev-8.0
FROM mcr.microsoft.com/devcontainers/dotnet:dev-9.0

# [Optional] Uncomment this section to install additional OS packages.
# RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
4 changes: 2 additions & 2 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -15,7 +15,7 @@
"upgradePackages": "true"
},
"ghcr.io/devcontainers/features/git:1": {
"version": "latest",
"version": "os-provided",
"ppa": "false"
},
"ghcr.io/devcontainers/features/powershell:1": {
@@ -41,7 +41,7 @@
},
// Add the IDs of extensions you want installed when the container is created.
"extensions": [
"ms-dotnettools.csharp",
"ms-dotnettools.csdevkit",
"EditorConfig.EditorConfig",
"streetsidesoftware.code-spell-checker"
]
2 changes: 1 addition & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
@@ -2,12 +2,12 @@

# top-most EditorConfig file
root = true
charset = utf-8

[*]
indent_style = space
indent_size = 4
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

2 changes: 1 addition & 1 deletion .github/actions/artifacts-attest/action.yml
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@ runs:
steps:
-
name: 'Attestation'
uses: actions/attest-build-provenance@v1
uses: actions/attest-build-provenance@v2.0.1
with:
subject-path: |
${{ github.workspace }}/artifacts/packages/native
14 changes: 10 additions & 4 deletions .github/actions/docker-manifests/action.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
name: 'Docker Manifests'
description: 'Docker Publish Manifests'
inputs:
dockerDistro:
docker_distro:
description: 'Linux Distro'
required: true
dotnetVersion:
dotnet_version:
description: '.net version'
required: true
docker_registry_username:
@@ -32,7 +32,10 @@ runs:
-
name: '[Docker Publish Manifests] DockerHub'
shell: pwsh
run: dotnet run/docker.dll --target=DockerManifest --arch=amd64 --arch=arm64 --dotnet_version=${{ inputs.dotnetVersion }} --docker_distro=${{ inputs.dockerDistro }} --docker_registry dockerhub
run: |
dotnet run/docker.dll `
--target=DockerManifest --arch=amd64 --arch=arm64 --dotnet_version=${{ inputs.dotnet_version }} `
--docker_distro=${{ inputs.docker_distro }} --docker_registry dockerhub
-
name: Login to GitHub
uses: docker/login-action@v3
@@ -43,4 +46,7 @@ runs:
-
name: '[Docker Publish Manifests] GitHub'
shell: pwsh
run: dotnet run/docker.dll --target=DockerManifest --arch=amd64 --arch=arm64 --dotnet_version=${{ inputs.dotnetVersion }} --docker_distro=${{ inputs.dockerDistro }} --docker_registry github
run: |
dotnet run/docker.dll `
--target=DockerManifest --arch=amd64 --arch=arm64 --dotnet_version=${{ inputs.dotnet_version }} `
--docker_distro=${{ inputs.docker_distro }} --docker_registry github
14 changes: 10 additions & 4 deletions .github/actions/docker-publish/action.yml
Original file line number Diff line number Diff line change
@@ -4,10 +4,10 @@ inputs:
arch:
description: 'Docker architecture'
required: true
dockerDistro:
docker_distro:
description: 'Linux Distro'
required: true
dotnetVersion:
dotnet_version:
description: '.net version'
required: true
docker_registry_username:
@@ -35,7 +35,10 @@ runs:
-
name: '[Docker Publish] DockerHub'
shell: pwsh
run: dotnet run/docker.dll --target=DockerPublish --arch=${{ inputs.arch }} --dotnet_version=${{ inputs.dotnetVersion }} --docker_distro=${{ inputs.dockerDistro }} --docker_registry dockerhub --verbosity=diagnostic
run: |
dotnet run/docker.dll `
--target=DockerPublish --arch=${{ inputs.arch }} --dotnet_version=${{ inputs.dotnet_version }} `
--docker_distro=${{ inputs.docker_distro }} --docker_registry dockerhub --verbosity=diagnostic
-
name: Login to GitHub
uses: docker/login-action@v3
@@ -46,4 +49,7 @@ runs:
-
name: '[Docker Publish] GitHub'
shell: pwsh
run: dotnet run/docker.dll --target=DockerPublish --arch=${{ inputs.arch }} --dotnet_version=${{ inputs.dotnetVersion }} --docker_distro=${{ inputs.dockerDistro }} --docker_registry github --verbosity=diagnostic
run: |
dotnet run/docker.dll `
--target=DockerPublish --arch=${{ inputs.arch }} --dotnet_version=${{ inputs.dotnet_version }} `
--docker_distro=${{ inputs.docker_distro }} --docker_registry github --verbosity=diagnostic
16 changes: 16 additions & 0 deletions .github/actions/docker-setup/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: 'Docker Setup'
description: 'Setups the docker engine'

runs:
using: 'composite'
steps:
- name: Set up Docker
uses: docker/setup-docker-action@v4
with:
daemon-config: '{ "features": { "containerd-snapshotter": true } }'
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3
with:
version: 'latest'
driver-opts: 'image=moby/buildkit:buildx-stable-1'
install: true
14 changes: 10 additions & 4 deletions .github/actions/docker-test/action.yml
Original file line number Diff line number Diff line change
@@ -4,10 +4,10 @@ inputs:
arch:
description: 'Docker architecture'
default: 'amd64'
dockerDistro:
docker_distro:
description: 'Linux Distro'
default: 'debian.12'
dotnetVersion:
dotnet_version:
description: '.net version'
default: '8.0'

@@ -17,8 +17,14 @@ runs:
-
name: '[Docker Build & Test] DockerHub'
shell: pwsh
run: dotnet run/docker.dll --target=DockerTest --arch=${{ inputs.arch }} --dotnet_version=${{ inputs.dotnetVersion }} --docker_distro=${{ inputs.dockerDistro }} --docker_registry dockerhub --verbosity=diagnostic
run: |
dotnet run/docker.dll --target=DockerTest `
--arch=${{ inputs.arch }} --dotnet_version=${{ inputs.dotnet_version }} `
--docker_distro=${{ inputs.docker_distro }} --docker_registry dockerhub --verbosity=diagnostic
-
name: '[Docker Build & Test] GitHub'
shell: pwsh
run: dotnet run/docker.dll --target=DockerTest --arch=${{ inputs.arch }} --dotnet_version=${{ inputs.dotnetVersion }} --docker_distro=${{ inputs.dockerDistro }} --docker_registry github --verbosity=diagnostic
run: |
dotnet run/docker.dll --target=DockerTest `
--arch=${{ inputs.arch }} --dotnet_version=${{ inputs.dotnet_version }} `
--docker_distro=${{ inputs.docker_distro }} --docker_registry github --verbosity=diagnostic
6 changes: 3 additions & 3 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -27,13 +27,13 @@ updates:
nunit:
patterns:
- "NUnit.*"
LibGit2Sharp:
patterns:
- "LibGit2Sharp.*"
directories:
- "/build"
- "/new-cli"
- "/src"
- "/"
ignore:
- dependency-name: "LibGit2Sharp"
schedule:
interval: daily
open-pull-requests-limit: 10
21 changes: 14 additions & 7 deletions .github/workflows/_artifacts_linux.yml
Original file line number Diff line number Diff line change
@@ -7,25 +7,26 @@ on:
arch:
required: true
type: string
dockerDistros:
docker_distros:
required: true
type: string
dotnetVersions:
dotnet_versions:
required: true
type: string

env:
DOTNET_INSTALL_DIR: "./.dotnet"
DOTNET_ROLL_FORWARD: "Major"

jobs:
artifacts:
name: ${{ matrix.dockerDistro }} - net${{ matrix.dotnetVersion }}
name: ${{ matrix.docker_distro }} - net${{ matrix.dotnet_version }}
runs-on: ${{ inputs.runner }}
strategy:
fail-fast: false
matrix:
dockerDistro: ${{ fromJson(inputs.dockerDistros) }}
dotnetVersion: ${{ fromJson(inputs.dotnetVersions) }}
matrix:
docker_distro: ${{ fromJson(inputs.docker_distros) }}
dotnet_version: ${{ fromJson(inputs.dotnet_versions) }}
steps:
-
name: Checkout
@@ -47,7 +48,13 @@ jobs:
with:
name: native-Linux
path: ${{ github.workspace }}/artifacts/packages/native
-
name: Set up Docker
uses: ./.github/actions/docker-setup
-
name: '[Test Artifacts]'
shell: pwsh
run: dotnet run/artifacts.dll --target=ArtifactsTest --arch=${{ inputs.arch }} --dotnet_version=${{ matrix.dotnetVersion }} --docker_distro=${{ matrix.dockerDistro }}
run: |
dotnet run/artifacts.dll `
--target=ArtifactsTest --arch=${{ inputs.arch }} --dotnet_version=${{ matrix.dotnet_version }} `
--docker_distro=${{ matrix.docker_distro }}
2 changes: 1 addition & 1 deletion .github/workflows/_artifacts_windows.yml
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@ env:
jobs:
artifacts:
name: ${{ matrix.package }}
runs-on: windows-latest
runs-on: windows-2025
strategy:
fail-fast: false
matrix:
8 changes: 4 additions & 4 deletions .github/workflows/_build.yml
Original file line number Diff line number Diff line change
@@ -11,7 +11,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [windows-latest, ubuntu-latest, macos-15]
os: [windows-2025, ubuntu-24.04, macos-15]

runs-on: ${{ matrix.os }}
steps:
@@ -30,21 +30,21 @@ jobs:
-
name: 'Upload nuget packages'
uses: actions/upload-artifact@v4
if: matrix.os == 'windows-latest'
if: matrix.os == 'windows-2025'
with:
name: nuget
path: ${{ github.workspace }}/artifacts/packages/nuget
-
name: 'Upload native packages'
uses: actions/upload-artifact@v4
if: matrix.os == 'windows-latest'
if: matrix.os == 'windows-2025'
with:
name: native-${{ runner.os }}
path: ${{ github.workspace }}/artifacts/packages/native/*.zip
-
name: 'Upload native packages'
uses: actions/upload-artifact@v4
if: matrix.os != 'windows-latest'
if: matrix.os != 'windows-2025'
with:
name: native-${{ runner.os }}
path: ${{ github.workspace }}/artifacts/packages/native/*.tar.gz
33 changes: 11 additions & 22 deletions .github/workflows/_docker.yml
Original file line number Diff line number Diff line change
@@ -7,25 +7,26 @@ on:
arch:
required: true
type: string
dockerDistros:
docker_distros:
required: true
type: string
dotnetVersions:
dotnet_versions:
required: true
type: string

env:
DOTNET_INSTALL_DIR: "./.dotnet"
DOTNET_ROLL_FORWARD: "Major"

jobs:
docker:
name: ${{ matrix.dockerDistro }} - net${{ matrix.dotnetVersion }}
name: ${{ matrix.docker_distro }} - net${{ matrix.dotnet_version }}
runs-on: ${{ inputs.runner }}
strategy:
fail-fast: false
matrix:
dockerDistro: ${{ fromJson(inputs.dockerDistros) }}
dotnetVersion: ${{ fromJson(inputs.dotnetVersions) }}
docker_distro: ${{ fromJson(inputs.docker_distros) }}
dotnet_version: ${{ fromJson(inputs.dotnet_versions) }}
steps:
-
name: Checkout
@@ -43,35 +44,23 @@ jobs:
path: ${{ github.workspace }}/artifacts/packages/nuget
-
name: Set up Docker
uses: docker/setup-docker-action@v4
with:
daemon-config: '{ "features": { "containerd-snapshotter": true } }'
-
name: Setup QEMU
uses: docker/setup-qemu-action@v3
-
name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3
with:
version: 'latest'
driver-opts: 'image=moby/buildkit:buildx-stable-1'
install: true
uses: ./.github/actions/docker-setup
-
name: Docker Test
if: success() && github.event_name == 'pull_request' || github.repository_owner != 'GitTools'
uses: ./.github/actions/docker-test
with:
arch: ${{ inputs.arch }}
dockerDistro: ${{ matrix.dockerDistro }}
dotnetVersion: ${{ matrix.dotnetVersion }}
docker_distro: ${{ matrix.docker_distro }}
dotnet_version: ${{ matrix.dotnet_version }}
-
name: Docker Publish
if: success() && github.event_name != 'pull_request' && github.repository_owner == 'GitTools' && github.ref_name == 'main'
uses: ./.github/actions/docker-publish
with:
arch: ${{ inputs.arch }}
dockerDistro: ${{ matrix.dockerDistro }}
dotnetVersion: ${{ matrix.dotnetVersion }}
docker_distro: ${{ matrix.docker_distro }}
dotnet_version: ${{ matrix.dotnet_version }}
docker_registry_username: ${{ secrets.DOCKER_USERNAME }}
docker_registry_password: ${{ secrets.DOCKER_PASSWORD }}
github_registry_username: ${{ github.repository_owner }}
Loading