◐ Shell
clean mode source ↗

Generalize reusable Windows CI jobs by webknjaz · Pull Request #121766 · python/cpython

added 3 commits

July 14, 2024 14:28
Sometimes, GitHub Actions turn things into strings when passing the
data around. So it's usually safer to turn them into proper booleans
in expressions explicitly.
Previously, it didn't have a human-readable explanation which is a
bad tone as it's less obvious how it's supposed to be used.
Previously, it was duplicated in each job which is not DRY.

@webknjaz webknjaz changed the title 🧪💅Evaluate free-threading var as JSON @ CI 🧪💅 Generalize reusable windows jobs @ CI

Jul 14, 2024
Previously, the reusable windows workflow defined a number of per-arch
jobs with a lot of copy-paste. Now, there is a single job and a matrix
definition on the calling side.
Previously, these were defined through two separate matrices but there
is no technical reason to keep them like that.

@webknjaz webknjaz marked this pull request as ready for review

July 14, 2024 14:33

@hugovk hugovk changed the title 🧪💅 Generalize reusable windows jobs @ CI Generalize reusable Windows CI jobs

Jul 14, 2024

miss-islington pushed a commit to miss-islington/cpython that referenced this pull request

Jul 14, 2024
(cherry picked from commit 7982363)

Co-authored-by: Sviatoslav Sydorenko (Святослав Сидоренко) <wk@sydorenko.org.ua>

hugovk pushed a commit that referenced this pull request

Jul 14, 2024
Co-authored-by: Sviatoslav Sydorenko (Святослав Сидоренко) <wk@sydorenko.org.ua>

webknjaz added a commit to webknjaz/cpython that referenced this pull request

Jul 14, 2024
(cherry picked from commit 7982363)

webknjaz added a commit to webknjaz/cpython that referenced this pull request

Jul 14, 2024
(cherry picked from commit 7982363)

webknjaz added a commit to webknjaz/cpython that referenced this pull request

Jul 16, 2024
Previously, those flags would sometimes end up having empty string
values which tends to break evaluating them as JSON. This patch adds
`false` fallbacks to all such outputs.

This allows feeding them to `fromJSON()` without a fear of them
causing surprising internal behaviors in the GitHub Actions CI/CD
workflows platform itself [[1]]. The behavior observed was that
some skipped jobs wouldn't show up in the workflow sidebar view at
all, would display in the graph view as `Waiting for pending jobs`
and in the `${{ needs }}` context, they would have a
`result: failure` entry.

This should help make PRs like python#121831 mergeable again.

[1]: python#121766 (comment)

webknjaz added a commit to webknjaz/cpython that referenced this pull request

Jul 16, 2024
Previously, those flags would sometimes end up having empty string
values which tends to break evaluating them as JSON. This patch adds
`false` fallbacks to all such outputs.

This allows feeding them to `fromJSON()` without a fear of them
causing surprising internal behaviors in the GitHub Actions CI/CD
workflows platform itself [[1]]. The behavior observed was that
some skipped jobs wouldn't show up in the workflow sidebar view at
all, would display in the graph view as `Waiting for pending jobs`
and in the `${{ needs }}` context, they would have a
`result: failure` entry [[2]].

This should help make PRs like python#121831 mergeable again.

[1]: python#121766 (comment)
[2]: https://github.com/python/cpython/actions/runs/9950331379/job/27501637459?pr=121831#step:2:244

webknjaz added a commit to webknjaz/cpython that referenced this pull request

Jul 16, 2024
Previously, those flags would sometimes end up having empty string
values, which tends to break evaluating them as JSON. This patch adds
`false` fallbacks to all such outputs.

This allows feeding them to `fromJSON()` without a fear of them
causing surprising internal behaviors in the GitHub Actions CI/CD
workflows platform itself [[1]]. The behavior observed was that
some skipped jobs wouldn't show up in the workflow sidebar view at
all, would display in the graph view as `Waiting for pending jobs`
and in the `${{ needs }}` context, they would have a
`result: failure` entry [[2]].

This should help make PRs like python#121831 mergeable again.

[1]: python#121766 (comment)
[2]: https://github.com/python/cpython/actions/runs/9950331379/job/27501637459?pr=121831#step:2:244

webknjaz added a commit to webknjaz/cpython that referenced this pull request

Jul 16, 2024
Previously, those flags would sometimes end up having empty string
values, which tends to break evaluating them as JSON. This patch adds
`false` fallbacks to all such outputs.

This allows feeding them to `fromJSON()` without a fear of them
causing surprising internal behaviors in the GitHub Actions CI/CD
workflows platform itself [[1]]. The behavior observed was that
some skipped jobs wouldn't show up in the workflow sidebar view at
all, would display in the graph view as `Waiting for pending jobs`
and in the `${{ needs }}` context, they would have a
`result: failure` entry [[2]].

This should help make PRs like python#121831 mergeable again.

[1]: python#121766 (comment)
[2]: https://github.com/python/cpython/actions/runs/9950331379/job/27501637459?pr=121831#step:2:244

webknjaz added a commit to webknjaz/cpython that referenced this pull request

Jul 16, 2024
Previously, those flags would sometimes end up having empty string
values, which tends to break evaluating them as JSON. This patch adds
`false` fallbacks to all such outputs.

This allows feeding them to `fromJSON()` without a fear of them
causing surprising internal behaviors in the GitHub Actions CI/CD
workflows platform itself [[1]]. The behavior observed was that
some skipped jobs wouldn't show up in the workflow sidebar view at
all, would display in the graph view as `Waiting for pending jobs`
and in the `${{ needs }}` context, they would have a
`result: failure` entry [[2]].

This should help make PRs like python#121831 mergeable again.

[1]: python#121766 (comment)
[2]: https://github.com/python/cpython/actions/runs/9950331379/job/27501637459?pr=121831#step:2:244

webknjaz added a commit to webknjaz/cpython that referenced this pull request

Jul 16, 2024
(cherry picked from commit 7982363)

estyxx pushed a commit to estyxx/cpython that referenced this pull request

Jul 17, 2024

hugovk pushed a commit that referenced this pull request

Jul 22, 2024