Skip to content

[main] Upgrade important CI environment#66580

Closed
github-actions[bot] wants to merge 1 commit into
mainfrom
ci-upgrade-main
Closed

[main] Upgrade important CI environment#66580
github-actions[bot] wants to merge 1 commit into
mainfrom
ci-upgrade-main

Conversation

@github-actions

@github-actions github-actions Bot commented May 8, 2026

Copy link
Copy Markdown
Contributor

This PR upgrades important dependencies of the CI environment.

Comment thread dev/breeze/src/airflow_breeze/commands/kubernetes_commands.py
@potiuk

potiuk commented May 8, 2026

Copy link
Copy Markdown
Member

This auto-bump picked Alpine's daily-edge tag 20260127 over the 3.23 release. Root cause is in scripts/ci/prek/upgrade_important_versions.py::get_latest_image_version — it used packaging.version.Version() parse-success as the "is this a release tag?" predicate, but PEP 440 happily parses Version("20260127") as a valid single-component version that sorts above Version("3.23"). So when Alpine's daily edge tag appeared in the Docker Hub last_updated-ordered tag list, the bumper selected it as "latest".

Fix in #66588: pre-filter date-shaped tags via regex (v?\d{8}(\.\d+)?), plus a sanity guard rejecting any parsed Version with major >= 10000, plus edge added to the floating-tag skiplist. Once that lands, the next auto-bump run produces alpine:3.23.5 instead of the daily date stamp.

This PR's alpine:20260127 line should revert back to alpine:3.23 (or 3.23.5, whichever is current) once #66588 is in. Easiest path is to close this and let the next scheduled bumper run produce a clean replacement, but updating the alpine line in place works too.


Drafted-by: Claude Opus 4.7 (1M context); reviewed by @potiuk before posting

potiuk added a commit that referenced this pull request May 8, 2026
)

The CI image bumper picked alpine's daily-edge tag 20260127 over the
3.23 release in #66580 -- and the same logic would
auto-pin any other Docker Hub image to its date-stamped daily build
under the right circumstances. Root cause:
packaging.version.Version("20260127") parses as a valid single-component
PEP 440 version and sorts higher than 3.23, so the bumper's "latest
version" selection picked the daily.

Pre-filter the tag list against a date-shaped regex (v?\d{8}(\.\d+)?)
before parsing as a Version. Belt-and-braces: also reject parsed Version
objects whose major component is implausibly large (>= 10000), catching
any date-shaped value the regex somehow misses. Add `edge` to the
existing floating-tag skiplist while we're here.

