diff --git a/.vsts-ci.yml b/.vsts-ci.yml index 59da97b2cf..6c3be3436d 100644 --- a/.vsts-ci.yml +++ b/.vsts-ci.yml @@ -17,6 +17,8 @@ steps: - script: eng\common\CIBuild.cmd -configuration $(BuildConfiguration) + /p:OfficialBuildId=$(BUILD.BUILDNUMBER) + /p:DotNetSignType=$(SignType) /p:DotNetSymbolServerTokenMsdl=$(microsoft-symbol-server-pat) /p:DotNetSymbolServerTokenSymWeb=$(symweb-symbol-server-pat) displayName: Build @@ -25,7 +27,7 @@ steps: displayName: Publish Test Results inputs: testRunner: XUnit - testResultsFiles: 'artifacts/$(BuildConfiguration)/TestResults/*.xml' + testResultsFiles: 'artifacts/TestResults/$(BuildConfiguration)/*.xml' mergeTestResults: true testRunTitle: 'Unit Tests' condition: succeededOrFailed() @@ -33,21 +35,22 @@ steps: - task: NuGetPublisher@0 displayName: Publish NuGet Packages to MyGet inputs: - searchPattern: 'artifacts\$(BuildConfiguration)\packages\*.nupkg' + searchPattern: 'artifacts\packages\$(BuildConfiguration)\Shipping\*.nupkg' connectedServiceName: 'RoslynAnalyzers NuGet feed' nuGetVersion: 4.0.0.2283 + condition: succeeded() - task: CopyPublishBuildArtifacts@1 displayName: Publish Artifacts inputs: CopyRoot: '$(Build.SourcesDirectory)' Contents: | - artifacts\$(BuildConfiguration)\bin - artifacts\$(BuildConfiguration)\log - artifacts\$(BuildConfiguration)\TestResults - artifacts\$(BuildConfiguration)\packages - artifacts\$(BuildConfiguration)\SymStore - artifacts\$(BuildConfiguration)\VSSetup + artifacts\bin\$(BuildConfiguration) + artifacts\log\$(BuildConfiguration) + artifacts\TestResults\$(BuildConfiguration) + artifacts\SymStore\$(BuildConfiguration) + artifacts\packages\$(BuildConfiguration) + artifacts\VSSetup\$(BuildConfiguration) ArtifactName: '$(Build.BuildNumber)' ArtifactType: FilePath TargetPath: '$(DropRoot)\$(TeamName)\$(Build.DefinitionName)' diff --git a/Build.cmd b/Build.cmd index 7e77544624..4afad04714 100644 --- a/Build.cmd +++ b/Build.cmd @@ -1,3 +1,3 @@ @echo off -powershell -ExecutionPolicy ByPass -command "& """%~dp0eng\common\Build.ps1""" -restore -build %*" +powershell -ExecutionPolicy ByPass -NoProfile -command "& """%~dp0eng\common\Build.ps1""" -restore -build %*" exit /b %ErrorLevel% diff --git a/Directory.Build.props b/Directory.Build.props index bfa1e681a5..7ad737acb9 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -6,5 +6,5 @@ RoslynDev - + \ No newline at end of file diff --git a/Directory.Build.targets b/Directory.Build.targets index a317ac3a54..2ea7e89d2e 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -1,4 +1,4 @@ - + \ No newline at end of file diff --git a/Restore.cmd b/Restore.cmd index 3fc17e8f75..51cb3c4dc8 100644 --- a/Restore.cmd +++ b/Restore.cmd @@ -1,3 +1,3 @@ @echo off -powershell -ExecutionPolicy ByPass -command "& """%~dp0eng\common\Build.ps1""" -restore %*" +powershell -ExecutionPolicy ByPass -NoProfile -command "& """%~dp0eng\common\Build.ps1""" -restore %*" exit /b %ErrorLevel% diff --git a/Test.cmd b/Test.cmd index 8a841f6818..709c169ffc 100644 --- a/Test.cmd +++ b/Test.cmd @@ -1,3 +1,3 @@ @echo off -powershell -ExecutionPolicy ByPass -command "& """%~dp0eng\common\Build.ps1""" -test %*" +powershell -ExecutionPolicy ByPass -NoProfile -command "& """%~dp0eng\common\Build.ps1""" -test %*" exit /b %ErrorLevel% \ No newline at end of file diff --git a/eng/GenerateAnalyzerNuspec.csx b/eng/GenerateAnalyzerNuspec.csx index 5aaf8a441d..72fcfdb639 100644 --- a/eng/GenerateAnalyzerNuspec.csx +++ b/eng/GenerateAnalyzerNuspec.csx @@ -1,13 +1,14 @@ string nuspecFile = Args[0]; string assetsDir = Args[1]; string projectDir = Args[2]; -string tfm = Args[3]; -var metadataList = Args[4].Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); -var fileList = Args[5].Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); -var assemblyList = Args[6].Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); -var dependencyList = Args[7].Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); -var rulesetsDir = Args[8]; -var legacyRulesets = Args[9].Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); +string configuration = Args[3]; +string tfm = Args[4]; +var metadataList = Args[5].Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); +var fileList = Args[6].Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); +var assemblyList = Args[7].Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); +var dependencyList = Args[8].Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); +var rulesetsDir = Args[9]; +var legacyRulesets = Args[10].Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); var result = new StringBuilder(); @@ -107,7 +108,7 @@ if (fileList.Length > 0 || assemblyList.Length > 0) targets = allTargets; } - string path = Path.Combine(Path.GetFileNameWithoutExtension(assembly), tfm, assembly); + string path = Path.Combine(Path.GetFileNameWithoutExtension(assembly), configuration, tfm, assembly); foreach (string target in targets) { diff --git a/eng/GenerateAnalyzerNuspec.targets b/eng/GenerateAnalyzerNuspec.targets index 5557205d8e..234e3b042f 100644 --- a/eng/GenerateAnalyzerNuspec.targets +++ b/eng/GenerateAnalyzerNuspec.targets @@ -7,7 +7,6 @@ $(IntermediateOutputPath)$(NuspecPackageId).nuspec $(ArtifactsBinDir) - $(ArtifactsBinDir)Rulesets\$(NuspecPackageId) false @@ -23,6 +22,10 @@ DependsOnTargets="InitializeSourceControlInformation" Condition="'@(AnalyzerNupkgAssembly)' != '' or '@(AnalyzerRulesetAssembly)' != ''"> + + <_GeneratedRulesetsDir>$(IntermediateOutputPath)Rulesets + + @@ -31,16 +34,13 @@ - + - - $(NuspecPackageId) - <_NuspecMetadata Include="version=$(PackageVersion)" /> <_NuspecMetadata Include="id=$(NuspecPackageId)" /> @@ -67,6 +67,6 @@ <_CscToolPath Condition="!HasTrailingSlash('$(_CscToolPath)')">$(_CscToolPath)\ - + \ No newline at end of file diff --git a/eng/SignToolData.json b/eng/SignToolData.json deleted file mode 100644 index 147c798f9c..0000000000 --- a/eng/SignToolData.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "sign": [ - { - "certificate": "MicrosoftSHA2", - "strongName": "MsSharedLib72", - "values": [ - "bin/MetaCompilation.Analyzers/netstandard1.3/MetaCompilation.Analyzers.dll", - "bin/MetaCompilation.Analyzers/netstandard1.3/*/MetaCompilation.Analyzers.resources.dll", - "bin/Microsoft.CodeAnalysis.Analyzers/netstandard1.3/Microsoft.CodeAnalysis.Analyzers.dll", - "bin/Microsoft.CodeAnalysis.Analyzers/netstandard1.3/*/Microsoft.CodeAnalysis.Analyzers.resources.dll", - "bin/Microsoft.CodeAnalysis.CSharp.Analyzers/netstandard1.3/Microsoft.CodeAnalysis.CSharp.Analyzers.dll", - //"bin/Microsoft.CodeAnalysis.CSharp.Analyzers/netstandard1.3/*/Microsoft.CodeAnalysis.CSharp.Analyzers.resources.dll", - "bin/Microsoft.CodeAnalysis.VisualBasic.Analyzers/netstandard1.3/Microsoft.CodeAnalysis.VisualBasic.Analyzers.dll", - //"bin/Microsoft.CodeAnalysis.VisualBasic.Analyzers/netstandard1.3/*/Microsoft.CodeAnalysis.VisualBasic.Analyzers.resources.dll", - "bin/Microsoft.CodeQuality.Analyzers/netstandard1.3/Microsoft.CodeQuality.Analyzers.dll", - "bin/Microsoft.CodeQuality.Analyzers/netstandard1.3/*/Microsoft.CodeQuality.Analyzers.resources.dll", - "bin/Microsoft.CodeQuality.CSharp.Analyzers/netstandard1.3/Microsoft.CodeQuality.CSharp.Analyzers.dll", - //"bin/Microsoft.CodeQuality.CSharp.Analyzers/netstandard1.3/*/Microsoft.CodeQuality.CSharp.Analyzers.resources.dll", - "bin/Microsoft.CodeQuality.VisualBasic.Analyzers/netstandard1.3/Microsoft.CodeQuality.VisualBasic.Analyzers.dll", - //"bin/Microsoft.CodeQuality.VisualBasic.Analyzers/netstandard1.3/*/Microsoft.CodeQuality.VisualBasic.Analyzers.resources.dll", - "bin/Microsoft.CodeQuality.Analyzers.Exp/netstandard1.3/Microsoft.CodeQuality.Analyzers.Exp.dll", - "bin/Microsoft.CodeQuality.Analyzers.Exp/netstandard1.3/*/Microsoft.CodeQuality.Analyzers.Exp.resources.dll", - "bin/Microsoft.CodeQuality.CSharp.Analyzers.Exp/netstandard1.3/Microsoft.CodeQuality.CSharp.Analyzers.Exp.dll", - //"bin/Microsoft.CodeQuality.CSharp.Analyzers.Exp/netstandard1.3/*/Microsoft.CodeQuality.CSharp.Analyzers.Exp.resources.dll", - "bin/Microsoft.CodeQuality.VisualBasic.Analyzers.Exp/netstandard1.3/Microsoft.CodeQuality.VisualBasic.Analyzers.Exp.dll", - //"bin/Microsoft.CodeQuality.VisualBasic.Analyzers.Exp/netstandard1.3/*/Microsoft.CodeQuality.VisualBasic.Analyzers.Exp.resources.dll", - "bin/Microsoft.NetCore.Analyzers/netstandard1.3/Microsoft.NetCore.Analyzers.dll", - "bin/Microsoft.NetCore.Analyzers/netstandard1.3/*/Microsoft.NetCore.Analyzers.resources.dll", - "bin/Microsoft.NetCore.CSharp.Analyzers/netstandard1.3/Microsoft.NetCore.CSharp.Analyzers.dll", - //"bin/Microsoft.NetCore.CSharp.Analyzers/netstandard1.3/*/Microsoft.NetCore.CSharp.Analyzers.resources.dll", - "bin/Microsoft.NetCore.VisualBasic.Analyzers/netstandard1.3/Microsoft.NetCore.VisualBasic.Analyzers.dll", - //"bin/Microsoft.NetCore.VisualBasic.Analyzers/netstandard1.3/*/Microsoft.NetCore.VisualBasic.Analyzers.resources.dll", - "bin/Microsoft.NetFramework.Analyzers/netstandard1.3/Microsoft.NetFramework.Analyzers.dll", - "bin/Microsoft.NetFramework.Analyzers/netstandard1.3/*/Microsoft.NetFramework.Analyzers.resources.dll", - "bin/Microsoft.NetFramework.CSharp.Analyzers/netstandard1.3/Microsoft.NetFramework.CSharp.Analyzers.dll", - //"bin/Microsoft.NetFramework.CSharp.Analyzers/netstandard1.3/*/Microsoft.NetFramework.CSharp.Analyzers.resources.dll", - "bin/Microsoft.NetFramework.VisualBasic.Analyzers/netstandard1.3/Microsoft.NetFramework.VisualBasic.Analyzers.dll", - //"bin/Microsoft.NetFramework.VisualBasic.Analyzers/netstandard1.3/*/Microsoft.NetFramework.VisualBasic.Analyzers.resources.dll", - "bin/Roslyn.Diagnostics.Analyzers/netstandard1.3/Roslyn.Diagnostics.Analyzers.dll", - "bin/Roslyn.Diagnostics.Analyzers/netstandard1.3/*/Roslyn.Diagnostics.Analyzers.resources.dll", - "bin/Roslyn.Diagnostics.CSharp.Analyzers/netstandard1.3/Roslyn.Diagnostics.CSharp.Analyzers.dll", - //"bin/Roslyn.Diagnostics.CSharp.Analyzers/netstandard1.3/*/Roslyn.Diagnostics.CSharp.Analyzers.resources.dll", - "bin/Roslyn.Diagnostics.VisualBasic.Analyzers/netstandard1.3/Roslyn.Diagnostics.VisualBasic.Analyzers.dll", - //"bin/Roslyn.Diagnostics.VisualBasic.Analyzers/netstandard1.3/*/Roslyn.Diagnostics.VisualBasic.Analyzers.resources.dll", - "bin/Text.Analyzers/netstandard1.3/Text.Analyzers.dll", - "bin/Text.Analyzers/netstandard1.3/*/Text.Analyzers.resources.dll", - "bin/Text.CSharp.Analyzers/netstandard1.3/Text.CSharp.Analyzers.dll", - //"bin/Text.CSharp.Analyzers/netstandard1.3/*/Text.CSharp.Analyzers.resources.dll", - "bin/Text.VisualBasic.Analyzers/netstandard1.3/Text.VisualBasic.Analyzers.dll" - //"bin/Text.VisualBasic.Analyzers/netstandard1.3/*/Text.VisualBasic.Analyzers.resources.dll" - ] - }, - { - "certificate": "VsixSHA2", - "strongName": null, - "values": [ - "VSSetup/MetaCompilation.Analyzers.Setup.vsix", - "VSSetup/Microsoft.CodeAnalysis.Analyzers.Setup.vsix", - "VSSetup/Microsoft.CodeQuality.Analyzers.Setup.vsix", - "VSSetup/Microsoft.CodeQuality.Analyzers.Exp.Setup.vsix", - "VSSetup/Microsoft.NetCore.Analyzers.Setup.vsix", - "VSSetup/Microsoft.NetFramework.Analyzers.Setup.vsix", - "VSSetup/Roslyn.Diagnostics.Analyzers.Setup.vsix", - "VSSetup/Text.Analyzers.Setup.vsix", - "VSSetup/Microsoft.CodeAnalysis.FxCopAnalyzers.Setup.vsix" - ] - }, - { - "certificate": "NuGet", - "strongName": null, - "values": [ - "packages/*.nupkg", - "packages/*/*.nupkg" - ] - } - ] -} diff --git a/eng/Signing.props b/eng/Signing.props new file mode 100644 index 0000000000..ba5e320a0e --- /dev/null +++ b/eng/Signing.props @@ -0,0 +1,10 @@ + + + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) + + + + + + + \ No newline at end of file diff --git a/eng/Versions.props b/eng/Versions.props index 705d6a4d15..feb262eb62 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -3,12 +3,13 @@ $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 2.6.2 - beta3 + beta4 - + true true true + true 15.0.26201-alpha @@ -26,10 +27,11 @@ 1.0.0-beta1-63230-04 - + 1.3.1 1.4.2 10.1.0 + 1.0.18 diff --git a/eng/common/CIBuild.cmd b/eng/common/CIBuild.cmd index 5ce687447c..6544b0cd54 100644 --- a/eng/common/CIBuild.cmd +++ b/eng/common/CIBuild.cmd @@ -1,3 +1,3 @@ @echo off -powershell -ExecutionPolicy ByPass -command "& """%~dp0Build.ps1""" -restore -build -test -sign -pack -publish -ci %*" +powershell -ExecutionPolicy ByPass -NoProfile -command "& """%~dp0Build.ps1""" -restore -build -test -sign -pack -publish -ci %*" exit /b %ErrorLevel% diff --git a/eng/common/build.ps1 b/eng/common/build.ps1 index f74d1226fd..94ad07a54b 100644 --- a/eng/common/build.ps1 +++ b/eng/common/build.ps1 @@ -79,14 +79,14 @@ function InitializeDotNetCli { # Use dotnet installation specified in DOTNET_INSTALL_DIR if it contains the required SDK version, # otherwise install the dotnet CLI and SDK to repo local .dotnet directory to avoid potential permission issues. - if (($env:DOTNET_INSTALL_DIR -ne $null) -and (Test-Path(Join-Path $env:DOTNET_INSTALL_DIR "sdk\$($GlobalJson.sdk.version)"))) { + if (($env:DOTNET_INSTALL_DIR -ne $null) -and (Test-Path(Join-Path $env:DOTNET_INSTALL_DIR "sdk\$($GlobalJson.tools.dotnet)"))) { $dotnetRoot = $env:DOTNET_INSTALL_DIR } else { $dotnetRoot = Join-Path $RepoRoot ".dotnet" $env:DOTNET_INSTALL_DIR = $dotnetRoot if ($restore) { - InstallDotNetSdk $dotnetRoot $GlobalJson.sdk.version + InstallDotNetSdk $dotnetRoot $GlobalJson.tools.dotnet } } @@ -130,7 +130,7 @@ function InitializeVisualStudioBuild { } function LocateVisualStudio { - $vswhereVersion = $GlobalJson.vswhere.version + $vswhereVersion = $GlobalJson.tools.vswhere $toolsRoot = Join-Path $RepoRoot ".tools" $vsWhereDir = Join-Path $toolsRoot "vswhere\$vswhereVersion" $vsWhereExe = Join-Path $vsWhereDir "vswhere.exe" @@ -152,7 +152,9 @@ function LocateVisualStudio { } function GetBuildCommand() { - if ((Get-Member -InputObject $GlobalJson -Name "sdk") -ne $null) { + $tools = $GlobalJson.tools + + if ((Get-Member -InputObject $tools -Name "dotnet") -ne $null) { $dotnetRoot = InitializeDotNetCli # by default build with dotnet cli: @@ -160,7 +162,7 @@ function GetBuildCommand() { $buildArgs = "msbuild" } - if ((Get-Member -InputObject $GlobalJson -Name "vswhere") -ne $null) { + if ((Get-Member -InputObject $tools -Name "vswhere") -ne $null) { $vsInstallDir = InitializeVisualStudioBuild # Presence of vswhere.version indicates the repo needs to build using VS msbuild: @@ -169,7 +171,7 @@ function GetBuildCommand() { } if ($buildDriver -eq $null) { - Write-Host "/global.json must either specify 'sdk.version' or 'vswhere.version'." -ForegroundColor Red + Write-Host "/global.json must either specify 'tools.dotnet' or 'tools.vswhere'." -ForegroundColor Red exit 1 } @@ -181,7 +183,7 @@ function GetBuildCommand() { } function InitializeToolset([string] $buildDriver, [string]$buildArgs) { - $toolsetVersion = $GlobalJson.'msbuild-sdks'.'RoslynTools.RepoToolset' + $toolsetVersion = $GlobalJson.'msbuild-sdks'.'Microsoft.DotNet.Arcade.Sdk' $toolsetLocationFile = Join-Path $ToolsetDir "$toolsetVersion.txt" if (Test-Path $toolsetLocationFile) { @@ -199,7 +201,7 @@ function InitializeToolset([string] $buildDriver, [string]$buildArgs) { $proj = Join-Path $ToolsetDir "restore.proj" - '' | Set-Content $proj + '' | Set-Content $proj & $buildDriver $buildArgs $proj /t:__WriteToolsetLocation /m /nologo /clp:None /warnaserror /bl:$ToolsetRestoreLog /v:$verbosity /p:__ToolsetLocationOutputFile=$toolsetLocationFile if ($lastExitCode -ne 0) { @@ -247,7 +249,7 @@ function Build([string] $buildDriver, [string]$buildArgs) { /p:PerformanceTest=$performanceTest ` /p:Sign=$sign ` /p:Publish=$publish ` - /p:CIBuild=$ci ` + /p:ContinuousIntegrationBuild=$ci ` $properties if ($lastExitCode -ne 0) { @@ -268,10 +270,10 @@ try { $EngRoot = Join-Path $PSScriptRoot ".." $ArtifactsDir = Join-Path $RepoRoot "artifacts" $ToolsetDir = Join-Path $ArtifactsDir "toolset" - $LogDir = Join-Path (Join-Path $ArtifactsDir $configuration) "log" + $LogDir = Join-Path (Join-Path $ArtifactsDir "log") $configuration $BuildLog = Join-Path $LogDir "Build.binlog" $ToolsetRestoreLog = Join-Path $LogDir "ToolsetRestore.binlog" - $TempDir = Join-Path (Join-Path $ArtifactsDir $configuration) "tmp" + $TempDir = Join-Path (Join-Path $ArtifactsDir "tmp") $configuration $GlobalJson = Get-Content -Raw -Path (Join-Path $RepoRoot "global.json") | ConvertFrom-Json if ($projects -eq "") { diff --git a/eng/common/build.sh b/eng/common/build.sh index f1b767e412..47a811bd00 100644 --- a/eng/common/build.sh +++ b/eng/common/build.sh @@ -30,20 +30,6 @@ prepare_machine=false verbosity='minimal' properties='' -repo_root="$scriptroot/../.." -eng_root="$scriptroot/.." -artifacts_dir="$repo_root/artifacts" -artifacts_configuration_dir="$artifacts_dir/$configuration" -toolset_dir="$artifacts_dir/toolset" -log_dir="$artifacts_configuration_dir/log" -build_log="$log_dir/Build.binlog" -toolset_restore_log="$log_dir/ToolsetRestore.binlog" -temp_dir="$artifacts_configuration_dir/tmp" - -global_json_file="$repo_root/global.json" -build_driver="" -toolset_build_proj="" - while (($# > 0)); do lowerI="$(echo $1 | awk '{print tolower($0)}')" case $lowerI in @@ -132,13 +118,22 @@ while (($# > 0)); do esac done -# ReadJson [filename] [json key] -# Result: Sets 'readjsonvalue' to the value of the provided json key -# Note: this method may return unexpected results if there are duplicate -# keys in the json -function ReadJson { - local file=$1 - local key=$2 +repo_root="$scriptroot/../.." +eng_root="$scriptroot/.." +artifacts_dir="$repo_root/artifacts" +toolset_dir="$artifacts_dir/toolset" +log_dir="$artifacts_dir/log/$configuration" +build_log="$log_dir/Build.binlog" +toolset_restore_log="$log_dir/ToolsetRestore.binlog" +temp_dir="$artifacts_dir/tmp/$configuration" + +global_json_file="$repo_root/global.json" +build_driver="" +toolset_build_proj="" + +# ReadVersionFromJson [json key] +function ReadGlobalVersion { + local key=$1 local unamestr="$(uname)" local sedextended='-r' @@ -146,11 +141,14 @@ function ReadJson { sedextended='-E' fi; - readjsonvalue="$(grep -m 1 "\"$key\"" $file | sed $sedextended 's/^ *//;s/.*: *"//;s/",?//')" - if [[ ! "$readjsonvalue" ]]; then - echo "Error: Cannot find \"$key\" in $file" >&2; + local version="$(grep -m 1 "\"$key\"" $global_json_file | sed $sedextended 's/^ *//;s/.*: *"//;s/",?//')" + if [[ ! "$version" ]]; then + echo "Error: Cannot find \"$key\" in $global_json_file" >&2; ExitWithExitCode 1 fi; + + # return value + echo "$version" } function InitializeDotNetCli { @@ -165,8 +163,8 @@ function InitializeDotNetCli { export DOTNET_INSTALL_DIR="$DotNetCoreSdkDir" fi - ReadJson "$global_json_file" "version" - local dotnet_sdk_version="$readjsonvalue" + + local dotnet_sdk_version=`ReadGlobalVersion "dotnet"` local dotnet_root="" # Use dotnet installation specified in DOTNET_INSTALL_DIR if it contains the required SDK version, @@ -220,8 +218,7 @@ function GetDotNetInstallScript { } function InitializeToolset { - ReadJson $global_json_file "RoslynTools.RepoToolset" - local toolset_version=$readjsonvalue + local toolset_version=`ReadGlobalVersion "Microsoft.DotNet.Arcade.Sdk"` local toolset_location_file="$toolset_dir/$toolset_version.txt" if [[ -a "$toolset_location_file" ]]; then @@ -239,7 +236,7 @@ function InitializeToolset { local proj="$toolset_dir/restore.proj" - echo '' > $proj + echo '' > $proj "$build_driver" msbuild $proj /t:__WriteToolsetLocation /m /nologo /clp:None /warnaserror /bl:$toolset_restore_log /v:$verbosity /p:__ToolsetLocationOutputFile=$toolset_location_file local lastexitcode=$? @@ -282,7 +279,7 @@ function Build { /p:PerformanceTest=$performance_test \ /p:Sign=$sign \ /p:Publish=$publish \ - /p:CIBuild=$ci \ + /p:ContinuousIntegrationBuild=$ci \ $properties local lastexitcode=$? diff --git a/global.json b/global.json index 4386d03974..1578573c0e 100644 --- a/global.json +++ b/global.json @@ -1,11 +1,9 @@ { - "sdk": { - "version": "2.1.300-rtm-008866" + "tools": { + "dotnet": "2.1.401", + "vswhere": "2.2.7" }, "msbuild-sdks": { - "RoslynTools.RepoToolset": "1.0.0-beta2-63011-08" - }, - "vswhere": { - "version": "2.2.7" + "Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.18473.8" } -} +} \ No newline at end of file diff --git a/netci.groovy b/netci.groovy index ad0547bbb0..27f2692f0f 100644 --- a/netci.groovy +++ b/netci.groovy @@ -23,7 +23,7 @@ static addGithubPRTriggerForBranch(def job, def branchName, def jobName) { } static addXUnitDotNETResults(def job, def configName) { - def resultFilePattern = "**/artifacts/${configName}/TestResults/*.xml" + def resultFilePattern = "**/artifacts/TestResults/${configName}/*.xml" def skipIfNoTestFiles = false Utilities.addXUnitDotNETResults(job, resultFilePattern, skipIfNoTestFiles) @@ -56,7 +56,7 @@ static addBuildSteps(def job, def projectName, def os, def configName, def isPR) def branchName = GithubBranchName - def filesToArchive = "**/artifacts/${configName}/**" + def filesToArchive = "artifacts/**" def jobName = getJobName(os, configName) def fullJobName = Utilities.getFullJobName(projectName, jobName, isPR) diff --git a/nuget.config b/nuget.config index 1b0fc7e286..c97c5c72db 100644 --- a/nuget.config +++ b/nuget.config @@ -1,8 +1,8 @@ - + - + diff --git a/src/Directory.Build.props b/src/Directory.Build.props index ea083bae98..e39016b13c 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -1,15 +1,12 @@ - + $(NoWarn);xUnit1004;xUnit2000;xUnit2003;xUnit2004;xUnit2009;xUnit2010;xUnit1013 $(DefineConstants),BUILDING_VSIX - - - false diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets index 254541f136..10418dc1c3 100644 --- a/src/Directory.Build.targets +++ b/src/Directory.Build.targets @@ -25,11 +25,6 @@ $(MSBuildAllProjects);$(MSBuildThisFileDirectory)..\build\Analyzers_ShippingRules.ruleset - - - - - diff --git a/src/GenerateAnalyzerRulesets/GenerateAnalyzerRulesets.csproj b/src/GenerateAnalyzerRulesets/GenerateAnalyzerRulesets.csproj index b0e1870053..3c109c328e 100644 --- a/src/GenerateAnalyzerRulesets/GenerateAnalyzerRulesets.csproj +++ b/src/GenerateAnalyzerRulesets/GenerateAnalyzerRulesets.csproj @@ -2,6 +2,7 @@ Exe netcoreapp2.0 + false diff --git a/src/GenerateAnalyzerRulesets/Program.cs b/src/GenerateAnalyzerRulesets/Program.cs index 5f71a74869..d87d289dbe 100644 --- a/src/GenerateAnalyzerRulesets/Program.cs +++ b/src/GenerateAnalyzerRulesets/Program.cs @@ -16,23 +16,24 @@ class Program { public static int Main(string[] args) { - if (args.Length != 4) + if (args.Length != 5) { - Console.Error.WriteLine($"Excepted 4 arguments, found {args.Length}: {string.Join(';', args)}"); + Console.Error.WriteLine($"Excepted 5 arguments, found {args.Length}: {string.Join(';', args)}"); return 1; } string analyzerRulesetsDir = args[0]; - string analyzerPackageName = args[1]; - string tfm = args[2]; - var assemblyList = args[3].Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries).ToList(); + string binDirectory = args[1]; + string configuration = args[2]; + string tfm = args[3]; + var assemblyList = args[4].Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries).ToList(); var allRulesByAssembly = new SortedList>(); var categories = new HashSet(); foreach (string assembly in assemblyList) { var assemblyName = Path.GetFileNameWithoutExtension(assembly); - string path = Path.Combine(analyzerRulesetsDir, @"..\..", assemblyName, tfm, assembly); + string path = Path.Combine(binDirectory, assemblyName, configuration, tfm, assembly); if (!File.Exists(path)) { Console.Error.WriteLine($"'{path}' does not exist"); diff --git a/src/MetaCompilation.Analyzers/Setup/MetaCompilation.Analyzers.Setup.csproj b/src/MetaCompilation.Analyzers/Setup/MetaCompilation.Analyzers.Setup.csproj index 2deff26ff5..a79c54f114 100644 --- a/src/MetaCompilation.Analyzers/Setup/MetaCompilation.Analyzers.Setup.csproj +++ b/src/MetaCompilation.Analyzers/Setup/MetaCompilation.Analyzers.Setup.csproj @@ -7,7 +7,7 @@ false false true - false + false diff --git a/src/Microsoft.CodeAnalysis.Analyzers/Setup/Microsoft.CodeAnalysis.Analyzers.Setup.csproj b/src/Microsoft.CodeAnalysis.Analyzers/Setup/Microsoft.CodeAnalysis.Analyzers.Setup.csproj index 9635fb8e88..5c495e03b0 100644 --- a/src/Microsoft.CodeAnalysis.Analyzers/Setup/Microsoft.CodeAnalysis.Analyzers.Setup.csproj +++ b/src/Microsoft.CodeAnalysis.Analyzers/Setup/Microsoft.CodeAnalysis.Analyzers.Setup.csproj @@ -14,7 +14,7 @@ false false true - false + false diff --git a/src/Microsoft.CodeAnalysis.FxCopAnalyzers/Setup/Microsoft.CodeAnalysis.FxCopAnalyzers.Setup.csproj b/src/Microsoft.CodeAnalysis.FxCopAnalyzers/Setup/Microsoft.CodeAnalysis.FxCopAnalyzers.Setup.csproj index 6b552bcaac..44f30177af 100644 --- a/src/Microsoft.CodeAnalysis.FxCopAnalyzers/Setup/Microsoft.CodeAnalysis.FxCopAnalyzers.Setup.csproj +++ b/src/Microsoft.CodeAnalysis.FxCopAnalyzers/Setup/Microsoft.CodeAnalysis.FxCopAnalyzers.Setup.csproj @@ -8,7 +8,7 @@ false true true - false + false diff --git a/src/Microsoft.CodeQuality.Analyzers.Exp/Setup/Microsoft.CodeQuality.Analyzers.Exp.Setup.csproj b/src/Microsoft.CodeQuality.Analyzers.Exp/Setup/Microsoft.CodeQuality.Analyzers.Exp.Setup.csproj index bd74388567..9e1ae971db 100644 --- a/src/Microsoft.CodeQuality.Analyzers.Exp/Setup/Microsoft.CodeQuality.Analyzers.Exp.Setup.csproj +++ b/src/Microsoft.CodeQuality.Analyzers.Exp/Setup/Microsoft.CodeQuality.Analyzers.Exp.Setup.csproj @@ -6,7 +6,8 @@ false false false - true + true + false diff --git a/src/Microsoft.CodeQuality.Analyzers/Setup/Microsoft.CodeQuality.Analyzers.Setup.csproj b/src/Microsoft.CodeQuality.Analyzers/Setup/Microsoft.CodeQuality.Analyzers.Setup.csproj index 1bef0dcadc..fdd7b60d50 100644 --- a/src/Microsoft.CodeQuality.Analyzers/Setup/Microsoft.CodeQuality.Analyzers.Setup.csproj +++ b/src/Microsoft.CodeQuality.Analyzers/Setup/Microsoft.CodeQuality.Analyzers.Setup.csproj @@ -7,6 +7,7 @@ false false true + false diff --git a/src/Microsoft.NetCore.Analyzers/Setup/Microsoft.NetCore.Analyzers.Setup.csproj b/src/Microsoft.NetCore.Analyzers/Setup/Microsoft.NetCore.Analyzers.Setup.csproj index a7c50cb5aa..5308f3704d 100644 --- a/src/Microsoft.NetCore.Analyzers/Setup/Microsoft.NetCore.Analyzers.Setup.csproj +++ b/src/Microsoft.NetCore.Analyzers/Setup/Microsoft.NetCore.Analyzers.Setup.csproj @@ -7,7 +7,7 @@ false false true - false + false diff --git a/src/Microsoft.NetFramework.Analyzers/Setup/Microsoft.NetFramework.Analyzers.Setup.csproj b/src/Microsoft.NetFramework.Analyzers/Setup/Microsoft.NetFramework.Analyzers.Setup.csproj index 6f14a0d8e4..b1e2771826 100644 --- a/src/Microsoft.NetFramework.Analyzers/Setup/Microsoft.NetFramework.Analyzers.Setup.csproj +++ b/src/Microsoft.NetFramework.Analyzers/Setup/Microsoft.NetFramework.Analyzers.Setup.csproj @@ -7,7 +7,7 @@ false false true - false + false diff --git a/src/Roslyn.Diagnostics.Analyzers/Setup/Roslyn.Diagnostics.Analyzers.Setup.csproj b/src/Roslyn.Diagnostics.Analyzers/Setup/Roslyn.Diagnostics.Analyzers.Setup.csproj index 5fe5b53410..c09d649720 100644 --- a/src/Roslyn.Diagnostics.Analyzers/Setup/Roslyn.Diagnostics.Analyzers.Setup.csproj +++ b/src/Roslyn.Diagnostics.Analyzers/Setup/Roslyn.Diagnostics.Analyzers.Setup.csproj @@ -7,7 +7,7 @@ false false true - false + false diff --git a/src/Test.Utilities/Test.Utilities.csproj b/src/Test.Utilities/Test.Utilities.csproj index 36f0bc4d8c..0f93a072af 100644 --- a/src/Test.Utilities/Test.Utilities.csproj +++ b/src/Test.Utilities/Test.Utilities.csproj @@ -8,7 +8,7 @@ --> Roslyn.Test.Utilities - false + false diff --git a/src/Text.Analyzers/Setup/Text.Analyzers.Setup.csproj b/src/Text.Analyzers/Setup/Text.Analyzers.Setup.csproj index 135a9dceba..dd3f7b923a 100644 --- a/src/Text.Analyzers/Setup/Text.Analyzers.Setup.csproj +++ b/src/Text.Analyzers/Setup/Text.Analyzers.Setup.csproj @@ -7,7 +7,7 @@ false false true - false + false diff --git a/src/Tools/Metrics.csproj b/src/Tools/Metrics.csproj index 410522039d..8597a8c03d 100644 --- a/src/Tools/Metrics.csproj +++ b/src/Tools/Metrics.csproj @@ -3,10 +3,11 @@ net46 Exe + false - +