feat(ci): pr-convention-check Drone-Step + Branch-Protection #434

Closed
opened 2026-06-05 06:54:08 +02:00 by pm-bot · 0 comments
Collaborator

Kontext

Folge-Ticket zu #406. Architekten-Empfehlung: A + C kombiniert.

  • A (Drone-Step pr-convention-check): hard guard
  • C (PR-Template Closes #-Slot): bereits live in .gitea/PULL_REQUEST_TEMPLATE.md
  • Anti-Bypass: Gitea Branch-Protection auf main (required status check + Apply to administrators)

Scope

  1. Neuer Step pr-convention-check in .drone.yml, an ci-Pipeline gehängt, event: [pull_request]
  2. Logik:
    • Wenn DRONE_SOURCE_BRANCH oder PR-Title eine Issue-Ref andeutet (#\d+ oder N-...-Pattern), dann muss PR-Body oder -Title (Closes|Fixes|Resolves|Behebt|Schließt)\s+#\d+ enthalten
    • Sonst pass (Refactor-/Doc-PRs ohne Issue erlaubt)
  3. Manuell: Gitea Repo-Settings → Branch Protection auf main:
    • "Status checks must pass before merge" → continuous-integration/drone/pr als required
    • "Apply to administrators" toggle

Acceptance

  • Drone-Step im PR-Build neu sichtbar
  • PR ohne Close-Keyword (mit Issue-Ref im Branch) failt den Step
  • PR ohne Issue-Ref (reiner Refactor) passt den Step
  • Branch-Protection auf main aktiv mit Required-Check + Admin-Enforcement

Aus #406

Vier dokumentierte Convention-Fallen in 6 Tagen (#347, #348, #349, #398) — manuelles Housekeeping bisher.

Fixes #406

## Kontext Folge-Ticket zu #406. Architekten-Empfehlung: **A + C kombiniert**. - A (Drone-Step `pr-convention-check`): hard guard - C (PR-Template `Closes #`-Slot): bereits live in `.gitea/PULL_REQUEST_TEMPLATE.md` - Anti-Bypass: Gitea Branch-Protection auf `main` (required status check + Apply to administrators) ## Scope 1. Neuer Step `pr-convention-check` in `.drone.yml`, an `ci`-Pipeline gehängt, `event: [pull_request]` 2. Logik: - Wenn `DRONE_SOURCE_BRANCH` oder PR-Title eine Issue-Ref andeutet (`#\d+` oder `N-...`-Pattern), dann muss PR-Body oder -Title `(Closes|Fixes|Resolves|Behebt|Schließt)\s+#\d+` enthalten - Sonst pass (Refactor-/Doc-PRs ohne Issue erlaubt) 3. Manuell: Gitea Repo-Settings → Branch Protection auf `main`: - "Status checks must pass before merge" → `continuous-integration/drone/pr` als required - "Apply to administrators" toggle ## Acceptance - [ ] Drone-Step im PR-Build neu sichtbar - [ ] PR ohne Close-Keyword (mit Issue-Ref im Branch) failt den Step - [ ] PR ohne Issue-Ref (reiner Refactor) passt den Step - [ ] Branch-Protection auf main aktiv mit Required-Check + Admin-Enforcement ## Aus #406 Vier dokumentierte Convention-Fallen in 6 Tagen (#347, #348, #349, #398) — manuelles Housekeeping bisher. Fixes #406
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
admin-mrrm/mrrmlabapp#434
No description provided.