diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml
index def6482cd..8f85ae5d9 100644
--- a/eng/Version.Details.xml
+++ b/eng/Version.Details.xml
@@ -2,9 +2,9 @@
 <Dependencies>
   <ProductDependencies></ProductDependencies>
   <ToolsetDependencies>
-    <Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="1.0.0-beta.19154.14">
+    <Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="1.0.0-beta.19158.5">
       <Uri>https://github.com/dotnet/arcade</Uri>
-      <Sha>827c7896f8aa902136ad9dc68cb46147a43cd383</Sha>
+      <Sha>6f0a12a38fec78c48c406cd4d220b224e9c4dfb6</Sha>
     </Dependency>
   </ToolsetDependencies>
 </Dependencies>
diff --git a/eng/common/PublishToPackageFeed.proj b/eng/common/PublishToPackageFeed.proj
index 8149e3fb6..b26d28a90 100644
--- a/eng/common/PublishToPackageFeed.proj
+++ b/eng/common/PublishToPackageFeed.proj
@@ -11,7 +11,6 @@
   </PropertyGroup>
 
   <Import Project="$(MSBuildThisFileDirectory)DefaultVersions.props" Condition="Exists('$(MSBuildThisFileDirectory)DefaultVersions.props')" />
-  <Import Project="$(MSBuildThisFileDirectory)Versions.props" Condition="Exists('$(MSBuildThisFileDirectory)Versions.props')" />
   
   <Import Project="$(NuGetPackageRoot)microsoft.dotnet.build.tasks.feed\$(MicrosoftDotNetBuildTasksFeedVersion)\build\Microsoft.DotNet.Build.Tasks.Feed.targets" />
 
diff --git a/eng/common/build.sh b/eng/common/build.sh
index 0227c6e1e..40b1e8ec7 100644
--- a/eng/common/build.sh
+++ b/eng/common/build.sh
@@ -137,13 +137,16 @@ while [[ $# > 0 ]]; do
       node_reuse=$2
       shift
       ;;
-    /p:*)
+    -p:*|/p:*)
       properties="$properties $1"
       ;;
-    /m:*)
+    -m:*|/m:*)
       properties="$properties $1"
       ;;
-    /bl:*)
+    -bl:*|/bl:*)
+      properties="$properties $1"
+      ;;
+    -dl:*|/dl:*)
       properties="$properties $1"
       ;;
     *)
