]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
[3.12] Remove MSI build from security-only branch (#148007)
authorHugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Thu, 2 Apr 2026 12:53:27 +0000 (15:53 +0300)
committerGitHub <noreply@github.com>
Thu, 2 Apr 2026 12:53:27 +0000 (15:53 +0300)
.github/workflows/build.yml
.github/workflows/reusable-change-detection.yml
.github/workflows/reusable-context.yml
.github/workflows/reusable-windows-msi.yml [deleted file]
Tools/build/compute-changes.py

index 2294f5151c14a2b25514540e84340e8e96c9524c..d13ce4c1abdb678e7d29ff7b22d0cea54005f8e4 100644 (file)
@@ -215,22 +215,6 @@ jobs:
       arch: ${{ matrix.arch }}
       free-threading: ${{ matrix.free-threading }}
 
-  build-windows-msi:
-    name: >-  # ${{ '' } is a hack to nest jobs under the same sidebar category
-      Windows MSI${{ '' }}
-    needs: build-context
-    if: fromJSON(needs.build-context.outputs.run-windows-msi)
-    strategy:
-      fail-fast: false
-      matrix:
-        arch:
-        - x86
-        - x64
-        - arm64
-    uses: ./.github/workflows/reusable-windows-msi.yml
-    with:
-      arch: ${{ matrix.arch }}
-
   build-macos:
     name: >-
       macOS
@@ -539,7 +523,6 @@ jobs:
     - check-autoconf-regen
     - check-generated-files
     - build-windows
-    - build-windows-msi
     - build-macos
     - build-ubuntu
     - build-ubuntu-ssltests
@@ -553,7 +536,6 @@ jobs:
       uses: re-actors/alls-green@05ac9388f0aebcb5727afa17fcccfecd6f8ec5fe
       with:
         allowed-failures: >-
-          build-windows-msi,
           build-ubuntu-ssltests,
           test-hypothesis,
         allowed-skips: >-
index 2a421673c700cce62466e705033f9a2b3fcadd8a..10b829d334ab3308c46922c8bb5b94b56fd9d454 100644 (file)
@@ -32,10 +32,6 @@ on:  # yamllint disable-line rule:truthy
       run_tests:
         description: Whether to run the regular tests
         value: ${{ jobs.compute-changes.outputs.run-tests || false }}  # bool
-      run-win-msi:
-        description: Whether to run the MSI installer smoke tests
-        value: >-  # bool
-          ${{ jobs.compute-changes.outputs.run-win-msi || false }}
       run_hypothesis:
         description: Whether to run the Hypothesis tests
         value: >-  # bool
@@ -56,7 +52,6 @@ jobs:
       run-docs: ${{ steps.docs-changes.outputs.run-docs }}
       run-hypothesis: ${{ steps.check.outputs.run-hypothesis }}
       run-tests: ${{ steps.check.outputs.run-tests }}
-      run-win-msi: ${{ steps.win-msi-changes.outputs.run-win-msi }}
     steps:
     - run: >-
         echo '${{ github.event_name }}'
@@ -136,23 +131,3 @@ jobs:
       id: docs-changes
       run: |
         echo "run-docs=true" >> "${GITHUB_OUTPUT}"
-    - name: Get a list of the MSI installer-related files
-      if: github.event_name == 'pull_request'
-      id: changed-win-msi-files
-      uses: Ana06/get-changed-files@v2.3.0
-      with:
-        filter: |
-          Tools/msi/**
-          .github/workflows/reusable-windows-msi.yml
-        format: csv  # works for paths with spaces
-    - name: Check for changes in MSI installer-related files
-      # We only want to run this on PRs when related files are changed,
-      # or when user triggers manual workflow run.
-      if: >-
-        (
-          github.event_name == 'pull_request'
-          && steps.changed-win-msi-files.outputs.added_modified_renamed != ''
-        ) || github.event_name == 'workflow_dispatch'
-      id: win-msi-changes
-      run: |
-        echo "run-win-msi=true" >> "${GITHUB_OUTPUT}"
index 9786742dad6a67b956e969271aea2f10711eb879..66d56805ce51fa8fcf97a909efc00f6940c0022e 100644 (file)
@@ -29,9 +29,6 @@ on:  # yamllint disable-line rule:truthy
       run-windows-tests:
         description: Whether to run the Windows tests
         value: ${{ jobs.compute-changes.outputs.run-windows-tests }}  # bool
-      run-windows-msi:
-        description: Whether to run the MSI installer smoke tests
-        value: ${{ jobs.compute-changes.outputs.run-windows-msi }}  # bool
       run-ci-fuzz:
         description: Whether to run the CIFuzz job
         value: ${{ jobs.compute-changes.outputs.run-ci-fuzz }}  # bool
@@ -46,7 +43,6 @@ jobs:
       run-ci-fuzz: ${{ steps.changes.outputs.run-ci-fuzz }}
       run-docs: ${{ steps.changes.outputs.run-docs }}
       run-tests: ${{ steps.changes.outputs.run-tests }}
-      run-windows-msi: ${{ steps.changes.outputs.run-windows-msi }}
       run-windows-tests: ${{ steps.changes.outputs.run-windows-tests }}
     steps:
     - name: Set up Python
diff --git a/.github/workflows/reusable-windows-msi.yml b/.github/workflows/reusable-windows-msi.yml
deleted file mode 100644 (file)
index b5bacab..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-name: Reusable Windows MSI
-
-on:
-  workflow_call:
-    inputs:
-      arch:
-        description: CPU architecture
-        required: true
-        type: string
-
-permissions:
-  contents: read
-
-env:
-  FORCE_COLOR: 1
-
-jobs:
-  build:
-    name: installer for ${{ inputs.arch }}
-    runs-on: windows-2022
-    timeout-minutes: 60
-    env:
-      ARCH: ${{ inputs.arch }}
-      IncludeFreethreaded: true
-    steps:
-    - uses: actions/checkout@v6
-      with:
-        persist-credentials: false
-    - name: Build CPython installer
-      run: ./Tools/msi/build.bat --doc -"${ARCH}"
-      shell: bash
index b5993d29b92972fa8c59043db434d9a4a32ca19c..a4d006e1c845d2bb0c2e33bab3ce13f828478359 100644 (file)
@@ -51,7 +51,6 @@ class Outputs:
     run_ci_fuzz: bool = False
     run_docs: bool = False
     run_tests: bool = False
-    run_windows_msi: bool = False
     run_windows_tests: bool = False
 
 
@@ -79,9 +78,6 @@ def compute_changes() -> None:
     if outputs.run_docs:
         print("Build documentation")
 
-    if outputs.run_windows_msi:
-        print("Build Windows MSI")
-
     print(outputs)
 
     write_github_output(outputs)
@@ -116,7 +112,6 @@ def process_changed_files(changed_files: Set[Path]) -> Outputs:
     run_ci_fuzz = False
     run_docs = False
     run_windows_tests = False
-    run_windows_msi = False
 
     for file in changed_files:
         # Documentation files
@@ -128,8 +123,6 @@ def process_changed_files(changed_files: Set[Path]) -> Outputs:
                 run_tests = run_ci_fuzz = True
             if file.name == "reusable-docs.yml":
                 run_docs = True
-            if file.name == "reusable-windows-msi.yml":
-                run_windows_msi = True
 
         if not (
             doc_file
@@ -155,16 +148,11 @@ def process_changed_files(changed_files: Set[Path]) -> Outputs:
         if doc_file:
             run_docs = True
 
-        # Check for changed MSI installer-related files
-        if file.parts[:2] == ("Tools", "msi"):
-            run_windows_msi = True
-
     return Outputs(
         run_ci_fuzz=run_ci_fuzz,
         run_docs=run_docs,
         run_tests=run_tests,
         run_windows_tests=run_windows_tests,
-        run_windows_msi=run_windows_msi,
     )
 
 
@@ -178,7 +166,6 @@ def process_target_branch(outputs: Outputs, git_branch: str) -> Outputs:
 
     if os.environ.get("GITHUB_EVENT_NAME", "").lower() == "workflow_dispatch":
         outputs.run_docs = True
-        outputs.run_windows_msi = True
 
     return outputs
 
@@ -195,7 +182,6 @@ def write_github_output(outputs: Outputs) -> None:
         f.write(f"run-docs={bool_lower(outputs.run_docs)}\n")
         f.write(f"run-tests={bool_lower(outputs.run_tests)}\n")
         f.write(f"run-windows-tests={bool_lower(outputs.run_windows_tests)}\n")
-        f.write(f"run-windows-msi={bool_lower(outputs.run_windows_msi)}\n")
 
 
 def bool_lower(value: bool, /) -> str: