diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 2c68d7313..e86437f4a 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1,2 +1,2 @@ -github: HofmeisterAn +github: [testcontainers, HofmeisterAn] ko_fi: hofmeister diff --git a/.github/workflows/cicd.yml b/.github/workflows/cicd.yml index c6c2ec2a2..e12f947b2 100644 --- a/.github/workflows/cicd.yml +++ b/.github/workflows/cicd.yml @@ -120,7 +120,7 @@ jobs: shell: bash - name: Run Build - run: ./build.sh --target=Build + run: ./build.sh --target=Build --test-project=${{ matrix.test-projects.name }} shell: bash - name: Run Tests diff --git a/build/Tasks.cs b/build/Tasks.cs index 64d1ab27d..30e53b693 100644 --- a/build/Tasks.cs +++ b/build/Tasks.cs @@ -87,7 +87,14 @@ public sealed class BuildTask : FrostingTask public override void Run(BuildContext context) { var param = context.Parameters; - context.DotNetBuild(param.Solution, new DotNetBuildSettings + + // If a test project is specified, just build the project and its dependent projects to + // save build time. + var solutionOrProjectFilePath = string.IsNullOrEmpty(param.TestProject) + ? param.Solution + : param.Projects.OnlyTests.Single(testProject => testProject.Path.FullPath.EndsWith(param.TestProject + ".Tests.csproj")).Path.FullPath; + + context.DotNetBuild(solutionOrProjectFilePath, new DotNetBuildSettings { Configuration = param.Configuration, Verbosity = param.Verbosity, @@ -193,7 +200,7 @@ public override void Run(BuildContext context) public sealed class SignNuGetPackagesTask : FrostingTask { // We do not have access to a valid code signing certificate anymore. - public override bool ShouldRun(BuildContext context) => context.Parameters.ShouldPublish && false; + public override bool ShouldRun(BuildContext context) => /* context.Parameters.ShouldPublish */ false; public override void Run(BuildContext context) {