You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
*All videos are generated programmatically from source files. See [Milestone 8](milestones/milestone-8.md) for details.*
10
+
Each row links to the **in-browser player** on Pages (`#seg-…`) and to the **composed MP4** in the repo. Anchors match [docs/index.html](docs/index.html).
11
+
12
+
| # | Video | Description | Duration | Watch (Pages) | MP4 in repo |
| 09 | Tekton Results | Results API and persisted history (VHS) |~1m 40s |[▶ Pages](https://jmjava.github.io/tekton-dag/#seg-09)|[`09-results-db.mp4`](docs/demos/recordings/09-results-db.mp4)|
23
+
| 10 | Newman / regression | API tests and local test tiers (VHS) |~2m 0s |[▶ Pages](https://jmjava.github.io/tekton-dag/#seg-10)|[`10-newman-tests.mp4`](docs/demos/recordings/10-newman-tests.mp4)|
| 14 | GUI Tekton extension (M12.2) | Extending the GUI for Tekton | varies |[▶ Pages](https://jmjava.github.io/tekton-dag/#seg-14)|[`14-gui-tekton-extension.mp4`](docs/demos/recordings/14-gui-tekton-extension.mp4)|
28
+
29
+
**Full concat files:**[01–11 on Pages](https://jmjava.github.io/tekton-dag/#full-demo) → [`full-demo.mp4`](docs/demos/recordings/full-demo.mp4) · [01–14 on Pages](https://jmjava.github.io/tekton-dag/#full-demo-m12-2) → [`full-demo-with-m12-2.mp4`](docs/demos/recordings/full-demo-with-m12-2.mp4)
30
+
31
+
*All videos are generated programmatically — run [`docs/demos/generate-all.sh`](docs/demos/generate-all.sh). See [Milestone 8](milestones/milestone-8.md), [M12.2](milestones/milestone-12.2.md), and [docs/demos/README.md](docs/demos/README.md).*
18
32
19
33
---
20
34
@@ -33,12 +47,14 @@ Standalone Tekton pipeline system for **local development and proof-of-concept**
Older milestones (M2, M3) are in [milestones/completed/](milestones/completed/).
40
54
41
-
**Next up:** Finish remaining [M8](milestones/milestone-8.md) items (VHS recordings, Slidev export, full demo concat) as needed; ongoing maintenance via [CUSTOMIZATION.md](docs/CUSTOMIZATION.md) and [MAINTENANCE.md](docs/MAINTENANCE.md).
55
+
**Next up:** Finish remaining [M8](milestones/milestone-8.md) items (VHS recordings, Slidev export, full demo concat) as needed; **[M12.2 Part B](milestones/milestone-12.2.md)** regression + GUI [docs](docs/TESTING-AND-REGRESSION-OVERVIEW.md) and [demo segments](docs/demos/segments-m12-2-regression-gui.md); ongoing maintenance via [CUSTOMIZATION.md](docs/CUSTOMIZATION.md) and [MAINTENANCE.md](docs/MAINTENANCE.md).
56
+
57
+
**Regression (humans & Cursor agents):** run **`scripts/run-regression-agent.sh`** and iterate with fixes until green — see [AGENTS.md](AGENTS.md) and [docs/AGENT-REGRESSION.md](docs/AGENT-REGRESSION.md). Full tier list: [docs/REGRESSION.md](docs/REGRESSION.md).
42
58
43
59
---
44
60
@@ -218,7 +234,7 @@ C4Container
218
234
219
235
Full diagram set: [docs/c4-diagrams.md](docs/c4-diagrams.md).
220
236
221
-
> **ArgoCD** is optional for local dev. In production, ArgoCD syncs the Helm chart per team via ApplicationSet. See [ArgoCD + Tekton architecture guide](docs/argocd-architecture-guide.md) and [argocd/applicationset.yaml](argocd/applicationset.yaml).
237
+
> **ArgoCD** is optional for local dev. In a **production deployment**, ArgoCD syncs the Helm chart per team via ApplicationSet (separate from the validation cluster where pipelines run). See [ArgoCD + Tekton architecture guide](docs/argocd-architecture-guide.md), [Environments and clusters](docs/ENVIRONMENTS-AND-CLUSTERS.md), and [argocd/applicationset.yaml](argocd/applicationset.yaml).
Human or **Cursor agent**: do not treat testing as complete after a single partial command (e.g. pytest only, or Newman only). **Iterate**: run → read output → fix → re-run **until** the target command exits **0** and the log matches the done criteria below.
-**`Tekton DAG verify: will run inside run-full-test-and-verify-results.sh`** and that script completes successfully, **or**
33
+
- You documented **why** the cluster cannot run Phase 2 (and you did not claim full cluster verification).
34
+
3.**No unexplained `SKIP Tekton DAG verify`** when `stack-dag-verify` should exist — if you see it, fix install/namespace or pass `--require-dag-verify` and resolve the failure.
35
+
4. Newman/orchestrator: no port-forward bind failure; if it fails, free port or set `ORCHESTRATOR_TEST_PORT`.
Copy file name to clipboardExpand all lines: docs/CUSTOMIZATION.md
+4-1Lines changed: 4 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,6 +2,8 @@
2
2
3
3
Practical recipes for extending teams, stacks, build images, registries, pipelines, and intercept behavior. Examples use paths from the main **tekton-dag** platform repository.
4
4
5
+
**New team or new stack from scratch?** See [TEAM-ONBOARDING-STACKS-AND-BAGGAGE.md](TEAM-ONBOARDING-STACKS-AND-BAGGAGE.md) for which **baggage / header-forwarding library** to use per language and an end-to-end **stack creation checklist** (YAML, Helm, orchestrator).
**Goal:** Register another service in the DAG (build, image, tests, downstream edges).
62
+
**Goal:** Register another service in the DAG (build, image, tests, downstream edges).
63
+
**Baggage:** add the matching library from `libs/` and set `propagation-role`—see [TEAM-ONBOARDING-STACKS-AND-BAGGAGE.md](TEAM-ONBOARDING-STACKS-AND-BAGGAGE.md).
61
64
62
65
Edit or create a stack file under `stacks/`. Each entry under `apps` needs a unique `name`, `repo`, `role`, `build` tool settings, and optional `downstream` / `tests`:
Copy file name to clipboardExpand all lines: docs/DAG-AND-PROPAGATION.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -94,3 +94,5 @@ So:
94
94
|**“Which app has changes”**| The app whose PR triggered the run = the single **changed-app** (and thus in **build-apps**); that’s the app being intercepted for that run. |
95
95
96
96
For sequence diagrams that show intercept scenarios (originator only, forwarder only, terminal only, or multiple intercepted), see [docs/c4-diagrams.md](c4-diagrams.md) (“Dynamic Diagram: PR Intercept Scenarios”).
97
+
98
+
To implement propagation in application code and onboard a new stack, see [TEAM-ONBOARDING-STACKS-AND-BAGGAGE.md](TEAM-ONBOARDING-STACKS-AND-BAGGAGE.md).
This project’s docs and demos often talk about **two traffic paths** (PR vs non-PR) in a cluster. That is **not** the same as “this cluster is production.”
4
+
5
+
## How we name things
6
+
7
+
| Term | Meaning |
8
+
|------|--------|
9
+
|**Validation / pre-production cluster**| A **dedicated** Kubernetes cluster (or namespace slice) used to **build, deploy, and test** changes. It is usually **similar in shape** to production (same kinds of services, ingress, policies) so tests are realistic. **Pipelines and intercept demos run here.**|
10
+
|**Production cluster**| Where **released** workloads run for real users. Code and images are **promoted** here **after** validation — it is a **separate** cluster (or strictly separated environment), not the same place PR pipelines mutate. |
11
+
|**Baseline deployment** (or **mainline**) | The **non-PR** revision of a service **in the validation cluster** — the “steady” line already merged and deployed there. Demos that used to say “production” for this path mean **baseline**, not customer production. |
12
+
|**PR deployment**| An **ephemeral** revision deployed **alongside** the baseline **in the validation cluster**, reachable when requests carry the dev-session header. |
13
+
14
+
So: **“normal traffic”** in intercept diagrams = traffic to the **baseline** pods in the **validation** environment, **unless** the document explicitly says it is about the production cluster.
15
+
16
+
## Scripts and promotion
17
+
18
+
-`scripts/promote-pipelines.sh` moves Tekton YAML between namespaces (e.g. test → prod-facing namespace). That is an **operator-controlled promotion step**; it does not imply that PR validation runs in the production cluster.
19
+
- Regression and E2E scripts target **whatever cluster your kubeconfig points at** — treat that as validation unless you intentionally point at production (not recommended for destructive tests).
20
+
21
+
## Demos and narration
22
+
23
+
Demo videos and Manim scenes use **baseline / mainline** wording for the non-PR path so they stay accurate for teams that **only** run pipelines in a validation cluster and ship artifacts onward to production separately.
-**Artifact root** is the [`docs/`](../docs/) folder (so `docs/index.html` becomes the site homepage).
9
+
- Demo page [`index.html`](index.html) embeds **all 14 segments** plus **full-demo** / **full-demo-with-m12-2**; deep-link with fragments e.g. `…/tekton-dag/#seg-07` (see root [README](../README.md) demo table).
10
+
- Checkout uses **`lfs: true`** so large media tracked with Git LFS (e.g. demo MP4s under [`docs/demos/recordings/`](demos/recordings/)) are present in the deployed site. If videos are missing on Pages, confirm those files are committed and that LFS objects are pushed (`git lfs push --all origin main`).
9
11
- Repository **Settings → Pages**: source should be **GitHub Actions** (not “Deploy from a branch”).
0 commit comments