# Connecter votre produit

> Connecter votre produit à Ondaclip : installer l'app GitHub Ondaclip, puis suivre les sept étapes du studio jusqu'au premier tournage.

Connecter un produit, ce sont les sept étapes de l'assistant du studio.
Chaque étape se vérifie elle-même, et vous pouvez revenir à n'importe
laquelle.

## Avant de commencer

- Une application web déployée sur un environnement qu'Ondaclip peut filmer
  (DEV par défaut).
- Son dépôt sur GitHub.
- Où tournent les tournages : **Ondaclip Cloud** (rien à préparer), ou
  **votre infrastructure** : un projet Google Cloud à vous, en général celui
  de cet environnement, et un administrateur de ce projet pour une commande.
  Voir [où ça tourne](/docs/fr/where-it-runs/).

## 1. Le produit

Donnez-lui un nom, choisissez les langues de ses vidéos (`en-US`, `fr-CA`,
`es-MX`) et l'environnement filmé : `dev`, `staging` ou `production`. DEV est
le choix sûr. Sur un environnement réel, ne filmez que des écrans sans
données de vrais clients.

## 2. GitHub

Installez l'**app GitHub Ondaclip** sur le dépôt de votre application. Le
studio lit le code et propose des changements en pull requests. Une personne
les fusionne toujours.

Choisissez ensuite la branche et le dossier Ondaclip : `.ondaclip` à la
racine, comme `.github` (dans un monorepo, `apps/web/.ondaclip`).

- Pas encore de dossier : le studio propose un dossier de départ dans une
  pull request, avec `config.yaml`, un tutoriel d'exemple,
  `publication.yaml` et un `.gitignore` pour `output/`.
- Le dossier contient déjà un `config.yaml` : les étapes suivantes
  sont préremplies. Lancez chaque vérification pour confirmer.

Ondaclip ne demande jamais de branche à lui. Les branches qu'il crée
s'appellent `ondaclip/…` : `ondaclip/setup-<produit>`, `ondaclip/spec-…`,
`ondaclip/testids-…`.

## 3. Où ça tourne

Choisissez l'un des deux chemins ([les comparer](/docs/fr/where-it-runs/)).

**Ondaclip Cloud.** Choisissez-le, et l'étape est faite : Ondaclip héberge
les tournages, les comptes de démo et les vidéos. Il n'y a rien à lancer.
Free et l'essai passent par ce chemin.

**Votre infrastructure.** Indiquez le projet Google Cloud où tournent les
tournages. Le studio a besoin de droits d'installation une seule fois : il
affiche une commande qu'un administrateur lance dans Cloud Shell (vous pouvez
la lui envoyer par courriel). Il montre son plan (deux comptes aux rôles étroits, un espace de stockage
privé, un modèle de machine et un secret pour les comptes de démo), crée ce
qui manque, puis
**rend les droits d'installation**. Il ne garde que ses droits du quotidien :
lancer des tournages et lire les résultats. Choisissez ensuite où les vidéos
sont publiées : un dossier d'un espace de stockage privé de votre projet. Si votre application lit déjà
des vidéos dans un dossier, indiquez celui-là.

## 4. Comptes de démo

Des comptes fictifs avec lesquels les vidéos se connectent, un par rôle (par
exemple `client`). Ils sont gardés chiffrés (par Ondaclip sur Ondaclip
Cloud, dans le Secret Manager de votre projet dans votre infrastructure),
servent seulement à se connecter pendant vos tournages, et ne sont plus
jamais affichés, même pas à vous. Un tutoriel choisit un compte par son rôle. Une
application sans connexion n'a besoin d'aucun compte.

## 5. Application à filmer

L'adresse de l'application déployée. Seule cette adresse est permise. Dites
qui peut l'ouvrir : tout le monde (l'application a sa propre connexion), ou
des comptes Google seulement (Identity-Aware Proxy). Décrivez le formulaire
de connexion, puis lancez le test : le studio se connecte hors caméra et
ouvre la page d'accueil. Votre application se connecte seulement avec Google
ou Microsoft par Firebase ? Utilisez [un jeton signé](/docs/fr/signed-token/)
(votre infrastructure seulement).

## 6. Assistant IA

L'assistant répare les tournages échoués, revoit les clips et rédige de
nouveaux tutoriels. Sur Ondaclip Cloud, Ondaclip le fait tourner. Dans votre
infrastructure, son modèle tourne dans votre projet : `agy` (Gemini) ou
`claude-code` (Claude, à activer d'abord dans Model Garden).

## 7. Mise en service

Quand toutes les étapes sont faites, mettez le produit en service. Ses
tutoriels peuvent alors être filmés, revus et publiés. Ensuite :
[votre premier tutoriel](/docs/fr/first-tutorial/).

## Filmer une branche sur une préversion

Une nouvelle fonction vit souvent sur une branche, déployée sur une adresse
de préversion (un canal de préversion Firebase Hosting, par exemple).
Ondaclip peut la filmer avant qu'elle arrive en DEV.

1. **Permettre l'hôte en ligne et ses préversions, une fois.** Écrivez la
   garde DEV pour qu'elle accepte les deux, dans `.ondaclip/config.yaml` :

   ```yaml
   devGuard:
     appHostPattern: '^my-site(--[a-z0-9-]+)?\.web\.app$'
   ```

   `my-site.web.app` et `my-site--my-feature-abc123.web.app` passent tous
   les deux. Tout autre hôte arrête encore le tournage.
2. **Faire accepter les préversions par votre API.** Si l'application
   appelle une API depuis le navigateur, les règles CORS de l'API doivent
   accepter les origines des préversions. Ajoutez un motif dans le code de
   votre API, une fois (la même idée que la garde). Une version normale de
   l'API ne doit pas le retirer, sinon chaque tournage de préversion échoue.
3. **Garder la préversion en vie.** Les canaux de préversion expirent.
   Déployez avec une longue expiration (par exemple `--expires 30d`) et
   gardez le même nom de canal, pour que l'adresse ne change pas d'un
   déploiement à l'autre.
4. **Vérifier et filmer la branche, pour une exécution.** Depuis v0.74.0,
   `check` et `film` prennent `ref` (la branche) et `appUrl` (l'adresse de
   la préversion). Le produit garde sa branche et son adresse habituelles.
5. **Ou changer l'adresse filmée.** `update_product {appUrl}` change
   l'adresse qu'Ondaclip filme pour chaque exécution, jusqu'à ce que vous
   remettiez l'hôte en ligne. Prêt à filmer vérifie que la garde la permet.
6. **Ne pas publier trop tôt.** Les clips filmés sur une branche arrivent
   dans la revue du produit, comme tout clip. Revoyez-les, mais publiez-les
   seulement après la fusion de la branche.

Pour filmer une nouvelle fonction d'abord dans une seule langue, donnez au
tutoriel `locales: [en-US]` (depuis v0.74.0). Voir
[le fichier d'un tutoriel](/docs/fr/tutorial-format/).

## Ajouter un produit à un dépôt qui en a plusieurs

Un monodépôt (un tableau de bord, un admin, des applications mobiles) garde
un seul dossier `.ondaclip/`. Pour ajouter une application comme produit :

1. **Écrire son bloc sous `products:`** dans `.ondaclip/config.yaml` :
   - `name` : le nom affiché dans le studio ;
   - `tutorials` et `publication` : ses dossiers (par défaut
     `<id>/tutorials/` et `<id>/publication.yaml`) ;
   - `locales` : seulement s'il diffère de celui qui est partagé ;
   - `devGuard.appHostPattern` : l'hôte de cette application seulement (et
     ses préversions) ;
   - `cloud.appUrl` : l'adresse à filmer ;
   - `publish.targets` : son propre endroit (votre infrastructure
     seulement ; jamais celui d'un autre produit) ;
   - `freshness.appPaths` : les dossiers de cette application et les
     paquets qu'elle utilise.

   Voir [plusieurs produits dans un dépôt](/docs/fr/configuration/#several-products-in-one-repository).
2. **Vérifier le fichier** : `validate_config` montre ce que reçoit chaque
   produit.
3. **Le fusionner** dans la branche qu'Ondaclip suit.
4. **Ajouter le produit** : `add_product` (ou Ajouter un produit dans le
   studio).
5. **Connecter GitHub** : `setup_product` étape `github` avec `product`,
   l'id de son bloc.
6. **Où ça tourne** : `setup_product` étape `gcp` (votre infrastructure).
   Depuis v0.74.0, quand un autre produit de l'espace de travail utilise le
   même projet Google Cloud, sa configuration est réutilisée : pas de
   nouvelle commande pour l'admin. Ou l'étape `cloud` pour Ondaclip Cloud.
7. **Comptes de démo** : les mêmes comptes qu'un autre produit de l'espace
   de travail avec `update_product {accountsFrom}` (depuis v0.73.0), ou
   Paramètres, Comptes de démo dans le studio.
8. **L'application** : `setup_product` étape `app` (adresse, connexion),
   puis le test de connexion.
9. **Prêt à filmer** : `readiness` liste ce qui reste. Quand chaque
   vérification passe, filmez le premier tutoriel.

Source: https://ondaclip.com/docs/fr/connect-your-product/
