mirror of
https://github.com/python/cpython.git
synced 2024-11-27 11:55:13 +08:00
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
32
.github/workflows/build.yml
vendored
32
.github/workflows/build.yml
vendored
@ -48,6 +48,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 }}
|
||||
run_cifuzz: ${{ steps.check.outputs.run_cifuzz || false }}
|
||||
@ -123,6 +124,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/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:
|
||||
name: Docs
|
||||
@ -218,6 +233,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
|
||||
@ -571,6 +601,7 @@ jobs:
|
||||
- build_ubuntu_ssltests
|
||||
- build_wasi
|
||||
- build_windows
|
||||
- build_windows_msi
|
||||
- test_hypothesis
|
||||
- build_asan
|
||||
- build_tsan
|
||||
@ -585,6 +616,7 @@ jobs:
|
||||
with:
|
||||
allowed-failures: >-
|
||||
build_ubuntu_ssltests,
|
||||
build_windows_msi,
|
||||
cifuzz,
|
||||
test_hypothesis,
|
||||
allowed-skips: >-
|
||||
|
40
.github/workflows/build_msi.yml
vendored
40
.github/workflows/build_msi.yml
vendored
@ -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 }}
|
24
.github/workflows/reusable-windows-msi.yml
vendored
Normal file
24
.github/workflows/reusable-windows-msi.yml
vendored
Normal file
@ -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
Block a user