Skip to content

chore(infra): add demo Makefile with cross-ref from runbook (D114) - #88

Merged
GMartin-Data merged 1 commit into
mainfrom
chore/demo-makefile
Jun 2, 2026
Merged

GMartin-Data merged 1 commit into
mainfrom
chore/demo-makefile

Conversation

@GMartin-Data

Copy link
Copy Markdown
Owner

Contexte

La démo technique de soutenance (brief l.95, 70 %) impose quatre gestes en conditions réelles, dont déclencher un run. Les commandes gcloud/bq correspondantes (cf. demo-script.md §1:40-3:00) sont longues : verbeuses à taper en live, fragiles sous stress, et peu lisibles à l'écran pour le jury.

Cette PR introduit un Makefile racine facilitateur de démo : des raccourcis légers pour les gestes de la démo. Tracé en D114.

Décisions techniques

Arbitrage Choix Pourquoi
Alias shell vs Makefile Makefile Versionné (artefact évaluable par le jury), auto-documentant, cohérent docs-as-code. L'alias est invisible/non versionné.
Chemin de déclenchement Scheduler (make trigger) Exerce la chaîne exacte du cron lundi 6 h (Scheduler → POST OAuth sa-ingestion → Job → main.py → dbt). gcloud run jobs execute court-circuiterait le Scheduler.
Frontière démo / diagnostic Makefile léger, runbook inchangé Les commandes runbook sont des variantes diagnostic plus riches (jq triggerName, boucle raw/marts, Knative v1). Les remplacer par make les appauvrirait → on garde les deux, natures différentes, pas de double source.
Périmètre 4 cibles (gestes démo) Pas de build/deploy/test — ce serait un Makefile-projet exhaustif, hors périmètre assumé (Simplicity First).

Changements

  • Makefile (nouveau, racine) : cibles trigger, last-run, logs, fresh + help auto-documenté. Variables PROJECT/REGION/JOB/SCHEDULER en tête.
  • docs/runbook.md : encadré de renvoi « coup d'œil rapide vs diagnostic » après les prérequis CLI. Aucune commande diagnostic retirée.

Validation

```
$ make help
trigger Déclenche le pipeline via le Scheduler (chaîne exacte du cron, fire-and-forget)
last-run Affiche la dernière exécution ingestion (statut SUCCEEDED attendu)
logs Prouve l'enchaînement ingestion -> dbt (events structlog)
fresh Prouve la fraîcheur des marts (fct_offres reconstruit au dernier run)
```

```
$ make -n trigger
gcloud scheduler jobs run datatalent-ingestion-scheduler
--location=europe-west1 --project=datatalent-glaq-2
```

Parsing OK, les 4 cibles génèrent les commandes attendues avec les bonnes valeurs (europe-west1, datatalent-glaq-2). Pas de modification d'infra → terraform plan inchangé. Pre-commit + Conventional Commit verts.

Décisions liées

Refs : D114 (nouvelle), D108/D72 (chaîne d'orchestration déclenchée), D109 (runbook préservé), D24 (branche dédiée).

Add a root Makefile exposing four lightweight targets for the soutenance
demo gestures: trigger (Scheduler), last-run, logs, fresh. Commands are
kept deliberately light (--limit=1, table format) for live readability,
distinct from the richer diagnostic variants in docs/runbook.md.

The runbook gains a cross-reference note pointing to make for quick checks
while keeping all its diagnostic commands (jq triggerName, raw/marts
asymmetry, Knative v1 paths) — no double source of truth, different intents.

Refs: D114
@ESNAULTQ
ESNAULTQ self-requested a review June 2, 2026 07:13

@ESNAULTQ ESNAULTQ left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Je t'autorise

@GMartin-Data
GMartin-Data merged commit f034c99 into main Jun 2, 2026
6 checks passed
@GMartin-Data
GMartin-Data deleted the chore/demo-makefile branch June 2, 2026 07:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants