mirror of https://github.com/python/cpython
Integrate `build_msi` into main CI workflow (#121778)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
This commit is contained in:
parent
e55b05f29e
commit
af4329e7b1
|
@ -48,6 +48,7 @@ jobs:
|
||||||
# }}
|
# }}
|
||||||
#
|
#
|
||||||
run-docs: ${{ steps.docs-changes.outputs.run-docs || false }}
|
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_tests: ${{ steps.check.outputs.run_tests || false }}
|
||||||
run_hypothesis: ${{ steps.check.outputs.run_hypothesis || false }}
|
run_hypothesis: ${{ steps.check.outputs.run_hypothesis || false }}
|
||||||
run_cifuzz: ${{ steps.check.outputs.run_cifuzz || false }}
|
run_cifuzz: ${{ steps.check.outputs.run_cifuzz || false }}
|
||||||
|
@ -123,6 +124,20 @@ jobs:
|
||||||
id: docs-changes
|
id: docs-changes
|
||||||
run: |
|
run: |
|
||||||
echo "run-docs=true" >> "${GITHUB_OUTPUT}"
|
echo "run-docs=true" >> "${GITHUB_OUTPUT}"
|
||||||
|
- name: Get a list of the MSI installer-related files
|
||||||
|
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
|
||||||
|
if: >-
|
||||||
|
steps.changed-win-msi-files.outputs.added_modified_renamed != ''
|
||||||
|
id: win-msi-changes
|
||||||
|
run: |
|
||||||
|
echo "run-win-msi=true" >> "${GITHUB_OUTPUT}"
|
||||||
|
|
||||||
check-docs:
|
check-docs:
|
||||||
name: Docs
|
name: Docs
|
||||||
|
@ -218,6 +233,21 @@ jobs:
|
||||||
arch: ${{ matrix.arch }}
|
arch: ${{ matrix.arch }}
|
||||||
free-threading: ${{ matrix.free-threading }}
|
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:
|
build_macos:
|
||||||
name: 'macOS'
|
name: 'macOS'
|
||||||
needs: check_source
|
needs: check_source
|
||||||
|
@ -571,6 +601,7 @@ jobs:
|
||||||
- build_ubuntu_ssltests
|
- build_ubuntu_ssltests
|
||||||
- build_wasi
|
- build_wasi
|
||||||
- build_windows
|
- build_windows
|
||||||
|
- build_windows_msi
|
||||||
- test_hypothesis
|
- test_hypothesis
|
||||||
- build_asan
|
- build_asan
|
||||||
- build_tsan
|
- build_tsan
|
||||||
|
@ -585,6 +616,7 @@ jobs:
|
||||||
with:
|
with:
|
||||||
allowed-failures: >-
|
allowed-failures: >-
|
||||||
build_ubuntu_ssltests,
|
build_ubuntu_ssltests,
|
||||||
|
build_windows_msi,
|
||||||
cifuzz,
|
cifuzz,
|
||||||
test_hypothesis,
|
test_hypothesis,
|
||||||
allowed-skips: >-
|
allowed-skips: >-
|
||||||
|
|
|
@ -1,40 +0,0 @@
|
||||||
name: TestsMSI
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- 'main'
|
|
||||||
- '3.*'
|
|
||||||
paths:
|
|
||||||
- 'Tools/msi/**'
|
|
||||||
- '.github/workflows/build_msi.yml'
|
|
||||||
pull_request:
|
|
||||||
branches:
|
|
||||||
- 'main'
|
|
||||||
- '3.*'
|
|
||||||
paths:
|
|
||||||
- 'Tools/msi/**'
|
|
||||||
- '.github/workflows/build_msi.yml'
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
|
|
||||||
concurrency:
|
|
||||||
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
|
|
||||||
cancel-in-progress: true
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build:
|
|
||||||
name: Windows Installer
|
|
||||||
runs-on: windows-latest
|
|
||||||
timeout-minutes: 60
|
|
||||||
strategy:
|
|
||||||
matrix:
|
|
||||||
type: [x86, x64, arm64]
|
|
||||||
env:
|
|
||||||
IncludeFreethreaded: true
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
- name: Build CPython installer
|
|
||||||
run: .\Tools\msi\build.bat --doc -${{ matrix.type }}
|
|
|
@ -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 }}
|
Loading…
Reference in New Issue