111 строки
3.2 KiB
YAML
111 строки
3.2 KiB
YAML
pool:
|
|
name: '1ES-Hosted-AzFunc'
|
|
demands:
|
|
- ImageOverride -equals MMS2019TLS
|
|
- vstest
|
|
|
|
steps:
|
|
- task: UseDotNet@2
|
|
displayName: 'Use .NET Core sdk 2.1.526'
|
|
inputs:
|
|
version: 2.1.526
|
|
|
|
- task: DotNetCoreCLI@2
|
|
displayName: 'dotnet build'
|
|
inputs:
|
|
projects: '**/*.csproj'
|
|
arguments: '-c $(BuildConfiguration) -p:CommitHash=$(Build.SourceVersion);VersionSuffix=$(VersionSuffix)'
|
|
|
|
- task: SFP.build-tasks.custom-build-task-1.EsrpCodeSigning@1
|
|
displayName: 'ESRP CodeSigning: Authenticode'
|
|
inputs:
|
|
ConnectedServiceName: 'ESRP Service'
|
|
FolderPath: 'src/EventGridExtension/bin/$(BuildConfiguration)/'
|
|
Pattern: Microsoft.Azure.WebJobs.Extensions.EventGrid.dll
|
|
signConfigType: inlineSignParams
|
|
inlineOperation: |
|
|
[
|
|
{
|
|
"KeyCode": "CP-230012",
|
|
"OperationCode": "SigntoolSign",
|
|
"Parameters": {
|
|
"OpusName": "Microsoft",
|
|
"OpusInfo": "http://www.microsoft.com",
|
|
"FileDigest": "/fd \"SHA256\"",
|
|
"PageHash": "/NPH",
|
|
"TimeStamp": "/tr \"http://rfc3161.gtm.corp.microsoft.com/TSS/HttpTspServer\" /td sha256"
|
|
},
|
|
"ToolName": "sign",
|
|
"ToolVersion": "1.0"
|
|
},
|
|
{
|
|
"KeyCode": "CP-230012",
|
|
"OperationCode": "SigntoolVerify",
|
|
"Parameters": {},
|
|
"ToolName": "sign",
|
|
"ToolVersion": "1.0"
|
|
}
|
|
]
|
|
condition: and(succeeded(), startsWith(variables['SignArtifacts'], 'true'))
|
|
|
|
- task: DotNetCoreCLI@2
|
|
displayName: 'dotnet pack'
|
|
inputs:
|
|
command: pack
|
|
packagesToPack: 'src/**/*.csproj'
|
|
packDirectory: '$(Build.BinariesDirectory)'
|
|
nobuild: true
|
|
buildProperties: 'VersionSuffix=$(VersionSuffix)'
|
|
verbosityPack: Normal
|
|
|
|
- task: SFP.build-tasks.custom-build-task-1.EsrpCodeSigning@1
|
|
displayName: 'ESRP CodeSigning: Nupkg'
|
|
inputs:
|
|
ConnectedServiceName: 'ESRP Service'
|
|
FolderPath: '$(Build.BinariesDirectory)'
|
|
Pattern: '*.nupkg'
|
|
signConfigType: inlineSignParams
|
|
inlineOperation: |
|
|
[
|
|
{
|
|
"KeyCode": "CP-401405",
|
|
"OperationCode": "NuGetSign",
|
|
"Parameters": {},
|
|
"ToolName": "sign",
|
|
"ToolVersion": "1.0"
|
|
},
|
|
{
|
|
"KeyCode": "CP-401405",
|
|
"OperationCode": "NuGetVerify",
|
|
"Parameters": {},
|
|
"ToolName": "sign",
|
|
"ToolVersion": "1.0"
|
|
}
|
|
]
|
|
condition: and(succeeded(), startsWith(variables['SignArtifacts'], 'true'))
|
|
|
|
- task: DotNetCoreCLI@2
|
|
inputs:
|
|
command: test
|
|
projects: 'test/**/*.csproj'
|
|
arguments: '--configuration $(buildConfiguration)'
|
|
|
|
- task: CopyFiles@2
|
|
displayName: 'Copy Files to: $(Build.ArtifactStagingDirectory)'
|
|
inputs:
|
|
SourceFolder: '$(Build.BinariesDirectory)'
|
|
Contents: '*.nupkg'
|
|
TargetFolder: '$(Build.ArtifactStagingDirectory)'
|
|
CleanTargetFolder: true
|
|
|
|
- task: ManifestGeneratorTask@0
|
|
displayName: 'Generate SBOM'
|
|
inputs:
|
|
BuildDropPath: '$(Build.ArtifactStagingDirectory)'
|
|
Verbosity: "Information"
|
|
|
|
- task: PublishPipelineArtifact@0
|
|
displayName: 'Publish Pipeline Artifact'
|
|
inputs:
|
|
targetPath: '$(Build.ArtifactStagingDirectory)'
|