Commit Graph

1813 Commits

Author SHA1 Message Date
Jarek Potiuk
cd83236293 aDd cooldown days for prek autoupgrade. (#59395)
Prek 0.2.22 added the new feature that pretty much everyone adds
now after all shei-hulud attacks to get some cooldown period
of upgrades, to give chance for github scanners and "bleeding edge"
users to find out tha there are some malicious modifications.

This PR adds cooldown period to prek auto-upgrade in our CI
for `breeze ci upgrade` method.
2025-12-14 09:36:08 +01:00
Ephraim Anierobi
1c86509307 Update main as Airflow 3.1.5 has been released (#59379) 2025-12-13 14:13:07 +01:00
Rahul Vats
8b604105c9 add pull for docker images + complie UI assets for workflow_dispatch (#59315)
add pull for docker images + complie UI assets for workflow_dispatch (#59315)
2025-12-12 11:54:30 +05:30
Wei Lee
23ab73adf0 build: upgrade uv to 0.9.17, prek to 0.2.21, ruff to 0.14.9 (#59350) 2025-12-12 11:13:54 +05:30
Ephraim Anierobi
ffb180b9ee Update main as Apache Airflow 3.1.4 has been released (#59268) 2025-12-10 10:38:54 -07:00
Rahul Vats
1e7e40ee59 Add CI workflow for UI e2e tests (#58901)
Add CI workflow for UI e2e tests (#58901)
2025-12-10 14:15:17 +05:30
Jarek Potiuk
f0d0b2fb99 Add script that verifies consistency: Release Page with Release Calendar (#59142)
We maintain release calendar with release page in Confluence in parallel.

This script (AI generated) verifies if what is in Release page is correctly
reflected in the calendar.
2025-12-07 16:38:47 +01:00
Jarek Potiuk
bc38090507 CI: Upgrade important CI environment (#59144) 2025-12-07 00:19:12 +01:00
Bugra Ozturk
6b4867e816 Update uv version to 0.9.16 (#59138)
* Update uv version to 0.9.16

* Update uv version to 0.9.16
2025-12-06 21:01:17 +01:00
Yeonguk Choo
f496fc035b Update include @noeunkim for Korean translations (#59096) 2025-12-06 18:52:35 +01:00
Amogh Desai
cd255d7bff Bump ruff to 0.14.8, uv to 0.9.15 (#59058) 2025-12-04 20:48:32 +01:00
Jarek Potiuk
d490d09fc1 CI: Upgrade important CI environment (#58915) 2025-12-02 10:58:55 +01:00
Jarek Potiuk
53687e3d1b Synchronize the list of people who can publish docs and build images (#58876)
We heve a few release-manager acting people who can publish docs
and build images using GH actions workflows.

The list of this peaple is growing.

Adding Jens and Vinc and making sure that the list is synchronized
for both workflows we have.
2025-11-30 23:48:44 +01:00
Bugra Ozturk
0c3e920fcd Align all linebreaks in ci-amd-arm.yml (#58855) 2025-11-30 00:25:24 +01:00
Jens Scheffler
160db5bd84 Fix static checks, tailing whitespace (#58835) 2025-11-28 17:16:33 -05:00
Bugra Ozturk
5297505307 Add CODEOWNERS entry for Airflow CLI (#58784)
* Add CODEOWNERS entry for Airflow CLI

* Update .github/CODEOWNERS

Co-authored-by: Vincent <97131062+vincbeck@users.noreply.github.com>

---------

Co-authored-by: Vincent <97131062+vincbeck@users.noreply.github.com>
2025-11-28 21:53:54 +01:00
Jarek Potiuk
9917a04c0c Add mprocs upgrade check to upgrade_important_versions (#58723)
Used the opportunity to refactor and restructure the script to
be much more readable and maintainable.
2025-11-28 18:17:44 +01:00
Wei Lee
048f4ad25a build: upgrade hatch to 1.16.1 (#58800) 2025-11-28 14:19:25 +08:00
Jarek Potiuk
cddbdf86c9 Fix airflow-ctl image generation failing with latest prek version (#58732)
* allocating pseudo-terminal inside the python script creating
  the images instead of trying to do it by docker compose run
* better diagnostics in case of error (verbosity handling)
* properly allocating console with forcing pesudo-terminal creation
  inside the container when --tty command is used with breeze shell
  via `enable-tty.yaml`
* upgrading prek + uv to latest versions
* a bit of refactoring how the docker-compose files are referrred to
* Console in the script also uses pseudo-terminal
2025-11-28 03:07:18 +01:00
Amogh Desai
1aa9b7af38 Fix automatic backport workflow race condition (#58705) 2025-11-26 12:57:35 +05:30
Jarek Potiuk
6d36d7b4ff CI: Upgrade important CI environment (#58696) 2025-11-26 01:47:54 +01:00
Jarek Potiuk
189c506e31 Fix task-sdk-integration-tests selective checks (#58683)
When only task-sdk-integration tests are changed, the tests should
run. Currently they don't run because in this case PROD image has
is not build.

This PR fixes the selective checks.
2025-11-25 20:20:23 +01:00
Jed Cunningham
11079b6a59 Drop @dstandish from chart codeowners (#58675) 2025-11-25 10:15:26 -07:00
Jarek Potiuk
60034e10ca Convert check_translation_completeness.py into breeze command (#58637)
The script had no good support for auto-complete and the like and
since everyone now use breeze for some tasks, we also should
have it as a regular breeze command.

Also the sorting order implemented by eslint jsonc natural
sorting was quite a bit different from what you'd expect:

* it sorts character-by-character case-insensitive
* it uses original sorting as tie-breker in case of characters
  case-insensitve order
* handles numbers natuarlly (2<10)
* treats _ as end of word and sort it before everything else
* similarly with end of word - shorter words are before longer
  if they have the same prefix

This PR updates the command and also fixes sorting order and
add unit tests to test vital parts of the translation script.
2025-11-25 00:39:08 +01:00
Amogh Desai
525f07c158 Bump uv to 0.9.11, prek to 0.2.18, ruff to 0.14.6 (#58569) 2025-11-22 00:51:43 +05:30
Amogh Desai
a35c737bef Adding CODEOWNERS for shared libraries (#58517) 2025-11-20 17:08:07 +01:00
Jens Scheffler
42805e1ce5 CI: Upgrade important CI environment (#58455) 2025-11-19 00:49:01 +01:00
Jarek Potiuk
c25e7839b8 CI: Upgrade important CI environment (#58423) 2025-11-18 20:10:51 +01:00
Jarek Potiuk
b7a415e223 Update release notes instructions after 2025-11-14 release (#58410) 2025-11-17 23:30:56 +01:00
Jarek Potiuk
bbc1833595 Fix source link generation for providers (#58367)
After adding -source package with release date to providers release,
we also need to update the source download documentation to link to
the right source tarball.

This PR adds the last missing bits and pieces to do that:

1) Updates information about format of RELEASE_DATE and supported
   (potentially) YYYY_MM_DD_NN format
2) The release date parameter is used and verified at release
   docuemntation preparation time and it's stored in
   "providers/.last_release_date.txt"
3) The relase date of the current release (stored in the commit
   which is used to release providers) is used to produce the
   right links - both in "providers summary" and in individual
   provider's package documntation
2025-11-16 19:21:37 +01:00
Jarek Potiuk
53517b7eec Add cooldown period for dependabot upgrades (#58215)
The cooldown period delays updating dependencies until they are
N-days old. This allows the dependencies to be tried by others
(including security researchers) and get them flagged and
removed in case some security issues are found.
2025-11-16 17:07:23 +01:00
Ephraim Anierobi
95a9db7627 Update main as 3.1.3 has been released (#58341) 2025-11-15 14:00:00 +01:00
Jarek Potiuk
9d62164cef Make it easier and faster to iterate on task-sdk-integration-tests (#58231)
There were a few of things that made task-sdk-tests iteration
a bit unobvious and slower. With this PR, we should be able
to iterate over task-sdk-integration-tests WAY faster and get
more contributors involved in contributing to those.

* It was not clear that prerequisite of running the tests was building
  PROD image for Pyton 3.10. This is now clear in the documentation.

* PROD images can be built in two different modes - from sources
  with --installation-method equal to . or from packages with
  the --installatio-method equal to "apache-airflow". This was
  not clearly communicated during build and it is now printed at
  output

* It was not clear that when you build PROD images from sources,
  you should first compile ui assets, because otehrwise the
  assets are not added as part of the image. With this PR the
  `breeze prod-image build` command checks if the .vite manifest
  is present in the right `dist` folders and will error out,
  suggesting to run `breeze compile-ui-assets` before.

* If the PROD image has not been built before, breeze will propose
  to build it and even do it automatically if the answer is not
  provided within 20 seconds.

* when building PROD images from sources, it is faster to rebuild
  the images with `uv` than with `pip`. the --use-uv parameter now
  defaults to False when building from packages and to True when
  building from sources.

* There was an error in .dockerignore where generated dist files
  were not added to context when PROD image was built from sources.
  This resulted in "permission denied' when such PROD images were used
  to run tests.

* The test compose had fallback of Airflow 3.0.3 which would be
  misleading if it happened. Now, AIRFLOW_IMAGE_NAME is mandatory

* We are now mounting sources of Airflow to inside the image by default
  and skip it in CI. This mounting happens in local environment where PROD
  image is built usually from sources, and it is disabled in CI by using
  --skip-mounting-local-volumes flag. We also do not stop docker compose
  by default when runnig it locally in order to make fast iteration the
  default.

* We pass host operating system when starting the compose, and we only
  change ownership on Linux - this is a long running operation on MacOS
  because mounted filesystem is slow, but it's also not needed on MacOS
  because the file system also maps ownershipt and files created by
  Airflow are created with local user id.

* We pass local user id to containers to make sure that the files
  created on linux are created by the local user (logs and the like).

* We are now detecting whether docker-compose is running and when we run
  with locally mounted sources, we reuse those running containers. When
  we don't mount local sources, we shut-down the compose before running
  to make sure we do not have sources mounted - and we close the compose
  by default when we do not mount local sources.

* When sources are mounted we are only enabling DEV_MODE inside the containers
  so that components are hot-reloading (new feature added in #57741
  last weeks. This way you do not have to restart anything when sources
  are changed and you can re-run the tests when docker compose is running.

* The environment are passsed now via .env file so that you can easily
  reproduce docke compose command locally

* The docker compose files are not copied any more, they are moved directly
  to the top of 'task-sdk-integraiton-tests' and used from there.

* A `--down` flag is added to breeze testing task-sdk-integration-tests
  that tears down running docker compose.

* Additional diagnostics added to show what's going on.

* Handling verbose option from breeze by adding more debugging information

* Updated documentation about the tests to be more comprehensive about
  the options, updated file structure etc.

* Small QOL immprovement - if expected dags are not yet parsed by dag file
  processor, when test starts, getting their status will return 404 "Not
  Found". In such case our tests implemented a short retry scheme with tenacity
2025-11-13 19:00:47 +01:00
Jarek Potiuk
2ec28175ca Add protoc pinning and include it in important versions upgrade (#58244) 2025-11-13 00:26:32 +01:00
Jarek Potiuk
1b1bac8383 CI: Upgrade important CI environment (#58245) 2025-11-13 00:25:09 +01:00
Amogh Desai
4688c68f12 Rename task sdk integration tests folder hierarchy correctly (#58193) 2025-11-12 00:27:46 +05:30
Jarek Potiuk
48937a5348 Group upgrades of python dependencies (#58162)
Rather than having multiple PRs - separately for each dependency
upgrade, we should group the dependency upgrades accross several
distributions into single PRs as much as possible.
2025-11-11 09:11:12 +01:00
Jarek Potiuk
8bfe744fe1 CI: Upgrade important CI environment (#58164) 2025-11-10 22:20:26 +01:00
Jarek Potiuk
f4846a8706 The e2e-tests workflows properly use workflow-name to pass name (#58100)
The workflows used `inputs.name` but the passed input was really
the `workflow-name` one.
2025-11-09 14:28:28 +01:00
Elad Kalif
a4b3efd643 update CODEOWNERS (#58075) 2025-11-08 17:58:11 +02:00
Jarek Potiuk
189e7ecbf8 Add breeze ci upgrade command to automate CI infrastructure upgrade (#57958)
We have some semi-complex set of tools that take care about upgrading
of all our CI infrastructure periodically. While dependabot has a lot of
use, a lot of cases is not handled yet in it - such as upgrading the
charts, important dependencies in our scripts, dockerfiles and so on.

While we already have a set of prek hooks and github Actions that
do a lot there, some of that has to be done periodically outside of
dependabot - this CI wraps a number of those upgrade tools into a
single `ci upgrade` command that can be run locally, generate and
open PR - and can be used in both - main and any of the v*test
branches.

Future improvement areas:

* docker container upgrades for Helm chart and docker compose
* slack notification after such upgrade PR is opened
* more .....
2025-11-06 19:55:49 +01:00
Amogh Desai
9775ae0b72 Bump prek, zizmor, go to fix the CI (#57930) 2025-11-06 11:27:15 +05:30
Ephraim Anierobi
3ba13698e5 Airflow 3.1.2 has been released (#57887) 2025-11-06 10:05:56 +08:00
Jarek Potiuk
bb4f04124a Fix pin-versions prek hook and upgrade hooks (#57857)
We had pin-versions prek-hook implemented in a separate workflow
under the `dev` folder, but it has not been working since workspace
switch because prek workspace only works on sub-folders of where the
.pre-commit-config.yaml file is placed. It was in a separate file
because it needed python 3.11 to run, but it is possible to have
a specific python verison as separate language version in the hook
itself, so we can move it back to the main .pre-commit-config.yaml

This PR:

* moves the pin-version hook to main .pre-commit-config.yaml
* sets python 3.11 as version of python used in the hook independently
  from default python version
* fix github actions and docs to use the hook from the main
  .pre-commit-config.yaml
2025-11-05 23:44:06 +01:00
Jarek Potiuk
7a1631641f Fix start-rc-process command test in CI (#57870) 2025-11-05 16:43:51 +01:00
Gary Hsu
6018768a31 Fix Helm Chart RC Staging Documentation Links (#55677)
* fix Replace Helm Chart RC docs links with staging URLs

Replace production documentation links (airflow.apache.org) with staging links
(airflow.staged.apache.org) for Helm Chart release candidates.
- Add RC version detection (rc, alpha, beta releases)
- Modify prepare-helm-chart-tarball and prepare-helm-chart-package commands
- Implement safe backup/restore for Chart.yaml modifications
- Add --version-suffix option to helm chart package command

* Improve Helm chart RC version handling and testing
- Simplify RC version detection logic
- Add RC version test case to helm-tests.yml workflow
- Update documentation to include --version-suffix parameter usage
2025-11-02 17:42:49 +01:00
Wei Lee
26c93bc52b ci(github-actions): Upgrade uv and ruff versions to fix CI 2025-10-31 11:25:39 +05:30
Guan-Ming (Wesley) Chiu
bd16be870a Add Guan-Ming as ui code owner (#57596) 2025-10-31 10:33:07 +08:00
Jens Scheffler
22e6068fbb Switch Jen's focus in CODEOWNERS (#57580) 2025-10-30 22:53:13 +00:00
Kaxil Naik
be84a27a55 Update main with Airflow 3.1.1 release details (#57392)
Release: https://pypi.org/project/apache-airflow/3.1.1/
2025-10-28 01:30:38 +00:00