PowerShell/tools/releaseBuild/azureDevOps/templates/compliance/generateNotice.yml
Travis Plunk 5ce5936d78
Create compliance build (#16286)
Co-authored-by: Robert Holt <rjmholt@gmail.com>
2021-10-28 11:07:09 -07:00

65 lines
2.3 KiB
YAML

parameters:
- name: parentJobs
type: jobList
jobs:
- job: generateNotice
variables:
- name: runCodesignValidationInjection
value : false
- name: NugetSecurityAnalysisWarningLevel
value: none
displayName: Generate Notice
dependsOn:
${{ parameters.parentJobs }}
pool:
name: PowerShell1ES
demands:
- ImageOverride -equals MMS2019
# APIScan can take a long time
timeoutInMinutes: 15
steps:
- checkout: self
clean: true
- pwsh: |
Get-Content ./assets/additionalAttributions.txt | Out-File '$(System.ArtifactsDirectory)\additionalAttributions.txt' -Encoding utf8NoBOM -Force
Get-Content -Raw -Path '$(System.ArtifactsDirectory)\additionalAttributions.txt'
displayName: Get Additional Attributions
- pwsh: |
Import-Module ./tools/ComponentGovernance
$pat = ConvertTo-SecureString -String "$(CgPat)" -AsPlainText -Force
Set-CgCredentials -Pat $pat -Organization $(CgOrganization) -Project $(CgProject)
$repo = Get-CgPsRepository
$typeId = (Get-CgSnapshotType -CgRepository $repo | where-object {$_.isTracked -eq 'True' -and $_.buildDisplayType -eq 'Coordinated Packages'}).typeId
$notice = Get-CgNotice -CgRepository $repo -SnapshotTypeId $typeId
$notice | Out-File '$(System.ArtifactsDirectory)\ThirdPartyNotices.txt' -Encoding utf8NoBOM -Force
Get-Content '$(System.ArtifactsDirectory)\additionalAttributions.txt' | Out-File '$(System.ArtifactsDirectory)\ThirdPartyNotices.txt' -Encoding utf8NoBOM -Force -Append
displayName: Get Notice
- task: AzureFileCopy@4
displayName: 'upload Notice'
inputs:
SourcePath: $(System.ArtifactsDirectory)\ThirdPartyNotices.txt
azureSubscription: '$(AzureFileCopySubscription)'
Destination: AzureBlob
storage: '$(StorageAccount)'
ContainerName: 'tpn'
resourceGroup: '$(StorageResourceGroup)'
- task: PublishPipelineArtifact@1
inputs:
targetPath: $(System.ArtifactsDirectory)
artifactName: notice
displayName: Publish notice artifacts
- task: ms.vss-governance-buildtask.governance-build-task-component-detection.ComponentGovernanceComponentDetection@0
displayName: 'Component Detection'
inputs:
sourceScanPath: '$(Build.SourcesDirectory)'
snapshotForceEnabled: true