Address build issues

This commit is contained in:
Piotr Puszkiewicz 2016-08-27 15:57:14 -07:00
parent ab1797cb29
commit 8eecff0112
7 changed files with 82 additions and 54 deletions

View file

@ -15,20 +15,24 @@
<MSBuild <MSBuild
BuildInParallel="False" BuildInParallel="False"
Projects="$(RepoRoot)/build/package/Microsoft.DotNet.Cli.Installer.DEB.proj" Projects="$(RepoRoot)/build/package/Microsoft.DotNet.Cli.Installer.DEB.proj"
Properties="CliSdkRoot=$(Stage2Directory)/sdk; Properties="ArtifactNameWithVersionSdk=$(ArtifactNameWithVersionSdk);
OSName=$(OSName);
CLIBuildDll=$(CLIBuildDll);
CliSdkRoot=$(Stage2Directory)/sdk;
DownloadedSharedHostInstallerFile=$(DownloadedSharedHostInstallerFile);
DownloadedHostFxrInstallerFile=$(DownloadedHostFxrInstallerFile);
DownloadedSharedFrameworkInstallerFile=$(DownloadedSharedFrameworkInstallerFile);
RepoRoot=$(RepoRoot); RepoRoot=$(RepoRoot);
PackagesDirectory=$(PackagesDirectory); PackagesDirectory=$(PackagesDirectory);
IntermediateDirectory=$(IntermediateDirectory); IntermediateDirectory=$(IntermediateDirectory);
InstallerExtension=$(InstallerExtension);
HostFxrVersion=$(HostFxrVersion); HostFxrVersion=$(HostFxrVersion);
SdkVersion=$(SdkVersion); SdkVersion=$(SdkVersion);
SharedFrameworkName=$(SharedFrameworkName); SharedFrameworkName=$(SharedFrameworkName);
SharedFrameworkVersion=$(SharedFrameworkVersion); SharedFrameworkVersion=$(SharedFrameworkVersion);
SharedFrameworkBrandName=$(SharedFrameworkBrandName); SharedFrameworkBrandName=$(SharedFrameworkBrandName);
SdkBrandName=$(SdkBrandName);" SdkBrandName=$(SdkBrandName);
ToolsVersion="4.0" ToolPath=$(Stage2Directory);"/>
UnloadProjectsOnCompletion="False"
UseResultsCache="True">
</MSBuild>
</Target> </Target>
<Target Name="Package" <Target Name="Package"

View file

@ -2,17 +2,26 @@
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" <Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
DefaultTarget="GenerateDebs"> DefaultTarget="GenerateDebs">
<PropertyGroup>
<CLIBuildDll Condition=" '!Exists($(CLIBuildDll))' ">$([MSBuild]::Unescape($(CLIBuildDll)))</CLIBuildDll>
</PropertyGroup>
<UsingTask TaskName="DotNetRestore" AssemblyFile="$(CLIBuildDll)" />
<UsingTask TaskName="ReplaceFileContents" AssemblyFile="$(CLIBuildDll)" />
<UsingTask TaskName="DotNetDebTool" AssemblyFile="$(CLIBuildDll)" />
<UsingTask TaskName="DotNetTest" AssemblyFile="$(CLIBuildDll)" />
<Import Project="Microsoft.DotNet.Cli.Installer.DEB.props" /> <Import Project="Microsoft.DotNet.Cli.Installer.DEB.props" />
<Target Name="GenerateDebs" <Target Name="GenerateDebs"
DependsOnTargets="GenerateSdkDeb; DependsOnTargets="TestDebuild;
GenerateSdkDeb;
TestSdkDeb;" TestSdkDeb;"
Condition=" '$(OSName)' == 'ubuntu' " /> Condition=" '$(OSName)' == 'ubuntu' " />
<Target Name="GenerateSdkDeb" <Target Name="GenerateSdkDeb"
Condition=" '$(OSName)' == 'ubuntu' and '$(DebuildPresent)' == 'true' " Condition=" '$(OSName)' == 'ubuntu' and '$(DebuildPresent)' == 'true' "
DependsOnTargets="EnsureDebuild; DependsOnTargets="PrepareDotnetDebDirectories;
PrepareDotnetDebDirectories;
PrepareDotnetDebTool;" PrepareDotnetDebTool;"
Inputs="@(SdkDebInputFiles)" Inputs="@(SdkDebInputFiles)"
Outputs="$(SdkInstallerFile)" > Outputs="$(SdkInstallerFile)" >
@ -24,35 +33,49 @@
<!-- Create layout --> <!-- Create layout -->
<Copy <Copy
DestinationFiles="@(SourceFile->'$(DebLayoutPackageRootDir)/%(RecursiveDir)%(Filename)%(Extension)')" DestinationFiles="@(SdkDebInputFiles->'$(DebLayoutPackageRootDir)/sdk/%(RecursiveDir)%(Filename)%(Extension)')"
SourceFiles="@(SdkDebInputFiles)"
OverwriteReadOnlyFiles="True" OverwriteReadOnlyFiles="True"
SkipUnchangedFiles="False" SkipUnchangedFiles="False"
SourceFiles="@(SdkLayoutOutputDirectory)"
UseHardlinksIfPossible="False"> UseHardlinksIfPossible="False">
</Copy> </Copy>
<Copy <Copy
DestinationFiles="@(SourceFile->'$(DebLayoutDocsDir)/%(RecursiveDir)%(Filename)-$(SdkVersion)%(Extension)')" DestinationFiles="@(SdkDebManPageFiles->'$(DebLayoutDocsDir)/%(RecursiveDir)%(Filename)-$(SdkVersion)%(Extension)')"
OverwriteReadOnlyFiles="True"
SkipUnchangedFiles="False"
SourceFiles="@(SdkDebManPageFiles)" SourceFiles="@(SdkDebManPageFiles)"
UseHardlinksIfPossible="False">
</Copy>
<Copy
DestinationFiles="$(DotnetDebToolConfigJsonFilePath)"
OverwriteReadOnlyFiles="True" OverwriteReadOnlyFiles="True"
SkipUnchangedFiles="False" SkipUnchangedFiles="False"
SourceFiles="$(DotnetDebToolConfigJsonFilePath)"
UseHardlinksIfPossible="False"> UseHardlinksIfPossible="False">
</Copy> </Copy>
<DotNetDebTool ToolPath="$(Stage2Directory)" <ReplaceFileContents
InputDir="$(SdkLayoutDirectory)" InputFile="$(DebianConfigTemplateFile)"
OutputFile="$(SdkInstallerFile)" DestinationFile="$(DebianConfigJsonFile)"
ReplacementPatterns="@(SdkDebianPackageTemplateReplacement -> '%(Identity)')"
ReplacementStrings="@(SdkDebianPackageTemplateReplacement -> '%(ReplacementString)')" />
<MakeDir Directories="$(DotNetDebToolOutputDirectory)" />
<DotNetDebTool ToolPath="$(ToolPath)"
InputDir="$(SdkDebianLayoutOutputDirectory)"
OutputFile="$(DotNetDebToolOutputDirectory)"
PackageName="$(SdkDebianPackageName)" PackageName="$(SdkDebianPackageName)"
PackageVersion="$(SdkVersion)" PackageVersion="$(SdkVersion)"
WorkingDirectory="$(DotnetDebToolDir)" /> WorkingDirectory="$(DotnetDebToolDir)" />
<!-- Copy package to output -->
<ItemGroup>
<GeneratedDebFiles Include="$(DotNetDebToolOutputDirectory)/*.deb" />
</ItemGroup>
<Error Text="@(GeneratedDebFiles->Count()) .deb files generated." Condition="'@(GeneratedDebFiles->Count())' != 1" />
<Copy
DestinationFiles="$(SdkInstallerFile)"
SourceFiles="@(GeneratedDebFiles)"
OverwriteReadOnlyFiles="True"
SkipUnchangedFiles="False"
UseHardlinksIfPossible="False" />
<!-- Remove Packages --> <!-- Remove Packages -->
<Exec Command="sudo dpkg -r $(SdkDebianPackageName)" /> <Exec Command="sudo dpkg -r $(SdkDebianPackageName)" />
@ -89,13 +112,6 @@
</Target> </Target>
<Target Name="PrepareDotnetDebDirectories"> <Target Name="PrepareDotnetDebDirectories">
<PropertyGroup>
<DebLayoutPackageRootDir>$(SdkDebianLayoutOutputDirectory)/$(DebLayoutPackageRootDirName)</DebLayoutPackageRootDir>
<DebLayoutAbsolutePlacementDir>$(SdkDebianLayoutOutputDirectory)/$(DebLayoutAbsolutePlacementDirName)</DebLayoutAbsolutePlacementDir>
<DebLayoutSamplesDir>$(SdkDebianLayoutOutputDirectory)/$(DebLayoutSamplesDirName)</DebLayoutSamplesDir>
<DebLayoutDocsDir>$(SdkDebianLayoutOutputDirectory)/$(DebLayoutDocsDirName)</DebLayoutDocsDir>
<DebLayoutDebianFilesDir>$(SdkDebianLayoutOutputDirectory)/$(DebLayoutDebianFilesDirName)</DebLayoutDebianFilesDir>
</PropertyGroup>
<!-- Clean the workspace --> <!-- Clean the workspace -->
<ItemGroup> <ItemGroup>
@ -114,8 +130,8 @@
$(DebLayoutDebianFilesDir)" /> $(DebLayoutDebianFilesDir)" />
</ItemGroup> </ItemGroup>
<Delete Condition=" 'Exists(%(SdkDebianFilesToClean))' " Files="@(SdkDebianFilesToClean)" /> <Delete Files="@(SdkDebianFilesToClean)" />
<RemoveDir Condition=" 'Exists(%(SdkDebianDirectoriesToClean))' " Directories="@(SdkDebianDirectoriesToClean)" /> <RemoveDir Directories="@(SdkDebianDirectoriesToClean)" />
<MakeDir Directories="@(SdkDebianDirectoriesToClean)" /> <MakeDir Directories="@(SdkDebianDirectoriesToClean)" />
<MakeDir Directories="@(SdkDebianLayoutSubDirectories)" /> <MakeDir Directories="@(SdkDebianLayoutSubDirectories)" />
</Target> </Target>
@ -124,26 +140,21 @@
DependsOnTargets="WriteDotnetDebToolProjectJson;"> DependsOnTargets="WriteDotnetDebToolProjectJson;">
<DotNetRestore FallbackSource="$(DotnetDebToolPackageSource)" <DotNetRestore FallbackSource="$(DotnetDebToolPackageSource)"
ToolPath="$(Stage2Directory)" ToolPath="$(ToolPath)"
WorkingDirectory="$(DotnetDebToolDir)" /> WorkingDirectory="$(DotnetDebToolDir)" />
</Target> </Target>
<Target Name="WriteDotnetDebToolProjectJson" <Target Name="WriteDotnetDebToolProjectJson"
Inputs="$(MSBuildThisFile);$(MSBuildThisFileDirectory)/Microsoft.DotNet.Cli.Installer.DEB.props" Inputs="$(MSBuildThisFile);$(MSBuildThisFileDirectory)/Microsoft.DotNet.Cli.Installer.DEB.props"
Outputs="$(DotnetDebToolDir)/project.json"> Outputs="$(DotnetDebToolDir)/project.json">
<MakeDir Condition=" !Exists($(DotnetDebToolDir)) " Directories="$(DotnetDebToolDir)" />
<WriteLinesToFile File="$(DotnetDebToolDir)/project.json" Lines="@(DotnetDebToolProjectJsonLines)" /> <WriteLinesToFile File="$(DotnetDebToolDir)/project.json"
Lines="@(DotnetDebToolProjectJsonLines)"
Overwrite="True" />
</Target> </Target>
<Target Name="UpdateDotnetDebConfigFile"> <Target Name="TestDebuild">
<ReplaceFileContents
InputFile="$(DotnetDebToolConfigJsonFilePath)"
DestinationFile="$(DotnetDebToolConfigJsonFilePath)"
ReplacementPatterns="@(SdkDebianPackageTemplateReplacement -> '%(Identity)')"
ReplacementStrings="@(SdkDebianPackageTemplateReplacement -> '%(ReplacementString)')" />
</Target>
<Target Name="EnsureDebuild">
<Exec Command="/usr/bin/env debuild -h" ContinueOnError="true"> <Exec Command="/usr/bin/env debuild -h" ContinueOnError="true">
<Output TaskParameter="ExitCode" PropertyName="DebuildExitCode" /> <Output TaskParameter="ExitCode" PropertyName="DebuildExitCode" />
</Exec> </Exec>

View file

@ -49,7 +49,7 @@
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<SdkDebInputFiles Include="$(SdkLayoutOutputDirectory)/**/*" /> <SdkDebInputFiles Include="$(CliSdkRoot)/**/*" />
<SdkDebManPageFiles Include="$(ManpagesDirectory)/**/*" /> <SdkDebManPageFiles Include="$(ManpagesDirectory)/**/*" />
</ItemGroup> </ItemGroup>
@ -59,9 +59,20 @@
<SdkInstallerFile>$(InstallerOutputDirectory)/$(ArtifactNameWithVersionSdk)$(InstallerExtension)</SdkInstallerFile> <SdkInstallerFile>$(InstallerOutputDirectory)/$(ArtifactNameWithVersionSdk)$(InstallerExtension)</SdkInstallerFile>
<SdkDebianIntermediateDirectory>$(IntermediateDirectory)/debian/sdk</SdkDebianIntermediateDirectory> <SdkDebianIntermediateDirectory>$(IntermediateDirectory)/debian/sdk</SdkDebianIntermediateDirectory>
<DotNetDebToolOutputDirectory>$(SdkDebianIntermediateDirectory)/deb-tool-output</DotNetDebToolOutputDirectory>
<DebianTestResultsXmlFile>$(SdkDebianIntermediateDirectory)/debian-testResults.xml</DebianTestResultsXmlFile> <DebianTestResultsXmlFile>$(SdkDebianIntermediateDirectory)/debian-testResults.xml</DebianTestResultsXmlFile>
</PropertyGroup> </PropertyGroup>
<!-- Layout Directories -->
<PropertyGroup>
<SdkDebianLayoutOutputDirectory>$(SdkDebianIntermediateDirectory)/debianLayoutDirectory</SdkDebianLayoutOutputDirectory>
<DebLayoutPackageRootDir>$(SdkDebianLayoutOutputDirectory)/$(DebLayoutPackageRootDirName)</DebLayoutPackageRootDir>
<DebLayoutAbsolutePlacementDir>$(SdkDebianLayoutOutputDirectory)/$(DebLayoutAbsolutePlacementDirName)</DebLayoutAbsolutePlacementDir>
<DebLayoutSamplesDir>$(SdkDebianLayoutOutputDirectory)/$(DebLayoutSamplesDirName)</DebLayoutSamplesDir>
<DebLayoutDocsDir>$(SdkDebianLayoutOutputDirectory)/$(DebLayoutDocsDirName)</DebLayoutDocsDir>
<DebLayoutDebianFilesDir>$(SdkDebianLayoutOutputDirectory)/$(DebLayoutDebianFilesDirName)</DebLayoutDebianFilesDir>
</PropertyGroup>
<!-- debian_config.json --> <!-- debian_config.json -->
<PropertyGroup> <PropertyGroup>
<DebianConfigTemplateFileName>dotnet-debian_config.json</DebianConfigTemplateFileName> <DebianConfigTemplateFileName>dotnet-debian_config.json</DebianConfigTemplateFileName>
@ -71,22 +82,22 @@
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<SdkDebianPackageTemplateReplacement Include="SHARED_FRAMEWORK_DEBIAN_PACKAGE_NAME"> <SdkDebianPackageTemplateReplacement Include="%SHARED_FRAMEWORK_DEBIAN_PACKAGE_NAME%">
<ReplacementString>$(SharedFrameworkDebianPackageName)</ReplacementString> <ReplacementString>$(SharedFrameworkDebianPackageName)</ReplacementString>
</SdkDebianPackageTemplateReplacement> </SdkDebianPackageTemplateReplacement>
<SdkDebianPackageTemplateReplacement Include="SHARED_FRAMEWORK_NUGET_NAME"> <SdkDebianPackageTemplateReplacement Include="%SHARED_FRAMEWORK_NUGET_NAME%">
<ReplacementString>$(SharedFrameworkName)</ReplacementString> <ReplacementString>$(SharedFrameworkName)</ReplacementString>
</SdkDebianPackageTemplateReplacement> </SdkDebianPackageTemplateReplacement>
<SdkDebianPackageTemplateReplacement Include="SHARED_FRAMEWORK_NUGET_VERSION"> <SdkDebianPackageTemplateReplacement Include="%SHARED_FRAMEWORK_NUGET_VERSION%">
<ReplacementString>$(SharedFrameworkVersion)</ReplacementString> <ReplacementString>$(SharedFrameworkVersion)</ReplacementString>
</SdkDebianPackageTemplateReplacement> </SdkDebianPackageTemplateReplacement>
<SdkDebianPackageTemplateReplacement Include="SHARED_FRAMEWORK_BRAND_NAME"> <SdkDebianPackageTemplateReplacement Include="%SHARED_FRAMEWORK_BRAND_NAME%">
<ReplacementString>$(SharedFrameworkBrandName)</ReplacementString> <ReplacementString>$(SharedFrameworkBrandName)</ReplacementString>
</SdkDebianPackageTemplateReplacement> </SdkDebianPackageTemplateReplacement>
<SdkDebianPackageTemplateReplacement Include="SDK_NUGET_VERSION"> <SdkDebianPackageTemplateReplacement Include="%SDK_NUGET_VERSION%">
<ReplacementString>$(SdkVersion)</ReplacementString> <ReplacementString>$(SdkVersion)</ReplacementString>
</SdkDebianPackageTemplateReplacement> </SdkDebianPackageTemplateReplacement>
<SdkDebianPackageTemplateReplacement Include="CLI_SDK_BRAND_NAME"> <SdkDebianPackageTemplateReplacement Include="%CLI_SDK_BRAND_NAME%">
<ReplacementString>$(SdkBrandName)</ReplacementString> <ReplacementString>$(SdkBrandName)</ReplacementString>
</SdkDebianPackageTemplateReplacement> </SdkDebianPackageTemplateReplacement>
</ItemGroup> </ItemGroup>

View file

@ -15,6 +15,7 @@ using Microsoft.DotNet.Tools.Compiler;
using Microsoft.DotNet.Tools.Compiler.Csc; using Microsoft.DotNet.Tools.Compiler.Csc;
using Microsoft.DotNet.Tools.Help; using Microsoft.DotNet.Tools.Help;
using Microsoft.DotNet.Tools.New; using Microsoft.DotNet.Tools.New;
using Microsoft.DotNet.Tools.NuGet;
using Microsoft.DotNet.Tools.Pack3; using Microsoft.DotNet.Tools.Pack3;
using Microsoft.DotNet.Tools.Publish; using Microsoft.DotNet.Tools.Publish;
using Microsoft.DotNet.Tools.Restore; using Microsoft.DotNet.Tools.Restore;

View file

@ -9,7 +9,7 @@ using Microsoft.DotNet.Cli.Utils;
using Microsoft.DotNet.InternalAbstractions; using Microsoft.DotNet.InternalAbstractions;
using Microsoft.DotNet.Tools; using Microsoft.DotNet.Tools;
namespace Microsoft.DotNet.Tools.Restore namespace Microsoft.DotNet.Tools.NuGet
{ {
public class NuGetCommand public class NuGetCommand
{ {

View file

@ -3,6 +3,7 @@
using System.Collections.Generic; using System.Collections.Generic;
using FluentAssertions; using FluentAssertions;
using Microsoft.DotNet.Cli;
using Microsoft.DotNet.Cli.Utils; using Microsoft.DotNet.Cli.Utils;
using Microsoft.DotNet.TestFramework; using Microsoft.DotNet.TestFramework;
using Microsoft.DotNet.Tools.Test.Utilities; using Microsoft.DotNet.Tools.Test.Utilities;

View file

@ -12,9 +12,9 @@
"Microsoft.DotNet.Tools.Tests.Utilities": { "Microsoft.DotNet.Tools.Tests.Utilities": {
"target": "project" "target": "project"
}, },
"xunit": "2.1.0", "xunit": "2.2.0-beta3-build3330",
"moq.netcore": "4.4.0-beta8", "dotnet-test-xunit": "1.0.0-rc2-330423-54",
"dotnet-test-xunit": "1.0.0-rc2-192208-24" "moq.netcore": "4.4.0-beta8"
}, },
"frameworks": { "frameworks": {
"netcoreapp1.0": { "netcoreapp1.0": {