Skip to content

Commit 1b455f6

Browse files
authored
Merge pull request #7 from TurnerSoftware/add-run-once-support
Adds support for run once commands
2 parents a76acb2 + efa9291 commit 1b455f6

6 files changed

Lines changed: 19 additions & 11 deletions

File tree

.appveyor.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ environment:
88

99
build_script:
1010
- ps: dotnet build -c $env:BUILD_CONFIGURATION
11-
- ps: dotnet test --results-directory $env:BUILD_ARTIFACT_PATH/test-results
11+
- ps: dotnet test --results-directory $env:BUILD_ARTIFACT_PATH/test-results /p:SkipBuildVersioning=true
1212
- ps: dotnet pack --no-build -c $env:BUILD_CONFIGURATION /p:PackageOutputPath=$env:BUILD_ARTIFACT_PATH
1313

1414
test: false

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ jobs:
3636
- name: Build
3737
run: dotnet build -c Release --no-restore
3838
- name: Test with Coverage
39-
run: dotnet test --logger trx --results-directory ${{env.BUILD_ARTIFACT_PATH}}/coverage --collect "XPlat Code Coverage" --settings CodeCoverage.runsettings
39+
run: dotnet test --logger trx --results-directory ${{env.BUILD_ARTIFACT_PATH}}/coverage --collect "XPlat Code Coverage" --settings CodeCoverage.runsettings /p:SkipBuildVersioning=true
4040
- name: Pack
4141
run: dotnet pack -c Release --no-build /p:PackageOutputPath=${{env.BUILD_ARTIFACT_PATH}}
4242
- name: Publish artifacts

TurnerSoftware.BuildVersioning.sln

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "global", "global", "{790239
1818
.codecov.yml = .codecov.yml
1919
.editorconfig = .editorconfig
2020
.gitignore = .gitignore
21+
azure-pipelines.yml = azure-pipelines.yml
2122
CodeCoverage.runsettings = CodeCoverage.runsettings
2223
License.txt = License.txt
2324
README.md = README.md
@@ -28,7 +29,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{EC91FA7D
2829
tests\Directory.Build.props = tests\Directory.Build.props
2930
EndProjectSection
3031
EndProject
31-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TurnerSoftware.BuildVersioning.Tests", "tests\TurnerSoftware.BuildVersioning.Tests\TurnerSoftware.BuildVersioning.Tests.csproj", "{F97BCD71-3D0E-4B36-8BE5-B401A05E0829}"
32+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TurnerSoftware.BuildVersioning.Tests", "tests\TurnerSoftware.BuildVersioning.Tests\TurnerSoftware.BuildVersioning.Tests.csproj", "{F97BCD71-3D0E-4B36-8BE5-B401A05E0829}"
3233
EndProject
3334
Global
3435
GlobalSection(SolutionConfigurationPlatforms) = preSolution

azure-pipelines.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@ jobs:
1313
steps:
1414
- script: dotnet build -c $(BUILD_CONFIGURATION)
1515
displayName: 'Build Application'
16+
17+
- script: dotnet test /p:SkipBuildVersioning=true
18+
displayName: 'Test Application'
1619

1720
- script: dotnet pack --no-build -c $(BUILD_CONFIGURATION) /p:PackageOutputPath=$(BUILD_ARTIFACT_PATH)
1821
displayName: 'Pack Build'

src/TurnerSoftware.BuildVersioning.Tool/TurnerSoftware.BuildVersioning.Tool.csproj

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,9 @@
88
</PropertyGroup>
99

1010
<PropertyGroup>
11-
<SelfHostedBuildVersioning Condition="'$(DesignTimeBuild)' != 'true' AND '$(SkipBuildVersioning)' != 'true'">true</SelfHostedBuildVersioning>
12-
<BuildVersioningToolPath>../../TurnerSoftware.BuildVersioning.Tool/bin/$(Configuration)/$(TargetFramework)/TurnerSoftware.BuildVersioning.Tool.dll</BuildVersioningToolPath>
11+
<BuildVersioningToolPath>bin/$(Configuration)/$(TargetFramework)/TurnerSoftware.BuildVersioning.Tool.dll</BuildVersioningToolPath>
12+
<SelfHostedBuildVersioning Condition="$(DesignTimeBuild) != 'true' AND $(SkipBuildVersioning) != 'true'">true</SelfHostedBuildVersioning>
13+
<BuildVersioningToolPath>../../TurnerSoftware.BuildVersioning.Tool/$(BuildVersioningToolPath)</BuildVersioningToolPath>
1314
</PropertyGroup>
1415

1516
<ItemGroup>
@@ -18,10 +19,7 @@
1819

1920
<!-- Self-hosting Support -->
2021
<Import Project="../TurnerSoftware.BuildVersioning/build/TurnerSoftware.BuildVersioning.targets" Condition="$(SelfHostedBuildVersioning) == 'true'" />
21-
<PropertyGroup Condition="$(SelfHostedBuildVersioning) == 'true'">
22-
<BuildVersioningToolPath>../../TurnerSoftware.BuildVersioning.Tool/bin/$(Configuration)/$(TargetFramework)/TurnerSoftware.BuildVersioning.Tool.dll</BuildVersioningToolPath>
23-
</PropertyGroup>
24-
<Target Name="_SelfHostedBuildVersioning" BeforeTargets="BeforeBuild" Condition="$(SelfHostedBuildVersioning) == 'true'">
22+
<Target Name="_SelfHostedBuildVersioning" BeforeTargets="BeforeBuild" Condition="$(SelfHostedBuildVersioning) == 'true' AND !Exists($(BuildVersioningToolPath))">
2523
<Message Importance="high" Text="BuildVersioning-SelfHosting: Establishing a baseline build to provide versioning support" />
2624
<Exec Command="dotnet build TurnerSoftware.BuildVersioning.Tool.csproj -c $(Configuration) -v quiet --nologo /p:SkipBuildVersioning=true" StandardOutputImportance="low"></Exec>
2725
<Message Importance="high" Text="BuildVersioning-SelfHosting: Baseline build has been completed" />

src/TurnerSoftware.BuildVersioning/build/TurnerSoftware.BuildVersioning.Integrations.targets

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,10 @@
1010
<BuildPreReleaseFormat Condition="$(GITHUB_REF.Split('/')[1]) == 'pull'">pr.$(GITHUB_REF.Split('/')[2])</BuildPreReleaseFormat>
1111
<BuildMetadataFormat>{CommitHash}-github.$(GITHUB_RUN_ID)</BuildMetadataFormat>
1212
</PropertyGroup>
13-
<Target Name="_BuildVersioningWithGitHub" BeforeTargets="BeforeBuild" Condition="$(BuildVersioningWithGitHub) == 'true' AND $(GITHUB_RUN_ID) != ''">
13+
<Target Name="_BuildVersioningWithGitHub" BeforeTargets="BeforeBuild" Condition="$(BuildVersioningWithGitHub) == 'true' AND $(GITHUB_RUN_ID) != '' AND !$(_BuildVersioningRunOne.Contains('github'))">
14+
<PropertyGroup>
15+
<_BuildVersioningRunOnce>$(_BuildVersioningRunOnce)github;</_BuildVersioningRunOnce>
16+
</PropertyGroup>
1417
<Message Importance="$(BuildVersioningLogLevel)" Text="BuildVersioning-GitHubIntegration: Fetching tags for versioning as they aren't available by default in GitHub Actions" />
1518
<Exec Command="git fetch --prune --unshallow --tags --quiet" IgnoreExitCode="true" StandardErrorImportance="low" StandardOutputImportance="low" />
1619
</Target>
@@ -19,7 +22,10 @@
1922
<BuildPreReleaseFormat Condition="$(APPVEYOR_PULL_REQUEST_NUMBER) != ''">pr.$(APPVEYOR_PULL_REQUEST_NUMBER)</BuildPreReleaseFormat>
2023
<BuildMetadataFormat>{CommitHash}-appveyor.$(APPVEYOR_BUILD_ID)</BuildMetadataFormat>
2124
</PropertyGroup>
22-
<Target Name="_BuildVersioningWithAppVeyor" AfterTargets="BuildVersioning" Condition="$(BuildVersioningWithAppVeyor) == 'true' AND $(APPVEYOR) != ''">
25+
<Target Name="_BuildVersioningWithAppVeyor" AfterTargets="BuildVersioning" Condition="$(BuildVersioningWithAppVeyor) == 'true' AND $(APPVEYOR) != '' AND !$(_BuildVersioningRunOne.Contains('appveyor'))">
26+
<PropertyGroup>
27+
<_BuildVersioningRunOnce>$(_BuildVersioningRunOnce)appveyor;</_BuildVersioningRunOnce>
28+
</PropertyGroup>
2329
<Message Importance="$(BuildVersioningLogLevel)" Text="BuildVersioning-AppVeyorIntegration: Updating AppVeyor build name to $(BuildFullVersion)" />
2430
<Exec Command="powershell Update-AppveyorBuild -Version $(BuildFullVersion)" />
2531
</Target>

0 commit comments

Comments
 (0)