83 lines
3.2 KiB
XML
83 lines
3.2 KiB
XML
<Project>
|
|
<Import Project="$(_BuildGraphFile)" />
|
|
|
|
<Target Name="BuildRepositories">
|
|
<ItemGroup>
|
|
<BatchedRepository Include="$(MSBuildProjectFullPath)">
|
|
<AdditionalProperties>
|
|
RepositoryToBuild=%(RepositoryToBuildInOrder.Identity);
|
|
BuildRepositoryRoot=$(_CloneRepositoryRoot)%(RepositoryToBuildInOrder.Identity)\
|
|
</AdditionalProperties>
|
|
<BuildGroup>%(RepositoryToBuildInOrder.Order)</BuildGroup>
|
|
</BatchedRepository>
|
|
</ItemGroup>
|
|
|
|
<PropertyGroup>
|
|
<BatchBuilds Condition="$(BuildInParallel) AND '$(CompileOnly)'=='true'">true</BatchBuilds>
|
|
<BatchBuilds Condition="'$(BatchBuilds)'==''">false</BatchBuilds>
|
|
</PropertyGroup>
|
|
|
|
<MSBuild
|
|
Projects="@(BatchedRepository)"
|
|
BuildInParallel="$(BatchBuilds)"
|
|
Targets="_BuildRepository"
|
|
Properties="BuildGroup=%(BatchedRepository.BuildGroup)" />
|
|
</Target>
|
|
|
|
<Target Name="_BuildRepository" DependsOnTargets="_PinVersions">
|
|
<PropertyGroup>
|
|
<RepositoryKoreBuildDirectory>$(BuildRepositoryRoot).build\</RepositoryKoreBuildDirectory>
|
|
<RepositoryArtifactsDirectory>$(BuildRepositoryRoot)artifacts\build\</RepositoryArtifactsDirectory>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<KoreBuildFiles Include="$(KoreBuildDirectory)**\*" />
|
|
</ItemGroup>
|
|
|
|
<Message Text="============ Building $(RepositoryToBuild) ============" Importance="High" />
|
|
<Copy SourceFiles="@(KoreBuildFiles)" DestinationFolder="$(RepositoryKoreBuildDirectory)%(RecursiveDir)" />
|
|
|
|
<ItemGroup>
|
|
<RepositoryKoreBuildProject Include="$(RepositoryKoreBuildDirectory)$(KoreBuildProject)">
|
|
<AdditionalProperties>
|
|
RepositoryRoot=$(BuildRepositoryRoot);
|
|
BuildNumber=$(BuildNumber);
|
|
Configuration=$(Configuration)
|
|
</AdditionalProperties>
|
|
</RepositoryKoreBuildProject>
|
|
</ItemGroup>
|
|
|
|
<MSBuild
|
|
Projects="@(RepositoryKoreBuildProject)"
|
|
Targets="Restore"
|
|
Properties="PreflightRestore=true" />
|
|
|
|
<MSBuild
|
|
Projects="@(RepositoryKoreBuildProject)"
|
|
Targets="$(_RepositoryBuildTargets)" />
|
|
|
|
<ItemGroup>
|
|
<RepositoryArtifacts Include="$(RepositoryArtifactsDirectory)*" />
|
|
</ItemGroup>
|
|
|
|
<Copy
|
|
SourceFiles="@(RepositoryArtifacts)"
|
|
DestinationFolder="$(UniverseBuildDir)" />
|
|
|
|
<Exec
|
|
Command="$(DotNetPath) nuget push "%(RepositoryArtifacts.Identity)" -s $(NuGetPublishVolatileFeed) -k $(APIKEY)"
|
|
Condition="'$(PublishPackages)'=='true' AND '%(RepositoryArtifacts.Extension)'=='.nupkg'" />
|
|
|
|
<Message Text="============ Done building $(RepositoryToBuild) ============" Importance="High" />
|
|
</Target>
|
|
|
|
<Target Name="_PinVersions">
|
|
<PropertyGroup>
|
|
<PinToolBinary>$(RepositoryRoot)tools\PinVersions\bin\$(Configuration)\netcoreapp1.1\PinVersions.dll</PinToolBinary>
|
|
<PinVersionArgs>$(DotNetPath) $(PinToolBinary) --graph-specs-root "$(_RestoreGraphSpecsDirectory) " -s "$(UniverseBuildDir) " "$(BuildRepositoryRoot) "</PinVersionArgs>
|
|
<PinVersionArgs Condition="Exists('$(_DependencyPackagesDirectory)')">$(PinVersionArgs) -s "$(_DependencyPackagesDirectory) "</PinVersionArgs>
|
|
</PropertyGroup>
|
|
|
|
<Exec Command="$(PinVersionArgs)" />
|
|
</Target>
|
|
</Project> |