Skip to content

Commit

Permalink
[3.12] Integrate build_msi into main CI workflow (pythonGH-121778)
Browse files Browse the repository at this point in the history
Co-authored-by: Hugo van Kemenade <[email protected]>
Co-authored-by: Adam Turner <[email protected]>.
(cherry picked from commit af4329e)

Co-authored-by: Sviatoslav Sydorenko (Святослав Сидоренко) <[email protected]>
  • Loading branch information
webknjaz committed Jul 24, 2024
1 parent 9dad694 commit 1e43817
Show file tree
Hide file tree
Showing 3 changed files with 56 additions and 38 deletions.
32 changes: 32 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ jobs:
# }}
#
run-docs: ${{ steps.docs-changes.outputs.run-docs || false }}
run-win-msi: ${{ steps.win-msi-changes.outputs.run-win-msi || false }}
run_tests: ${{ steps.check.outputs.run_tests || false }}
run_hypothesis: ${{ steps.check.outputs.run_hypothesis || false }}
config_hash: ${{ steps.config_hash.outputs.hash }} # str
Expand Down Expand Up @@ -115,6 +116,20 @@ jobs:
id: docs-changes
run: |
echo "run-docs=true" >> "${GITHUB_OUTPUT}"
- name: Get a list of the MSI installer-related files
id: changed-win-msi-files
uses: Ana06/[email protected]
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
if: >-
steps.changed-win-msi-files.outputs.added_modified_renamed != ''
id: win-msi-changes
run: |
echo "run-win-msi=true" >> "${GITHUB_OUTPUT}"
check-docs:
name: Docs
Expand Down Expand Up @@ -255,6 +270,21 @@ 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: check_source
if: fromJSON(needs.check_source.outputs.run-win-msi)
strategy:
matrix:
arch:
- x86
- x64
- arm64
uses: ./.github/workflows/reusable-windows-msi.yml
with:
arch: ${{ matrix.arch }}

build_macos:
name: 'macOS'
needs: check_source
Expand Down Expand Up @@ -532,6 +562,7 @@ jobs:
- build_ubuntu
- build_ubuntu_ssltests
- build_windows
- build_windows_msi
- test_hypothesis
- build_asan
- build_tsan
Expand All @@ -545,6 +576,7 @@ jobs:
allowed-failures: >-
build_macos,
build_ubuntu_ssltests,
build_windows_msi,
test_hypothesis,
allowed-skips: >-
${{
Expand Down
38 changes: 0 additions & 38 deletions .github/workflows/build_msi.yml

This file was deleted.

24 changes: 24 additions & 0 deletions .github/workflows/reusable-windows-msi.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: TestsMSI

on:
workflow_call:
inputs:
arch:
description: CPU architecture
required: true
type: string

permissions:
contents: read

jobs:
build:
name: installer for ${{ inputs.arch }}
runs-on: windows-latest
timeout-minutes: 60
env:
IncludeFreethreaded: true
steps:
- uses: actions/checkout@v4
- name: Build CPython installer
run: .\Tools\msi\build.bat --doc -${{ inputs.arch }}

0 comments on commit 1e43817

Please sign in to comment.