Skip to content

Replace Prow automated PR plugins with lightweight tasks or services #3179

@vdemeester

Description

@vdemeester

Summary

Several Prow plugins run automatically on PR events (no slash command needed)
to add labels or validate PR content. These need replacements — either as
lightweight Tekton tasks triggered via PaC / EventListener on the OCI cluster,
or as simple GHA workflows.

Plugins to Replace

Plugin Trigger What it does
size PR open/update Adds size/XS..size/XXL labels based on diff size
verify-owners PR open/update Validates OWNERS files syntax and content
wip PR open/update Adds do-not-merge/work-in-progress when title contains WIP
release-note PR open/update Validates release note block, manages release-note-* labels
blunderbuss PR open Auto-assigns reviewers based on OWNERS files
needs-rebase PR update Adds needs-rebase label when PR has merge conflicts

Considerations

  • wip could be replaced by GitHub's native draft PR feature — evaluate if
    we still need the label at all.
  • blunderbuss uses OWNERS files; GitHub's native CODEOWNERS is an alternative
    but has different semantics. Need to decide if we converge on CODEOWNERS or
    keep OWNERS.
  • verify-owners is important as long as we keep OWNERS files for /approve
    and /lgtm. If we switch to CODEOWNERS, it becomes unnecessary.
  • size is nice-to-have. Many lightweight GHA actions exist for this.
  • needs-rebase — GitHub branch protection "require up-to-date" is the native
    equivalent but has different UX.
  • Good candidates for either reusable GHA workflows shared from plumbing, or
    PaC-triggered Tekton tasks on the OCI cluster.

Related

/cc @tektoncd/plumbing-maintainers

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/dogfoodingIndicates an issue on dogfooding (aka using Pipeline to test Pipeline)area/prowIssues or PRs related to prowkind/featureCategorizes issue or PR as related to a new feature.

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions