Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 613f570bdc |
+24
-4
@@ -103,6 +103,9 @@ CEO creates daily automated report of SLA status and escalates immediately when
|
|||||||
|
|
||||||
## Pipeline
|
## Pipeline
|
||||||
|
|
||||||
|
**Two pipelines based on change type:**
|
||||||
|
|
||||||
|
### Pipeline A: Plugin/Feature Changes (User-Facing Code)
|
||||||
```
|
```
|
||||||
CI: Engineer opens PR → CI runs (lint, types, unit tests)
|
CI: Engineer opens PR → CI runs (lint, types, unit tests)
|
||||||
UAT: Pixel Patty validates E2E in headlamp-dev
|
UAT: Pixel Patty validates E2E in headlamp-dev
|
||||||
@@ -111,17 +114,34 @@ CTO: Null Pointer Nancy reviews architecture and security
|
|||||||
Merge: Countess von Containerheim merges after all approvals
|
Merge: Countess von Containerheim merges after all approvals
|
||||||
```
|
```
|
||||||
|
|
||||||
|
**Applies to:** Changes in `headlamp-*-plugin/` repos (plugin code, features, bug fixes)
|
||||||
|
|
||||||
|
### Pipeline B: Infrastructure Changes (No UI Impact)
|
||||||
|
```
|
||||||
|
CI: Engineer opens PR → CI runs (lint, types, unit tests)
|
||||||
|
QA: Regression Regina reviews code and correctness (no E2E needed)
|
||||||
|
CTO: Null Pointer Nancy reviews architecture and security
|
||||||
|
Merge: Countess von Containerheim merges after all approvals
|
||||||
|
```
|
||||||
|
|
||||||
|
**Applies to:** Changes in `.github/workflows/`, `infra/`, `org/` repos, and template repos (CI workflows, kustomize configs, RBAC manifests, deployment scripts)
|
||||||
|
|
||||||
|
**Rule:** If the PR contains ONLY infrastructure changes (no plugin code changes), use Pipeline B and skip UAT. Patty's time is reserved for user-facing feature testing.
|
||||||
|
|
||||||
|
**Detection:** If `git diff` shows changes only in `.github/`, `infra/`, `org/`, or deployment files → Pipeline B. If any `headlamp-*-plugin/` code changed → Pipeline A.
|
||||||
|
|
||||||
### Stage 1 — Engineer Opens PR
|
### Stage 1 — Engineer Opens PR
|
||||||
|
|
||||||
1. Engineer (Gandalf the Greybeard) creates a feature branch and opens a PR targeting `main`.
|
1. Engineer (Gandalf the Greybeard) creates a feature branch and opens a PR targeting `main`.
|
||||||
2. CI runs automatically: lint, type checks, unit tests.
|
2. CI runs automatically: lint, type checks, unit tests.
|
||||||
3. CI must pass before any reviewer spends tokens. If CI fails, the engineer fixes it.
|
3. CI must pass before any reviewer spends tokens. If CI fails, the engineer fixes it.
|
||||||
|
|
||||||
### Stage 2 — UAT Review
|
### Stage 2 — UAT Review (Pipeline A Only)
|
||||||
|
|
||||||
4. Pixel Patty picks up PRs with passing CI.
|
4. **Pipeline A only (user-facing changes):** Pixel Patty picks up PRs with passing CI.
|
||||||
5. Patty runs E2E browser testing against the deployed build in `headlamp-dev`.
|
5. **Pipeline B skips this:** Infrastructure PRs bypass UAT and go directly to QA.
|
||||||
6. Pass → hands off to QA. Fail → goes directly to engineer.
|
6. Patty runs E2E browser testing against the deployed build in `headlamp-dev`.
|
||||||
|
7. Pass → hands off to QA. Fail → goes directly to engineer.
|
||||||
|
|
||||||
### Stage 3 — QA Review
|
### Stage 3 — QA Review
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user