11trigger :
22 branches :
33 include :
4- - main-v16
5- - v16 /dev
4+ - main-v17
5+ - v17 /dev
66 paths :
77 include :
88 - src/Umbraco.Cms.Integrations.SEO.Semrush/**
@@ -16,24 +16,28 @@ variables:
1616 project : ' src/$(projectName)/$(projectName).csproj'
1717 buildPlatform : ' Any CPU'
1818 buildConfiguration : ' Release'
19+ productGroup : ' DXP'
20+ productVersion : ' v17'
21+ DT_API_KEY : $(dtApiKey)
22+ DT_BASE_URL : $(dtBaseUrl)
1923
2024steps :
25+ - task : UseDotNet@2
26+ displayName : ' Use SDK version 10.0.100'
27+ inputs :
28+ packageType : ' sdk'
29+ version : ' 10.0.100'
30+
2131- task : NuGetToolInstaller@1
2232 displayName : ' Install NuGet'
2333
2434- task : DotNetCoreCLI@2
2535 displayName : ' NuGet Restore'
2636 inputs :
2737 command : ' restore'
28- feedsToUse : ' select '
38+ feedsToUse : ' config '
2939 projects : ' $(project)'
30- includeNuGetOrg : true
31-
32- - task : UseDotNet@2
33- displayName : ' Use SDK version 9.0.203'
34- inputs :
35- packageType : ' sdk'
36- version : ' 9.0.203'
40+ nugetConfigPath : ' NuGet.config'
3741
3842- task : VSBuild@1
3943 displayName : ' Build Project'
@@ -56,4 +60,27 @@ steps:
5660 inputs :
5761 PathtoPublish : ' $(Build.ArtifactStagingDirectory)'
5862 ArtifactName : ' drop'
59- publishLocation : ' Container'
63+ publishLocation : ' Container'
64+
65+ # Generate/upload SBOM with cdxgen
66+ - script : |
67+ cd $(Build.SourcesDirectory)
68+ npm install --global @cyclonedx/cdxgen
69+ displayName : ' Install cdxgen'
70+
71+ - script : |
72+ mkdir -p $(Build.ArtifactStagingDirectory)/bom
73+ cd $(Build.SourcesDirectory)
74+
75+ cdxgen --recurse --output $(Build.ArtifactStagingDirectory)\bom\bom.json --json-pretty --project-group "$(productGroup)" --project-name "$(projectName)" --project-version "$(productVersion)" --server-url "$(DT_BASE_URL)" --api-key "$(DT_API_KEY)" --deep
76+ displayName : ' Generate & Upload SBOM with cdxgen'
77+ env :
78+ DT_API_KEY : $(DT_API_KEY)
79+ DT_BASE_URL : $(DT_BASE_URL)
80+
81+ # Publish SBOM artifact
82+ - task : PublishPipelineArtifact@1
83+ displayName : ' Publish SBOM Artifact'
84+ inputs :
85+ targetPath : $(Build.ArtifactStagingDirectory)/bom
86+ artifactName : SBOM
0 commit comments