Tests cover the alpine real-tag mix (release + date + edge), busybox
style (mixed dotted releases + bare-major aliases), v-prefixed date
tags, and date-with-revision-suffix variants.
github-actions Bot pushed a commit to aws-mwaa/upstream-to-airflow that referenced this pull request May 8, 2026
… bumper (apache#66588)

The CI image bumper picked alpine's daily-edge tag 20260127 over the
3.23 release in apache#66580 -- and the same logic would
auto-pin any other Docker Hub image to its date-stamped daily build
under the right circumstances. Root cause:
packaging.version.Version("20260127") parses as a valid single-component
PEP 440 version and sorts higher than 3.23, so the bumper's "latest
version" selection picked the daily.

Pre-filter the tag list against a date-shaped regex (v?\d{8}(\.\d+)?)
before parsing as a Version. Belt-and-braces: also reject parsed Version
objects whose major component is implausibly large (>= 10000), catching
any date-shaped value the regex somehow misses. Add `edge` to the
existing floating-tag skiplist while we're here.

Tests cover the alpine real-tag mix (release + date + edge), busybox
style (mixed dotted releases + bare-major aliases), v-prefixed date
tags, and date-with-revision-suffix variants.
(cherry picked from commit aeb692f)

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
@potiuk

potiuk commented May 8, 2026

Copy link
Copy Markdown
Member

closing to redo it.

@potiuk

potiuk commented May 8, 2026

Copy link
Copy Markdown
Member

recreated #66600 after fixing the alpine bump

aws-airflow-bot pushed a commit to aws-mwaa/upstream-to-airflow that referenced this pull request May 8, 2026
… bumper (apache#66588)

The CI image bumper picked alpine's daily-edge tag 20260127 over the
3.23 release in apache#66580 -- and the same logic would
auto-pin any other Docker Hub image to its date-stamped daily build
under the right circumstances. Root cause:
packaging.version.Version("20260127") parses as a valid single-component
PEP 440 version and sorts higher than 3.23, so the bumper's "latest
version" selection picked the daily.

Pre-filter the tag list against a date-shaped regex (v?\d{8}(\.\d+)?)
before parsing as a Version. Belt-and-braces: also reject parsed Version
objects whose major component is implausibly large (>= 10000), catching
any date-shaped value the regex somehow misses. Add `edge` to the
existing floating-tag skiplist while we're here.

Tests cover the alpine real-tag mix (release + date + edge), busybox
style (mixed dotted releases + bare-major aliases), v-prefixed date
tags, and date-with-revision-suffix variants.
(cherry picked from commit aeb692f)

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
arpitrathore pushed a commit to arpitrathore/airflow that referenced this pull request May 9, 2026
…che#66588)

The CI image bumper picked alpine's daily-edge tag 20260127 over the
3.23 release in apache#66580 -- and the same logic would
auto-pin any other Docker Hub image to its date-stamped daily build
under the right circumstances. Root cause:
packaging.version.Version("20260127") parses as a valid single-component
PEP 440 version and sorts higher than 3.23, so the bumper's "latest
version" selection picked the daily.

Pre-filter the tag list against a date-shaped regex (v?\d{8}(\.\d+)?)
before parsing as a Version. Belt-and-braces: also reject parsed Version
objects whose major component is implausibly large (>= 10000), catching
any date-shaped value the regex somehow misses. Add `edge` to the
existing floating-tag skiplist while we're here.

Tests cover the alpine real-tag mix (release + date + edge), busybox
style (mixed dotted releases + bare-major aliases), v-prefixed date
tags, and date-with-revision-suffix variants.
potiuk added a commit that referenced this pull request May 10, 2026
… bumper (#66588) (#66599)

The CI image bumper picked alpine's daily-edge tag 20260127 over the
3.23 release in #66580 -- and the same logic would
auto-pin any other Docker Hub image to its date-stamped daily build
under the right circumstances. Root cause:
packaging.version.Version("20260127") parses as a valid single-component
PEP 440 version and sorts higher than 3.23, so the bumper's "latest
version" selection picked the daily.

Pre-filter the tag list against a date-shaped regex (v?\d{8}(\.\d+)?)
before parsing as a Version. Belt-and-braces: also reject parsed Version
objects whose major component is implausibly large (>= 10000), catching
any date-shaped value the regex somehow misses. Add `edge` to the
existing floating-tag skiplist while we're here.

Tests cover the alpine real-tag mix (release + date + edge), busybox
style (mixed dotted releases + bare-major aliases), v-prefixed date
tags, and date-with-revision-suffix variants.
(cherry picked from commit aeb692f)

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
jason810496 pushed a commit to jason810496/airflow that referenced this pull request May 11, 2026
…che#66588)

The CI image bumper picked alpine's daily-edge tag 20260127 over the
3.23 release in apache#66580 -- and the same logic would
auto-pin any other Docker Hub image to its date-stamped daily build
under the right circumstances. Root cause:
packaging.version.Version("20260127") parses as a valid single-component
PEP 440 version and sorts higher than 3.23, so the bumper's "latest
version" selection picked the daily.

Pre-filter the tag list against a date-shaped regex (v?\d{8}(\.\d+)?)
before parsing as a Version. Belt-and-braces: also reject parsed Version
objects whose major component is implausibly large (>= 10000), catching
any date-shaped value the regex somehow misses. Add `edge` to the
existing floating-tag skiplist while we're here.

Tests cover the alpine real-tag mix (release + date + edge), busybox
style (mixed dotted releases + bare-major aliases), v-prefixed date
tags, and date-with-revision-suffix variants.
vatsrahul1001 pushed a commit that referenced this pull request May 20, 2026
… bumper (#66588) (#66599)

The CI image bumper picked alpine's daily-edge tag 20260127 over the
3.23 release in #66580 -- and the same logic would
auto-pin any other Docker Hub image to its date-stamped daily build
under the right circumstances. Root cause:
packaging.version.Version("20260127") parses as a valid single-component
PEP 440 version and sorts higher than 3.23, so the bumper's "latest
version" selection picked the daily.

Pre-filter the tag list against a date-shaped regex (v?\d{8}(\.\d+)?)
before parsing as a Version. Belt-and-braces: also reject parsed Version
objects whose major component is implausibly large (>= 10000), catching
any date-shaped value the regex somehow misses. Add `edge` to the
existing floating-tag skiplist while we're here.

Tests cover the alpine real-tag mix (release + date + edge), busybox
style (mixed dotted releases + bare-major aliases), v-prefixed date
tags, and date-with-revision-suffix variants.
(cherry picked from commit aeb692f)

Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants