1
0
Форкнуть 0

build: consolidate signing in installer project.

Consolodate all signing operations in the Installer project. Signing take a long time, stretching builds which take a minute or two to complete into a build which takes tens of minutes to complete. The majority of the added time is due to signing request submission overhead. Therefore, batching requests for signing minimizes the additional time.

Correctly consolidating signing means adding a new Components sub-project to the Installer project. Given that signing submissions can only happen once per project, and that the individual binaries need to be signed prior to 'setup.exe' and 'gcmw-*.zip' files can be generated; a prior signing submission must happen - thus the Components project. Additionally, there is no longer a reason to retain the "MicroBuild" dependencies in the other projects, no a reason to include the "MicroBuild" targets and props.
This commit is contained in:
J Wyman ∞ 2018-07-05 14:04:07 -04:00 коммит произвёл J Wyman
Родитель 23368984f8
Коммит 328a919350
17 изменённых файлов: 314 добавлений и 223 удалений

Просмотреть файл

@ -29,8 +29,8 @@
</Reference> </Reference>
<Reference Include="System" /> <Reference Include="System" />
<Reference Include="System.Configuration" /> <Reference Include="System.Configuration" />
<Reference Include="System.Threading.Tasks.Extensions, Version=4.1.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"> <Reference Include="System.Threading.Tasks.Extensions, Version=4.1.1.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\..\packages\System.Threading.Tasks.Extensions.4.3.0\lib\portable-net45+win8+wp8+wpa81\System.Threading.Tasks.Extensions.dll</HintPath> <HintPath>..\..\packages\System.Threading.Tasks.Extensions.4.4.0\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll</HintPath>
</Reference> </Reference>
<Reference Include="System.ValueTuple, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"> <Reference Include="System.ValueTuple, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\..\packages\System.ValueTuple.4.4.0\lib\net461\System.ValueTuple.dll</HintPath> <HintPath>..\..\packages\System.ValueTuple.4.4.0\lib\net461\System.ValueTuple.dll</HintPath>
@ -73,6 +73,7 @@
<Link>xunit.runner.json</Link> <Link>xunit.runner.json</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None> </None>
<None Include="app.config" />
<None Include="packages.config" /> <None Include="packages.config" />
</ItemGroup> </ItemGroup>
<Import Project="$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets" Condition="Exists('$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets')" /> <Import Project="$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets" Condition="Exists('$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets')" />

Просмотреть файл

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.1.0" newVersion="4.1.1.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

Просмотреть файл

@ -3,7 +3,7 @@
<package id="Castle.Core" version="4.2.1" targetFramework="net462" /> <package id="Castle.Core" version="4.2.1" targetFramework="net462" />
<package id="Microsoft.Net.Compilers" version="2.8.0" targetFramework="net462" developmentDependency="true" /> <package id="Microsoft.Net.Compilers" version="2.8.0" targetFramework="net462" developmentDependency="true" />
<package id="Moq" version="4.8.2" targetFramework="net462" /> <package id="Moq" version="4.8.2" targetFramework="net462" />
<package id="System.Threading.Tasks.Extensions" version="4.3.0" targetFramework="net462" /> <package id="System.Threading.Tasks.Extensions" version="4.4.0" targetFramework="net462" />
<package id="System.ValueTuple" version="4.4.0" targetFramework="net462" /> <package id="System.ValueTuple" version="4.4.0" targetFramework="net462" />
<package id="xunit" version="2.3.1" targetFramework="net452" /> <package id="xunit" version="2.3.1" targetFramework="net452" />
<package id="xunit.abstractions" version="2.0.1" targetFramework="net452" /> <package id="xunit.abstractions" version="2.0.1" targetFramework="net452" />

Просмотреть файл

@ -1,14 +1,12 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" /> <Import Project="..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" />
<Import Project="..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props" Condition="Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props')" />
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup> <PropertyGroup>
<AppDesignerFolder>Properties</AppDesignerFolder> <AppDesignerFolder>Properties</AppDesignerFolder>
<AssemblyName>git-askpass</AssemblyName> <AssemblyName>git-askpass</AssemblyName>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<NuGetPackageImportStamp> <NuGetPackageImportStamp/>
</NuGetPackageImportStamp>
<OutputType>Exe</OutputType> <OutputType>Exe</OutputType>
<ProjectGuid>{19770407-B33A-4EBE-92B8-04C93F43CAE0}</ProjectGuid> <ProjectGuid>{19770407-B33A-4EBE-92B8-04C93F43CAE0}</ProjectGuid>
<ProjectName>Cli-Askpass</ProjectName> <ProjectName>Cli-Askpass</ProjectName>
@ -21,7 +19,6 @@
<ApplicationIcon>..\..\Assets\gcmicon.ico</ApplicationIcon> <ApplicationIcon>..\..\Assets\gcmicon.ico</ApplicationIcon>
<ProjectDir>$(MSBuildThisFileDirectory)</ProjectDir> <ProjectDir>$(MSBuildThisFileDirectory)</ProjectDir>
<OutputPath>$(ProjectDir)$(OutputPath)</OutputPath> <OutputPath>$(ProjectDir)$(OutputPath)</OutputPath>
<SigningTarget>$(OutputPath)\$(AssemblyName).exe</SigningTarget>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="Microsoft.CSharp" /> <Reference Include="Microsoft.CSharp" />
@ -68,12 +65,8 @@
<Compile Include="UserPromptKind.cs" /> <Compile Include="UserPromptKind.cs" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="app.config"> <None Include="app.config"/>
<InProject>false</InProject> <None Include="packages.config"/>
</None>
<None Include="packages.config">
<InProject>false</InProject>
</None>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Page Include="UserPromptDialog.xaml"> <Page Include="UserPromptDialog.xaml">
@ -98,9 +91,6 @@
<PropertyGroup> <PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup> </PropertyGroup>
<Error Condition="!Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props'))" />
<Error Condition="!Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets'))" />
<Error Condition="!Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props'))" /> <Error Condition="!Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props'))" />
</Target> </Target>
<Import Project="..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets" Condition="Exists('..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')" />
</Project> </Project>

Просмотреть файл

@ -1,5 +1,4 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <packages>
<package id="MicroBuild.Core" version="0.3.0" targetFramework="net452" developmentDependency="true" />
<package id="Microsoft.Net.Compilers" version="2.8.0" targetFramework="net452" developmentDependency="true" /> <package id="Microsoft.Net.Compilers" version="2.8.0" targetFramework="net452" developmentDependency="true" />
</packages> </packages>

Просмотреть файл

