Skip to content

Commit

Permalink
Update .NET Core version to 3.1 and add .NET 6 (#301)
Browse files Browse the repository at this point in the history
  • Loading branch information
satbai committed Mar 7, 2022
1 parent 4d58db9 commit 94af812
Show file tree
Hide file tree
Showing 6 changed files with 75 additions and 25 deletions.
2 changes: 1 addition & 1 deletion Build.props
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<CredentialProviderVersion>0.1.28</CredentialProviderVersion>
<CredentialProviderVersion>1.0.0</CredentialProviderVersion>
</PropertyGroup>
</Project>
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ In this and subsequent examples, configuration can be either `debug` or `release
### Publishing

```shell
dotnet publish CredentialProvider.Microsoft --configuration Release --framework netcoreapp2.1
dotnet publish CredentialProvider.Microsoft --configuration Release --framework net6.0
```

### Packing
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFrameworks>netcoreapp2.1;net461</TargetFrameworks>
<TargetFrameworks>netcoreapp3.1;net6.0;net461</TargetFrameworks>

<IsPackable>false</IsPackable>
</PropertyGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<PropertyGroup>
<OutputType>Exe</OutputType>
<RootNamespace>NuGetCredentialProvider</RootNamespace>
<TargetFrameworks>netcoreapp2.1;net461</TargetFrameworks>
<TargetFrameworks>netcoreapp3.1;net6.0;net461</TargetFrameworks>
<LangVersion>latest</LangVersion>
<ApplicationIcon>helpericons.ico</ApplicationIcon>
<Version>$(CredentialProviderVersion)</Version>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
<file src="ThirdPartyNotices.txt" target="\" />
<file src="EULA_Microsoft Visual Studio Team Services Credential Provider.docx" target="\" />
<file src="bin\$Configuration$\net461\**\*.*" target="\plugins\netfx\CredentialProvider.Microsoft" />
<file src="bin\$Configuration$\netcoreapp2.1\publish\**\*.*" target="\plugins\netcore\CredentialProvider.Microsoft" />
<file src="bin\$Configuration$\netcoreapp3.1\publish\**\*.*" target="\plugins\netcore\CredentialProvider.Microsoft" />
<file src="bin\$Configuration$\net6.0\publish\**\*.*" target="\plugins\net6.0\CredentialProvider.Microsoft" />
</files>
</package>
89 changes: 69 additions & 20 deletions build/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@ parameters:

steps:
- task: UseDotNet@2
displayName: Install .NET Core 2.1 runtime
displayName: Install .NET Core 3.1 runtime
inputs:
packageType: runtime
version: 2.1.x
version: 3.1.x

- task: UseDotNet@2
displayName: Use .NET 6 SDK
Expand Down Expand Up @@ -41,13 +41,13 @@ steps:
projects: 'CredentialProvider.Microsoft/CredentialProvider.Microsoft.csproj'
feedsToUse: config
nugetConfigPath: 'CredentialProvider.Microsoft/NuGet.config'
- task: MSBuild@1

- task: VSBuild@1
displayName: Build CredentialProvider
inputs:
solution: 'CredentialProvider.Microsoft/CredentialProvider.Microsoft.csproj'
configuration: '$(BuildConfiguration)'
msbuildArguments: '/t:rebuild'
msbuildArgs: '/t:rebuild'

- ${{ if eq(parameters.sign, 'true') }}:
- task: MSBuild@1
Expand All @@ -70,27 +70,76 @@ steps:
DropFolder: '$(Build.ArtifactStagingDirectory)\$(BuildConfiguration)\vsix\'
AccessToken: $(DevDivDropManageAccessToken)

- ${{ if ne(parameters.sign, 'true') }}:
- task: DotNetCoreCLI@2
displayName: dotnet test
inputs:
command: test
projects: 'CredentialProvider.Microsoft.Tests/CredentialProvider.Microsoft.Tests.csproj'

- task: DotNetCoreCLI@2
displayName: dotnet publish netcoreapp2.1
displayName: dotnet publish net6.0
inputs:
command: publish
publishWebProjects: false
projects: 'CredentialProvider.Microsoft/CredentialProvider.Microsoft.csproj'
arguments: '--no-build --framework netcoreapp2.1 --configuration $(BuildConfiguration)'
arguments: '--no-build --framework net6.0 --configuration $(BuildConfiguration)'
zipAfterPublish: false
modifyOutputPath: false

- ${{ if ne(parameters.sign, 'true') }}:
- task: DotNetCoreCLI@2
displayName: dotnet test
inputs:
command: test
projects: 'CredentialProvider.Microsoft.Tests/CredentialProvider.Microsoft.Tests.csproj'
# Create .NET 6.0 release for netcore users
- task: CopyFiles@2
displayName: Copy net6.0 files into tarball
inputs:
sourceFolder: '$(Build.SourcesDirectory)\CredentialProvider.Microsoft\bin\$(BuildConfiguration)\net6.0\publish\'
contents: '**\*'
targetFolder: '$(Build.ArtifactStagingDirectory)\tarball\plugins\netcore\CredentialProvider.Microsoft\'
cleanTargetFolder: true

- task: CopyFiles@2
displayName: Copy license files into tarball
inputs:
contents: |
LICENSE
CredentialProvider.Microsoft\EULA_Microsoft Visual Studio Team Services Credential Provider.docx
CredentialProvider.Microsoft\ThirdPartyNotices.txt
targetFolder: '$(Build.ArtifactStagingDirectory)\tarball\'
flattenFolders: true

- task: ArchiveFiles@2
displayName: Create net6.0 tarball
inputs:
rootFolderOrFile: '$(Build.ArtifactStagingDirectory)\tarball\'
includeRootFolder: false
archiveType: 'tar'
tarCompression: 'gz'
archiveFile: '$(Build.ArtifactStagingDirectory)\$(BuildConfiguration)\Microsoft.Net6.NuGet.CredentialProvider.tar.gz'
replaceExistingArchive: true

- task: ArchiveFiles@2
displayName: Create net6.0 zip
inputs:
rootFolderOrFile: '$(Build.ArtifactStagingDirectory)\tarball\'
includeRootFolder: false
archiveType: 'zip'
archiveFile: '$(Build.ArtifactStagingDirectory)\$(BuildConfiguration)\Microsoft.Net6.NuGet.CredentialProvider.zip'
replaceExistingArchive: true

# Clean target folder and create netcore 3.1 and netfx releases
- task: DotNetCoreCLI@2
displayName: dotnet publish netcoreapp3.1
inputs:
command: publish
publishWebProjects: false
projects: 'CredentialProvider.Microsoft/CredentialProvider.Microsoft.csproj'
arguments: '--no-build --framework netcoreapp3.1 --configuration $(BuildConfiguration)'
zipAfterPublish: false
modifyOutputPath: false

- task: CopyFiles@2
displayName: Copy netcore files into tarball
displayName: Copy netcore 3.1 files into tarball
inputs:
sourceFolder: '$(Build.SourcesDirectory)\CredentialProvider.Microsoft\bin\$(BuildConfiguration)\netcoreapp2.1\publish\'
sourceFolder: '$(Build.SourcesDirectory)\CredentialProvider.Microsoft\bin\$(BuildConfiguration)\netcoreapp3.1\publish\'
contents: '**\*'
targetFolder: '$(Build.ArtifactStagingDirectory)\tarball\plugins\netcore\CredentialProvider.Microsoft\'
cleanTargetFolder: true
Expand All @@ -106,23 +155,23 @@ steps:
flattenFolders: true

- task: ArchiveFiles@2
displayName: Create netcore tarball
displayName: Create netcore 3.1 tarball
inputs:
rootFolderOrFile: '$(Build.ArtifactStagingDirectory)\tarball\'
includeRootFolder: false
archiveType: 'tar'
tarCompression: 'gz'
archiveFile: '$(Build.ArtifactStagingDirectory)\$(BuildConfiguration)\Microsoft.NetCore2.NuGet.CredentialProvider.tar.gz'
archiveFile: '$(Build.ArtifactStagingDirectory)\$(BuildConfiguration)\Microsoft.NetCore3.NuGet.CredentialProvider.tar.gz'
replaceExistingArchive: true

# NOTE: Changing the name of the zip will break things. Please don't do it.
- task: ArchiveFiles@2
displayName: Create netcore zip
displayName: Create netcore 3.1 zip
inputs:
rootFolderOrFile: '$(Build.ArtifactStagingDirectory)\tarball\'
includeRootFolder: false
archiveType: 'zip'
archiveFile: '$(Build.ArtifactStagingDirectory)\$(BuildConfiguration)\Microsoft.NetCore2.NuGet.CredentialProvider.zip'
archiveFile: '$(Build.ArtifactStagingDirectory)\$(BuildConfiguration)\Microsoft.NetCore3.NuGet.CredentialProvider.zip'
replaceExistingArchive: true

- task: CopyFiles@2
Expand All @@ -133,7 +182,7 @@ steps:
targetFolder: '$(Build.ArtifactStagingDirectory)\tarball\plugins\netfx\CredentialProvider.Microsoft\'

- task: ArchiveFiles@2
displayName: Create tarball
displayName: Create netfx tarball
inputs:
rootFolderOrFile: '$(Build.ArtifactStagingDirectory)\tarball\'
includeRootFolder: false
Expand Down

0 comments on commit 94af812

Please sign in to comment.