-
Notifications
You must be signed in to change notification settings - Fork 16.4k
AIP-79 Generate assets for Flask application in FAB provider #44744
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
jedcunningham
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall, lgtm. Do we need to add a step to run this into the provider release process for FAB?
I think so. Do you know where is this provider release process? |
|
I just had a double thought. Would not it be better to copy paste this script in FAB provider and generate only the assets for FAB provider in this script, update the release process of FAB provider to run this script? That way, when we remove the entire Flash application from core, we can safely remove the script from core? |
|
Oh, that probably is a better idea. These are the docs for the release process: https://github.com/apache/airflow/blob/main/dev/README_RELEASE_PROVIDER_PACKAGES.md |
Cool :) I'll update the PR |
I just realized, the release should not be updated because the assets are not released. It should be in the install process |
|
Also it seems there is already some plumbing and automations set up to generate the assets automatically when creating a virtual env with hatch so I think I'll keep everything in that file. That will simplify things. I added a test in the script to do it only if the fab provider package is installed |
448417e to
92e7dc6
Compare
92e7dc6 to
f2b0d43
Compare
@jedcunningham WDYT? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Copilot reviewed 1 out of 1 changed files in this pull request and generated no suggestions.
|
|
||
|
|
||
| def is_fab_provider_installed() -> bool: | ||
| return importlib.util.find_spec("airflow.providers.fab") is not None |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ups, this change in this function broke main :-(
https://github.com/apache/airflow/actions/runs/12399970802/job/34616478712
I assume we need to find another method to check if FAB is installed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Propose to fix via #45058
…pache#44744)" (apache#45057) This reverts commit ba49469.
Follow up of #44464.
In #44464, we copied a minimal version of the Flask application in FAB provider to support Airflow 2 plugins. This Flask application required assets (like the Flask application in core).
In this PR I update the script
compile_www_assets.pyto also generate the assets for the Flash application in FAB provider.For later: when the current UI is gone, we'll be able to stop generating the assets for the main Flask application in core (then maybe move the script to FAB provider?).
^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in a newsfragment file, named
{pr_number}.significant.rstor{issue_number}.significant.rst, in newsfragments.