@ -1,13 +1,12 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" /> <Import Project="..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" />
<Import Project="..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props" Condition="Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props')" />
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup> <PropertyGroup>
<AppDesignerFolder>Properties</AppDesignerFolder> <AppDesignerFolder>Properties</AppDesignerFolder>
<AssemblyName>git-credential-manager</AssemblyName> <AssemblyName>git-credential-manager</AssemblyName>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<NuGetPackageImportStamp /> <NuGetPackageImportStamp/>
<OutputType>Exe</OutputType> <OutputType>Exe</OutputType>
<ProjectGuid>{19770407-63D4-40A8-A9DF-F1C4B473308A}</ProjectGuid> <ProjectGuid>{19770407-63D4-40A8-A9DF-F1C4B473308A}</ProjectGuid>
<ProjectName>Cli-Manager</ProjectName> <ProjectName>Cli-Manager</ProjectName>
@ -20,7 +19,6 @@
<ApplicationIcon>..\..\Assets\gcmicon.ico</ApplicationIcon> <ApplicationIcon>..\..\Assets\gcmicon.ico</ApplicationIcon>
<ProjectDir>$(MSBuildThisFileDirectory)</ProjectDir> <ProjectDir>$(MSBuildThisFileDirectory)</ProjectDir>
<OutputPath>$(ProjectDir)$(OutputPath)</OutputPath> <OutputPath>$(ProjectDir)$(OutputPath)</OutputPath>
<SigningTarget>$(OutputPath)\$(AssemblyName).exe</SigningTarget>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="System" /> <Reference Include="System" />
@ -56,15 +54,7 @@
<None Include="app.config"> <None Include="app.config">
<InProject>false</InProject> <InProject>false</InProject>
</None> </None>
<None Include="packages.config"> <None Include="packages.config" />
<InProject>false</InProject>
</None>
</ItemGroup>
<ItemGroup>
<FilesToSign Include="$(SigningTarget)">
<Authenticode>Microsoft</Authenticode>
<InProject>false</InProject>
</FilesToSign>
</ItemGroup> </ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Import Project="..\..\Shared\Cli\Cli-Shared.projitems" Label="Shared" /> <Import Project="..\..\Shared\Cli\Cli-Shared.projitems" Label="Shared" />
@ -73,9 +63,6 @@
<PropertyGroup> <PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup> </PropertyGroup>
<Error Condition="!Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props'))" />
<Error Condition="!Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets'))" />
<Error Condition="!Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props'))" /> <Error Condition="!Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props'))" />
</Target> </Target>
<Import Project="..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets" Condition="Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')" />
</Project> </Project>

Просмотреть файл

@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <packages>
<package id="MicroBuild.Core" version="0.3.0" targetFramework="net452" developmentDependency="true" />
<package id="Microsoft.Net.Compilers" version="2.8.0" targetFramework="net452" developmentDependency="true" /> <package id="Microsoft.Net.Compilers" version="2.8.0" targetFramework="net452" developmentDependency="true" />
<package id="Pandoc.Windows" version="2.1.0" developmentDependency="true" /> <package id="Pandoc.Windows" version="2.1.0" developmentDependency="true" />
<package id="Tools.InnoSetup" version="5.5.9" targetFramework="net452" /> <package id="Tools.InnoSetup" version="5.5.9" targetFramework="net452" />

Просмотреть файл

@ -46,8 +46,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GitHub.Authentication.Test"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GcmParentWindowTest", "GcmParentWindowTest\GcmParentWindowTest.csproj", "{2F110EEF-14BA-4324-9DA4-C7D16469B064}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GcmParentWindowTest", "GcmParentWindowTest\GcmParentWindowTest.csproj", "{2F110EEF-14BA-4324-9DA4-C7D16469B064}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Installer", "Installer\Installer.proj", "{19770407-3808-4B17-9EE0-21DD3468F875}"
EndProject
Global Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution GlobalSection(SharedMSBuildProjectFiles) = preSolution
Shared\Win32\Microsoft.Alm.Win32.projitems*{19770407-37cd-41ac-b50c-cf885bbce344}*SharedItemsImports = 13 Shared\Win32\Microsoft.Alm.Win32.projitems*{19770407-37cd-41ac-b50c-cf885bbce344}*SharedItemsImports = 13
@ -116,9 +114,6 @@ Global
{2F110EEF-14BA-4324-9DA4-C7D16469B064}.Debug|Any CPU.Build.0 = Debug|Any CPU {2F110EEF-14BA-4324-9DA4-C7D16469B064}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2F110EEF-14BA-4324-9DA4-C7D16469B064}.Release|Any CPU.ActiveCfg = Debug|Any CPU {2F110EEF-14BA-4324-9DA4-C7D16469B064}.Release|Any CPU.ActiveCfg = Debug|Any CPU
{2F110EEF-14BA-4324-9DA4-C7D16469B064}.Release|Any CPU.Build.0 = Debug|Any CPU {2F110EEF-14BA-4324-9DA4-C7D16469B064}.Release|Any CPU.Build.0 = Debug|Any CPU
{19770407-3808-4B17-9EE0-21DD3468F875}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{19770407-3808-4B17-9EE0-21DD3468F875}.Release|Any CPU.ActiveCfg = Release|Any CPU
{19770407-3808-4B17-9EE0-21DD3468F875}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE

154
Installer/Components.proj Normal file
Просмотреть файл

@ -0,0 +1,154 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props"
Condition="Exists('..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props')" />
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props"
Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup Label="Globals">
<NuGetPackageImportStamp />
<ProjectGuid>{19770407-1214-0415-1230-21DD3468F875}</ProjectGuid>
<ProjectDir Condition=" '$(ProjectDir)' == '' Or '$(ProjectDir)' == '*Undefined*' ">$(MSBuildProjectDirectory)</ProjectDir>
<RootNamespace>GCMW-Components</RootNamespace>
<TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' Or '$(Configuration)' == '*Undefined*' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' Or '$(Platform)' == '*Undefined*' " >Any CPU</Platform>
<SolutionDir Condition=" '$(SolutionDir)' == '' Or '$(SolutionDir)' == '*Undefined*' ">$([System.IO.Directory]::GetParent($(ProjectDir)))</SolutionDir>
<AssetsDir Condition=" '$(AssetsDir)' == '' Or '$(AssetDir)' == '*Undefined*' ">$(SolutionDir)\Assets</AssetsDir>
<DocsDir Condition=" '$(DocsDir)' == '' Or '$(DocsDir)' == '*Undefined*' ">$(SolutionDir)\Docs</DocsDir>
</PropertyGroup>
<PropertyGroup>
<InputPath Condition=" '$(Configuration)' == 'Debug' ">bin\Debug</InputPath>
<InputPath Condition=" '$(Configuration)' == 'Release' ">bin\Release</InputPath>
<IntermediateOutputPath>$(ProjectDir)\obj</IntermediateOutputPath>
<!-- MicroBuild signing requires `OutDir` to be defined -->
<OutDir>$(IntermediateOutputPath)</OutDir>
</PropertyGroup>
<!-- Compile a list of dependencies -->
<ItemGroup>
<ProjectReference Include="..\Cli\Askpass\Cli-Askpass.csproj">
<Project>{19770407-B33A-4EBE-92B8-04C93F43CAE0}</Project>
<Name>Cli-Askpass</Name>
</ProjectReference>
<ProjectReference Include="..\Cli\Manager\Cli-Manager.csproj">
<Project>{19770407-63D4-40A8-A9DF-F1C4B473308A}</Project>
<Name>Cli-Manager</Name>
</ProjectReference>
<ProjectReference Include="..\Bitbucket.Authentication\Src\Bitbucket.Authentication.csproj">
<Project>{EE663736-5BAD-4CA6-A4F8-99978925AD8A}</Project>
<Name>Bitbucket.Authentication</Name>
</ProjectReference>
<ProjectReference Include="..\GitHub.Authentication\Src\GitHub.Authentication.csproj">
<Project>{CF306116-BBF0-4CC7-AFCE-A506AC4752CB}</Project>
<Name>GitHub.Authentication</Name>
</ProjectReference>
<ProjectReference Include="..\Microsoft.Alm.Authentication\Src\Microsoft.Alm.Authentication.csproj">
<Project>{19770407-B493-459D-BB4F-04FBEFB1BA13}</Project>
<Name>Microsoft.Alm.Authentication</Name>
</ProjectReference>
<ProjectReference Include="..\VisualStudioTeamServices.Authentication\Src\VisualStudioTeamServices.Authentication.csproj">
<Project>{19770407-D7D8-4A37-914C-F552FF4B90D4}</Project>
<Name>VisualStudioTeamServices.Authentication</Name>
</ProjectReference>
</ItemGroup>
<!-- Compile the list of files to sign with MicroBuild -->
<ItemGroup>
<FilesToSign Include="$(IntermediateOutputPath)\Microsoft.Alm.Authentication.dll">
<Authenticode>Microsoft</Authenticode>
</FilesToSign>
<FilesToSign Include="$(IntermediateOutputPath)\VisualStudioTeamServices.Authentication.dll">
<Authenticode>Microsoft</Authenticode>
</FilesToSign>
<FilesToSign Include="$(IntermediateOutputPath)\git-credential-manager.exe">
<Authenticode>Microsoft</Authenticode>
</FilesToSign>
<FilesToSign Include="$(IntermediateOutputPath)\git-askpass.exe">
<Authenticode>Microsoft</Authenticode>
</FilesToSign>
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
<Target Name="AfterBuild" AfterTargets="Build" />
<Target Name="BeforeBuild" BeforeTargets="Build" />
<Target Name="Build">
<Error Condition=" '$(Configuration)' != 'Debug' And '$(Configuration)' != 'Release' "
Text="The 'Configuration' property must be set to 'Debug' or 'Release'." />
<Error Condition=" '$(Platform)' == '' Or '$(Platform)' == '*Undefined*' "
Text="The 'Platform' property cannot be empty of undefined." />
<!-- Ensure all dependencies are built -->
<MSBuild Projects="@(ProjectReference)" Targets="Build" />
</Target>
<Target Name="GenerateDocuments" AfterTargets="Build" BeforeTargets="AfterBuild">
<!-- Compile the list of files to copy to the intermediate directory -->
<ItemGroup>
<FilesToCopy Include="$(SolutionDir)\Microsoft.Alm.Authentication\Src\$(InputPath)\Microsoft.Alm.Authentication.dll" />
<FilesToCopy Include="$(SolutionDir)\Microsoft.Alm.Authentication\Src\$(InputPath)\Microsoft.Alm.Authentication.pdb" />
<FilesToCopy Include="$(SolutionDir)\VisualStudioTeamServices.Authentication\Src\$(InputPath)\VisualStudioTeamServices.Authentication.dll" />
<FilesToCopy Include="$(SolutionDir)\VisualStudioTeamServices.Authentication\Src\$(InputPath)\VisualStudioTeamServices.Authentication.pdb" />
<FilesToCopy Include="$(SolutionDir)\Bitbucket.Authentication\Src\$(InputPath)\Bitbucket.Authentication.dll" />
<FilesToCopy Include="$(SolutionDir)\GitHub.Authentication\Src\$(InputPath)\GitHub.Authentication.exe" />
<FilesToCopy Include="$(SolutionDir)\Cli\Manager\$(InputPath)\git-credential-manager.exe" />
<FilesToCopy Include="$(SolutionDir)\Cli\Askpass\$(InputPath)\git-askpass.exe" />
<FilesToCopy Include="$(SolutionDir)\VisualStudioTeamServices.Authentication\Src\$(InputPath)\Microsoft.IdentityModel.Clients.ActiveDirectory.dll" />
<FilesToCopy Include="$(SolutionDir)\LICENSE.TXT" />
<FilesToCopy Include="$(SolutionDir)\README.md" />
<FilesToCopy Include="$(ProjectDir)\Setup.iss" />
<FilesToCopy Include="$(ProjectDir)\VisualStudioTeamServices.Authentication.nuspec" />
</ItemGroup>
<!-- Ensure the intermediate output path exists -->
<MakeDir Condition="!Exists('$(IntermediateOutputPath)')"
Directories="$(IntermediateOutputPath)" />
<!-- Copy all important files to the intermediate output destination -->
<Message Text="Copying files to '(IntermediateOutputPath)'" />
<Copy SourceFiles="@(FilesToCopy)" DestinationFolder="$(IntermediateOutputPath)" />
<!-- Generate documentation -->
<Exec Command="&quot;$(SolutionDir)\packages\Pandoc.Windows.2.1.0\tools\Pandoc\pandoc.exe&quot; --from=markdown --to=html5 --self-contained --standalone --include-in-header=&quot;$(AssetsDir)\head_css.html&quot; --title=&quot;Git Credential Manager for Windows&quot; --output=&quot;$(IntermediateOutputPath)\git-credential-manager.html&quot; &quot;$(DocsDir)\CredentialManager.md&quot; &quot;$(DocsDir)\Configuration.md&quot; &quot;$(DocsDir)\Faq.md&quot; &quot;$(DocsDir)\Automation.md&quot; &quot;$(DocsDir)\Development.md&quot;"
IgnoreExitCode="false" />
<Exec Command="&quot;$(SolutionDir)\packages\Pandoc.Windows.2.1.0\tools\Pandoc\pandoc.exe&quot; --from=markdown --to=html5 --self-contained --standalone --include-in-header=&quot;$(AssetsDir)\head_css.html&quot; --title=&quot;Git Askpass Helper for Windows&quot; --output=&quot;$(IntermediateOutputPath)\git-askpass.html&quot; &quot;$(DocsDir)\Askpass.md&quot; &quot;$(DocsDir)\Configuration.md&quot; &quot;$(DocsDir)\Faq.md&quot; &quot;$(DocsDir)\Automation.md&quot; &quot;$(DocsDir)\Development.md&quot;"
IgnoreExitCode="false" />
</Target>
<Target Name="Clean">
<RemoveDir Directories="$(IntermediateOutputPath);" />
<RemoveDir Directories="$(SolutionDir)\TestResults" />
</Target>
<Target Name="Rebuild" AfterTargets="Clean" BeforeTargets="Build" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\MSBuildTasks.1.5.0.235\build\MSBuildTasks.targets')"
Text="$([System.String]::Format('$(ErrorText)', 'MSBuildTasks'))" />
<Error Condition="!Exists('..\packages\Pandoc.Windows.2.1.0\tools\Pandoc\pandoc.exe')"
Text="$([System.String]::Format('$(ErrorText)', '..\packages\Pandoc.Windows.2.1.0\tools\Pandoc\pandoc.exe'))" />
<Error Condition="!Exists('..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props')"
Text="$([System.String]::Format('$(ErrorText)', '..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props'))" />
<Error Condition="!Exists('..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')"
Text="$([System.String]::Format('$(ErrorText)', '..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets'))" />
</Target>
<Import Project="..\packages\MSBuildTasks.1.5.0.235\build\MSBuildTasks.targets"
Condition="Exists('..\packages\MSBuildTasks.1.5.0.235\build\MSBuildTasks.targets')" />
<Import Project="..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets"
Condition="Exists('..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')" />
</Project>

Просмотреть файл

@ -1,8 +1,11 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project ToolsVersion="15.0" DefaultTargets="Build;Package" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" />
<Import Project="..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props" Condition="Exists('..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props')" /> <Import Project="..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props"
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> Condition="Exists('..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props')" />
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props"
Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup Label="Globals"> <PropertyGroup Label="Globals">
<NuGetPackageImportStamp /> <NuGetPackageImportStamp />
<ProjectGuid>{19770407-3808-4B17-9EE0-21DD3468F875}</ProjectGuid> <ProjectGuid>{19770407-3808-4B17-9EE0-21DD3468F875}</ProjectGuid>
@ -10,13 +13,15 @@
<RootNamespace>Installer</RootNamespace> <RootNamespace>Installer</RootNamespace>
<TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion> <TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' Or '$(Configuration)' == '*Undefined*' ">Debug</Configuration> <Configuration Condition=" '$(Configuration)' == '' Or '$(Configuration)' == '*Undefined*' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' Or '$(Platform)' == '*Undefined*' " >Any CPU</Platform> <Platform Condition=" '$(Platform)' == '' Or '$(Platform)' == '*Undefined*' ">Any CPU</Platform>
<SolutionDir Condition=" '$(SolutionDir)' == '' Or '$(SolutionDir)' == '*Undefined*' ">$([System.IO.Directory]::GetParent($(ProjectDir)))</SolutionDir> <SolutionDir Condition=" '$(SolutionDir)' == '' Or '$(SolutionDir)' == '*Undefined*' ">$([System.IO.Directory]::GetParent($(ProjectDir)))</SolutionDir>
<AssetsDir Condition=" '$(AssetsDir)' == '' Or '$(AssetDir)' == '*Undefined*' ">$(SolutionDir)\Assets</AssetsDir> <AssetsDir Condition=" '$(AssetsDir)' == '' Or '$(AssetDir)' == '*Undefined*' ">$(SolutionDir)\Assets</AssetsDir>
<DocsDir Condition=" '$(DocsDir)' == '' Or '$(DocsDir)' == '*Undefined*' ">$(SolutionDir)\Docs</DocsDir> <DocsDir Condition=" '$(DocsDir)' == '' Or '$(DocsDir)' == '*Undefined*' ">$(SolutionDir)\Docs</DocsDir>
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<InputPath Condition=" '$(Configuration)' == 'Debug' ">bin\Debug</InputPath> <InputPath Condition=" '$(Configuration)' == 'Debug' ">bin\Debug</InputPath>
<InputPath Condition=" '$(Configuration)' == 'Release' ">bin\Release</InputPath> <InputPath Condition=" '$(Configuration)' == 'Release' ">bin\Release</InputPath>
@ -24,154 +29,158 @@
<OutputPath>$(SolutionDir)\Deploy</OutputPath> <OutputPath>$(SolutionDir)\Deploy</OutputPath>
<OutDir>$(OutputPath)</OutDir> <OutDir>$(OutputPath)</OutDir>
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<GcmProps>$([System.IO.File]::ReadAllText($(SolutionDir)\Cli\Manager\Properties\AssemblyInfo.cs))</GcmProps> <GcmProps>$([System.IO.File]::ReadAllText($(SolutionDir)\Cli\Manager\Properties\AssemblyInfo.cs))</GcmProps>
<PkgProps>$([System.IO.File]::ReadAllText($(SolutionDir)\VisualStudioTeamServices.Authentication\Src\Properties\AssemblyInfo.cs))</PkgProps> <PkgProps>$([System.IO.File]::ReadAllText($(SolutionDir)\VisualStudioTeamServices.Authentication\Src\Properties\AssemblyInfo.cs))</PkgProps>
<Pattern>^\s*\[assembly\s*:\s*AssemblyVersion\s*\(\s*\s*"(\d+\.\d+\.\d+)\.?\d*\s*"\s*\)</Pattern> <Pattern>^\s*\[assembly\s*:\s*AssemblyVersion\s*\(\s*\s*"(\d+\.\d+\.\d+)\.?\d*\s*"\s*\)</Pattern>
<GcmVersion>$([System.Text.RegularExpressions.Regex]::Match($(GcmProps), $(Pattern), System.Text.RegularExpressions.RegexOptions.Multiline).Groups[1].Value)</GcmVersion> <GcmVersion>$([System.Text.RegularExpressions.Regex]::Match($(GcmProps), $(Pattern), System.Text.RegularExpressions.RegexOptions.Multiline).Groups[1].Value)</GcmVersion>
<PkgVersion>$([System.Text.RegularExpressions.Regex]::Match($(PkgProps), $(Pattern), System.Text.RegularExpressions.RegexOptions.Multiline).Groups[1].Value)</PkgVersion> <PkgVersion>$([System.Text.RegularExpressions.Regex]::Match($(PkgProps), $(Pattern), System.Text.RegularExpressions.RegexOptions.Multiline).Groups[1].Value)</PkgVersion>
<PkgName>VisualStudioTeamServices.Authentication</PkgName>
<!-- Read the nupkg meta data from the AssemblyInfo.cs file copied from VisualStudioTeamServicesAuthentication -->
<Pattern>^\s*\[assembly: AssemblyDescription\s*\(\s*"\s*([^"]+)\s*"\s*\)</Pattern>
<PkgDescription>$([System.Text.RegularExpressions.Regex]::Match($(PkgProps), $(Pattern), System.Text.RegularExpressions.RegexOptions.Multiline).Groups[1].Value)</PkgDescription>
<Pattern>^\s*\[assembly: AssemblyProduct\s*\(\s*"\s*([^"]+)\s*"\s*\)</Pattern>
<PkgProduct>$([System.Text.RegularExpressions.Regex]::Match($(PkgProps), $(Pattern), System.Text.RegularExpressions.RegexOptions.Multiline).Groups[1].Value)</PkgProduct>
<Pattern>^\s*\[assembly: AssemblyTitle\s*\(\s*"\s*([^"]+)\s*"\s*\)</Pattern>
<PkgTitle>$([System.Text.RegularExpressions.Regex]::Match($(PkgProps), $(Pattern), System.Text.RegularExpressions.RegexOptions.Multiline).Groups[1].Value)</PkgTitle>
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<GcmExePath>$(OutputPath)\GCMW-$(GcmVersion).exe</GcmExePath> <GcmExePath>$(OutputPath)\GCMW-$(GcmVersion).exe</GcmExePath>
<GcmPkgPath>$(OutputPath)\VisualStudioTeamServices.Authentication.$(PkgVersion).nupkg</GcmPkgPath> <GcmPkgPath>$(OutputPath)\VisualStudioTeamServices.Authentication.$(PkgVersion).nupkg</GcmPkgPath>
<GcmZipPath>$(OutputPath)\gcmw-v$(GcmVersion).zip</GcmZipPath>
</PropertyGroup> </PropertyGroup>
<!-- Compile a list of dependencies -->
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\Cli\Askpass\Cli-Askpass.csproj"> <ProjectReference Include="Components.proj">
<Project>{19770407-B33A-4EBE-92B8-04C93F43CAE0}</Project> <Project>{19770407-1214-0415-1230-21DD3468F875}</Project>
<Name>Cli-Askpass</Name> <Name>GCMW-Components</Name>
</ProjectReference>
<ProjectReference Include="..\Cli\Manager\Cli-Manager.csproj">
<Project>{19770407-63D4-40A8-A9DF-F1C4B473308A}</Project>
<Name>Cli-Manager</Name>
</ProjectReference>
<ProjectReference Include="..\Bitbucket.Authentication\Src\Bitbucket.Authentication.csproj">
<Project>{EE663736-5BAD-4CA6-A4F8-99978925AD8A}</Project>
<Name>Bitbucket.Authentication</Name>
</ProjectReference>
<ProjectReference Include="..\GitHub.Authentication\Src\GitHub.Authentication.csproj">
<Project>{CF306116-BBF0-4CC7-AFCE-A506AC4752CB}</Project>
<Name>GitHub.Authentication</Name>
</ProjectReference>
<ProjectReference Include="..\Microsoft.Alm.Authentication\Src\Microsoft.Alm.Authentication.csproj">
<Project>{19770407-B493-459D-BB4F-04FBEFB1BA13}</Project>
<Name>Microsoft.Alm.Authentication</Name>
</ProjectReference>
<ProjectReference Include="..\VisualStudioTeamServices.Authentication\Src\VisualStudioTeamServices.Authentication.csproj">
<Project>{19770407-D7D8-4A37-914C-F552FF4B90D4}</Project>
<Name>VisualStudioTeamServices.Authentication</Name>
</ProjectReference> </ProjectReference>
</ItemGroup> </ItemGroup>
<!-- Compile the list of files to sign with MicroBuild -->
<ItemGroup> <ItemGroup>
<MicrosoftFiles Include="$(IntermediateOutputPath)\Microsoft.Alm.Authentication.dll">
<InProject>false</InProject>
</MicrosoftFiles>
<MicrosoftFiles Include="$(IntermediateOutputPath)\VisualStudioTeamServices.Authentication.dll">
<InProject>false</InProject>
</MicrosoftFiles>
<MicrosoftFiles Include="$(IntermediateOutputPath)\git-credential-manager.exe">
<InProject>false</InProject>
</MicrosoftFiles>
<MicrosoftFiles Include="$(IntermediateOutputPath)\git-askpass.exe">
<InProject>false</InProject>
</MicrosoftFiles>
</ItemGroup>
<ItemGroup>
<ZipContents Include="$(IntermediateOutputPath)\Bitbucket.Authentication.dll">
<InProject>false</InProject>
</ZipContents>
<ZipContents Include="$(IntermediateOutputPath)\git-askpass.html">
<InProject>false</InProject>
</ZipContents>
<ZipContents Include="$(IntermediateOutputPath)\git-credential-manager.html">
<InProject>false</InProject>
</ZipContents>
<ZipContents Include="$(IntermediateOutputPath)\GitHub.Authentication.exe">
<InProject>false</InProject>
</ZipContents>
<ZipContents Include="$(ProjectDir)\install.cmd">
<InProject>false</InProject>
</ZipContents>
<ZipContents Include="$(SolutionDir)\LICENSE.TXT">
<InProject>false</InProject>
</ZipContents>
<ZipContents Include="$(IntermediateOutputPath)\Microsoft.IdentityModel.Clients.ActiveDirectory.dll">
<InProject>false</InProject>
</ZipContents>
<ZipContents Include="$(SolutionDir)\README.md">
<InProject>false</InProject>
</ZipContents>
<ZipContents Include="@(MicrosoftFiles)">
<InProject>false</InProject>
</ZipContents>
</ItemGroup>
<ItemGroup>
<FilesToSign Include="@(MicrosoftFiles)">
<Authenticode>Microsoft</Authenticode>
<InProject>false</InProject>
</FilesToSign>
<FilesToSign Include="$(GcmExePath)"> <FilesToSign Include="$(GcmExePath)">
<Authenticode>Microsoft</Authenticode> <Authenticode>Microsoft</Authenticode>
<InProject>false</InProject>
</FilesToSign> </FilesToSign>
<FilesToSign Include="$(GcmPkgPath)"> <FilesToSign Include="$(GcmPkgPath)">
<Authenticode>Nuget</Authenticode> <Authenticode>Nuget</Authenticode>
<InProject>false</InProject>
</FilesToSign> </FilesToSign>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="packages.config"> <None Include="packages.config" />
<InProject>false</InProject>
</None>
</ItemGroup> </ItemGroup>
<Target Name="AfterBuild" AfterTargets="Build" /> <Target Name="AfterBuild" AfterTargets="Build" />
<Target Name="Build" BeforeTargets="AfterBuild">
<Error Condition=" '$(Condition)' != 'Debug' And '$(Condition)' == 'Release' " Text="The 'Condition' property must be set to 'Debug' or 'Release'." /> <Target Name="BeforeBuild" BeforeTargets="Build" />
<Error Condition=" '$(Platform)' == '' Or '$(Platform)' == '*Undefined*' " Text="The 'Platform' property cannot be empty of undefined." />
<Target Name="Build">
<Error Condition=" '$(Configuration)' != 'Debug' And '$(Configuration)' != 'Release' "
Text="The 'Configuration' property must be set to 'Debug' or 'Release'." />
<Error Condition=" '$(Platform)' == '' Or '$(Platform)' == '*Undefined*' "
Text="The 'Platform' property cannot be empty of undefined." />
<!-- Ensure all dependencies are built -->
<MSBuild Projects="@(ProjectReference)" Targets="Build" /> <MSBuild Projects="@(ProjectReference)" Targets="Build" />
<!-- need to declare the items after dependencies have built, so that glob enumeration happens after the files are produced --> </Target>
<Target Name="Package" AfterTargets="Build" BeforeTargets="AfterBuild">
<!-- Echo current package state information -->
<Message Text="GcmVersion = $(GcmVersion)" />
<Message Text="PkgVersion = $(PkgVersion)" />
<Message Text="GcmExePath = $(GcmExePath)" />
<Message Text="GcmZipPath = $(GcmZipPath)" />
<Message Text="GcmPkgPath = $(GcmPkgPath)" />
<Message Text="PkgDescription = $(PkgDescription)" />
<Message Text="PkgProduct = $(PkgProduct)" />
<Message Text="PkgTitle = $(PkgTitle)" />
<!-- Only download a new copy of nuget.exe if we don't have a copy available -->
<PropertyGroup>
<NugetPath>nuget.exe</NugetPath>
<IsSigned>
</IsSigned>
<IsSigned Condition=" '$(SignType)' == '' Or '$(SignType)' == '*Undefined*' ">-unsigned</IsSigned>
<NugetWorkDir>$(OutputPath.TrimEnd('\'))</NugetWorkDir>
</PropertyGroup>
<PropertyGroup Condition="!Exists($(NugetPath))">
<NugetPath>..\packages\NuGet.CommandLine.4.6.2\tools\NuGet.exe</NugetPath>
</PropertyGroup>
<!-- Need to declare the items after dependencies have built, so that glob enumeration happens after the files are produced -->
<ItemGroup> <ItemGroup>
<FilesToCopy Include="$(SolutionDir)\Cli\Manager\$(InputPath)\*.*"> <ZipContents Include="$(IntermediateOutputPath)\Microsoft.IdentityModel.Clients.ActiveDirectory.dll" />
<InProject>false</InProject> <ZipContents Include="$(IntermediateOutputPath)\VisualStudioTeamServices.Authentication.dll" />
</FilesToCopy> <ZipContents Include="$(IntermediateOutputPath)\Microsoft.Alm.Authentication.dll" />
<FilesToCopy Include="$(SolutionDir)\Cli\Askpass\$(InputPath)\git-askpass.exe"> <ZipContents Include="$(IntermediateOutputPath)\Bitbucket.Authentication.dll" />
<InProject>false</InProject> <ZipContents Include="$(IntermediateOutputPath)\git-credential-manager.html" />
</FilesToCopy> <ZipContents Include="$(IntermediateOutputPath)\git-credential-manager.exe" />
<FilesToCopy Include="$(SolutionDir)\LICENSE.TXT"> <ZipContents Include="$(IntermediateOutputPath)\GitHub.Authentication.exe" />
<InProject>false</InProject> <ZipContents Include="$(IntermediateOutputPath)\git-askpass.html" />
</FilesToCopy> <ZipContents Include="$(IntermediateOutputPath)\git-askpass.exe" />
<FilesToCopy Include="$(SolutionDir)\README.md"> <ZipContents Include="$(SolutionDir)\LICENSE.TXT" />
<InProject>false</InProject> <ZipContents Include="$(ProjectDir)\install.cmd" />
</FilesToCopy> <ZipContents Include="$(SolutionDir)\README.md" />
<FilesToCopy Include="$(ProjectDir)\Setup.iss" />
</ItemGroup> </ItemGroup>
<MakeDir Directories="$(IntermediateOutputPath)" />
<MakeDir Directories="$(OutputPath)" /> <!-- Generate 'GCMW-${version}.exe' -->
<Copy SourceFiles="@(FilesToCopy)" DestinationFolder="$(IntermediateOutputPath)" /> <Exec Command="&quot;$(SolutionDir)\packages\Tools.InnoSetup.5.5.9\tools\iscc.exe&quot; &quot;/O$(OutputPath)&quot; &quot;$(IntermediateOutputPath)\Setup.iss&quot;"
<Exec Command="&quot;$(SolutionDir)\packages\Pandoc.Windows.2.1.0\tools\Pandoc\pandoc.exe&quot; --from=markdown --to=html5 --self-contained --standalone --include-in-header=&quot;$(AssetsDir)\head_css.html&quot; --title=&quot;Git Credential Manager for Windows&quot; --output=&quot;$(IntermediateOutputPath)\git-credential-manager.html&quot; &quot;$(DocsDir)\CredentialManager.md&quot; &quot;$(DocsDir)\Configuration.md&quot; &quot;$(DocsDir)\Faq.md&quot; &quot;$(DocsDir)\Automation.md&quot; &quot;$(DocsDir)\Development.md&quot;" IgnoreExitCode="false" /> IgnoreStandardErrorWarningFormat="true"
<Exec Command="&quot;$(SolutionDir)\packages\Pandoc.Windows.2.1.0\tools\Pandoc\pandoc.exe&quot; --from=markdown --to=html5 --self-contained --standalone --include-in-header=&quot;$(AssetsDir)\head_css.html&quot; --title=&quot;Git Askpass Helper for Windows&quot; --output=&quot;$(IntermediateOutputPath)\git-askpass.html&quot; &quot;$(DocsDir)\Askpass.md&quot; &quot;$(DocsDir)\Configuration.md&quot; &quot;$(DocsDir)\Faq.md&quot; &quot;$(DocsDir)\Automation.md&quot; &quot;$(DocsDir)\Development.md&quot;" IgnoreExitCode="false" /> WorkingDirectory="$(IntermediateOutputPath)" />
<Exec Command="&quot;$(SolutionDir)\packages\Tools.InnoSetup.5.5.9\tools\iscc.exe&quot; &quot;/O$(OutputPath)&quot; &quot;$(IntermediateOutputPath)\Setup.iss&quot;" IgnoreStandardErrorWarningFormat="true" WorkingDirectory="$(IntermediateOutputPath)" />
<Zip Files="@(ZipContents)" Flatten="True" ZipFileName="$(OutputPath)\gcmw-v$(GcmVersion).zip" WorkingDirectory="$(IntermediateOutputPath)ZipContents" ZipLevel="9" /> <!-- Generate 'gcmw-v{version}.zip' -->
<Zip Files="@(ZipContents)"
Flatten="True"
ZipFileName="$(GcmZipPath)"
WorkingDirectory="$(IntermediateOutputPath)ZipContents"
ZipLevel="9" />
<!-- Create the output path -->
<MakeDir Condition="!Exists('$(OutputPath)')"
Directories="$(OutputPath)" />
<!-- Generate isualStudioTeamServices.Authentication-{version}.nupkg -->
<Exec Command="&quot;$(NugetPath)&quot; pack &quot;$(IntermediateOutputPath)\VisualStudioTeamServices.Authentication.nuspec&quot; -BasePath &quot;$(IntermediateOutputPath)&quot; -IncludeReferencedProjects -Properties Configuration=&quot;$(Configuration)&quot;;Version=&quot;$(PkgVersion)$(IsSigned)&quot;;Id=&quot;$(PkgName)&quot;;Title=&quot;$(PkgTitle)&quot;;Description=&quot;$(PkgDescription)&quot; -OutputDirectory &quot;$(NugetWorkDir)&quot;" />
</Target> </Target>
<Target Name="Clean"> <Target Name="Clean">
<RemoveDir Directories="$(IntermediateOutputPath);$(OutputPath)" /> <RemoveDir Directories="$(IntermediateOutputPath)" />
<RemoveDir Directories="$(SolutionDir)\TestResults" /> <RemoveDir Directories="$(OutputPath)" />
</Target> </Target>
<Target Name="Rebuild" AfterTargets="Clean" BeforeTargets="Build" /> <Target Name="Rebuild" AfterTargets="Clean" BeforeTargets="Build" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup> <PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup> </PropertyGroup>
<Error Condition="!Exists('..\packages\MSBuildTasks.1.5.0.235\build\MSBuildTasks.targets')" Text="$([System.String]::Format('$(ErrorText)', 'MSBuildTasks'))" />
<Error Condition="!Exists('..\packages\Pandoc.Windows.2.1.0\tools\Pandoc\pandoc.exe')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Pandoc.Windows.2.1.0\tools\Pandoc\pandoc.exe'))" /> <Error Condition="!Exists('..\packages\MSBuildTasks.1.5.0.235\build\MSBuildTasks.targets')"
<Error Condition="!Exists('..\packages\Tools.InnoSetup.5.5.9\tools\iscc.exe')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Tools.InnoSetup.5.5.9\tools\iscc.exe'))" /> Text="$([System.String]::Format('$(ErrorText)', 'MSBuildTasks'))" />
<Error Condition="!Exists('..\packages\Tools.InnoSetup.Download.1.5.1\tools\InnoDownload\idp.iss')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Tools.InnoSetup.Download.1.5.1\tools\InnoDownload\idp.iss'))" /> <Error Condition="!Exists('..\packages\Tools.InnoSetup.5.5.9\tools\iscc.exe')"
<Error Condition="!Exists('..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props'))" /> Text="$([System.String]::Format('$(ErrorText)', '..\packages\Tools.InnoSetup.5.5.9\tools\iscc.exe'))" />
<Error Condition="!Exists('..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets'))" /> <Error Condition="!Exists('..\packages\Tools.InnoSetup.Download.1.5.1\tools\InnoDownload\idp.iss')"
<Error Condition="!Exists('..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props'))" /> Text="$([System.String]::Format('$(ErrorText)', '..\packages\Tools.InnoSetup.Download.1.5.1\tools\InnoDownload\idp.iss'))" />
<Error Condition="!Exists('..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props')"
Text="$([System.String]::Format('$(ErrorText)', '..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props'))" />
<Error Condition="!Exists('..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')"
Text="$([System.String]::Format('$(ErrorText)', '..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets'))" />
</Target> </Target>
<Target Name="EnsureResourcesExist" BeforeTargets="PrepareForBuild"> <Target Name="EnsureResourcesExist" BeforeTargets="PrepareForBuild">
<Error Condition="!Exists('$(SolutionDir)\Cli\Manager\Properties\AssemblyInfo.cs)')" Text="File not found: '$(SolutionDir)\Cli\Manager\Properties\AssemblyInfo.cs)'." /> <Error Condition="!Exists('$(SolutionDir)\Cli\Manager\Properties\AssemblyInfo.cs')"
Text="File not found: '$(SolutionDir)\Cli\Manager\Properties\AssemblyInfo.cs'." />
<Error Condition="!Exists('$(SolutionDir)\VisualStudioTeamServices.Authentication\Src\Properties\AssemblyInfo.cs)')"
Text="File not found: '$(SolutionDir)\VisualStudioTeamServices.Authentication\Src\Properties\AssemblyInfo.cs)'." />
</Target> </Target>
<Import Project="..\packages\MSBuildTasks.1.5.0.235\build\MSBuildTasks.targets" Condition="Exists('..\packages\MSBuildTasks.1.5.0.235\build\MSBuildTasks.targets')" />
<Import Project="..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets" Condition="Exists('..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')" /> <Import Project="..\packages\MSBuildTasks.1.5.0.235\build\MSBuildTasks.targets"
Condition="Exists('..\packages\MSBuildTasks.1.5.0.235\build\MSBuildTasks.targets')" />
<Import Project="..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets"
Condition="Exists('..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')" />
</Project> </Project>

Просмотреть файл

@ -23,7 +23,7 @@
<file src="VisualStudioTeamServices.Authentication.dll" target="lib\net451\VisualStudioTeamServices.Authentication.dll" /> <file src="VisualStudioTeamServices.Authentication.dll" target="lib\net451\VisualStudioTeamServices.Authentication.dll" />
<file src="Microsoft.Alm.Authentication.pdb" target="lib\net451\Microsoft.Alm.Authentication.pdb" /> <file src="Microsoft.Alm.Authentication.pdb" target="lib\net451\Microsoft.Alm.Authentication.pdb" />
<file src="VisualStudioTeamServices.Authentication.pdb" target="lib\net451\VisualStudioTeamServices.Authentication.pdb" /> <file src="VisualStudioTeamServices.Authentication.pdb" target="lib\net451\VisualStudioTeamServices.Authentication.pdb" />
<file src="..\..\..\..\Microsoft.Alm.Authentication\**\*.cs" target="src\Microsoft.Alm.Authentication" exclude="**\bin\**\.cs;**\obj\**\*.cs" /> <file src="..\..\Microsoft.Alm.Authentication\**\*.cs" target="src\Microsoft.Alm.Authentication" exclude="**\bin\**\.cs;**\obj\**\*.cs" />
<file src="..\..\..\..\VisualStudioTeamServices.Authentication\**\*.cs" target="src\VisualStudioTeamServices.Authentication" exclude="**\bin\**\.cs;**\obj\**\*.cs" /> <file src="..\..\VisualStudioTeamServices.Authentication\**\*.cs" target="src\VisualStudioTeamServices.Authentication" exclude="**\bin\**\.cs;**\obj\**\*.cs" />
</files> </files>
</package> </package>

Просмотреть файл

@ -3,6 +3,7 @@
<package id="MicroBuild.Core" version="0.3.0" targetFramework="net462" developmentDependency="true" /> <package id="MicroBuild.Core" version="0.3.0" targetFramework="net462" developmentDependency="true" />
<package id="Microsoft.Net.Compilers" version="2.8.0" targetFramework="net462" developmentDependency="true" /> <package id="Microsoft.Net.Compilers" version="2.8.0" targetFramework="net462" developmentDependency="true" />
<package id="MSBuildTasks" version="1.5.0.235" targetFramework="net452" developmentDependency="true" /> <package id="MSBuildTasks" version="1.5.0.235" targetFramework="net452" developmentDependency="true" />
<package id="NuGet.CommandLine" version="4.6.2" targetFramework="net462" developmentDependency="true" />
<package id="Pandoc.Windows" version="2.1.0" developmentDependency="true" /> <package id="Pandoc.Windows" version="2.1.0" developmentDependency="true" />
<package id="Tools.InnoSetup" version="5.5.9" targetFramework="net452" /> <package id="Tools.InnoSetup" version="5.5.9" targetFramework="net452" />
<package id="Tools.InnoSetup.Download" version="1.5.1" targetFramework="net452" /> <package id="Tools.InnoSetup.Download" version="1.5.1" targetFramework="net452" />

Просмотреть файл

@ -1,7 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" /> <Import Project="..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" />
<Import Project="..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props" Condition="Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props')" />
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup> <PropertyGroup>
<AppDesignerFolder>Properties</AppDesignerFolder> <AppDesignerFolder>Properties</AppDesignerFolder>
@ -17,7 +16,6 @@
<PropertyGroup> <PropertyGroup>
<ProjectDir>$(MSBuildThisFileDirectory)</ProjectDir> <ProjectDir>$(MSBuildThisFileDirectory)</ProjectDir>
<OutputPath>$(ProjectDir)$(OutputPath)</OutputPath> <OutputPath>$(ProjectDir)$(OutputPath)</OutputPath>
<SigningTarget>$(OutputPath)\$(AssemblyName).dll</SigningTarget>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="System" /> <Reference Include="System" />
@ -64,15 +62,7 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="app.config" /> <None Include="app.config" />
<None Include="packages.config"> <None Include="packages.config"/>
<InProject>false</InProject>
</None>
</ItemGroup>
<ItemGroup>
<FilesToSign Include="$(SigningTarget)">
<Authenticode>Microsoft</Authenticode>
<InProject>false</InProject>
</FilesToSign>
</ItemGroup> </ItemGroup>
<Import Project="..\..\Shared\Win32\Microsoft.Alm.Win32.projitems" Label="Shared" /> <Import Project="..\..\Shared\Win32\Microsoft.Alm.Win32.projitems" Label="Shared" />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
@ -81,9 +71,6 @@
<PropertyGroup> <PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup> </PropertyGroup>
<Error Condition="!Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props'))" />
<Error Condition="!Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets'))" />
<Error Condition="!Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props'))" /> <Error Condition="!Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props'))" />
</Target> </Target>
<Import Project="..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets" Condition="Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')" />
</Project> </Project>

Просмотреть файл

@ -1,5 +1,4 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <packages>
<package id="MicroBuild.Core" version="0.3.0" targetFramework="net451" developmentDependency="true" />
<package id="Microsoft.Net.Compilers" version="2.8.0" targetFramework="net451" developmentDependency="true" /> <package id="Microsoft.Net.Compilers" version="2.8.0" targetFramework="net451" developmentDependency="true" />
</packages> </packages>

Просмотреть файл

@ -1,12 +1,11 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" /> <Import Project="..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" />
<Import Project="..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props" Condition="Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props')" />
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup> <PropertyGroup>
<AppDesignerFolder>Properties</AppDesignerFolder> <AppDesignerFolder>Properties</AppDesignerFolder>
<AssemblyName>VisualStudioTeamServices.Authentication</AssemblyName> <AssemblyName>VisualStudioTeamServices.Authentication</AssemblyName>
<NuGetPackageImportStamp /> <NuGetPackageImportStamp/>
<OutputType>Library</OutputType> <OutputType>Library</OutputType>
<ProjectGuid>{19770407-D7D8-4A37-914C-F552FF4B90D4}</ProjectGuid> <ProjectGuid>{19770407-D7D8-4A37-914C-F552FF4B90D4}</ProjectGuid>
<ProjectName>VisualStudioTeamServices.Authentication</ProjectName> <ProjectName>VisualStudioTeamServices.Authentication</ProjectName>
@ -17,7 +16,6 @@
<PropertyGroup> <PropertyGroup>
<ProjectDir>$(MSBuildThisFileDirectory)</ProjectDir> <ProjectDir>$(MSBuildThisFileDirectory)</ProjectDir>
<OutputPath>$(ProjectDir)$(OutputPath)</OutputPath> <OutputPath>$(ProjectDir)$(OutputPath)</OutputPath>
<SigningTarget>$(OutputPath)\$(AssemblyName).dll</SigningTarget>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="Microsoft.IdentityModel.Clients.ActiveDirectory, Version=3.19.4.11002, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> <Reference Include="Microsoft.IdentityModel.Clients.ActiveDirectory, Version=3.19.4.11002, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
@ -57,57 +55,14 @@
<Compile Include="TokenScope.cs" /> <Compile Include="TokenScope.cs" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="packages.config"> <None Include="packages.config" />
<InProject>false</InProject>
</None>
</ItemGroup> </ItemGroup>
<ItemGroup>
<FilesToSign Include="$(SigningTarget)">
<Authenticode>Microsoft</Authenticode>
<InProject>false</InProject>
</FilesToSign>
</ItemGroup>
<Target Name="BuildNupkg" AfterTargets="CopyFilesToOutputDirectory;SignFiles">
<!-- Read the nupkg meta data from the AssemblyInfo.cs file copied from VisualStudioTeamServicesAuthentication -->
<PropertyGroup>
<In>$([System.IO.File]::ReadAllText('$(ProjectDir)\Properties\AssemblyInfo.cs'))</In>
<Pattern>^\s*\[assembly:\s*AssemblyVersion\s*\(\s*"\s*([^"]+)\s*"\s*\)</Pattern>
<AssemblyVersion>$([System.Text.RegularExpressions.Regex]::Match($(In), $(Pattern), System.Text.RegularExpressions.RegexOptions.Multiline).Groups[1].Value)</AssemblyVersion>
<Pattern>^\s*\[assembly: AssemblyDescription\s*\(\s*"\s*([^"]+)\s*"\s*\)</Pattern>
<AssemblyDescription>$([System.Text.RegularExpressions.Regex]::Match($(In), $(Pattern), System.Text.RegularExpressions.RegexOptions.Multiline).Groups[1].Value)</AssemblyDescription>
<Pattern>^\s*\[assembly: AssemblyProduct\s*\(\s*"\s*([^"]+)\s*"\s*\)</Pattern>
<AssemblyProduct>$([System.Text.RegularExpressions.Regex]::Match($(In), $(Pattern), System.Text.RegularExpressions.RegexOptions.Multiline).Groups[1].Value)</AssemblyProduct>
<Pattern>^\s*\[assembly: AssemblyTitle\s*\(\s*"\s*([^"]+)\s*"\s*\)</Pattern>
<AssemblyTitle>$([System.Text.RegularExpressions.Regex]::Match($(In), $(Pattern), System.Text.RegularExpressions.RegexOptions.Multiline).Groups[1].Value)</AssemblyTitle>
</PropertyGroup>
<!-- Only download a new copy of nuget.exe if we don't have a copy available -->
<PropertyGroup>
<NugetPath>nuget.exe</NugetPath>
<IsSigned></IsSigned>
<IsSigned Condition=" '$(SignType)' == '' Or '$(SignType)' == '*Undefined*' ">-unsigned</IsSigned>
<NugetWorkDir>$(OutputPath.TrimEnd('\'))</NugetWorkDir>
</PropertyGroup>
<PropertyGroup Condition="!Exists($(NugetPath))">
<NugetPath>..\..\packages\NuGet.CommandLine.4.6.2\tools\NuGet.exe</NugetPath>
</PropertyGroup>
<Exec Command="&quot;$(NugetPath)&quot; pack &quot;$(ProjectDir)\VisualStudioTeamServices.Authentication.nuspec&quot; -BasePath &quot;$(NugetWorkDir)&quot; -IncludeReferencedProjects -Properties Configuration=&quot;$(Configuration)&quot;;Version=&quot;$(AssemblyVersion)$(IsSigned)&quot;;Id=&quot;$(AssemblyName)&quot;;Title=&quot;$(AssemblyTitle)&quot;;Description=&quot;$(AssemblyDescription)&quot; -OutputDirectory &quot;$(NugetWorkDir)&quot;" />
</Target>
<Target Name="CopyNupkgToOut" AfterTargets="BuildNupkg">
<ItemGroup>
<FilesToCopy Include="$(OutputPath)\*.nupkg" />
</ItemGroup>
<Copy SourceFiles="@(FilesToCopy)" DestinationFolder="$(SolutionDir)\Deploy" />
</Target>
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup> <PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup> </PropertyGroup>
<Error Condition="!Exists('..\..\packages\NuGet.CommandLine.4.6.2\tools\NuGet.exe')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\NuGet.CommandLine.4.6.2\tools\NuGet.exe'))" />
<Error Condition="!Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props'))" />
<Error Condition="!Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets'))" />
<Error Condition="!Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props'))" /> <Error Condition="!Exists('..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Microsoft.Net.Compilers.2.8.0\build\Microsoft.Net.Compilers.props'))" />
</Target> </Target>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Import Project="..\..\build.targets" /> <Import Project="..\..\build.targets" />
<Import Project="..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets" Condition="Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')" />
</Project> </Project>

Просмотреть файл

@ -1,7 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <packages>
<package id="MicroBuild.Core" version="0.3.0" targetFramework="net451" developmentDependency="true" />
<package id="Microsoft.IdentityModel.Clients.ActiveDirectory" version="3.19.4" targetFramework="net451" /> <package id="Microsoft.IdentityModel.Clients.ActiveDirectory" version="3.19.4" targetFramework="net451" />
<package id="Microsoft.Net.Compilers" version="2.8.0" targetFramework="net451" developmentDependency="true" /> <package id="Microsoft.Net.Compilers" version="2.8.0" targetFramework="net451" developmentDependency="true" />
<package id="NuGet.CommandLine" version="4.6.2" targetFramework="net451" developmentDependency="true" />
</packages> </packages>

Просмотреть файл

@ -24,6 +24,12 @@ phases:
restoreSolution: '$(Build.Solution)' restoreSolution: '$(Build.Solution)'
verbosityRestore: 'quiet' verbosityRestore: 'quiet'
- task: NuGetCommand@2
displayName: NuGet restore
inputs:
command: custom
arguments: restore '$(Build.SourcesDirectory)\$(Build.Target)' '-SolutionDirectory $(Build.SourcesDirectory)'
- ${{ parameters.MicrobuildSetup }} - ${{ parameters.MicrobuildSetup }}
- task: MSBuild@1 - task: MSBuild@1
@ -53,19 +59,19 @@ phases:
- task: PublishBuildArtifacts@1 - task: PublishBuildArtifacts@1
displayName: 'Publish Artifact: Binary Log' displayName: 'Publish Artifact: Binary Log'
continueOnError: true continueOnError: true
condition: and(succeeded(), eq(variables['system.pullrequest.isfork'], false)) condition: eq(variables['system.pullrequest.isfork'], false)
inputs: inputs:
pathtoPublish: '$(Build.SourcesDirectory)\gcmw-$(build.buildNumber).binlog' pathtoPublish: '$(Build.SourcesDirectory)\gcmw-$(build.buildNumber).binlog'
artifactName: '$(build.buildNumber).binlog' artifactName: '$(build.buildNumber).binlog'
publishLocation: Container publishLocation: Container
- task: PublishBuildArtifacts@1 - task: PublishBuildArtifacts@1
displayName: 'Publish Artifact: Deploy Folder' displayName: 'Publish Artifact: Binaries'
continueOnError: true continueOnError: true
condition: and(succeeded(), eq(variables['system.pullrequest.isfork'], false)) condition: and(succeeded(), eq(variables['system.pullrequest.isfork'], false))
inputs: inputs:
pathtoPublish: '$(Build.SourcesDirectory)\Deploy\' pathtoPublish: '$(Build.SourcesDirectory)\Deploy\'
artifactName: '$(Build.BuildNumber)-Artifacts' artifactName: '$(Build.BuildNumber).output'
publishLocation: Container publishLocation: Container
- task: DeleteFiles@1 - task: DeleteFiles@1