[build] Rename tasks
This commit is contained in:
Родитель
7de12a1d3e
Коммит
3f890fd4a8
|
@ -20,7 +20,7 @@ jobs:
|
|||
ref: master
|
||||
|
||||
- name: Download changelog
|
||||
run: ./build.cmd DocsUpdate --depth 1 --preview
|
||||
run: ./build.cmd docs-update --depth 1 --preview
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
|
|
|
@ -20,15 +20,15 @@ jobs:
|
|||
ref: docs-stable
|
||||
|
||||
- name: Build BenchmarkDotNet
|
||||
run: ./build.cmd Build
|
||||
run: ./build.cmd build
|
||||
|
||||
- name: Download changelog
|
||||
run: ./build.cmd DocsUpdate --depth 1 --preview
|
||||
run: ./build.cmd docs-update --depth 1 --preview
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Build documentation
|
||||
run: ./build.cmd DocsBuild
|
||||
run: ./build.cmd docs-build
|
||||
|
||||
- name: Upload Artifacts
|
||||
uses: actions/upload-artifact@v1
|
||||
|
|
|
@ -18,16 +18,16 @@ jobs:
|
|||
run: Set-MpPreference -DisableRealtimeMonitoring $true
|
||||
shell: powershell
|
||||
- uses: actions/checkout@v3
|
||||
- name: Run task 'Build'
|
||||
- name: Run task 'build'
|
||||
shell: cmd
|
||||
run: |
|
||||
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
|
||||
./build.cmd Build
|
||||
- name: Run task 'InTestsCore'
|
||||
./build.cmd build
|
||||
- name: Run task 'in-tests-core'
|
||||
shell: cmd
|
||||
run: |
|
||||
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
|
||||
./build.cmd InTestsCore -e
|
||||
./build.cmd in-tests-core -e
|
||||
- name: Upload test results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: always()
|
||||
|
@ -42,16 +42,16 @@ jobs:
|
|||
run: Set-MpPreference -DisableRealtimeMonitoring $true
|
||||
shell: powershell
|
||||
- uses: actions/checkout@v3
|
||||
- name: Run task 'Build'
|
||||
- name: Run task 'build'
|
||||
shell: cmd
|
||||
run: |
|
||||
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
|
||||
./build.cmd Build
|
||||
- name: Run task 'InTestsFull'
|
||||
./build.cmd build
|
||||
- name: Run task 'in-tests-full'
|
||||
shell: cmd
|
||||
run: |
|
||||
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
|
||||
./build.cmd InTestsFull -e
|
||||
./build.cmd in-tests-full -e
|
||||
- name: Upload test results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: always()
|
||||
|
@ -70,12 +70,12 @@ jobs:
|
|||
platform: x64
|
||||
- name: Set up zlib-static
|
||||
run: sudo apt-get install -y libkrb5-dev
|
||||
- name: Run task 'Build'
|
||||
run: ./build.cmd Build
|
||||
- name: Run task 'UnitTests'
|
||||
run: ./build.cmd UnitTests -e
|
||||
- name: Run task 'InTestsCore'
|
||||
run: ./build.cmd InTestsCore -e
|
||||
- name: Run task 'build'
|
||||
run: ./build.cmd build
|
||||
- name: Run task 'unit-tests'
|
||||
run: ./build.cmd unit-tests -e
|
||||
- name: Run task 'in-tests-core'
|
||||
run: ./build.cmd in-tests-core -e
|
||||
- name: Upload test results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: always()
|
||||
|
@ -87,12 +87,12 @@ jobs:
|
|||
runs-on: macos-13
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Run task 'Build'
|
||||
run: ./build.cmd Build
|
||||
- name: Run task 'UnitTests'
|
||||
run: ./build.cmd UnitTests -e
|
||||
- name: Run task 'InTestsCore'
|
||||
run: ./build.cmd InTestsCore -e
|
||||
- name: Run task 'build'
|
||||
run: ./build.cmd build
|
||||
- name: Run task 'unit-tests'
|
||||
run: ./build.cmd unit-tests -e
|
||||
- name: Run task 'in-tests-core'
|
||||
run: ./build.cmd in-tests-core -e
|
||||
- name: Upload test results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: always()
|
||||
|
|
|
@ -34,15 +34,18 @@ public class CommandLineParser
|
|||
if (Is(taskName, "-t", "--target") && argsToProcess.Any())
|
||||
taskName = argsToProcess.Dequeue();
|
||||
|
||||
taskName = taskName.Replace("-", "");
|
||||
|
||||
var taskNames = GetTaskNames();
|
||||
if (!taskNames.Contains(taskName))
|
||||
var matchedTaskName = taskNames
|
||||
.FirstOrDefault(name => string.Equals(name.Replace("-", ""), taskName.Replace("-", ""),
|
||||
StringComparison.OrdinalIgnoreCase));
|
||||
if (matchedTaskName == null)
|
||||
{
|
||||
PrintError($"'{taskName}' is not a task");
|
||||
return null;
|
||||
}
|
||||
|
||||
taskName = matchedTaskName;
|
||||
|
||||
if (argsToProcess.Count == 1 && Is(argsToProcess.Peek(), "-h", "--help"))
|
||||
{
|
||||
PrintTaskHelp(taskName);
|
||||
|
@ -93,9 +96,6 @@ public class CommandLineParser
|
|||
WritePrefix();
|
||||
WriteLine("BenchmarkDotNet build script");
|
||||
|
||||
WritePrefix();
|
||||
WriteLine("Task names are case-insensitive, dashes are ignored");
|
||||
|
||||
WriteLine();
|
||||
|
||||
WriteHeader("Usage:");
|
||||
|
@ -139,7 +139,7 @@ public class CommandLineParser
|
|||
|
||||
WritePrefix();
|
||||
Write(CallScriptName + " ");
|
||||
WriteTask("unittests ");
|
||||
WriteTask("unit-tests ");
|
||||
WriteOption("--exclusive --verbosity ");
|
||||
WriteArg("Diagnostic");
|
||||
WriteLine();
|
||||
|
@ -289,21 +289,6 @@ public class CommandLineParser
|
|||
WriteTask(taskName);
|
||||
WriteLine();
|
||||
|
||||
if (taskName.StartsWith("docs", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
WritePrefix();
|
||||
Write(ScriptName + " ");
|
||||
WriteTask("docs-" + taskName[4..].ToLowerInvariant());
|
||||
WriteLine();
|
||||
}
|
||||
else
|
||||
{
|
||||
WritePrefix();
|
||||
Write(ScriptName + " ");
|
||||
WriteTask(taskName.ToLowerInvariant());
|
||||
WriteLine();
|
||||
}
|
||||
|
||||
WriteLine();
|
||||
|
||||
PrintOptions(helpInfo.Options.Concat(baseOptions).ToArray());
|
||||
|
|
|
@ -16,14 +16,14 @@ public static class Program
|
|||
}
|
||||
}
|
||||
|
||||
[TaskName("Restore")]
|
||||
[TaskName("restore")]
|
||||
[TaskDescription("Restore NuGet packages")]
|
||||
public class RestoreTask : FrostingTask<BuildContext>
|
||||
{
|
||||
public override void Run(BuildContext context) => context.BuildRunner.Restore();
|
||||
}
|
||||
|
||||
[TaskName("Build")]
|
||||
[TaskName("build")]
|
||||
[TaskDescription("Build BenchmarkDotNet.sln solution")]
|
||||
[IsDependentOn(typeof(RestoreTask))]
|
||||
public class BuildTask : FrostingTask<BuildContext>
|
||||
|
@ -31,7 +31,7 @@ public class BuildTask : FrostingTask<BuildContext>
|
|||
public override void Run(BuildContext context) => context.BuildRunner.Build();
|
||||
}
|
||||
|
||||
[TaskName("UnitTests")]
|
||||
[TaskName("unit-tests")]
|
||||
[TaskDescription("Run unit tests (fast)")]
|
||||
[IsDependentOn(typeof(BuildTask))]
|
||||
public class UnitTestsTask : FrostingTask<BuildContext>
|
||||
|
@ -39,7 +39,7 @@ public class UnitTestsTask : FrostingTask<BuildContext>
|
|||
public override void Run(BuildContext context) => context.UnitTestRunner.RunUnitTests();
|
||||
}
|
||||
|
||||
[TaskName("InTestsFull")]
|
||||
[TaskName("in-tests-full")]
|
||||
[TaskDescription("Run integration tests using .NET Framework 4.6.2+ (slow)")]
|
||||
[IsDependentOn(typeof(BuildTask))]
|
||||
public class InTestsFullTask : FrostingTask<BuildContext>
|
||||
|
@ -49,7 +49,7 @@ public class InTestsFullTask : FrostingTask<BuildContext>
|
|||
public override void Run(BuildContext context) => context.UnitTestRunner.RunInTests("net462");
|
||||
}
|
||||
|
||||
[TaskName("InTestsCore")]
|
||||
[TaskName("in-tests-core")]
|
||||
[TaskDescription("Run integration tests using .NET 7 (slow)")]
|
||||
[IsDependentOn(typeof(BuildTask))]
|
||||
public class InTestsCoreTask : FrostingTask<BuildContext>
|
||||
|
@ -57,7 +57,7 @@ public class InTestsCoreTask : FrostingTask<BuildContext>
|
|||
public override void Run(BuildContext context) => context.UnitTestRunner.RunInTests("net7.0");
|
||||
}
|
||||
|
||||
[TaskName("AllTests")]
|
||||
[TaskName("all-tests")]
|
||||
[TaskDescription("Run all unit and integration tests (slow)")]
|
||||
[IsDependentOn(typeof(UnitTestsTask))]
|
||||
[IsDependentOn(typeof(InTestsFullTask))]
|
||||
|
@ -66,7 +66,7 @@ public class AllTestsTask : FrostingTask<BuildContext>
|
|||
{
|
||||
}
|
||||
|
||||
[TaskName("Pack")]
|
||||
[TaskName("pack")]
|
||||
[TaskDescription("Pack Nupkg packages")]
|
||||
[IsDependentOn(typeof(BuildTask))]
|
||||
public class PackTask : FrostingTask<BuildContext>
|
||||
|
@ -74,16 +74,7 @@ public class PackTask : FrostingTask<BuildContext>
|
|||
public override void Run(BuildContext context) => context.BuildRunner.Pack();
|
||||
}
|
||||
|
||||
[TaskName("CI")]
|
||||
[TaskDescription("Perform all CI-related tasks: Restore, Build, AllTests, Pack")]
|
||||
[IsDependentOn(typeof(BuildTask))]
|
||||
[IsDependentOn(typeof(AllTestsTask))]
|
||||
[IsDependentOn(typeof(PackTask))]
|
||||
public class CiTask : FrostingTask<BuildContext>
|
||||
{
|
||||
}
|
||||
|
||||
[TaskName("DocsUpdate")]
|
||||
[TaskName("docs-update")]
|
||||
[TaskDescription("Update generated documentation files")]
|
||||
public class DocsUpdateTask : FrostingTask<BuildContext>, IHelpProvider
|
||||
{
|
||||
|
@ -99,7 +90,7 @@ public class DocsUpdateTask : FrostingTask<BuildContext>, IHelpProvider
|
|||
}
|
||||
}
|
||||
|
||||
[TaskName("DocsPrepare")]
|
||||
[TaskName("docs-prepare")]
|
||||
[TaskDescription("Prepare auxiliary documentation files")]
|
||||
public class DocsPrepareTask : FrostingTask<BuildContext>, IHelpProvider
|
||||
{
|
||||
|
@ -114,11 +105,7 @@ public class DocsPrepareTask : FrostingTask<BuildContext>, IHelpProvider
|
|||
}
|
||||
}
|
||||
|
||||
// In order to work around xref issues in DocFx, BenchmarkDotNet and BenchmarkDotNet.Annotations must be build
|
||||
// before running the DocFX_Build target. However, including a dependency on BuildTask here may have unwanted
|
||||
// side effects (CleanTask).
|
||||
// TODO: Define dependencies when a CI workflow scenario for using the "DocFX_Build" target exists.
|
||||
[TaskName("DocsBuild")]
|
||||
[TaskName("docs-build")]
|
||||
[TaskDescription("Build final documentation")]
|
||||
[IsDependentOn(typeof(DocsPrepareTask))]
|
||||
public class DocsBuildTask : FrostingTask<BuildContext>, IHelpProvider
|
||||
|
@ -127,11 +114,12 @@ public class DocsBuildTask : FrostingTask<BuildContext>, IHelpProvider
|
|||
|
||||
public HelpInfo GetHelp() => new()
|
||||
{
|
||||
Description = "The 'build' task should be run manually to build api docs",
|
||||
Options = new IOption[] { KnownOptions.DocsPreview }
|
||||
};
|
||||
}
|
||||
|
||||
[TaskName("Release")]
|
||||
[TaskName("release")]
|
||||
[TaskDescription("Release new version")]
|
||||
[IsDependentOn(typeof(BuildTask))]
|
||||
[IsDependentOn(typeof(PackTask))]
|
||||
|
@ -140,53 +128,4 @@ public class DocsBuildTask : FrostingTask<BuildContext>, IHelpProvider
|
|||
public class ReleaseTask : FrostingTask<BuildContext>
|
||||
{
|
||||
public override void Run(BuildContext context) => context.ReleaseRunner.Run();
|
||||
}
|
||||
|
||||
[TaskName("FastTests")]
|
||||
[TaskDescription("OBSOLETE: use 'UnitTests'")]
|
||||
[IsDependentOn(typeof(UnitTestsTask))]
|
||||
public class FastTestsTask : FrostingTask<BuildContext>
|
||||
{
|
||||
}
|
||||
|
||||
[TaskName("SlowFullFrameworkTests")]
|
||||
[TaskDescription("OBSOLETE: use 'InTestsFull'")]
|
||||
[IsDependentOn(typeof(InTestsFullTask))]
|
||||
public class SlowFullFrameworkTestsTask : FrostingTask<BuildContext>
|
||||
{
|
||||
}
|
||||
|
||||
[TaskName("SlowTestsNetCore")]
|
||||
[TaskDescription("OBSOLETE: use 'InTestsCore'")]
|
||||
[IsDependentOn(typeof(InTestsCoreTask))]
|
||||
public class SlowTestsNetCoreTask : FrostingTask<BuildContext>
|
||||
{
|
||||
}
|
||||
|
||||
[TaskName("DocFX_Changelog_Download")]
|
||||
[TaskDescription("OBSOLETE: use 'DocsUpdate'")]
|
||||
[IsDependentOn(typeof(DocsUpdateTask))]
|
||||
public class DocFxChangelogDownloadTask : FrostingTask<BuildContext>
|
||||
{
|
||||
}
|
||||
|
||||
[TaskName("DocFX_Changelog_Generate")]
|
||||
[TaskDescription("OBSOLETE: use 'DocsPrepare'")]
|
||||
[IsDependentOn(typeof(DocsPrepareTask))]
|
||||
public class DocfxChangelogGenerateTask : FrostingTask<BuildContext>
|
||||
{
|
||||
}
|
||||
|
||||
[TaskName("DocFX_Generate_Redirects")]
|
||||
[TaskDescription("OBSOLETE: use 'DocsBuild'")]
|
||||
[IsDependentOn(typeof(DocsBuildTask))]
|
||||
public class DocfxGenerateRedirectsTask : FrostingTask<BuildContext>
|
||||
{
|
||||
}
|
||||
|
||||
[TaskName("DocFX_Build")]
|
||||
[TaskDescription("OBSOLETE: use 'DocsBuild'")]
|
||||
[IsDependentOn(typeof(DocsBuildTask))]
|
||||
public class DocfxBuildTask : FrostingTask<BuildContext>
|
||||
{
|
||||
}
|
|
@ -49,10 +49,10 @@ It will be transformed to:
|
|||
|
||||
## Building documentation locally
|
||||
|
||||
You can build documentation locally with the help of the `DocsBuild` build task:
|
||||
You can build documentation locally with the help of the `docs-build` build task:
|
||||
|
||||
```
|
||||
build.cmd DocsBuild
|
||||
build.cmd docs-build
|
||||
```
|
||||
|
||||
## See also
|
||||
|
|
Загрузка…
Ссылка в новой задаче