Piotrp msft/msbuild/incremental test (#3842)
* Incremental Testing - Part 1 * Fix 'clean' bug * Remove --fallbacksource from TestAssetPackage restore.
This commit is contained in:
parent
caa4cf373c
commit
16bedef2c5
7 changed files with 457 additions and 149 deletions
|
@ -3,6 +3,9 @@
|
||||||
<Import Project="test/ProjectsToTest.props" />
|
<Import Project="test/ProjectsToTest.props" />
|
||||||
<Import Project="test/TestPackageProjects.props" />
|
<Import Project="test/TestPackageProjects.props" />
|
||||||
|
|
||||||
|
<UsingTask TaskName="DotNetBuild" AssemblyFile="$(CLIBuildDll)" />
|
||||||
|
<UsingTask TaskName="DotNetPack" AssemblyFile="$(CLIBuildDll)" />
|
||||||
|
<UsingTask TaskName="DotNetRestore" AssemblyFile="$(CLIBuildDll)" />
|
||||||
<UsingTask TaskName="DotNetTest" AssemblyFile="$(CLIBuildDll)" />
|
<UsingTask TaskName="DotNetTest" AssemblyFile="$(CLIBuildDll)" />
|
||||||
|
|
||||||
<Target Name="Test"
|
<Target Name="Test"
|
||||||
|
@ -22,9 +25,6 @@
|
||||||
<TestTaskEnvironmentVariables Include="TEST_ARTIFACTS=$(TestArtifactsEnv)" />
|
<TestTaskEnvironmentVariables Include="TEST_ARTIFACTS=$(TestArtifactsEnv)" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<Message Text="PATH=$(ExecPath)" />
|
|
||||||
<Message Text="TEST_ARTIFACTS=$(TestArtifactsEnv)" />
|
|
||||||
|
|
||||||
<DotNetTest WorkingDirectory="$(TestDirectory)/%(ProjectsToTest.Identity)/"
|
<DotNetTest WorkingDirectory="$(TestDirectory)/%(ProjectsToTest.Identity)/"
|
||||||
EnvironmentVariables="@(TestTaskEnvironmentVariables)"
|
EnvironmentVariables="@(TestTaskEnvironmentVariables)"
|
||||||
ToolPath="$(Stage2Directory)"
|
ToolPath="$(Stage2Directory)"
|
||||||
|
@ -39,19 +39,21 @@
|
||||||
<PathSeparator>/</PathSeparator>
|
<PathSeparator>/</PathSeparator>
|
||||||
<PathSeparator Condition=" '$(OSName)' == 'win' ">\</PathSeparator>
|
<PathSeparator Condition=" '$(OSName)' == 'win' ">\</PathSeparator>
|
||||||
<TestPackageBuildVersionSuffix>$(CommitCount)</TestPackageBuildVersionSuffix>
|
<TestPackageBuildVersionSuffix>$(CommitCount)</TestPackageBuildVersionSuffix>
|
||||||
<TestOutputDir>$(BaseOutputDirectory)/tests</TestOutputDir>
|
<TestOutputDir>$(BaseOutputDirectory)/tests/</TestOutputDir>
|
||||||
<TestPackagesBuildDir>$(TestOutputDir)/packagesBuild</TestPackagesBuildDir>
|
<TestPackagesBuildDir>$(TestOutputDir)/packagesBuild/</TestPackagesBuildDir>
|
||||||
<TestPackagesDir>$(TestOutputDir)/packages</TestPackagesDir>
|
<TestPackagesDir>$(TestOutputDir)/packages/</TestPackagesDir>
|
||||||
<TestArtifactsDir>$(TestOutputDir)/artifacts</TestArtifactsDir>
|
<TestArtifactsDir>$(TestOutputDir)/artifacts/</TestArtifactsDir>
|
||||||
<TestResultXmlDir>$(TestOutputDir)/results</TestResultXmlDir>
|
<TestResultXmlDir>$(TestOutputDir)/results/</TestResultXmlDir>
|
||||||
<TestDirectory>$(RepoRoot)/test</TestDirectory>
|
<TestDirectory>$(RepoRoot)/test/</TestDirectory>
|
||||||
<DotnetUnderTest>$(DotnetStage2)</DotnetUnderTest>
|
<DotnetUnderTest>$(Stage2Directory)</DotnetUnderTest>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="BuildTests"
|
<Target Name="BuildTests"
|
||||||
DependsOnTargets="RestoreTests;">
|
DependsOnTargets="RestoreTests;">
|
||||||
<Exec Command="$(DotnetUnderTest) build --configuration $(Configuration)" WorkingDirectory="$(TestDirectory)/%(ProjectsToTest.Identity)/" />
|
<DotNetBuild Configuration="$(Configuration)"
|
||||||
|
ToolPath="$(DotnetUnderTest)"
|
||||||
|
WorkingDirectory="$(TestDirectory)/%(ProjectsToTest.Identity)/" />
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="RestoreTests"
|
<Target Name="RestoreTests"
|
||||||
|
@ -60,15 +62,25 @@
|
||||||
SetupRestoreTestsInputs;"
|
SetupRestoreTestsInputs;"
|
||||||
Inputs="@(RestoreTestsInputs)"
|
Inputs="@(RestoreTestsInputs)"
|
||||||
Outputs="@(RestoreTestsInputs->'%(RelativeDir)project.lock.json')">
|
Outputs="@(RestoreTestsInputs->'%(RelativeDir)project.lock.json')">
|
||||||
<Exec Command="$(DotnetUnderTest) restore $(TestDirectory) --fallbacksource $(TestPackagesDir)" WorkingDirectory="$(TestDirectory)" />
|
<DotNetRestore FallbackSource="$(TestPackagesDir)"
|
||||||
|
ToolPath="$(DotnetUnderTest)"
|
||||||
|
WorkingDirectory="$(TestDirectory)" />
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="CleanTestProjectsBinObj"
|
<Target Name="CleanTestProjectsBinObj"
|
||||||
DependsOnTargets="SetupRestoreTestsInputs;"
|
DependsOnTargets="SetupRestoreTestsInputs;"
|
||||||
Inputs="@(RestoreTestsInputs)"
|
Inputs="@(RestoreTestsInputs)"
|
||||||
Outputs="@(RestoreTestsInputs->'%(RelativeDir)project.lock.json')">
|
Outputs="@(RestoreTestsInputs->'%(RelativeDir)project.lock.json')">
|
||||||
<Delete Files="$(TestDirectory)/**/bin/**/*.*')" />
|
<ItemGroup>
|
||||||
<Delete Files="$(TestDirectory)/**/obj/**/*.*')" />
|
<FilesToDelete Include="$(TestDirectory)**/bin/**/*.*" />
|
||||||
|
<FilesToDelete Include="$(TestDirectory)**/obj/**/*.*" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<Delete Files="@(FilesToDelete)" />
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<FilesToDelete Remove="*" />
|
||||||
|
</ItemGroup>
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="SetupRestoreTestsInputs"
|
<Target Name="SetupRestoreTestsInputs"
|
||||||
|
@ -95,8 +107,9 @@
|
||||||
<Message Text="Skipping projects with .noautobuild files:" />
|
<Message Text="Skipping projects with .noautobuild files:" />
|
||||||
<Message Text="%(NoAutoBuildTestAssetProjects.Identity)" />
|
<Message Text="%(NoAutoBuildTestAssetProjects.Identity)" />
|
||||||
|
|
||||||
<Exec Command="$(DotnetUnderTest) build %(BuildableTestAssetProjects.FullPath) --framework netcoreapp1.0"
|
<DotNetBuild Framework="netcoreapp1.0"
|
||||||
WorkingDirectory="%(BuildableTestAssetProjects.RelativeDir)" />
|
ToolPath="$(DotnetUnderTest)"
|
||||||
|
WorkingDirectory="%(BuildableTestAssetProjects.RelativeDir)" />
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="RestoreTestAssetProjects"
|
<Target Name="RestoreTestAssetProjects"
|
||||||
|
@ -104,7 +117,10 @@
|
||||||
SetupRestoreTestAssetProjectsInputs;"
|
SetupRestoreTestAssetProjectsInputs;"
|
||||||
Inputs="@(RestoreTestAssetProjectsInputs)"
|
Inputs="@(RestoreTestAssetProjectsInputs)"
|
||||||
Outputs="@(RestoreTestAssetProjectsInputs->'%(RelativeDir)/project.lock.json')">
|
Outputs="@(RestoreTestAssetProjectsInputs->'%(RelativeDir)/project.lock.json')">
|
||||||
<Exec Command="$(DotnetUnderTest) restore $(RepoRoot)/TestAssets/TestProjects/ --fallbacksource $(TestPackagesDir)" />
|
|
||||||
|
<DotNetRestore FallbackSource="$(TestPackagesDir)"
|
||||||
|
ToolPath="$(DotnetUnderTest)"
|
||||||
|
WorkingDirectory="$(RepoRoot)TestAssets/TestProjects/" />
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="SetupRestoreTestAssetProjectsInputs" >
|
<Target Name="SetupRestoreTestAssetProjectsInputs" >
|
||||||
|
@ -133,7 +149,11 @@
|
||||||
<Message Text="Skipping projects with .noautobuild files:" />
|
<Message Text="Skipping projects with .noautobuild files:" />
|
||||||
<Message Text="%(NoAutoBuildDesktopTestAssetProjects.FullPath)" />
|
<Message Text="%(NoAutoBuildDesktopTestAssetProjects.FullPath)" />
|
||||||
|
|
||||||
<Exec Command="$(DotnetUnderTest) build %(BuildableDesktopTestAssetProjects.FullPath) --framework net451" WorkingDirectory="%(BuildableDesktopTestAssetProjects.RelativeDir)" />
|
<DotNetBuild Configuration="$(Configuration)"
|
||||||
|
Framework="net451"
|
||||||
|
ProjectPath="%(BuildableDesktopTestAssetProjects.FullPath)"
|
||||||
|
ToolPath="$(DotnetUnderTest)"
|
||||||
|
WorkingDirectory="%(BuildableDesktopTestAssetProjects.RelativeDir)" />
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="RestoreDesktopTestAssetProjects"
|
<Target Name="RestoreDesktopTestAssetProjects"
|
||||||
|
@ -142,7 +162,10 @@
|
||||||
SetupRestoreDesktopTestAssetProjectsInputs;"
|
SetupRestoreDesktopTestAssetProjectsInputs;"
|
||||||
Inputs="@(RestoreDesktopTestAssetProjectsInputs)"
|
Inputs="@(RestoreDesktopTestAssetProjectsInputs)"
|
||||||
Outputs="@(RestoreDesktopTestAssetProjectsInputs->'%(RelativeDir)/project.lock.json')">
|
Outputs="@(RestoreDesktopTestAssetProjectsInputs->'%(RelativeDir)/project.lock.json')">
|
||||||
<Exec Command="$(DotnetUnderTest) restore $(RepoRoot)TestAssets\DesktopTestProjects\ --fallbacksource $(TestPackagesDir)" />
|
|
||||||
|
<DotNetRestore FallbackSource="$(TestPackagesDir)"
|
||||||
|
ToolPath="$(DotnetUnderTest)"
|
||||||
|
WorkingDirectory="$(RepoRoot)TestAssets\DesktopTestProjects\" />
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="SetupRestoreDesktopTestAssetProjectsInputs">
|
<Target Name="SetupRestoreDesktopTestAssetProjectsInputs">
|
||||||
|
@ -154,25 +177,28 @@
|
||||||
<Target Name="CreateTestAssetPackageNuPkgs"
|
<Target Name="CreateTestAssetPackageNuPkgs"
|
||||||
DependsOnTargets="BuildTestAssetPackageProjects;
|
DependsOnTargets="BuildTestAssetPackageProjects;
|
||||||
SetupTestPackageProjectData;"
|
SetupTestPackageProjectData;"
|
||||||
Outputs="%(TestPackageProject.Identity)">
|
Inputs="%(TestPackageProject.PackInputs)"
|
||||||
<PropertyGroup>
|
Outputs="%(TestPackageProject.PackOutputs)">
|
||||||
<VersionSuffixOption></VersionSuffixOption>
|
|
||||||
<VersionSuffixOption Condition="'%(TestPackageProject.VersionSuffix)' != ''">--version-suffix %(TestPackageProject.VersionSuffix)</VersionSuffixOption>
|
|
||||||
</PropertyGroup>
|
|
||||||
|
|
||||||
<Exec Command="$(DotnetUnderTest) pack %(TestPackageProject.FullPath) --no-build --build-base-path $(TestPackagesBuildDir) --output $(TestPackagesDir) $(VersionSuffixOption)" />
|
<DotNetPack BuildBasePath="$(TestPackagesBuildDir)"
|
||||||
|
NoBuild="True"
|
||||||
|
Output="$(TestPackagesDir)"
|
||||||
|
ProjectPath="%(TestPackageProject.FullPath)"
|
||||||
|
ToolPath="$(DotnetUnderTest)"
|
||||||
|
VersionSuffix="%(TestPackageProject.VersionSuffix)" />
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="BuildTestAssetPackageProjects"
|
<Target Name="BuildTestAssetPackageProjects"
|
||||||
DependsOnTargets="RestoreTestAssetPackageProjects;
|
DependsOnTargets="RestoreTestAssetPackageProjects;
|
||||||
SetupTestPackageProjectData;"
|
SetupTestPackageProjectData;"
|
||||||
Outputs="%(TestPackageProjectFrameworks.Identity)">
|
Inputs="%(TestPackageProject.BuildInputs)"
|
||||||
<PropertyGroup>
|
Outputs="%(TestPackageProject.BuildOutputs)">
|
||||||
<CurrentBuildFramework>%(TestPackageProjectFrameworks.Identity)</CurrentBuildFramework>
|
|
||||||
</PropertyGroup>
|
|
||||||
|
|
||||||
<Exec Condition="$([System.Text.RegularExpressions.Regex]::IsMatch('%(TestPackageProject.Frameworks)', '(^|;)$(CurrentBuildFramework)($|;)'))"
|
<DotNetBuild BuildBasePath="$(TestPackagesBuildDir)"
|
||||||
Command="$(DotnetUnderTest) build --framework $(CurrentBuildFramework) --build-base-path $(TestPackagesBuildDir) %(TestPackageProject.FullPath)" />
|
Framework="%(TestPackageProject.Framework)"
|
||||||
|
ProjectPath="%(TestPackageProject.FullPath)"
|
||||||
|
ToolPath="$(DotnetUnderTest)"
|
||||||
|
WorkingDirectory="%(BuildableTestAssetProjects.RelativeDir)" />
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="RestoreTestAssetPackageProjects"
|
<Target Name="RestoreTestAssetPackageProjects"
|
||||||
|
@ -180,7 +206,9 @@
|
||||||
SetupRestoreTestAssetPackageProjectsInputs;"
|
SetupRestoreTestAssetPackageProjectsInputs;"
|
||||||
Inputs="@(RestoreTestAssetPackageProjectsInputs)"
|
Inputs="@(RestoreTestAssetPackageProjectsInputs)"
|
||||||
Outputs="@(RestoreTestAssetPackageProjectsInputs->'%(RelativeDir)/project.lock.json')">
|
Outputs="@(RestoreTestAssetPackageProjectsInputs->'%(RelativeDir)/project.lock.json')">
|
||||||
<Exec Command="$(DotnetUnderTest) restore $(RepoRoot)/TestAssets/TestPackages/" />
|
|
||||||
|
<DotNetRestore ToolPath="$(DotnetUnderTest)"
|
||||||
|
WorkingDirectory="$(RepoRoot)/TestAssets/TestPackages/" />
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="SetupRestoreTestAssetPackageProjectsInputs"
|
<Target Name="SetupRestoreTestAssetPackageProjectsInputs"
|
||||||
|
|
|
@ -1,166 +1,268 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<Target Name="SetupTestPackageProjectData">
|
<Target Name="SetupTestPackageProjectData"
|
||||||
|
DependsOnTargets="AssociateSourceFilesWithProjects;
|
||||||
|
AssociateOutputsWithProjects;">
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<TestPackageProject Include="$(RepoRoot)/TestAssets/TestPackages/PackageWithFakeNativeDep/project.json">
|
<TestPackageProject>
|
||||||
|
<NuPkgName Condition=" '%(NuPkgName)' == '' ">%(Name)</NuPkgName>
|
||||||
|
</TestPackageProject>
|
||||||
|
|
||||||
|
<TestPackageProject>
|
||||||
|
<PackInputs>%(BuildOutputs)</PackInputs>
|
||||||
|
<PackOutputs>$(TestPackagesDir)%(NuPkgName).%(VersionPrefix)%(VersionSuffix).nupkg</PackOutputs>
|
||||||
|
</TestPackageProject>
|
||||||
|
</ItemGroup>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
<Target Name="AssociateOutputsWithProjects"
|
||||||
|
DependsOnTargets="SetupTestPackageProjectFrameworks"
|
||||||
|
Outputs="%(TestPackageProject.ProjectPath)">
|
||||||
|
<ItemGroup>
|
||||||
|
<TestPackageProject>
|
||||||
|
<BuildOutputs>%(TestPackageProject.OutputPath)%(TestPackageProject.Name).dll</BuildOutputs>
|
||||||
|
</TestPackageProject>
|
||||||
|
</ItemGroup>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
<Target Name="SetupTestPackageProjectFrameworks"
|
||||||
|
DependsOnTargets="SetupTestPackageProjectBaseData;
|
||||||
|
AssociateSourceFilesWithProjects;"
|
||||||
|
Outputs="%(TestPackageProjectFrameworks.Identity)">
|
||||||
|
<PropertyGroup>
|
||||||
|
<CurrentBuildFramework>%(TestPackageProjectFrameworks.Identity)</CurrentBuildFramework>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<TestPackageProject Condition="$([System.Text.RegularExpressions.Regex]::IsMatch('%(Frameworks)', '(^|;)$(CurrentBuildFramework)($|;)'))"
|
||||||
|
Include="@(BaseTestPackageProject)">
|
||||||
|
<Framework>$(CurrentBuildFramework)</Framework>
|
||||||
|
<OutputPath>%(OutputPath)$(CurrentBuildFramework)/</OutputPath>
|
||||||
|
</TestPackageProject>
|
||||||
|
</ItemGroup>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
<Target Name="AssociateSourceFilesWithProjects"
|
||||||
|
DependsOnTargets="FindSourceFiles"
|
||||||
|
Outputs="%(BaseTestPackageProject.ProjectPath)">
|
||||||
|
<PropertyGroup>
|
||||||
|
<CurrentProject>%(BaseTestPackageProject.ProjectPath)</CurrentProject>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<BaseTestPackageProject Condition=" '%(ProjectPath)' == '$(CurrentProject)' ">
|
||||||
|
<BuildInputs>@(__TestPackageProjectInputs)</BuildInputs>
|
||||||
|
</BaseTestPackageProject>
|
||||||
|
</ItemGroup>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
<Target Name="FindSourceFiles"
|
||||||
|
DependsOnTargets="SetupTestPackageProjectBaseData;"
|
||||||
|
Outputs="%(BaseTestPackageProject.Identity)">
|
||||||
|
<ItemGroup>
|
||||||
|
<__TestPackageProjectInputs Include="%(BaseTestPackageProject.BuildInputIncludeFilter)"
|
||||||
|
Exclude="%(BaseTestPackageProject.BuildInputExcludeFilter)">
|
||||||
|
<ProjectPath>%(BaseTestPackageProject.ProjectPath)</ProjectPath>
|
||||||
|
</__TestPackageProjectInputs>
|
||||||
|
</ItemGroup>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
<Target Name="SetupTestPackageProjectBaseData">
|
||||||
|
<ItemGroup>
|
||||||
|
<BaseTestPackageProject Include="TestAssets/TestPackages/PackageWithFakeNativeDep">
|
||||||
<Name>PackageWithFakeNativeDep</Name>
|
<Name>PackageWithFakeNativeDep</Name>
|
||||||
<IsTool>False</IsTool>
|
<IsTool>False</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0</VersionPrefix>
|
||||||
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
||||||
<Clean>True</Clean>
|
<Clean>True</Clean>
|
||||||
<Frameworks>net45</Frameworks>
|
<Frameworks>net45</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/TestAssets/TestPackages/dotnet-dependency-context-test/project.json">
|
<BaseTestPackageProject Include="TestAssets/TestPackages/dotnet-dependency-context-test">
|
||||||
<Name>dotnet-dependency-context-test</Name>
|
<Name>dotnet-dependency-context-test</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0-rc-</VersionPrefix>
|
||||||
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
||||||
<Clean>True</Clean>
|
<Clean>True</Clean>
|
||||||
<Frameworks>netcoreapp1.0</Frameworks>
|
<Frameworks>netcoreapp1.0</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/TestAssets/TestPackages/dotnet-dependency-tool-invoker/project.json">
|
<BaseTestPackageProject Include="TestAssets/TestPackages/dotnet-dependency-tool-invoker">
|
||||||
<Name>dotnet-dependency-tool-invoker</Name>
|
<Name>dotnet-dependency-tool-invoker</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0-rc-</VersionPrefix>
|
||||||
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
||||||
<Clean>True</Clean>
|
<Clean>True</Clean>
|
||||||
<Frameworks>netcoreapp1.0</Frameworks>
|
<Frameworks>netcoreapp1.0</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/TestAssets/TestPackages/dotnet-desktop-and-portable/project.json">
|
<BaseTestPackageProject Include="TestAssets/TestPackages/dotnet-desktop-and-portable">
|
||||||
<Name>dotnet-desktop-and-portable</Name>
|
<Name>dotnet-desktop-and-portable</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0-rc-</VersionPrefix>
|
||||||
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
||||||
<Clean>True</Clean>
|
<Clean>True</Clean>
|
||||||
<Frameworks>net451;netcoreapp1.0</Frameworks>
|
<Frameworks>net451;netcoreapp1.0</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/TestAssets/TestPackages/dotnet-desktop-binding-redirects/project.json"
|
<BaseTestPackageProject Include="TestAssets/TestPackages/dotnet-desktop-binding-redirects"
|
||||||
Condition=" '$(IsDesktopAvailable)' == 'True' ">
|
Condition=" '$(IsDesktopAvailable)' == 'True' ">
|
||||||
<Name>dotnet-desktop-binding-redirects</Name>
|
<Name>dotnet-desktop-binding-redirects</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>$(DesktopAvailable)</IsApplicable>
|
<IsApplicable>$(DesktopAvailable)</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0-rc-</VersionPrefix>
|
||||||
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
||||||
<Clean>True</Clean>
|
<Clean>True</Clean>
|
||||||
<Frameworks>net451</Frameworks>
|
<Frameworks>net451</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/TestAssets/TestPackages/dotnet-hello/v1/dotnet-hello/project.json">
|
<BaseTestPackageProject Include="TestAssets/TestPackages/dotnet-hello/v1/dotnet-hello">
|
||||||
<Name>dotnet-hello</Name>
|
<Name>dotnet-hello</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0</VersionPrefix>
|
||||||
<VersionSuffix></VersionSuffix>
|
<VersionSuffix></VersionSuffix>
|
||||||
<Clean>True</Clean>
|
<Clean>True</Clean>
|
||||||
<Frameworks>netcoreapp1.0</Frameworks>
|
<Frameworks>netcoreapp1.0</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/TestAssets/TestPackages/dotnet-hello/v2/dotnet-hello/project.json">
|
<BaseTestPackageProject Include="TestAssets/TestPackages/dotnet-hello/v2/dotnet-hello">
|
||||||
<Name>dotnet-hello</Name>
|
<Name>dotnet-hello</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>2.0.0</VersionPrefix>
|
||||||
<VersionSuffix></VersionSuffix>
|
<VersionSuffix></VersionSuffix>
|
||||||
<Clean>True</Clean>
|
<Clean>True</Clean>
|
||||||
<Frameworks>netcoreapp1.0</Frameworks>
|
<Frameworks>netcoreapp1.0</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/TestAssets/TestPackages/dotnet-portable/project.json">
|
<BaseTestPackageProject Include="TestAssets/TestPackages/dotnet-portable">
|
||||||
<Name>dotnet-portable</Name>
|
<Name>dotnet-portable</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0</VersionPrefix>
|
||||||
<VersionSuffix></VersionSuffix>
|
<VersionSuffix></VersionSuffix>
|
||||||
<Clean>True</Clean>
|
<Clean>True</Clean>
|
||||||
<Frameworks>netcoreapp1.0</Frameworks>
|
<Frameworks>netcoreapp1.0</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/TestAssets/TestPackages/ToolWithOutputName/project.json">
|
<BaseTestPackageProject Include="TestAssets/TestPackages/ToolWithOutputName">
|
||||||
<Name>ToolWithOutputName</Name>
|
<Name>dotnet-tool-with-output-name</Name>
|
||||||
|
<NuPkgName>ToolWithOutputName</NuPkgName>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0</VersionPrefix>
|
||||||
<VersionSuffix></VersionSuffix>
|
<VersionSuffix></VersionSuffix>
|
||||||
<Clean>True</Clean>
|
<Clean>True</Clean>
|
||||||
<Frameworks>netcoreapp1.0</Frameworks>
|
<Frameworks>netcoreapp1.0</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/src/Microsoft.DotNet.Cli.Utils/project.json">
|
<BaseTestPackageProject Include="src/Microsoft.DotNet.Cli.Utils">
|
||||||
<Name>Microsoft.DotNet.Cli.Utils</Name>
|
<Name>Microsoft.DotNet.Cli.Utils</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0-preview3-</VersionPrefix>
|
||||||
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
||||||
<Clean>False</Clean>
|
<Clean>False</Clean>
|
||||||
<Frameworks>net451;netstandard1.6</Frameworks>
|
<Frameworks>net451;netstandard1.6</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/src/Microsoft.DotNet.ProjectModel/project.json">
|
<BaseTestPackageProject Include="src/Microsoft.DotNet.ProjectModel">
|
||||||
<Name>Microsoft.DotNet.ProjectModel</Name>
|
<Name>Microsoft.DotNet.ProjectModel</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0-rc4-</VersionPrefix>
|
||||||
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
||||||
<Clean>False</Clean>
|
<Clean>False</Clean>
|
||||||
<Frameworks>net451;netstandard1.6</Frameworks>
|
<Frameworks>net451;netstandard1.6</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/src/Microsoft.DotNet.ProjectModel.Loader/project.json">
|
<BaseTestPackageProject Include="src/Microsoft.DotNet.ProjectModel.Loader">
|
||||||
<Name>Microsoft.DotNet.ProjectModel.Loader</Name>
|
<Name>Microsoft.DotNet.ProjectModel.Loader</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0-preview3-</VersionPrefix>
|
||||||
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
||||||
<Clean>False</Clean>
|
<Clean>False</Clean>
|
||||||
<Frameworks>netstandard1.6</Frameworks>
|
<Frameworks>netstandard1.6</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/src/Microsoft.DotNet.ProjectModel.Workspaces/project.json">
|
<BaseTestPackageProject Include="src/Microsoft.DotNet.ProjectModel.Workspaces">
|
||||||
<Name>Microsoft.DotNet.ProjectModel.Workspaces</Name>
|
<Name>Microsoft.DotNet.ProjectModel.Workspaces</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0-preview3-</VersionPrefix>
|
||||||
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
||||||
<Clean>False</Clean>
|
<Clean>False</Clean>
|
||||||
<Frameworks>netstandard1.6</Frameworks>
|
<Frameworks>netstandard1.6</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/src/Microsoft.DotNet.InternalAbstractions/project.json">
|
<BaseTestPackageProject Include="src/Microsoft.DotNet.InternalAbstractions">
|
||||||
<Name>Microsoft.DotNet.InternalAbstractions</Name>
|
<Name>Microsoft.DotNet.InternalAbstractions</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.1-beta-</VersionPrefix>
|
||||||
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
||||||
<Clean>False</Clean>
|
<Clean>False</Clean>
|
||||||
<Frameworks>net451;netstandard1.3</Frameworks>
|
<Frameworks>net451;netstandard1.3</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/src/Microsoft.Extensions.DependencyModel/project.json">
|
<BaseTestPackageProject Include="src/Microsoft.Extensions.DependencyModel">
|
||||||
<Name>Microsoft.Extensions.DependencyModel</Name>
|
<Name>Microsoft.Extensions.DependencyModel</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.1-beta-</VersionPrefix>
|
||||||
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
||||||
<Clean>False</Clean>
|
<Clean>False</Clean>
|
||||||
<Frameworks>net451;netstandard1.6</Frameworks>
|
<Frameworks>net451;netstandard1.6</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/src/Microsoft.Extensions.Testing.Abstractions/project.json">
|
<BaseTestPackageProject Include="src/Microsoft.Extensions.Testing.Abstractions">
|
||||||
<Name>Microsoft.Extensions.Testing.Abstractions</Name>
|
<Name>Microsoft.Extensions.Testing.Abstractions</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0-preview3-</VersionPrefix>
|
||||||
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
||||||
<Clean>False</Clean>
|
<Clean>False</Clean>
|
||||||
<Frameworks>net451;netstandard1.6</Frameworks>
|
<Frameworks>net451;netstandard1.6</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/src/Microsoft.DotNet.Compiler.Common/project.json">
|
<BaseTestPackageProject Include="src/Microsoft.DotNet.Compiler.Common">
|
||||||
<Name>Microsoft.DotNet.Compiler.Common</Name>
|
<Name>Microsoft.DotNet.Compiler.Common</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0-preview3-</VersionPrefix>
|
||||||
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
||||||
<Clean>False</Clean>
|
<Clean>False</Clean>
|
||||||
<Frameworks>netstandard1.6</Frameworks>
|
<Frameworks>netstandard1.6</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/src/Microsoft.DotNet.Files/project.json">
|
<BaseTestPackageProject Include="src/Microsoft.DotNet.Files">
|
||||||
<Name>Microsoft.DotNet.Files</Name>
|
<Name>Microsoft.DotNet.Files</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0-preview3-</VersionPrefix>
|
||||||
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
||||||
<Clean>False</Clean>
|
<Clean>False</Clean>
|
||||||
<Frameworks>netstandard1.6</Frameworks>
|
<Frameworks>netstandard1.6</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
<TestPackageProject Include="$(RepoRoot)/src/dotnet-compile-fsc/project.json">
|
<BaseTestPackageProject Include="src/dotnet-compile-fsc">
|
||||||
<Name>dotnet-compile-fsc</Name>
|
<Name>dotnet-compile-fsc</Name>
|
||||||
<IsTool>True</IsTool>
|
<IsTool>True</IsTool>
|
||||||
<IsApplicable>True</IsApplicable>
|
<IsApplicable>True</IsApplicable>
|
||||||
|
<VersionPrefix>1.0.0-preview3-</VersionPrefix>
|
||||||
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
<VersionSuffix>$(TestPackageBuildVersionSuffix)</VersionSuffix>
|
||||||
<Clean>True</Clean>
|
<Clean>True</Clean>
|
||||||
<Frameworks>netcoreapp1.0</Frameworks>
|
<Frameworks>netcoreapp1.0</Frameworks>
|
||||||
</TestPackageProject>
|
</BaseTestPackageProject>
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
<ItemGroup>
|
|
||||||
<TestPackageProjectFrameworksExcludes Condition=" '$(IsDesktopAvailable)' != 'True' " Include="net45" />
|
<TestPackageProjectFrameworksExcludes Condition=" '$(IsDesktopAvailable)' != 'True' " Include="net45" />
|
||||||
<TestPackageProjectFrameworksExcludes Condition=" '$(IsDesktopAvailable)' != 'True' " Include="net451" />
|
<TestPackageProjectFrameworksExcludes Condition=" '$(IsDesktopAvailable)' != 'True' " Include="net451" />
|
||||||
<TestPackageProjectFrameworks Include="%(TestPackageProject.Frameworks)" Exclude="@(TestPackageProjectFrameworksExcludes)" />
|
<TestPackageProjectFrameworks Include="%(BaseTestPackageProject.Frameworks)" Exclude="@(TestPackageProjectFrameworksExcludes)" />
|
||||||
|
|
||||||
|
<BaseTestPackageProject>
|
||||||
|
<ProjectDir>$(RepoRoot)%(Identity)/</ProjectDir>
|
||||||
|
<OutputPath>$(TestPackagesBuildDir)%(Identity)/bin/$(Configuration)/</OutputPath>
|
||||||
|
</BaseTestPackageProject>
|
||||||
|
|
||||||
|
<BaseTestPackageProject>
|
||||||
|
<ProjectPath>%(ProjectDir)project.json</ProjectPath>
|
||||||
|
<BuildInputIncludeFilter>%(ProjectDir)**/*.*</BuildInputIncludeFilter>
|
||||||
|
<BuildInputExcludeFilter>%(ProjectDir)bin/**/*.*;%(ProjectDir)obj/**/*.*</BuildInputExcludeFilter>
|
||||||
|
</BaseTestPackageProject>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
|
<ItemDefinitionGroup>
|
||||||
|
<BaseTestPackageProject>
|
||||||
|
<NuPkgName>%(Name)</NuPkgName>
|
||||||
|
</BaseTestPackageProject>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
</Project>
|
</Project>
|
66
build_projects/dotnet-cli-build/DotNetBuild.cs
Normal file
66
build_projects/dotnet-cli-build/DotNetBuild.cs
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
using Microsoft.Build.Framework;
|
||||||
|
using Microsoft.Build.Utilities;
|
||||||
|
|
||||||
|
namespace Microsoft.DotNet.Cli.Build
|
||||||
|
{
|
||||||
|
public class DotNetBuild : DotNetTool
|
||||||
|
{
|
||||||
|
protected override string Command
|
||||||
|
{
|
||||||
|
get { return "build"; }
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override string Args
|
||||||
|
{
|
||||||
|
get { return $"{GetProjectPath()} {GetConfiguration()} {GetFramework()} {GetBuildBasePath()}"; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public string BuildBasePath { get; set; }
|
||||||
|
|
||||||
|
public string Configuration { get; set; }
|
||||||
|
|
||||||
|
public string Framework { get; set; }
|
||||||
|
|
||||||
|
public string ProjectPath { get; set; }
|
||||||
|
|
||||||
|
private string GetBuildBasePath()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(BuildBasePath))
|
||||||
|
{
|
||||||
|
return $"--build-base-path {BuildBasePath}";
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private string GetConfiguration()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(Configuration))
|
||||||
|
{
|
||||||
|
return $"--configuration {Configuration}";
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private string GetFramework()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(Framework))
|
||||||
|
{
|
||||||
|
return $"--framework {Framework}";
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private string GetProjectPath()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(ProjectPath))
|
||||||
|
{
|
||||||
|
return $"{ProjectPath}";
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
90
build_projects/dotnet-cli-build/DotNetPack.cs
Normal file
90
build_projects/dotnet-cli-build/DotNetPack.cs
Normal file
|
@ -0,0 +1,90 @@
|
||||||
|
using Microsoft.Build.Framework;
|
||||||
|
using Microsoft.Build.Utilities;
|
||||||
|
|
||||||
|
namespace Microsoft.DotNet.Cli.Build
|
||||||
|
{
|
||||||
|
public class DotNetPack : DotNetTool
|
||||||
|
{
|
||||||
|
protected override string Command
|
||||||
|
{
|
||||||
|
get { return "pack"; }
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override string Args
|
||||||
|
{
|
||||||
|
get { return $"{GetProjectPath()} {GetConfiguration()} {GetNoBuild()} {GetBuildBasePath()} {GetOutput()} {GetVersionSuffix()}"; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public string Configuration { get; set; }
|
||||||
|
|
||||||
|
public bool NoBuild { get; set; }
|
||||||
|
|
||||||
|
public string BuildBasePath { get; set; }
|
||||||
|
|
||||||
|
public string Output { get; set; }
|
||||||
|
|
||||||
|
public string ProjectPath { get; set; }
|
||||||
|
|
||||||
|
public string VersionSuffix { get; set; }
|
||||||
|
|
||||||
|
private string GetConfiguration()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(Configuration))
|
||||||
|
{
|
||||||
|
return $"--configuration {Configuration}";
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private string GetNoBuild()
|
||||||
|
{
|
||||||
|
if (NoBuild)
|
||||||
|
{
|
||||||
|
return $"--no-build";
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private string GetBuildBasePath()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(BuildBasePath))
|
||||||
|
{
|
||||||
|
return $"--build-base-path {BuildBasePath}";
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private string GetOutput()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(Output))
|
||||||
|
{
|
||||||
|
return $"--output {Output}";
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private string GetProjectPath()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(ProjectPath))
|
||||||
|
{
|
||||||
|
return $"{ProjectPath}";
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private string GetVersionSuffix()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(VersionSuffix))
|
||||||
|
{
|
||||||
|
return $"--version-suffix {VersionSuffix}";
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
42
build_projects/dotnet-cli-build/DotNetRestore.cs
Normal file
42
build_projects/dotnet-cli-build/DotNetRestore.cs
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
using Microsoft.Build.Framework;
|
||||||
|
using Microsoft.Build.Utilities;
|
||||||
|
|
||||||
|
namespace Microsoft.DotNet.Cli.Build
|
||||||
|
{
|
||||||
|
public class DotNetRestore : DotNetTool
|
||||||
|
{
|
||||||
|
protected override string Command
|
||||||
|
{
|
||||||
|
get { return "restore"; }
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override string Args
|
||||||
|
{
|
||||||
|
get { return $"{GetVerbosity()} {GetFallbackSource()}"; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public string FallbackSource { get; set; }
|
||||||
|
|
||||||
|
public string Verbosity { get; set; }
|
||||||
|
|
||||||
|
private string GetFallbackSource()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(FallbackSource))
|
||||||
|
{
|
||||||
|
return $"--fallbacksource {FallbackSource}";
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private string GetVerbosity()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(Verbosity))
|
||||||
|
{
|
||||||
|
return $"--verbosity {Verbosity}";
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
54
build_projects/dotnet-cli-build/DotNetTest.cs
Normal file
54
build_projects/dotnet-cli-build/DotNetTest.cs
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
using Microsoft.Build.Framework;
|
||||||
|
using Microsoft.Build.Utilities;
|
||||||
|
|
||||||
|
namespace Microsoft.DotNet.Cli.Build
|
||||||
|
{
|
||||||
|
public class DotNetTest : DotNetTool
|
||||||
|
{
|
||||||
|
protected override string Command
|
||||||
|
{
|
||||||
|
get { return "test"; }
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override string Args
|
||||||
|
{
|
||||||
|
get { return $"{GetConfiguration()} {GetXml()} {GetNoTrait()}"; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public string Configuration { get; set; }
|
||||||
|
|
||||||
|
public string Xml { get; set; }
|
||||||
|
|
||||||
|
public string NoTrait { get; set; }
|
||||||
|
|
||||||
|
private string GetConfiguration()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(Configuration))
|
||||||
|
{
|
||||||
|
return $"--configuration {Configuration}";
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private string GetNoTrait()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(Configuration))
|
||||||
|
{
|
||||||
|
return $"-notrait {NoTrait}";
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private string GetXml()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(Xml))
|
||||||
|
{
|
||||||
|
return $"-xml {Xml}";
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -55,78 +55,4 @@ namespace Microsoft.DotNet.Cli.Build
|
||||||
base.LogToolCommand($"{GetWorkingDirectory()}> {message}");
|
base.LogToolCommand($"{GetWorkingDirectory()}> {message}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class DotNetRestore : DotNetTool
|
|
||||||
{
|
|
||||||
protected override string Command
|
|
||||||
{
|
|
||||||
get { return "restore"; }
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override string Args
|
|
||||||
{
|
|
||||||
get { return $"{GetVerbosity()}"; }
|
|
||||||
}
|
|
||||||
|
|
||||||
public string Verbosity { get; set; }
|
|
||||||
|
|
||||||
private string GetVerbosity()
|
|
||||||
{
|
|
||||||
if (!string.IsNullOrEmpty(Verbosity))
|
|
||||||
{
|
|
||||||
return $"--verbosity {Verbosity}";
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public class DotNetTest : DotNetTool
|
|
||||||
{
|
|
||||||
protected override string Command
|
|
||||||
{
|
|
||||||
get { return "test"; }
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override string Args
|
|
||||||
{
|
|
||||||
get { return $"{GetConfiguration()} {GetXml()} {GetNoTrait()}"; }
|
|
||||||
}
|
|
||||||
|
|
||||||
public string Configuration { get; set; }
|
|
||||||
|
|
||||||
public string Xml { get; set; }
|
|
||||||
|
|
||||||
public string NoTrait { get; set; }
|
|
||||||
|
|
||||||
private string GetConfiguration()
|
|
||||||
{
|
|
||||||
if (!string.IsNullOrEmpty(Configuration))
|
|
||||||
{
|
|
||||||
return $"--configuration {Configuration}";
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
private string GetNoTrait()
|
|
||||||
{
|
|
||||||
if (!string.IsNullOrEmpty(Configuration))
|
|
||||||
{
|
|
||||||
return $"-notrait {NoTrait}";
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
private string GetXml()
|
|
||||||
{
|
|
||||||
if (!string.IsNullOrEmpty(Xml))
|
|
||||||
{
|
|
||||||
return $"-xml {Xml}";
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue