Merge branch 'main' into crossy-road

This commit is contained in:
Jo Shields 2024-02-07 10:04:21 -05:00 committed by GitHub
commit 6fe6a29516
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
17 changed files with 103 additions and 123 deletions

View file

@ -10,9 +10,7 @@
<Target Name="ConfigureInnerBuildArg" BeforeTargets="GetSourceBuildCommandConfiguration"> <Target Name="ConfigureInnerBuildArg" BeforeTargets="GetSourceBuildCommandConfiguration">
<PropertyGroup> <PropertyGroup>
<InnerBuildArgs>$(InnerBuildArgs) /p:SkipBuildingInstallers=true</InnerBuildArgs> <InnerBuildArgs>$(InnerBuildArgs) /p:SkipBuildingInstallers=true</InnerBuildArgs>
<InnerBuildArgs>$(InnerBuildArgs) /p:IncludeNuGetPackageArchive=false</InnerBuildArgs>
<InnerBuildArgs>$(InnerBuildArgs) /p:IncludeAdditionalSharedFrameworks=false</InnerBuildArgs> <InnerBuildArgs>$(InnerBuildArgs) /p:IncludeAdditionalSharedFrameworks=false</InnerBuildArgs>
<InnerBuildArgs>$(InnerBuildArgs) /p:IncludeSharedFrameworksForBackwardsCompatibilityTests=false</InnerBuildArgs>
<InnerBuildArgs Condition="'$(SourceBuildUseMonoRuntime)' == 'true'">$(InnerBuildArgs) /p:DISABLE_CROSSGEN=true</InnerBuildArgs> <InnerBuildArgs Condition="'$(SourceBuildUseMonoRuntime)' == 'true'">$(InnerBuildArgs) /p:DISABLE_CROSSGEN=true</InnerBuildArgs>
</PropertyGroup> </PropertyGroup>
</Target> </Target>

View file

@ -129,18 +129,18 @@
<Uri>https://github.com/dotnet/test-templates</Uri> <Uri>https://github.com/dotnet/test-templates</Uri>
<Sha>becc4bd157cd6608b51a5ffe414a5d2de6330272</Sha> <Sha>becc4bd157cd6608b51a5ffe414a5d2de6330272</Sha>
</Dependency> </Dependency>
<Dependency Name="Microsoft.DotNet.Test.ProjectTemplates.8.0" Version="1.1.0-rc.24081.1"> <Dependency Name="Microsoft.DotNet.Test.ProjectTemplates.8.0" Version="1.1.0-rc.24105.4">
<Uri>https://github.com/dotnet/test-templates</Uri> <Uri>https://github.com/dotnet/test-templates</Uri>
<Sha>4486ff28949aa10726517ddf7ecabedc2a7e1ceb</Sha> <Sha>5f1d6326de00be62fc7f3e309c6f344520d1a4e9</Sha>
</Dependency> </Dependency>
<Dependency Name="Microsoft.DotNet.Test.ProjectTemplates.9.0" Version="1.1.0-rc.24081.1"> <Dependency Name="Microsoft.DotNet.Test.ProjectTemplates.9.0" Version="1.1.0-rc.24105.4">
<Uri>https://github.com/dotnet/test-templates</Uri> <Uri>https://github.com/dotnet/test-templates</Uri>
<Sha>4486ff28949aa10726517ddf7ecabedc2a7e1ceb</Sha> <Sha>5f1d6326de00be62fc7f3e309c6f344520d1a4e9</Sha>
</Dependency> </Dependency>
<!-- Intermediate is necessary for source build. --> <!-- Intermediate is necessary for source build. -->
<Dependency Name="Microsoft.SourceBuild.Intermediate.test-templates" Version="1.1.0-rc.24081.1"> <Dependency Name="Microsoft.SourceBuild.Intermediate.test-templates" Version="1.1.0-rc.24105.4">
<Uri>https://github.com/dotnet/test-templates</Uri> <Uri>https://github.com/dotnet/test-templates</Uri>
<Sha>4486ff28949aa10726517ddf7ecabedc2a7e1ceb</Sha> <Sha>5f1d6326de00be62fc7f3e309c6f344520d1a4e9</Sha>
<SourceBuild RepoName="test-templates" ManagedOnly="true" /> <SourceBuild RepoName="test-templates" ManagedOnly="true" />
</Dependency> </Dependency>
<!-- For coherency purposes, these versions should be gated by the versions of winforms and wpf routed via windowsdesktop --> <!-- For coherency purposes, these versions should be gated by the versions of winforms and wpf routed via windowsdesktop -->
@ -226,9 +226,9 @@
<SourceBuild RepoName="deployment-tools" ManagedOnly="true" /> <SourceBuild RepoName="deployment-tools" ManagedOnly="true" />
</Dependency> </Dependency>
<!-- Intermediate is necessary for source build. --> <!-- Intermediate is necessary for source build. -->
<Dependency Name="Microsoft.SourceBuild.Intermediate.source-build-externals" Version="9.0.0-alpha.1.24101.1"> <Dependency Name="Microsoft.SourceBuild.Intermediate.source-build-externals" Version="9.0.0-alpha.1.24105.2">
<Uri>https://github.com/dotnet/source-build-externals</Uri> <Uri>https://github.com/dotnet/source-build-externals</Uri>
<Sha>949db2fd23b687c0d545e954943feada8b361ed6</Sha> <Sha>2c52f66055a098987321c8fe96472679661c4071</Sha>
<SourceBuild RepoName="source-build-externals" ManagedOnly="true" /> <SourceBuild RepoName="source-build-externals" ManagedOnly="true" />
</Dependency> </Dependency>
<Dependency Name="System.CommandLine" Version="2.0.0-beta4.24068.1" CoherentParentDependency="Microsoft.NET.Sdk"> <Dependency Name="System.CommandLine" Version="2.0.0-beta4.24068.1" CoherentParentDependency="Microsoft.NET.Sdk">
@ -243,17 +243,17 @@
</Dependency> </Dependency>
</ProductDependencies> </ProductDependencies>
<ToolsetDependencies> <ToolsetDependencies>
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="9.0.0-beta.24102.4"> <Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="9.0.0-beta.24105.3">
<Uri>https://github.com/dotnet/arcade</Uri> <Uri>https://github.com/dotnet/arcade</Uri>
<Sha>2fb543a45580400a559b5ae41c96a815ea14dac5</Sha> <Sha>8cfc9489d3e51071fedec9dcb99071dc912718bd</Sha>
</Dependency> </Dependency>
<Dependency Name="Microsoft.DotNet.CMake.Sdk" Version="9.0.0-beta.24102.4"> <Dependency Name="Microsoft.DotNet.CMake.Sdk" Version="9.0.0-beta.24105.3">
<Uri>https://github.com/dotnet/arcade</Uri> <Uri>https://github.com/dotnet/arcade</Uri>
<Sha>2fb543a45580400a559b5ae41c96a815ea14dac5</Sha> <Sha>8cfc9489d3e51071fedec9dcb99071dc912718bd</Sha>
</Dependency> </Dependency>
<Dependency Name="Microsoft.DotNet.Build.Tasks.Installers" Version="9.0.0-beta.24102.4"> <Dependency Name="Microsoft.DotNet.Build.Tasks.Installers" Version="9.0.0-beta.24105.3">
<Uri>https://github.com/dotnet/arcade</Uri> <Uri>https://github.com/dotnet/arcade</Uri>
<Sha>2fb543a45580400a559b5ae41c96a815ea14dac5</Sha> <Sha>8cfc9489d3e51071fedec9dcb99071dc912718bd</Sha>
</Dependency> </Dependency>
<Dependency Name="Microsoft.DotNet.Darc" Version="1.1.0-beta.24080.1"> <Dependency Name="Microsoft.DotNet.Darc" Version="1.1.0-beta.24080.1">
<Uri>https://github.com/dotnet/arcade-services</Uri> <Uri>https://github.com/dotnet/arcade-services</Uri>
@ -263,14 +263,14 @@
<Uri>https://github.com/dotnet/arcade-services</Uri> <Uri>https://github.com/dotnet/arcade-services</Uri>
<Sha>749beebfd890571ce6f3fe8f557cb3cad070c946</Sha> <Sha>749beebfd890571ce6f3fe8f557cb3cad070c946</Sha>
</Dependency> </Dependency>
<Dependency Name="Microsoft.DotNet.XliffTasks" Version="9.0.0-beta.24102.4"> <Dependency Name="Microsoft.DotNet.XliffTasks" Version="9.0.0-beta.24105.3">
<Uri>https://github.com/dotnet/arcade</Uri> <Uri>https://github.com/dotnet/arcade</Uri>
<Sha>2fb543a45580400a559b5ae41c96a815ea14dac5</Sha> <Sha>8cfc9489d3e51071fedec9dcb99071dc912718bd</Sha>
</Dependency> </Dependency>
<!-- Intermediate is necessary for source build. --> <!-- Intermediate is necessary for source build. -->
<Dependency Name="Microsoft.SourceBuild.Intermediate.arcade" Version="9.0.0-beta.24102.4"> <Dependency Name="Microsoft.SourceBuild.Intermediate.arcade" Version="9.0.0-beta.24105.3">
<Uri>https://github.com/dotnet/arcade</Uri> <Uri>https://github.com/dotnet/arcade</Uri>
<Sha>2fb543a45580400a559b5ae41c96a815ea14dac5</Sha> <Sha>8cfc9489d3e51071fedec9dcb99071dc912718bd</Sha>
<SourceBuild RepoName="arcade" ManagedOnly="true" /> <SourceBuild RepoName="arcade" ManagedOnly="true" />
</Dependency> </Dependency>
<Dependency Name="Microsoft.Extensions.Logging.Console" Version="9.0.0-alpha.1.23612.13"> <Dependency Name="Microsoft.Extensions.Logging.Console" Version="9.0.0-alpha.1.23612.13">

View file

@ -40,7 +40,7 @@
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<!-- Dependency from https://github.com/dotnet/arcade --> <!-- Dependency from https://github.com/dotnet/arcade -->
<MicrosoftDotNetBuildTasksInstallersPackageVersion>9.0.0-beta.24102.4</MicrosoftDotNetBuildTasksInstallersPackageVersion> <MicrosoftDotNetBuildTasksInstallersPackageVersion>9.0.0-beta.24105.3</MicrosoftDotNetBuildTasksInstallersPackageVersion>
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<!-- Dependency from https://github.com/dotnet/arcade-services --> <!-- Dependency from https://github.com/dotnet/arcade-services -->
@ -64,8 +64,8 @@
<!-- Supported versions --> <!-- Supported versions -->
<MicrosoftDotNetTestProjectTemplates60PackageVersion>1.1.0-rc.24069.1</MicrosoftDotNetTestProjectTemplates60PackageVersion> <MicrosoftDotNetTestProjectTemplates60PackageVersion>1.1.0-rc.24069.1</MicrosoftDotNetTestProjectTemplates60PackageVersion>
<MicrosoftDotNetTestProjectTemplates70PackageVersion>1.1.0-rc.24069.1</MicrosoftDotNetTestProjectTemplates70PackageVersion> <MicrosoftDotNetTestProjectTemplates70PackageVersion>1.1.0-rc.24069.1</MicrosoftDotNetTestProjectTemplates70PackageVersion>
<MicrosoftDotNetTestProjectTemplates80PackageVersion>1.1.0-rc.24081.1</MicrosoftDotNetTestProjectTemplates80PackageVersion> <MicrosoftDotNetTestProjectTemplates80PackageVersion>1.1.0-rc.24105.4</MicrosoftDotNetTestProjectTemplates80PackageVersion>
<MicrosoftDotNetTestProjectTemplates90PackageVersion>1.1.0-rc.24081.1</MicrosoftDotNetTestProjectTemplates90PackageVersion> <MicrosoftDotNetTestProjectTemplates90PackageVersion>1.1.0-rc.24105.4</MicrosoftDotNetTestProjectTemplates90PackageVersion>
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<!-- NUnit3.DotNetNew.Template versions do not 'flow in' --> <!-- NUnit3.DotNetNew.Template versions do not 'flow in' -->

View file

@ -83,10 +83,10 @@ jobs:
pool: pool:
${{ if eq(variables['System.TeamProject'], 'public') }}: ${{ if eq(variables['System.TeamProject'], 'public') }}:
name: $(DncEngPublicBuildPool) name: $(DncEngPublicBuildPool)
demands: ImageOverride -equals windows.vs2019.amd64.open demands: ImageOverride -equals windows.vs2022.amd64.open
${{ if eq(variables['System.TeamProject'], 'internal') }}: ${{ if eq(variables['System.TeamProject'], 'internal') }}:
name: $(DncEngInternalBuildPool) name: $(DncEngInternalBuildPool)
demands: ImageOverride -equals windows.vs2019.amd64 demands: ImageOverride -equals windows.vs2022.amd64
${{ if eq(parameters.agentOs, 'Linux') }}: ${{ if eq(parameters.agentOs, 'Linux') }}:
pool: pool:
${{ if eq(variables['System.TeamProject'], 'public') }}: ${{ if eq(variables['System.TeamProject'], 'public') }}:

View file

@ -35,6 +35,10 @@ fi
case "$CPUName" in case "$CPUName" in
arm64|aarch64) arm64|aarch64)
arch=arm64 arch=arm64
if [ "$(getconf LONG_BIT)" -lt 64 ]; then
# This is 32-bit OS running on 64-bit CPU (for example Raspberry Pi OS)
arch=arm
fi
;; ;;
loongarch64) loongarch64)

View file