diff --git a/eng/common/generate-graph-files.ps1 b/eng/common/generate-graph-files.ps1
new file mode 100644
index 000000000..c04c80e4f
--- /dev/null
+++ b/eng/common/generate-graph-files.ps1
@@ -0,0 +1,61 @@
+Param(
+  [Parameter(Mandatory=$true)][string] $barToken,       # Token generated at https://maestro-prod.westus2.cloudapp.azure.com/Account/Tokens
+  [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
+  [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
+)
+
+$ErrorActionPreference = "Stop"
+. $PSScriptRoot\tools.ps1
+
+function CheckExitCode ([string]$stage)
+{
+  $exitCode = $LASTEXITCODE
+  if ($exitCode  -ne 0) {
+    Write-Host "Something failed in stage: '$stage'. Check for errors above. Exiting now..."
+    ExitWithExitCode $exitCode
+  }
+}
+
+try {
+  Push-Location $PSScriptRoot
+    
+  Write-Host "Installing darc..."
+  . .\darc-init.ps1 -darcVersion $darcVersion
+  CheckExitCode "Running darc-init"
+
+  $darcExe = "$env:USERPROFILE\.dotnet\tools"
+  $darcExe = Resolve-Path "$darcExe\darc.exe"
+  
+  Create-Directory $outputFolder
+  
+  $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"
+  
+  if ($includeToolset) {
+    Write-Host "Toolsets will be included in the graph..."
+    $options += " --include-toolset"
+  }
+
+  Write-Host "Generating dependency graph..."
+  $darc = Invoke-Expression "& `"$darcExe`" $options"
+  CheckExitCode "Generating dependency graph"
+  
+  $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!"
+}
+catch {
+  if (!$includeToolset) {
+    Write-Host "This might be a toolset repo which includes only toolset dependencies. " -NoNewline -ForegroundColor Yellow
+    Write-Host "Since -includeToolset is not set there is no graph to create. Include -includeToolset and try again..." -ForegroundColor Yellow
+  }
+  Write-Host $_
+  Write-Host $_.Exception
+  Write-Host $_.ScriptStackTrace
+  ExitWithExitCode 1
+}
\ No newline at end of file
diff --git a/eng/common/templates/job/job.yml b/eng/common/templates/job/job.yml
index cd4e5731a..74dd81fdc 100644
--- a/eng/common/templates/job/job.yml
+++ b/eng/common/templates/job/job.yml
@@ -179,7 +179,7 @@ jobs:
       continueOnError: true
       condition: always()
     
-  - ${{ if and(eq(parameters.enablePublishBuildAssets, true), eq(parameters.runAsPublic, 'false'), ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
+  - ${{ if and(eq(parameters.enablePublishBuildAssets, true), ne(variables['_PublishUsingPipelines'], 'true'), eq(parameters.runAsPublic, 'false'), ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
     - task: CopyFiles@2
       displayName: Gather Asset Manifests
       inputs:
@@ -194,4 +194,4 @@ jobs:
         PublishLocation: Container
         ArtifactName: AssetManifests
       continueOnError: ${{ parameters.continueOnError }}
-      condition: and(succeeded(), eq(variables['_DotNetPublishToBlobFeed'], 'true'))
\ No newline at end of file
+      condition: and(succeeded(), eq(variables['_DotNetPublishToBlobFeed'], 'true'))
diff --git a/eng/common/templates/steps/send-to-helix.yml b/eng/common/templates/steps/send-to-helix.yml
index 38e143818..0925e8ebd 100644
--- a/eng/common/templates/steps/send-to-helix.yml
+++ b/eng/common/templates/steps/send-to-helix.yml
@@ -51,6 +51,7 @@ steps:
       EnableXUnitReporter: ${{ parameters.EnableXUnitReporter }}
       WaitForWorkItemCompletion: ${{ parameters.WaitForWorkItemCompletion }}
       Creator: ${{ parameters.Creator }}
+      SYSTEM_ACCESSTOKEN: $(System.AccessToken)
     condition: and(${{ parameters.condition }}, eq(variables['Agent.Os'], 'Windows_NT'))
     continueOnError: ${{ parameters.continueOnError }}
   - script: $BUILD_SOURCESDIRECTORY/eng/common/msbuild.sh $BUILD_SOURCESDIRECTORY/eng/common/helixpublish.proj /restore /t:Test /bl:$BUILD_SOURCESDIRECTORY/artifacts/log/$BuildConfig/SendToHelix.binlog
@@ -78,5 +79,6 @@ steps:
       EnableXUnitReporter: ${{ parameters.EnableXUnitReporter }}
       WaitForWorkItemCompletion: ${{ parameters.WaitForWorkItemCompletion }}
       Creator: ${{ parameters.Creator }}
+      SYSTEM_ACCESSTOKEN: $(System.AccessToken)
     condition: and(${{ parameters.condition }}, ne(variables['Agent.Os'], 'Windows_NT'))
-    continueOnError: ${{ parameters.continueOnError }}
+    continueOnError: ${{ parameters.continueOnError }}
\ No newline at end of file
diff --git a/global.json b/global.json
index 138441ec7..17581afac 100644
--- a/global.json
+++ b/global.json
@@ -7,6 +7,6 @@
     "xcopy-msbuild": "15.9.0-alpha"
   },
   "msbuild-sdks": {
-    "Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.19154.14"
+    "Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.19158.5"
   }
 }