From 9fa53ed516c003f096e9e894a22aa262dfbfdc6e Mon Sep 17 00:00:00 2001 From: Steve Dower Date: Fri, 13 Jun 2025 13:14:30 +0100 Subject: [PATCH 1/7] Switch branch for layout script for testing --- windows-release/stage-layout-pymanager.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/windows-release/stage-layout-pymanager.yml b/windows-release/stage-layout-pymanager.yml index 018e0271..a8e267e6 100644 --- a/windows-release/stage-layout-pymanager.yml +++ b/windows-release/stage-layout-pymanager.yml @@ -2,7 +2,7 @@ parameters: BuildToPackage: current DoFreethreaded: false DoEmbed: false - LayoutScriptBranch: main + LayoutScriptBranch: gh-135455 jobs: - job: Make_PyManager_Layouts From f5be9e24de6b5d5de6955629e412651b35dbde28 Mon Sep 17 00:00:00 2001 From: Steve Dower Date: Fri, 13 Jun 2025 14:20:20 +0100 Subject: [PATCH 2/7] Fix SBOM skip in embedded layouts --- windows-release/stage-layout-embed.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/windows-release/stage-layout-embed.yml b/windows-release/stage-layout-embed.yml index bdd3b4e9..8910b533 100644 --- a/windows-release/stage-layout-embed.yml +++ b/windows-release/stage-layout-embed.yml @@ -95,6 +95,7 @@ jobs: - task: PublishBuildArtifacts@1 displayName: 'Publish Artifact: sbom' + condition: and(succeeded(), not(variables['SkipSBOM'])) inputs: PathtoPublish: $(Build.ArtifactStagingDirectory)\sbom ArtifactName: sbom From d2907c85ac47957f4078ac5aab9bc44073d569cd Mon Sep 17 00:00:00 2001 From: Steve Dower Date: Fri, 13 Jun 2025 14:26:44 +0100 Subject: [PATCH 3/7] Revert layout script branch --- windows-release/stage-layout-pymanager.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/windows-release/stage-layout-pymanager.yml b/windows-release/stage-layout-pymanager.yml index a8e267e6..018e0271 100644 --- a/windows-release/stage-layout-pymanager.yml +++ b/windows-release/stage-layout-pymanager.yml @@ -2,7 +2,7 @@ parameters: BuildToPackage: current DoFreethreaded: false DoEmbed: false - LayoutScriptBranch: gh-135455 + LayoutScriptBranch: main jobs: - job: Make_PyManager_Layouts From 8d521d1ab62f971be4389dbfc3d1bb7e4f654dc9 Mon Sep 17 00:00:00 2001 From: Steve Dower Date: Fri, 13 Jun 2025 14:40:20 +0100 Subject: [PATCH 4/7] Add automatic SBOM check --- windows-release/stage-layout-embed.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/windows-release/stage-layout-embed.yml b/windows-release/stage-layout-embed.yml index 8910b533..8de914c0 100644 --- a/windows-release/stage-layout-embed.yml +++ b/windows-release/stage-layout-embed.yml @@ -65,6 +65,14 @@ jobs: git -C "$(Pipeline.Workspace)\release-tools" checkout $(Build.SourceVersion) displayName: 'Clone the python/release-tools repository' + - powershell: | + if (-not (Test-Path "$(Build.SourcesDirectory)\Misc\externals.spdx.json")) { + "externals.spdx.json is missing - skipping SBOM" + Write-Host "##vso[task.setvariable variable=SkipSBOM]1" + } + condition: and(succeeded(), not(variables['SkipSBOM'])) + displayName: 'Checking for SBOM' + - powershell: > & "$(Python)" "$(Pipeline.Workspace)\release-tools\sbom.py" From 6f2a8be5f33e7b70286729c639d798c5b1561be7 Mon Sep 17 00:00:00 2001 From: Steve Dower Date: Fri, 13 Jun 2025 14:43:49 +0100 Subject: [PATCH 5/7] Move SBOM check to checkout command --- windows-release/checkout.yml | 10 ++++++++++ windows-release/stage-layout-embed.yml | 8 -------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/windows-release/checkout.yml b/windows-release/checkout.yml index 6a69fbef..b2aa190d 100644 --- a/windows-release/checkout.yml +++ b/windows-release/checkout.yml @@ -35,3 +35,13 @@ steps: ${{ if and(parameters.Path, ne(parameters.Path, '.')) }}: workingDirectory: ${{ parameters.Path }} condition: and(succeeded(), variables['SourceCommit']) + +- powershell: | + if (-not (Test-Path "Misc\externals.spdx.json")) { + "externals.spdx.json is missing - skipping SBOM" + Write-Host "##vso[task.setvariable variable=SkipSBOM]1" + } + displayName: 'Checking for SBOM inputs' + ${{ if and(parameters.Path, ne(parameters.Path, '.')) }}: + workingDirectory: ${{ parameters.Path }} + condition: and(succeeded(), not(variables['SkipSBOM'])) diff --git a/windows-release/stage-layout-embed.yml b/windows-release/stage-layout-embed.yml index 8de914c0..8910b533 100644 --- a/windows-release/stage-layout-embed.yml +++ b/windows-release/stage-layout-embed.yml @@ -65,14 +65,6 @@ jobs: git -C "$(Pipeline.Workspace)\release-tools" checkout $(Build.SourceVersion) displayName: 'Clone the python/release-tools repository' - - powershell: | - if (-not (Test-Path "$(Build.SourcesDirectory)\Misc\externals.spdx.json")) { - "externals.spdx.json is missing - skipping SBOM" - Write-Host "##vso[task.setvariable variable=SkipSBOM]1" - } - condition: and(succeeded(), not(variables['SkipSBOM'])) - displayName: 'Checking for SBOM' - - powershell: > & "$(Python)" "$(Pipeline.Workspace)\release-tools\sbom.py" From 1251378d6956231f4f79fe8e413d0fbc21788bf1 Mon Sep 17 00:00:00 2001 From: Steve Dower Date: Fri, 13 Jun 2025 15:01:49 +0100 Subject: [PATCH 6/7] Bring back branch override for testing --- windows-release/azure-pipelines.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/windows-release/azure-pipelines.yml b/windows-release/azure-pipelines.yml index e2fbdd2a..8cd32fa6 100644 --- a/windows-release/azure-pipelines.yml +++ b/windows-release/azure-pipelines.yml @@ -215,6 +215,8 @@ stages: BuildToPackage: ${{ parameters.BuildToPackage }} DoFreethreaded: ${{ parameters.DoFreethreaded }} DoEmbed: ${{ parameters.DoEmbed }} + # TODO: Remove LayoutScriptBranch before merge + LayoutScriptBranch: gh-135455 - stage: Pack dependsOn: Layout From b96d180758b12cfdecd7e5e9efad1196014fdf11 Mon Sep 17 00:00:00 2001 From: Steve Dower Date: Fri, 13 Jun 2025 15:16:47 +0100 Subject: [PATCH 7/7] Remove branch override --- windows-release/azure-pipelines.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/windows-release/azure-pipelines.yml b/windows-release/azure-pipelines.yml index 8cd32fa6..e2fbdd2a 100644 --- a/windows-release/azure-pipelines.yml +++ b/windows-release/azure-pipelines.yml @@ -215,8 +215,6 @@ stages: BuildToPackage: ${{ parameters.BuildToPackage }} DoFreethreaded: ${{ parameters.DoFreethreaded }} DoEmbed: ${{ parameters.DoEmbed }} - # TODO: Remove LayoutScriptBranch before merge - LayoutScriptBranch: gh-135455 - stage: Pack dependsOn: Layout