diff --git a/.vsts-ci.yml b/.vsts-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..f1f357584f0ebd858f3057613d789f07948f439e
--- /dev/null
+++ b/.vsts-ci.yml
@@ -0,0 +1,149 @@
+resources:
+- repo: self
+ clean: true
+queue:
+ name: VSEng-MicroBuildVS2017
+ timeoutInMinutes: 360
+ demands:
+ - msbuild
+ - visualstudio
+ - DotNetFramework
+
+variables:
+ BuildPlatform: 'Any CPU'
+steps:
+- task: NuGetCommand@2
+ inputs:
+ command: custom
+ arguments: 'locals all -clear'
+
+- task: ms-vseng.MicroBuildTasks.30666190-6959-11e5-9f96-f56098202fef.MicroBuildSigningPlugin@1
+ inputs:
+ signType: real
+ condition: and(succeeded(), in(variables['PB_SignType'], 'test', 'real'))
+
+- task: ms-vseng.MicroBuildTasks.32f78468-e895-4f47-962c-58a699361df8.MicroBuildSwixPlugin@1
+ inputs:
+ feedSource: 'https://devdiv-test.pkgs.visualstudio.com/_packaging/MicroBuildToolset/nuget/v3/index.json'
+
+- task: NuGetRestore@1
+ inputs:
+ solution: 'build\ToolsetPackages\InternalToolset.csproj'
+ feed: '8f470c7e-ac49-4afe-a6ee-cf784e438b93'
+
+- task: CmdLine@1
+ inputs:
+ filename: mkdir
+ arguments: 'Binaries\$(BuildConfiguration)'
+
+- task: VSBuild@1
+ inputs:
+ solution: 'src/Tools/MicroBuild/Build.proj'
+ vsVersion: 15.0
+ msbuildArgs: >-
+ /p:TreatWarningsAsErrors=true
+ /p:DeployExtension=false
+ /p:TrackFileAccess=false
+ /p:OfficialBuild=true
+ /p:VisualStudioVersion=14.0
+ /flp1:Summary;Verbosity=diagnostic;Encoding=UTF-8;LogFile=$(Build.SourcesDirectory)\Binaries\$(BuildConfiguration)\Roslyn.log
+ /flp2:WarningsOnly;Verbosity=diagnostic;Encoding=UTF-8;LogFile=$(Build.SourcesDirectory)\Binaries\$(BuildConfiguration)\Roslyn.wrn
+ /flp3:ErrorsOnly;Verbosity=diagnostic;Encoding=UTF-8;LogFile=$(Build.SourcesDirectory)\Binaries\$(BuildConfiguration)\Roslyn.err
+ /p:RoslynMyGetApiKey=$(Roslyn.MyGetApiKey)
+ /p:RoslynNuGetApiKey=$(Roslyn.NuGetApiKey)
+ /p:RoslynGitHubEmail=$(Roslyn.GitHubEmail)
+ /p:RoslynGitHubToken=$(Roslyn.GitHubToken)
+ /p:RoslynGitHubUserName=$(Roslyn.GitHubUserName)
+ /p:PB_PublishBlobFeedKey=$(PB_PublishBlobFeedKey)
+ /p:PublishStableVersions=false
+ /p:VersionStampToPublish=prerelease
+ platform: '$(BuildPlatform)'
+ configuration: '$(BuildConfiguration)'
+ maximumCpuCount: true
+ logProjectEvents: false
+
+- task: PublishBuildArtifacts@1
+ inputs:
+ PathtoPublish: '$(Build.SourcesDirectory)\Binaries\$(BuildConfiguration)\Logs'
+ ArtifactName: 'Build Diagnostic Files'
+ publishLocation: Container
+ continueOnError: true
+ condition: succeededOrFailed()
+
+- task: PublishTestResults@1
+ inputs:
+ testRunner: XUnit
+ testResultsFiles: '**/xUnitResults/*.xml'
+ mergeTestResults: true
+ testRunTitle: 'Unit Tests'
+ condition: succeededOrFailed()
+
+- task: PublishSymbols@1
+ displayName: Create Symbol Index
+ inputs:
+ SymbolsPath: '$(DropRoot)\Roslyn-Signed\$(Build.SourceBranchName)\$(BuildConfiguration)\$(Build.BuildNumber)\Symbols'
+ SearchPattern: '**\*.dll;**\*.exe;**\*.pdb'
+ SymbolsFolder: '$(Build.SourcesDirectory)\Binaries\$(BuildConfiguration)\SymStore'
+ SkipIndexing: true
+ TreatNotIndexedAsWarning: true
+ SymbolsProduct: Roslyn
+ SymbolsVersion: '$(Build.BuildNumber)'
+ SymbolsArtifactName: Symbols
+ condition: and(succeeded(), contains(variables['PB_PublishType'], 'vsts'))
+
+- task: CopyFiles@2
+ displayName: Copy Files to Local Temporary Path
+ inputs:
+ SourceFolder: '$(DropRoot)\Roslyn-Signed\$(Build.SourceBranchName)\$(BuildConfiguration)\$(Build.BuildNumber)\Symbols'
+ TargetFolder: '$(Build.StagingDirectory)\SymbolsForPublish'
+ condition: and(succeeded(), contains(variables['PB_PublishType'], 'vsts'))
+
+- task: ms-vscs-artifact.build-tasks.artifactSymbolTask-1.artifactSymbolTask@0
+ displayName: Publish Symbols to Artifact Services
+ inputs:
+ symbolServiceURI: 'https://microsoft.artifacts.visualstudio.com/DefaultCollection'
+ requestName: '$(system.teamProject)/Roslyn-Signed/$(Build.BuildNumber)/$(Build.BuildId)'
+ sourcePath: '$(Build.StagingDirectory)\SymbolsForPublish'
+ usePat: false
+ continueOnError: true
+ condition: and(succeeded(), contains(variables['PB_PublishType'], 'vsts'))
+
+- task: ms-vseng.MicroBuildTasks.4305a8de-ba66-4d8b-b2d1-0dc4ecbbf5e8.MicroBuildUploadVstsDropFolder@1
+ displayName: Upload VSTS Drop
+ inputs:
+ DropFolder: 'Binaries\$(BuildConfiguration)\Insertion'
+ condition: and(succeeded(), contains(variables['PB_PublishType'], 'vsts'))
+
+- task: NuGetCommand@2
+ displayName: NuGet CoreXT publish
+ inputs:
+ command: push
+ feedsToUse: config
+ packagesToPush: '$(Build.SourcesDirectory)\Binaries\$(BuildConfiguration)\DevDivPackages\**\*.nupkg'
+ publishVstsFeed: '97a41293-2972-4f48-8c0e-05493ae82010'
+ allowPackageConflicts: true
+ condition: and(succeeded(), contains(variables['PB_PublishType'], 'vsts'))
+
+- task: PublishBuildArtifacts@1
+ displayName: Publish Drop (parallel)
+ inputs:
+ PathtoPublish: 'Binaries\$(BuildConfiguration)'
+ ArtifactName: '$(Build.BuildNumber)'
+ publishLocation: FilePath
+ TargetPath: '$(DropRoot)\Roslyn-Signed\$(Build.SourceBranchName)\$(BuildConfiguration)'
+ Parallel: true
+ ParallelCount: 64
+
+- task: ms-vseng.MicroBuildTasks.521a94ea-9e68-468a-8167-6dcf361ea776.MicroBuildCleanup@1
+ displayName: Perform Cleanup Tasks
+ condition: succeededOrFailed()
+
+- task: PublishBuildArtifacts@1
+ displayName: Publish MicroBuild Outputs
+ inputs:
+ PathtoPublish: '$(Build.ArtifactStagingDirectory)\MicroBuild\Output'
+ ArtifactName: '$(Build.BuildNumber)'
+ publishLocation: FilePath
+ TargetPath: '$(DropRoot)\Roslyn-Signed\$(Build.SourceBranchName)\$(BuildConfiguration)'
+ condition: and(succeededOrFailed(), contains(variables['PB_PublishType'], 'vsts'))
+
diff --git a/build/Targets/Packages.props b/build/Targets/Packages.props
index ce31808aea8d083afb5250640e8286b3119cddec..86bd1bb4cfeaed7f02afd820008693e1fc8b3164 100644
--- a/build/Targets/Packages.props
+++ b/build/Targets/Packages.props
@@ -152,7 +152,7 @@
0.4.0-beta
0.4.0-alpha
0.1.3
- 1.0.0-beta2-dev2
+ 1.0.0-beta2-dev3
0.0.4
1.1.92
4.3.0