Deux sources. Une seule reconstruction.
Payload garde les mots et les images. Shopify garde le prix, le stock et le paiement. Un build lit les deux et publie les pages en fichiers sur Cloudflare Workers. Un changement dans l’un ou l’autre lance ce build.
Les mots et les images, sur Google Cloud Run
Prix, stock et paiement
GitHub Actions construit les pages avec Astro à chaque publication dans le CMS, à chaque changement dans Shopify et chaque nuit. Un build tourne, un autre attend, et une rafale rejoint celui qui attend
Pages pré-construites en fichiers statiques; seuls le sac et l’aperçu en direct roulent à la demande
Un seul Payload sert storeplumbing-demorenovation-demoblog-demo
Code/fr/how-it-workspré-rendu sur Cloudflare à chaque déploiement
Un Payload, quatre domaines.
Un CMS garde le contenu de quatre sites. Chaque page, doc et article nomme son domaine. Une administration, une base de données.
domains
name · slug · url · kind · languages · defaultLocale · status
- storeOVRLD — commerce showcasece site
- plumbing-demoClapet — plomberie et chauffageen ligne
- renovation-demoLinteau — rénovationen ligne
- blog-demoBlog demoprévu
Le journal des webhooks, tel que le dernier build l’a vu.
Vraies lignes · lues dans le CMS au build de cette page
Shopify appelle le CMS quand un produit, son stock ou une collection change. Le CMS vérifie la signature, écrit l’appel dans webhook-events et demande une reconstruction; les appels qui arrivent pendant qu’un build attend s’y joignent.
| Source | Sujet | Reçu le | État | Action |
|---|---|---|---|---|
| shopify | collections/update | 2026-10-31 23:03:07 UTC | requested | Featured (featured) · Reconstruction demandée pour store |
| shopify | collections/update | 2026-10-31 23:03:05 UTC | requested | Floor & Mobility (floor-mobility) · Reconstruction demandée pour store |
| shopify | collections/update | 2026-10-31 23:03:04 UTC | requested | Footwear (footwear) · Reconstruction demandée pour store |
| shopify | collections/update | 2026-10-31 23:03:04 UTC | requested | Bottoms (bottoms) · Reconstruction demandée pour store |
| shopify | collections/update | 2026-10-31 23:03:04 UTC | requested | Outerwear (outerwear) · Reconstruction demandée pour store |
| shopify | products/update | 2026-10-31 23:03:04 UTC | requested | Training Sweatpants (training-sweatpants) · Reconstruction demandée pour store |
| shopify | collections/update | 2026-10-31 23:03:04 UTC | requested | Tops (tops) · Reconstruction demandée pour store |
| shopify | products/update | 2026-10-31 22:20:35 UTC | requested | Yoga Mat (yoga-mat) · Reconstruction demandée pour store |
La pile, par version.
Ce qui roule où, tel que le dossier d’architecture le fixe.
Astro 7.4.2
Les pages du magasin : sortie statique, îlots Preact 11.0.2, nanostores 1.5.5 pour le sac.
@astrojs/cloudflare 14.4.2
Le Worker web sur Cloudflare : fichiers statiques, la route du sac et l’aperçu en direct.
Payload 4.0.0-beta.4
Le CMS, épinglé exactement, avec la connexion propre à Payload pour les admins et les visiteurs.
Google Cloud Run
L’hôte du CMS : service showcase-cms dans us-east5, Next autonome sur Node 24.22, une instance au plus, 512 Mio, réduit à zéro.
Postgres 18 on Neon Free
La base de données, dans AWS us-east-2, jointe par une connexion directe depuis le CMS.
Google Cloud Storage
Les médias dans le compartiment privé showcase-cms-media, par @payloadcms/storage-gcs.
@shopify/hydrogen 2026.10.2
Le client Storefront au build et les gestionnaires du sac.
Node 24.22.1 · GitHub Actions
Build et déploiement : le workflow deploy-web tourne à chaque push, à chaque publication dans le CMS, à chaque changement dans Shopify et chaque nuit.
Ouvrez le CMS et jetez un œil à l’intérieur.
Il roule sur Google Cloud Run à showcase-cms-1065657380974.us-east5.run.app. Entrez comme visiteur pour faire le tour.