# Environnements Prod et Testing

La plateforme Commanders Act vous permet de gérer les sources de données, les destinations et les transformations dans différents environnements. Ces environnements — à savoir Production, Staging et Development — vous aident à organiser et à contrôler votre flux de données plus efficacement.

### Que sont les environnements ?

Les environnements sont des labels qui peuvent être appliqués aux sources, aux destinations et aux transformations. Ces labels vous aident à catégoriser et à gérer la manière dont les données circulent et sont traitées au sein du système. En sélectionnant un environnement, vous pouvez spécifier le contexte dans lequel une source, une destination ou une transformation particulière doit fonctionner.\
Les trois environnements principaux par défaut sont :

* **Production**: Il s’agit de l’environnement en production (à manipuler avec beaucoup de prudence)
* **Staging**: Souvent utilisé pour les tests et l’assurance qualité.
* **Development**: Utilisé pour construire et tester des éléments

### Exemples de workflow

#### Cas d’usage 1 : Test d’une nouvelle destination à l’échelle de l’équipe

* **Scénario**: Votre équipe doit valider la configuration d’une nouvelle destination.
* **Étapes**:
  1. Créez une destination dans l’environnement Development et attribuez-lui le label "Team\_Test\_Destination."
  2. Connectez uniquement des sources Development qui envoient des événements connus et contrôlés.
* **Résultat**: L’équipe peut tester et valider collectivement la nouvelle destination à l’aide de données contrôlées et de faible volume.

#### Cas d’usage 2 : Test de transformations de données à plus petite échelle

* **Scénario**: Vous avez développé une nouvelle logique de transformation des données et souhaitez tester son impact avant de l’appliquer à vos données en production.
* **Étapes**:
  1. Créez une source dans l’environnement Development et attribuez-lui le label "Transformation\_Test."
  2. Acheminez uniquement un sous-ensemble de vos événements, de préférence des événements de test, vers cette source.
  3. Créez une transformation dans l’environnement Development et connectez-la à la source "Transformation\_Test".
* **Résultat**: Vous pouvez valider la nouvelle logique de transformation des données à l’aide de données contrôlées et de faible volume, sans affecter l’environnement Production.

#### Cas d’usage 3 : Vérification d’une mise à jour d’application mobile

* **Scénario**: Vous déployez une nouvelle version de votre application mobile et souhaitez vous assurer qu’elle fonctionne comme prévu.
* **Étapes**:
  1. Créez une source dans l’environnement Development spécifiquement pour la nouvelle version de l’application mobile.
  2. Dans un premier temps, connectez cette source aux destinations de l’environnement Development.
  3. Une fois vérifiée, connectez-la aux destinations Production.
* **Résultat**: Vous pouvez tester la nouvelle version de l’application dans un environnement contrôlé, avec un volume réduit, avant de la déployer auprès de vos utilisateurs.

#### Cas d’usage 4 : Contrôle d’accès basé sur les rôles (bientôt)

* **Scénario**: Vous souhaitez contrôler qui peut effectuer des modifications dans différents environnements.
* **Étapes**:
  1. Attribuez des rôles aux membres de l’équipe, en précisant les permissions pour Production, Staging et Development.
  2. Mettez en place ces rôles pour restreindre ou accorder l’accès à des sources, destinations ou transformations spécifiques.
* **Résultat**: Seuls les membres autorisés de l’équipe peuvent effectuer des modifications dans les environnements sensibles, ce qui renforce la sécurité et la responsabilisation.

{% hint style="info" %}
Dans un avenir proche, la plateforme introduira une gestion des permissions utilisateur qui vous permettra de définir qui peut modifier ou créer des éléments dans chaque environnement. Cela ajoute un niveau supplémentaire de contrôle et de sécurité, garantissant que seul le personnel autorisé peut effectuer des modifications dans des environnements critiques comme Production.
{% endhint %}

### Avantages de l’utilisation des environnements

#### Isolation des données

L’isolation des données entre les environnements minimise le risque d’erreurs et de corruption des données. Par exemple, tester une nouvelle fonctionnalité dans l’environnement Development ou Staging n’affectera pas vos données en production.

#### Sécurité renforcée

Les données de Production sont isolées de Development et Staging, ce qui réduit le risque d’accès non autorisé ou de fuite de données.

#### Testabilité améliorée

Les nouvelles fonctionnalités ou transformations de données peuvent être testées en profondeur dans l’environnement Staging ou Development avant d’être déployées en Production.

#### Déploiement simplifié

Le passage de nouvelles fonctionnalités de Development à Staging puis à Production devient plus simple, réduisant les risques d’erreurs lors du déploiement.

#### Collaboration d’équipe

Les environnements facilitent une meilleure collaboration entre les équipes de développement, de test et d’exploitation en offrant des espaces dédiés à chaque phase.

#### Future feature : Gestion des permissions utilisateur

Elle vous permet de définir qui peut modifier ou créer des éléments en production, staging, etc. Cela ajoute un niveau supplémentaire de contrôle et de sécurité, garantissant que seul le personnel autorisé peut effectuer des modifications dans des environnements critiques comme Production.

### Comment utiliser les environnements

1. **Créer une source ou une destination**: Vous avez la possibilité de l’associer à un environment tag — Production, Staging ou Development. Cela vous aide à catégoriser et à gérer la manière dont les données circulent et sont traitées au sein du système.
2. **Transformations de nettoyage des données**: Lors de la création d’une transformation, vous pouvez choisir de l’appliquer à un environnement spécifique, ce qui vous donne davantage de contrôle sur votre flux de données.

{% hint style="info" %}
**Créez vos propres environnements**: En plus des environnements par défaut Production, Staging et Development, une **future** mise à jour vous permettra de créer vos propres environnements personnalisés. Cela offrira encore plus de flexibilité dans la gestion des flux de données et des transformations, en vous permettant d’adapter la plateforme à vos besoins spécifiques.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doc.commandersact.com/fr/premiers-pas/platform-interface/prod-and-testing-environments.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