@ -379,7 +379,7 @@ function InitializeVisualStudioMSBuild([bool]$install, [object]$vsRequirements =
# If the version of msbuild is going to be xcopied, # If the version of msbuild is going to be xcopied,
# use this version. Version matches a package here: # use this version. Version matches a package here:
# https://dev.azure.com/dnceng/public/_artifacts/feed/dotnet-eng/NuGet/RoslynTools.MSBuild/versions/17.8.5 # https://dev.azure.com/dnceng/public/_artifacts/feed/dotnet-eng/NuGet/Microsoft.DotNet.Arcade.MSBuild.Xcopy/versions/17.8.5
$defaultXCopyMSBuildVersion = '17.8.5' $defaultXCopyMSBuildVersion = '17.8.5'
if (!$vsRequirements) { if (!$vsRequirements) {
@ -445,7 +445,7 @@ function InitializeVisualStudioMSBuild([bool]$install, [object]$vsRequirements =
if ($xcopyMSBuildVersion.Trim() -ine "none") { if ($xcopyMSBuildVersion.Trim() -ine "none") {
$vsInstallDir = InitializeXCopyMSBuild $xcopyMSBuildVersion $install $vsInstallDir = InitializeXCopyMSBuild $xcopyMSBuildVersion $install
if ($vsInstallDir -eq $null) { if ($vsInstallDir -eq $null) {
throw "Could not xcopy msbuild. Please check that package 'RoslynTools.MSBuild @ $xcopyMSBuildVersion' exists on feed 'dotnet-eng'." throw "Could not xcopy msbuild. Please check that package 'Microsoft.DotNet.Arcade.MSBuild.Xcopy @ $xcopyMSBuildVersion' exists on feed 'dotnet-eng'."
} }
} }
if ($vsInstallDir -eq $null) { if ($vsInstallDir -eq $null) {
@ -482,7 +482,7 @@ function InstallXCopyMSBuild([string]$packageVersion) {
} }
function InitializeXCopyMSBuild([string]$packageVersion, [bool]$install) { function InitializeXCopyMSBuild([string]$packageVersion, [bool]$install) {
$packageName = 'RoslynTools.MSBuild' $packageName = 'Microsoft.DotNet.Arcade.MSBuild.Xcopy'
$packageDir = Join-Path $ToolsDir "msbuild\$packageVersion" $packageDir = Join-Path $ToolsDir "msbuild\$packageVersion"
$packagePath = Join-Path $packageDir "$packageName.$packageVersion.nupkg" $packagePath = Join-Path $packageDir "$packageName.$packageVersion.nupkg"

View file

@ -1,5 +1,5 @@
### This job builds https://github.com/dotnet/dotnet with given parameters ### This job builds https://github.com/dotnet/dotnet with given parameters
### If run in a PR, new changes are applied to a local copy of the VMR, then it is built and tested ### If run in an installer PR, new changes are applied to a local copy of the VMR, then it is built and tested
parameters: parameters:
- name: architecture - name: architecture
@ -19,10 +19,6 @@ parameters:
type: string type: string
default: '' default: ''
- name: isBuiltFromVmr
displayName: True when build is running from dotnet/dotnet directly
type: boolean
- name: pool - name: pool
type: object type: object
@ -34,15 +30,6 @@ parameters:
type: string type: string
default: '' default: ''
- name: vmrPath
type: string
default: $(Agent.BuildDirectory)/vmr
- name: vmrBranch
displayName: dotnet/dotnet branch to use
type: string
default: $(Build.SourceBranch)
#### SOURCE-ONLY parameters #### #### SOURCE-ONLY parameters ####
# Instead of building the VMR directly, exports the sources into a tarball and builds from that # Instead of building the VMR directly, exports the sources into a tarball and builds from that
@ -64,7 +51,7 @@ parameters:
default: false default: false
# Name of a previous job (from the same template as this) whose output will be used to build this job # Name of a previous job (from the same template as this) whose output will be used to build this job
# The SDK from its artifacts is copied to vmr/.dotnet # The SDK from its artifacts is copied to $(sourcesPath)/.dotnet
- name: reuseBuildArtifactsFrom - name: reuseBuildArtifactsFrom
type: string type: string
default: '' default: ''
@ -88,6 +75,16 @@ parameters:
type: boolean type: boolean
default: false default: false
#### INSTALLER parameters ####
- name: isBuiltFromVmr
displayName: True when build is running from dotnet/dotnet directly
type: boolean
- name: vmrBranch
displayName: dotnet/dotnet branch to use
type: string
jobs: jobs:
- job: ${{ parameters.buildName }}_${{ parameters.architecture }} - job: ${{ parameters.buildName }}_${{ parameters.architecture }}
timeoutInMinutes: 150 timeoutInMinutes: 150
@ -109,6 +106,13 @@ jobs:
- name: additionalBuildArgs - name: additionalBuildArgs
value: '' value: ''
- ${{ if parameters.isBuiltFromVmr }}:
- name: vmrPath
value: $(Build.SourcesDirectory)
- ${{ else }}:
- name: vmrPath
value: $(Agent.BuildDirectory)/vmr
# Location of the VMR sources # Location of the VMR sources
# We either build the repo directly, or we extract them outside (which is what partners do) # We either build the repo directly, or we extract them outside (which is what partners do)
- ${{ if parameters.buildFromArchive }}: - ${{ if parameters.buildFromArchive }}:
@ -116,31 +120,30 @@ jobs:
value: $(Build.StagingDirectory)/dotnet-sources/ value: $(Build.StagingDirectory)/dotnet-sources/
- ${{ else }}: - ${{ else }}:
- name: sourcesPath - name: sourcesPath
value: ${{ parameters.vmrPath }} value: $(vmrPath)
steps: steps:
- template: ../steps/vmr-prepare.yml - ${{ if not(parameters.isBuiltFromVmr) }}:
parameters: - template: ../steps/vmr-prepare.yml
${{ if eq(variables['Build.Reason'], 'PullRequest') }}:
vmrBranch: $(System.PullRequest.TargetBranch)
${{ else }}:
vmrBranch: ${{ parameters.vmrBranch }}
isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
skipComponentGovernanceDetection: true
# Synchronize new content in the VMR during PRs (we expect this to come
- ${{ if and(not(parameters.isBuiltFromVmr), eq(variables['Build.Reason'], 'PullRequest')) }}:
- template: ../steps/vmr-pull-updates.yml
parameters: parameters:
vmrPath: ${{ parameters.vmrPath }} ${{ if eq(variables['Build.Reason'], 'PullRequest') }}:
vmrBranch: ${{ parameters.vmrBranch }} vmrBranch: $(System.PullRequest.TargetBranch)
architecture: ${{ parameters.architecture }} ${{ else }}:
targetRef: $(Build.SourceVersion) # Synchronize the current installer commit vmrBranch: ${{ parameters.vmrBranch }}
# Synchronize new content in the VMR during PRs (we expect this to come
- ${{ if eq(variables['Build.Reason'], 'PullRequest') }}:
- template: ../steps/vmr-pull-updates.yml
parameters:
vmrPath: $(vmrPath)
vmrBranch: ${{ parameters.vmrBranch }}
targetRef: $(Build.SourceVersion) # Synchronize the current installer commit
architecture: ${{ parameters.architecture }}
- ${{ if parameters.buildFromArchive }}: - ${{ if parameters.buildFromArchive }}:
- script: | - script: |
set -ex set -ex
cp -r "${{ parameters.vmrPath }}" "$(sourcesPath)" cp -r "$(vmrPath)" "$(sourcesPath)"
rm -rf "$(sourcesPath)/.git" rm -rf "$(sourcesPath)/.git"
displayName: Export VMR sources displayName: Export VMR sources
workingDirectory: $(Build.StagingDirectory) workingDirectory: $(Build.StagingDirectory)
@ -170,7 +173,7 @@ jobs:
inputs: inputs:
SourceFolder: $(Pipeline.Workspace)/${{ parameters.reuseBuildArtifactsFrom }}_${{ parameters.architecture }}_Artifacts SourceFolder: $(Pipeline.Workspace)/${{ parameters.reuseBuildArtifactsFrom }}_${{ parameters.architecture }}_Artifacts
Contents: '*.tar.gz' Contents: '*.tar.gz'
TargetFolder: ${{ variables.sourcesPath }}/prereqs/packages/archive/ TargetFolder: $(sourcesPath)/prereqs/packages/archive/
- ${{ if eq(parameters.withPreviousSDK, 'true') }}: - ${{ if eq(parameters.withPreviousSDK, 'true') }}:
- script: | - script: |
@ -181,7 +184,7 @@ jobs:
exit 1 exit 1
fi fi
packageVersionsPath="${{ variables.sourcesPath }}/eng/Versions.props" packageVersionsPath="$(sourcesPath)/eng/Versions.props"
notFoundMessage="No source-built SDK found to download..." notFoundMessage="No source-built SDK found to download..."
echo "Looking for source-built SDK to download..." echo "Looking for source-built SDK to download..."
@ -256,7 +259,7 @@ jobs:
if [[ '${{ parameters.buildFromArchive }}' == 'True' ]]; then if [[ '${{ parameters.buildFromArchive }}' == 'True' ]]; then
customBuildArgs="$customBuildArgs --source-repository https://github.com/dotnet/dotnet" customBuildArgs="$customBuildArgs --source-repository https://github.com/dotnet/dotnet"
customBuildArgs="$customBuildArgs --source-version $(git -C "${{ parameters.vmrPath }}" rev-parse HEAD)" customBuildArgs="$customBuildArgs --source-version $(git -C "$(vmrPath)" rev-parse HEAD)"
fi fi
if [[ '${{ parameters.buildSourceOnly }}' == 'True' ]]; then if [[ '${{ parameters.buildSourceOnly }}' == 'True' ]]; then
@ -388,12 +391,12 @@ jobs:
inputs: inputs:
testRunner: vSTest testRunner: vSTest
testResultsFiles: 'test/**/*.trx' testResultsFiles: 'test/**/*.trx'
searchFolder: ${{ variables.sourcesPath }} searchFolder: $(sourcesPath)
mergeTestResults: true mergeTestResults: true
publishRunAttachments: true publishRunAttachments: true
testRunTitle: SourceBuild_SmokeTests_$(Agent.JobName) testRunTitle: SourceBuild_SmokeTests_$(Agent.JobName)
- publish: '${{ variables.sourcesPath }}/artifacts/${{ parameters.architecture }}/Release/' - publish: '$(sourcesPath)/artifacts/${{ parameters.architecture }}/Release/'
artifact: $(Agent.JobName)_Artifacts artifact: $(Agent.JobName)_Artifacts
displayName: Publish Artifacts displayName: Publish Artifacts
condition: succeededOrFailed() condition: succeededOrFailed()

View file

@ -53,7 +53,14 @@ jobs:
- template: ../steps/vmr-prepare.yml - template: ../steps/vmr-prepare.yml
parameters: parameters:
vmrBranch: ${{ parameters.vmrBranch }} vmrBranch: ${{ parameters.vmrBranch }}
isBuiltFromVmr: false
# TODO (https://github.com/dotnet/arcade/issues/11332): Allow full CG?
# Currently, we ignore dirs of individual repos - they have been scanned before
- ${{ if and(ne(variables['Build.Reason'], 'PullRequest'), eq(variables['System.TeamProject'], 'internal')) }}:
- task: ComponentGovernanceComponentDetection@0
inputs:
sourceScanPath: $(Agent.BuildDirectory)/vmr
ignoreDirectories: $(Agent.BuildDirectory)/vmr/src
- template: ../steps/vmr-pull-updates.yml - template: ../steps/vmr-pull-updates.yml
parameters: parameters:

View file

@ -1,43 +1,18 @@
### These steps clone the VMR (https://github.com/dotnet/dotnet) into $(Agent.BuildDirectory)/vmr ### These steps clone the VMR (https://github.com/dotnet/dotnet) into $(Agent.BuildDirectory)/vmr for installer
### Component Governance scan is also triggered over the VMR's non-repo sources
parameters: parameters:
- name: isBuiltFromVmr
displayName: True when build is running from dotnet/dotnet directly
type: boolean
- name: vmrBranch - name: vmrBranch
displayName: dotnet/dotnet branch to use displayName: dotnet/dotnet branch to use
type: string type: string
default: $(Build.SourceBranch)
- name: skipComponentGovernanceDetection
type: boolean
default: false
steps: steps:
- ${{ if parameters.isBuiltFromVmr }}:
- checkout: self
displayName: Clone dotnet/dotnet
path: vmr
clean: true
- ${{ else }}:
- checkout: vmr - checkout: vmr
displayName: Clone dotnet/dotnet displayName: Clone dotnet/dotnet
path: vmr path: vmr
clean: true clean: true
- script: | - script: |
git checkout --track origin/${{ parameters.vmrBranch }} git checkout --track origin/${{ parameters.vmrBranch }}
echo "##vso[task.setvariable variable=vmrBranch]${{ parameters.vmrBranch }}" echo "##vso[task.setvariable variable=vmrBranch]${{ parameters.vmrBranch }}"
displayName: Check out ${{ parameters.vmrBranch }} displayName: Check out ${{ parameters.vmrBranch }}
workingDirectory: $(Agent.BuildDirectory)/vmr workingDirectory: $(Agent.BuildDirectory)/vmr
# TODO (https://github.com/dotnet/arcade/issues/11332): Allow full CG?
# Currently, we ignore dirs of individual repos - they have been scanned before
- ${{ if and(not(parameters.skipComponentGovernanceDetection), ne(variables['Build.Reason'], 'PullRequest'), eq(variables['System.TeamProject'], 'internal')) }}:
- task: ComponentGovernanceComponentDetection@0
inputs:
sourceScanPath: $(Agent.BuildDirectory)/vmr
ignoreDirectories: $(Agent.BuildDirectory)/vmr/src

View file

@ -30,24 +30,25 @@ variables:
- ${{ if eq(variables['System.TeamProject'], 'public') }}: - ${{ if eq(variables['System.TeamProject'], 'public') }}:
- name: defaultPoolName - name: defaultPoolName
value: NetCore-Public-XL value: NetCore-Public-XL
- name: defaultPoolNameLinuxArm64
value: Docker-Linux-Arm-Public
- name: defaultPoolDemandsLinux - name: defaultPoolDemandsLinux
value: ImageOverride -equals Build.Ubuntu.1804.Amd64.Open value: ImageOverride -equals Build.Ubuntu.1804.Amd64.Open
- name: defaultPoolDemandsWindows - name: defaultPoolDemandsWindows
value: ImageOverride -equals windows.vs2022.amd64.open value: ImageOverride -equals windows.vs2022.amd64.open
- ${{ if eq(variables['System.TeamProject'], 'internal') }}: - ${{ elseif eq(variables['System.TeamProject'], 'internal') }}:
- ${{ if in(variables['Build.Reason'], 'PullRequest') }}: - ${{ if in(variables['Build.Reason'], 'PullRequest') }}:
- name: defaultPoolName - name: defaultPoolName
value: NetCore1ESPool-Internal-XL value: NetCore1ESPool-Internal-XL
- ${{ else }}: - ${{ else }}:
- name: defaultPoolName - name: defaultPoolName
value: NetCore1ESPool-Svc-Internal value: NetCore1ESPool-Svc-Internal
- name: defaultPoolNameLinuxArm64
value: Docker-Linux-Arm-Internal
- name: defaultPoolDemandsLinux - name: defaultPoolDemandsLinux
value: ImageOverride -equals Build.Ubuntu.1804.Amd64 value: ImageOverride -equals Build.Ubuntu.1804.Amd64
- name: defaultPoolDemandsWindows - name: defaultPoolDemandsWindows
value: ImageOverride -equals windows.vs2022.amd64 value: ImageOverride -equals windows.vs2022.amd64
- name: defaultPoolNameLinuxArm64
value: Docker-Linux-Arm-Internal
- name: defaultPoolNameMac - name: defaultPoolNameMac
value: macos-12 value: macos-12

View file

@ -8,10 +8,10 @@
} }
}, },
"native-tools": { "native-tools": {
"cmake": "3.21.0" "cmake": "latest"
}, },
"msbuild-sdks": { "msbuild-sdks": {
"Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.24102.4", "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.24105.3",
"Microsoft.DotNet.CMake.Sdk": "9.0.0-beta.24102.4" "Microsoft.DotNet.CMake.Sdk": "9.0.0-beta.24105.3"
} }
} }

View file

@ -32,7 +32,7 @@ if ($Sign) {
$Parameters = "$Parameters -WarnAsError `$$WarnAsError" $Parameters = "$Parameters -WarnAsError `$$WarnAsError"
try { try {
$ExpressionToInvoke = "$RepoRoot\eng\common\build.ps1 -restore -build $Parameters $ExtraParameters" $ExpressionToInvoke = "$RepoRoot\eng\common\build.ps1 -restore -build -nativeToolsOnMachine $Parameters $ExtraParameters"
Write-Host "Invoking expression: $ExpressionToInvoke" Write-Host "Invoking expression: $ExpressionToInvoke"
Invoke-Expression $ExpressionToInvoke Invoke-Expression $ExpressionToInvoke
} }

View file

@ -177,13 +177,19 @@
<ItemGroup> <ItemGroup>
<!-- The Arcade SDK is automatically registered while the others are opt-in for the repo projects. --> <!-- The Arcade SDK is automatically registered while the others are opt-in for the repo projects. -->
<ArcadeSdkOverride Include="Microsoft.DotNet.Arcade.Sdk" Group="ARCADE" Version="$(arcadeOutputPackageVersion)" /> <ArcadeSdkOverride Include="Microsoft.DotNet.Arcade.Sdk" Group="ARCADE" Version="$(arcadeOutputPackageVersion)" />
<SourceBuiltSdkOverride Include="@(ArcadeSdkOverride)" Condition="'$(UseBootstrapArcade)' != 'true'" /> <ArcadeSharedFrameworkSdkOverride Include="Microsoft.DotNet.SharedFramework.Sdk" Group="ARCADE_SHARED_FX_SDK" Version="$(arcadeOutputPackageVersion)" />
<ArcadeCMakeSdkOverride Include="Microsoft.DotNet.CMake.Sdk" Group="ARCADE_CMAKE_SDK" Version="$(arcadeOutputPackageVersion)" />
<SourceBuiltSdkOverride Include="@(ArcadeSdkOverride)" <SourceBuiltSdkOverride Include="@(ArcadeSdkOverride)"
Version="$(ArcadeBootstrapVersion)" Version="$(ArcadeBootstrapVersion)"
Location="$(ArcadeBootstrapPackageDir)microsoft.dotnet.arcade.sdk/$(ArcadeBootstrapVersion)" Location="$(ArcadeBootstrapPackageDir)microsoft.dotnet.arcade.sdk/$(ArcadeBootstrapVersion)"
Condition="'$(UseBootstrapArcade)' == 'true'" /> Condition="'$(UseBootstrapArcade)' == 'true'" />
<ArcadeSharedFrameworkSdkOverride Include="Microsoft.DotNet.SharedFramework.Sdk" Group="ARCADE_SHARED_FX_SDK" Version="$(arcadeOutputPackageVersion)" /> <!-- When not bootstrapping, use the just-built versions. -->
<SourceBuiltSdkOverride Include="@(ArcadeSdkOverride)" Condition="'$(UseBootstrapArcade)' != 'true'" />
<SourceBuiltSdkOverride Include="@(ArcadeCMakeSdkOverride)" Condition="'$(UseBootstrapArcade)' != 'true'" />
<SourceBuiltSdkOverride Include="@(ArcadeSharedFrameworkSdkOverride)" Condition="'$(UseBootstrapArcade)' != 'true'" />
<WindowsDesktopSdkOverride Include="Microsoft.Net.Sdk.WindowsDesktop" Group="WINDOWS_DESKTOP" Location="$(ToolsDir)EmptySdk" Condition="'$(DotNetBuildSourceOnly)' == 'true'" /> <WindowsDesktopSdkOverride Include="Microsoft.Net.Sdk.WindowsDesktop" Group="WINDOWS_DESKTOP" Location="$(ToolsDir)EmptySdk" Condition="'$(DotNetBuildSourceOnly)' == 'true'" />
<!-- <!--

View file

@ -12,6 +12,7 @@
<ItemGroup> <ItemGroup>
<BuiltSdkPackageOverride Include="@(ArcadeSdkOverride)" /> <BuiltSdkPackageOverride Include="@(ArcadeSdkOverride)" />
<BuiltSdkPackageOverride Include="@(ArcadeSharedFrameworkSdkOverride)" /> <BuiltSdkPackageOverride Include="@(ArcadeSharedFrameworkSdkOverride)" />
<BuiltSdkPackageOverride Include="@(ArcadeCMakeSdkOverride)" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

View file

@ -35,10 +35,6 @@
<RepositoryReference Include="source-build-externals" Condition="'$(DotNetBuildSourceOnly)' == 'true'" /> <RepositoryReference Include="source-build-externals" Condition="'$(DotNetBuildSourceOnly)' == 'true'" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<SourceBuiltSdkOverride Include="@(ArcadeSharedFrameworkSdkOverride)" />
</ItemGroup>
<ItemGroup Condition="'$(DotNetBuildSourceOnly)' == 'true'"> <ItemGroup Condition="'$(DotNetBuildSourceOnly)' == 'true'">
<ExtraPackageVersionPropsPackageInfo Include="MicrosoftCodeAnalysisVersion_4_X" Version="%24(MicrosoftCodeAnalysisVersion)" /> <ExtraPackageVersionPropsPackageInfo Include="MicrosoftCodeAnalysisVersion_4_X" Version="%24(MicrosoftCodeAnalysisVersion)" />
<ExtraPackageVersionPropsPackageInfo Include="MicrosoftCodeAnalysisVersion_4_4" Version="%24(MicrosoftCodeAnalysisVersion)" /> <ExtraPackageVersionPropsPackageInfo Include="MicrosoftCodeAnalysisVersion_4_4" Version="%24(MicrosoftCodeAnalysisVersion)" />

View file

@ -13,8 +13,4 @@
<RepositoryReference Include="wpf" /> <RepositoryReference Include="wpf" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<SourceBuiltSdkOverride Include="@(ArcadeSharedFrameworkSdkOverride)" />
</ItemGroup>
</Project> </Project>

View file

@ -3,8 +3,6 @@
<PropertyGroup> <PropertyGroup>
<!-- Currently, 'arm*' SDK's do not include the LZMA for performance upon extraction of the NuGet archive. --> <!-- Currently, 'arm*' SDK's do not include the LZMA for performance upon extraction of the NuGet archive. -->
<!-- https://github.com/dotnet/cli/issues/8800 --> <!-- https://github.com/dotnet/cli/issues/8800 -->
<IncludeNuGetPackageArchive Condition=" $(Architecture.StartsWith('arm')) ">false</IncludeNuGetPackageArchive>
<!--<IncludeNuGetPackageArchive Condition=" '$(IncludeNuGetPackageArchive)' == '' ">true</IncludeNuGetPackageArchive>-->
<SkipBuildingInstallers Condition=" '$(SkipBuildingInstallers)' == '' AND <SkipBuildingInstallers Condition=" '$(SkipBuildingInstallers)' == '' AND
($(Rid.StartsWith('rhel.6')) ($(Rid.StartsWith('rhel.6'))
OR $(Rid.StartsWith('freebsd')) OR $(Rid.StartsWith('freebsd'))
@ -13,11 +11,6 @@
<SkipBuildingInstallers Condition=" '$(SkipBuildingInstallers)' == '' ">false</SkipBuildingInstallers> <SkipBuildingInstallers Condition=" '$(SkipBuildingInstallers)' == '' ">false</SkipBuildingInstallers>
<UsePortableLinuxSharedFramework Condition=" '$(UsePortableLinuxSharedFramework)' == '' AND '$(IsLinux)' == 'True' AND '$(Rid)' != 'rhel.6-x64' AND !$(Rid.StartsWith('linux-musl')) ">true</UsePortableLinuxSharedFramework> <UsePortableLinuxSharedFramework Condition=" '$(UsePortableLinuxSharedFramework)' == '' AND '$(IsLinux)' == 'True' AND '$(Rid)' != 'rhel.6-x64' AND !$(Rid.StartsWith('linux-musl')) ">true</UsePortableLinuxSharedFramework>
<!--<IncludeSharedFrameworksForBackwardsCompatibilityTests Condition=" $(IncludeSharedFrameworksForBackwardsCompatibilityTests) == ''
AND '$(Rid)' != 'linux-x64'
AND '$(Rid)' != 'rhel.6-x64'
AND (!$(Rid.StartsWith('linux-musl')))
AND '$(Rid)' != 'ubuntu.18.04-x64'">true</IncludeSharedFrameworksForBackwardsCompatibilityTests>-->
<HighEntropyVA>true</HighEntropyVA> <HighEntropyVA>true</HighEntropyVA>
<!-- Only use asset target fallback that we set (not implicit one to net461). --> <!-- Only use asset target fallback that we set (not implicit one to net461). -->