Skip to content

Scope plugin operator extra links to their team in multi-team mode - #72231

Open
o-nikolas wants to merge 1 commit into
apache:mainfrom
aws-mwaa:onikolas/multi-team-plugins/extra-links
Open

Scope plugin operator extra links to their team in multi-team mode#72231
o-nikolas wants to merge 1 commit into
apache:mainfrom
aws-mwaa:onikolas/multi-team-plugins/extra-links

Conversation

@o-nikolas

Copy link
Copy Markdown
Contributor

A team-scoped plugin's operator extra links were rendered on every task instance, so one team's links appeared on other teams' Dags and pointed users at systems they may have no access to.

Ownership is tracked per link class rather than per link name: link instances are unhashable and compare equal to each other, and a plugin link may deliberately share a name with an operator's own link, so a name key would make the operator's link look team-owned. A class registered by both a global and a team-scoped plugin stays global.


Was generative AI tooling used to co-author this PR?
  • Yes (please specify the tool below)

  • Read the Pull Request Guidelines for more information. Note: commit author/co-author name and email in commits become permanently public when merged.
  • For fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
  • When adding dependency, check compliance with the ASF 3rd Party License Policy.
  • For significant user-facing changes create newsfragment: {pr_number}.significant.rst, in airflow-core/newsfragments. You can add this file in a follow-up commit after the PR is created so you know the PR number.

A team-scoped plugin's operator extra links were rendered on every task
instance, so one team's links appeared on other teams' Dags and pointed
users at systems they may have no access to.

Ownership is tracked per link class rather than per link name: link
instances are unhashable and compare equal to each other, and a plugin
link may deliberately share a name with an operator's own link, so a
name key would make the operator's link look team-owned. A class
registered by both a global and a team-scoped plugin stays global.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:API Airflow's REST/HTTP API area:plugins

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant