summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordotnet-maestro <@dotnet-maestro>2019-03-21 12:28:20 +0000
committerdotnet-maestro <@dotnet-maestro>2019-03-21 12:28:20 +0000
commit948c56a5adb1acaea79259c024e1bc4ffbb11c19 (patch)
tree09349deaa031b98c1a72316516ae67caecf04db4
parentfbe0c7795effcd490984ebc4a07723dea6e1367e (diff)
downloadcoreclr-948c56a5adb1acaea79259c024e1bc4ffbb11c19.tar.gz
coreclr-948c56a5adb1acaea79259c024e1bc4ffbb11c19.tar.bz2
coreclr-948c56a5adb1acaea79259c024e1bc4ffbb11c19.zip
Update dependencies from https://github.com/dotnet/arcade build 20190320.2
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19170.2 - Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19170.2
-rw-r--r--eng/Version.Details.xml8
-rw-r--r--eng/common/generate-graph-files.ps146
-rw-r--r--eng/common/templates/job/publish-build-assets.yml5
-rw-r--r--eng/common/templates/jobs/jobs.yml4
-rw-r--r--eng/common/templates/steps/send-to-helix.yml3
-rw-r--r--global.json4
6 files changed, 53 insertions, 17 deletions
diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml
index a32401b8d1..ae9f21253a 100644
--- a/eng/Version.Details.xml
+++ b/eng/Version.Details.xml
@@ -3,13 +3,13 @@
<ProductDependencies>
</ProductDependencies>
<ToolsetDependencies>
- <Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="1.0.0-beta.19167.10">
+ <Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="1.0.0-beta.19170.2">
<Uri>https://github.com/dotnet/arcade</Uri>
- <Sha>de7be3ba62b92e5c48c36876c851a14f154444af</Sha>
+ <Sha>f70fa34786cff993625a4548ae0125335eabe82e</Sha>
</Dependency>
- <Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="2.0.0-beta.19167.10">
+ <Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="2.0.0-beta.19170.2">
<Uri>https://github.com/dotnet/arcade</Uri>
- <Sha>de7be3ba62b92e5c48c36876c851a14f154444af</Sha>
+ <Sha>f70fa34786cff993625a4548ae0125335eabe82e</Sha>
</Dependency>
<Dependency Name="Microsoft.Private.CoreFx.NETCoreApp" Version="4.6.0-preview4.19164.7">
<Uri>https://github.com/dotnet/corefx</Uri>
diff --git a/eng/common/generate-graph-files.ps1 b/eng/common/generate-graph-files.ps1
index e09c64e9f6..76f57076a3 100644
--- a/eng/common/generate-graph-files.ps1
+++ b/eng/common/generate-graph-files.ps1
@@ -3,7 +3,8 @@ Param(
[Parameter(Mandatory=$true)][string] $gitHubPat, # GitHub personal access token from https://github.com/settings/tokens (no auth scopes needed)
[Parameter(Mandatory=$true)][string] $azdoPat, # Azure Dev Ops tokens from https://dev.azure.com/dnceng/_details/security/tokens (code read scope needed)
[Parameter(Mandatory=$true)][string] $outputFolder, # Where the graphviz.txt file will be created
- [string] $darcVersion = '1.1.0-beta.19156.4', # darc's version
+ [string] $darcVersion = '1.1.0-beta.19169.5', # darc's version
+ [string] $graphvizVersion = '2.38', # GraphViz version
[switch] $includeToolset # Whether the graph should include toolset dependencies or not. i.e. arcade, optimization. For more about
# toolset dependencies see https://github.com/dotnet/arcade/blob/master/Documentation/Darc.md#toolset-vs-product-dependencies
)
@@ -11,6 +12,8 @@ Param(
$ErrorActionPreference = "Stop"
. $PSScriptRoot\tools.ps1
+Import-Module -Name (Join-Path $PSScriptRoot "native\CommonLibrary.psm1")
+
function CheckExitCode ([string]$stage)
{
$exitCode = $LASTEXITCODE
@@ -27,27 +30,48 @@ try {
. .\darc-init.ps1 -darcVersion $darcVersion
CheckExitCode "Running darc-init"
+ $engCommonBaseDir = Join-Path $PSScriptRoot "native\"
+ $graphvizInstallDir = CommonLibrary\Get-NativeInstallDirectory
+ $nativeToolBaseUri = "https://netcorenativeassets.blob.core.windows.net/resource-packages/external"
+ $installBin = Join-Path $graphvizInstallDir "bin"
+
+ Write-Host "Installing dot..."
+ .\native\install-tool.ps1 -ToolName graphviz -InstallPath $installBin -BaseUri $nativeToolBaseUri -CommonLibraryDirectory $engCommonBaseDir -Version $graphvizVersion -Verbose
+
$darcExe = "$env:USERPROFILE\.dotnet\tools"
$darcExe = Resolve-Path "$darcExe\darc.exe"
Create-Directory $outputFolder
+ # Generate 3 graph descriptions:
+ # 1. Flat with coherency information
+ # 2. Graphviz (dot) file
+ # 3. Standard dependency graph
$graphVizFilePath = "$outputFolder\graphviz.txt"
- $graphFilePath = "$outputFolder\graph.txt"
- $options = "get-dependency-graph --graphviz '$graphVizFilePath' --github-pat $gitHubPat --azdev-pat $azdoPat --password $barToken --output-file $graphFilePath"
+ $graphVizImageFilePath = "$outputFolder\graph.png"
+ $normalGraphFilePath = "$outputFolder\graph-full.txt"
+ $flatGraphFilePath = "$outputFolder\graph-flat.txt"
+ $baseOptions = "get-dependency-graph --github-pat $gitHubPat --azdev-pat $azdoPat --password $barToken"
if ($includeToolset) {
Write-Host "Toolsets will be included in the graph..."
- $options += " --include-toolset"
+ $baseOptions += " --include-toolset"
}
- Write-Host "Generating dependency graph..."
- Invoke-Expression "& `"$darcExe`" $options"
- CheckExitCode "Generating dependency graph"
+ Write-Host "Generating standard dependency graph..."
+ Invoke-Expression "& `"$darcExe`" $baseOptions --output-file $normalGraphFilePath"
+ CheckExitCode "Generating normal dependency graph"
+
+ Write-Host "Generating flat dependency graph and graphviz file..."
+ Invoke-Expression "& `"$darcExe`" $baseOptions --flat --coherency --graphviz $graphVizFilePath --output-file $flatGraphFilePath"
+ CheckExitCode "Generating flat and graphviz dependency graph"
+
+ Write-Host "Generating graph image $graphVizFilePath"
+ $dotFilePath = Join-Path $installBin "graphviz\$graphvizVersion\release\bin\dot.exe"
+ Invoke-Expression "& `"$dotFilePath`" -Tpng -o'$graphVizImageFilePath' `"$graphVizFilePath`""
+ CheckExitCode "Generating graphviz image"
- $graph = Get-Content $graphVizFilePath
- Set-Content $graphVizFilePath -Value "Paste the following digraph object in http://www.webgraphviz.com `r`n", $graph
- Write-Host "'$graphVizFilePath' and '$graphFilePath' created!"
+ Write-Host "'$graphVizFilePath', '$flatGraphFilePath', '$normalGraphFilePath' and '$graphVizImageFilePath' created!"
}
catch {
if (!$includeToolset) {
@@ -58,4 +82,6 @@ catch {
Write-Host $_.Exception
Write-Host $_.ScriptStackTrace
ExitWithExitCode 1
+} finally {
+ Pop-Location
} \ No newline at end of file
diff --git a/eng/common/templates/job/publish-build-assets.yml b/eng/common/templates/job/publish-build-assets.yml
index 83646c6438..620bd3c62e 100644
--- a/eng/common/templates/job/publish-build-assets.yml
+++ b/eng/common/templates/job/publish-build-assets.yml
@@ -20,6 +20,9 @@ parameters:
# if 'true', the build won't run any of the internal only steps, even if it is running in non-public projects.
runAsPublic: false
+ # Optional: whether the build's artifacts will be published using release pipelines or direct feed publishing
+ publishUsingPipelines: false
+
jobs:
- job: Asset_Registry_Publish
@@ -52,7 +55,7 @@ jobs:
/p:ManifestsPath='$(Build.StagingDirectory)/Download/AssetManifests'
/p:BuildAssetRegistryToken=$(MaestroAccessToken)
/p:MaestroApiEndpoint=https://maestro-prod.westus2.cloudapp.azure.com
- /p:PublishUsingPipelines=$(_PublishUsingPipelines)
+ /p:PublishUsingPipelines=${{ parameters.publishUsingPipelines }}
/p:Configuration=$(_BuildConfig)
condition: ${{ parameters.condition }}
continueOnError: ${{ parameters.continueOnError }}
diff --git a/eng/common/templates/jobs/jobs.yml b/eng/common/templates/jobs/jobs.yml
index 06ed58de41..6a2f98c036 100644
--- a/eng/common/templates/jobs/jobs.yml
+++ b/eng/common/templates/jobs/jobs.yml
@@ -13,6 +13,9 @@ parameters:
# Optional: Enable publishing to the build asset registry
enablePublishBuildAssets: false
+
+ # Optional: Enable publishing using release pipelines
+ enablePublishUsingPipelines: false
graphFileGeneration:
# Optional: Enable generating the graph files at the end of the build
@@ -73,6 +76,7 @@ jobs:
pool:
vmImage: vs2017-win2016
runAsPublic: ${{ parameters.runAsPublic }}
+ publishUsingPipelines: ${{ parameters.enablePublishUsingPipelines }}
enablePublishBuildArtifacts: ${{ parameters.enablePublishBuildArtifacts }}
- ${{ if and(eq(parameters.graphFileGeneration.enabled, true), eq(parameters.runAsPublic, 'false'), ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
diff --git a/eng/common/templates/steps/send-to-helix.yml b/eng/common/templates/steps/send-to-helix.yml
index 45d63fbc38..0187597681 100644
--- a/eng/common/templates/steps/send-to-helix.yml
+++ b/eng/common/templates/steps/send-to-helix.yml
@@ -11,6 +11,7 @@ parameters:
WorkItemTimeout: '' # optional -- a timeout in seconds for the work item command; requires WorkItemDirectory; incompatible with XUnitProjects
CorrelationPayloadDirectory: '' # optional -- a directory to zip up and send to Helix as a correlation payload
XUnitProjects: '' # optional -- semicolon delimited list of XUnitProjects to parse and send to Helix; requires XUnitRuntimeTargetFramework, XUnitPublishTargetFramework, XUnitRunnerVersion, and IncludeDotNetCli=true
+ XUnitWorkItemTimeout: '' # optional -- the workitem timeout in seconds for all workitems created from the xUnit projects specified by XUnitProjects
XUnitPublishTargetFramework: '' # optional -- framework to use to publish your xUnit projects
XUnitRuntimeTargetFramework: '' # optional -- framework to use for the xUnit console runner
XUnitRunnerVersion: '' # optional -- version of the xUnit nuget package you wish to use on Helix; required for XUnitProjects
@@ -42,6 +43,7 @@ steps:
WorkItemTimeout: ${{ parameters.WorkItemTimeout }}
CorrelationPayloadDirectory: ${{ parameters.CorrelationPayloadDirectory }}
XUnitProjects: ${{ parameters.XUnitProjects }}
+ XUnitWorkItemTimeout: ${{ parameters.XUnitWorkItemTimeout }}
XUnitPublishTargetFramework: ${{ parameters.XUnitPublishTargetFramework }}
XUnitRuntimeTargetFramework: ${{ parameters.XUnitRuntimeTargetFramework }}
XUnitRunnerVersion: ${{ parameters.XUnitRunnerVersion }}
@@ -70,6 +72,7 @@ steps:
WorkItemTimeout: ${{ parameters.WorkItemTimeout }}
CorrelationPayloadDirectory: ${{ parameters.CorrelationPayloadDirectory }}
XUnitProjects: ${{ parameters.XUnitProjects }}
+ XUnitWorkItemTimeout: ${{ parameters.XUnitWorkItemTimeout }}
XUnitPublishTargetFramework: ${{ parameters.XUnitPublishTargetFramework }}
XUnitRuntimeTargetFramework: ${{ parameters.XUnitRuntimeTargetFramework }}
XUnitRunnerVersion: ${{ parameters.XUnitRunnerVersion }}
diff --git a/global.json b/global.json
index 74eeacf969..1fd361f19c 100644
--- a/global.json
+++ b/global.json
@@ -7,7 +7,7 @@
"python": "2.7.15"
},
"msbuild-sdks": {
- "Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.19167.10",
- "Microsoft.DotNet.Helix.Sdk": "2.0.0-beta.19167.10"
+ "Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.19170.2",
+ "Microsoft.DotNet.Helix.Sdk": "2.0.0-beta.19170.2"
}
}