Skip to content

Require the gate's check names on main once they exist #26

Description

@iderex

The ruleset on main today protects against deletion and force-push and requires
a pull request:

gh api repos/Flowfin/core/rulesets/20572113 --jq '{enforcement, bypass: .bypass_actors, required: [.rules[].type]}'
{"bypass":[],"enforcement":"active","required":["deletion","non_fast_forward","pull_request"]}

There is no required_status_checks entry, so a pull request whose every check
is red can be merged, and a run that never happened leaves the same trace as one
that was green.

This issue is last in the milestone on purpose. Requiring a check name before the
check exists blocks every merge, and requiring a name that later gets renamed
detaches the requirement without any signal.

#113 decides which platforms the gate runs on, and that decides the shape of the
names required here. One leg per check leaves the names in #15 and #16 as they
are written. More than one leg turns each of them into one check run per
platform, so the strings this issue writes into the ruleset come from #113's
answer rather than from the single names those issues assume.

Done when

The ruleset on main carries a required_status_checks rule naming build,
test, lint, format, dependencies, and the checks the repository already
runs on pull requests, each by the literal check-run name that
gh api repos/Flowfin/core/commits/main/check-runs --jq '.check_runs[].name'
reports. A pull request with any one of them red cannot be merged. Blocked on
#15, #16, #17, #18, #19 and #113.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions