Skip to content
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

Initialize Separate React UI #1513

Closed
wants to merge 33 commits into from
Closed

Initialize Separate React UI #1513

wants to merge 33 commits into from

Conversation

bbovenzi
Copy link

Create a new React UI where we will migrate all UI work for Airflow 3.

New tech:

  • vite
    Framework to build the react app
  • pnpm
    CLI command to install packages, handles dependencies better than yarn and npm

Banner telling users to try the new UI:
Screenshot 2024-08-27 at 2 56 59 PM

New UI with the ability to go back to the old UI:
Screenshot 2024-08-27 at 2 56 52 PM


^ 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.rst or {issue_number}.significant.rst, in newsfragments.

KrunchMuffin and others added 25 commits August 26, 2024 20:13
Changed Azure to Elasticsearch
…e#41619)

* Update values.yaml

* Update redis-statefulset.yaml

* Update values.schema.json

* Update redis-statefulset.yaml

* add testing

* update unit testing

* update
* chore(docs): add an example for auth with keycloak

Added a new section in the authentication documentation that provides a code of configuring Airflow to work with Keycloak.

* chore(docs): add an example for auth with keycloak

Fix spelling and styling

* chore(docs): add an example for auth with keycloak

Fix static checks
* Remove deprecations in airflow.models.skipmixin

* Fix pytests
* Remove deprecations in airflow.models.errors

* Fix static code checks in compat
The '.venv' name (common for in-project virtual environments) is not
included in rat-excludes, causing a lint failure since a license is not
found in it. Since 'venv' (no leading dot) is excluded, let's also add
'.venv' to the file.

The 'downgradedb' method of BaseDBManager is declared abstract, but not
implemented in FABDBManager. This causes Mypy to error when FABDBManager
is instantiated. We don't always need the implement the method, so let's
remove the abstractmethod decorator.

Finally (and least critically), when you run pre-commit during a merge,
a hook checks if you're committing unresolved conflicts. The check is
not particularly smart, however, and can mis-identify header underlines
in restructuredText as false positives. This is easy to fix; just add
one more character to the underline. It's fine as long as the underline
is not EXACTLY SEVEN characters.
* Remove deprecations in airflow.models.param

* Fix pytests
* Remove deprecations in Connection for Airflow 3

* Fix pytests
* Remove deprecations in BaseOperator for Airflow 3

* Fix pytests
* backfill job command cli deperecated options removed

* news fragment added
* Deprecated module airflow.hooks.dbapi removed

* news fragment added
* Remove deprecations in airflow.models.dagrun

* Update newsfragments/41778.significant.rst

Co-authored-by: Jarek Potiuk <[email protected]>

---------

Co-authored-by: Jarek Potiuk <[email protected]>
* Remove deprecated get_connections() function in BaseHook

* Adding newsfragment after PR open
…pache#41805)

The apache#41733 removed deprecated get_connections but it was still
used in cncf.kubernetes tests.
Comment on lines 1 to 10
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*

node_modules

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that most of that is handled by the root gitignore. I believe this was generated automatically by the vite template but we can safely remove it because there is a lot of overlap. (Maybe just the pnpm-debug.log* and a couple others are missing)

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok. Consolidated

Copy link

@pierrejeambrun pierrejeambrun left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good overall. Maybe we need someone to double check the workflows / ci integration because I was not able to test that when I added it.

eladkal and others added 3 commits August 28, 2024 10:57
…1433)

* Fix: DAGs are not marked as stale if the AIRFLOW__CORE__DAGS_FOLDER changes

* Update airflow/dag_processing/manager.py

* Add testcase

* Add code comment

* Update code comment

* Update the logic for checking the current dag_directory

* Update testcases

* Remove unwanted code

* Uncomment code

* Add processor_subdir when creating processor_subdir

* Fix test_retry_still_in_executor test

* Remove config from test

* Update airflow/dag_processing/manager.py

Co-authored-by: Jed Cunningham <[email protected]>

* Update if condition for readability

---------

Co-authored-by: Jed Cunningham <[email protected]>
configure flask blueprint and render real dags list

Add banner to switch back and forth between UIs

Add readme

basic test setup, chakra not working

Move Flask blueprint, build navbar

Switch to react with working tests

Basic hot refresh

add prettier

do not render the new UI banner on loggin page

add pre-commits to ui

add CI integration

update doc accordingly

redirect to login page on 401+403 errors

update lint command

update lint, lint:fix command

Add codegen to pre-commit

Add ui to breeze

Update build commands
@bbovenzi bbovenzi closed this Aug 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.