- Fonctionnalités
- Pricing

Regardez la démonstration en accéléré ci-dessous avant de poursuivre votre lecture. Il vous faudra moins d'une minute pour découvrir comment créer un environnement de production cloné en moins d'une minute... avec la base de données, les fichiers et les services inclus.
Et voici pourquoi cela change tout pour les développeurs.
Vous connaissez cette sensation. Une régression échappe à la mise en scène, les clients la ressentent en premier, et votre après-midi (ou votre fin de soirée) se transforme en salle de crise post-déploiement. Les développeurs déclarent passer la plupart de leur temps à des tâches réactives, telles que le débogage et les salles de crise, plutôt qu'à la création de nouveaux logiciels.¹ Pas étonnant que les lancements semblent plus difficiles qu'ils ne devraient l'être.
Ce guide explique comment le « clone de production » d'Upsun transforme n'importe quelle branche Git en un environnement de production parfait en moins d'une minute, avec des données, des fichiers et des services clonés à partir du parent. Vous pouvez reproduire les problèmes, valider les corrections et prouver les performances avant la fusion. Fini les exercices d'évacuation après le déploiement.
La mise en scène correspond rarement à la production. Les différentes versions des services, les données manquantes, les développeurs qui poussent différentes versions du code ou les ressources obsolètes créent une dérive de l'environnement qui masque les véritables bogues jusqu'à la mise en service. Les conseils DevOps d'AWS recommandent de définir des environnements de référence et de gérer en permanence la dérive.
Les environnements de test sont utiles, mais uniquement lorsqu'ils sont vraiment « identiques à la production ». Cela signifie :
Avec Upsun, chaque branche Git peut devenir un environnement de production en direct avec des services et du code clonés. Vous conservez le processus Git familier que vous utilisez déjà, désormais soutenu par des aperçus instantanés et parfaits pour la production qui débloquent les révisions et le débogage.
.upsun/config.yaml, validez-les dans Git et conservez-les dans votre code (pour en savoir plus, consultez la structure YAML).Utilisez Git push sur une nouvelle branche, et Upsun peut activer un nouvel environnement, cloner les services parents et cloner les données des parents en une seule fois.
Cette seule poussée configure un environnement de branche avec des systèmes de fichiers et des services identiques à ceux de la production, ainsi qu'un ensemble de données cloné à partir de son parent. Voir gérer les environnements.
Vous avez besoin d'actualiser les données ultérieurement ? Synchronisez votre branche avec upsun env:sync data.
Toutes les applications, tous les services, toutes les routes et tous les hooks se trouvent dans .upsun/config.yaml. Voici un exemple minimal avec une application Node.js, MariaDB, Redis et un hook de déploiement qui exécute la désinfection dans les environnements hors production :
# .upsun/config.yaml
applications:
web:
type: "nodejs:22"
relationships:
mariadb: "mariadb"
cache: "redis"
hooks:
deploy: |
if [ "$PLATFORM_ENVIRONMENT_TYPE" != "production" ]; then
./scripts/sanitize_db.sh
fi
services:
mariadb:
type: "mariadb:11.8"
redis:
type: "redis:7.2" # persistent or ephemeral supported
routes:
https://{default}/:
type: upstream
upstream: "web:http"
PLATFORM_ENVIRONMENT_TYPE de variable d'environnement documentée pour faire varier le comportement en fonction de l'environnement et n'exécute la désinfection que sur les aperçus (voir Modifier les hooks par environnement).Comme les branches sont parfaitement adaptées à la production, votre pipeline CI peut s'exécuter sur la même topologie, les mêmes versions et le même profil de données que ceux que vous déployerez finalement en production. Cela réduit considérablement les tests instables causés par la dérive de l'environnement. Voir la présentation de la compilation et du déploiement.
Vous pouvez également ajouter la fonctionnalité de build Blackfire à votre pipeline pour détecter automatiquement les problèmes de performances et fournir des recommandations exploitables pour PHP et Python (fonctionnalités Upsun ; Blackfire sur Upsun).
Les bogues obscurs et dépendants des données se reproduisent instantanément lorsque votre aperçu contient des données et des ressources réelles. Les guides de nettoyage d'Upsun vous montrent comment supprimer en toute sécurité les informations personnelles identifiables dans les combinaisons de stacks courantes, telles que PostgreSQL et Django, Symfony et PostgreSQL, ou MariaDB et Drupal (voir « Nettoyer PostgreSQL et Django », « Nettoyer Symfony et PostgreSQL » et « Nettoyer MariaDB et Drupal »).
Préférez-vous travailler localement en utilisant des données de clone de production ? Reliez votre environnement local aux services distants pour une itération rapide (développement local connecté).
Pour approfondir vos connaissances sur les modèles YAML ou les configurations multiservices, consultez les tutoriels pour développeurs.
À qui s'adresse ce service ? Aux développeurs qui souhaitent passer plus de temps à coder et moins à résoudre des problèmes. C'est le but recherché : Upsun fournit à chaque branche un environnement réel de niveau production, vous permettant de tester, d'itérer et de réviser sans craindre que « cela ne casse tout ».
Utilisez le clonage de production pour éliminer la dérive de l'environnement. Lorsque les environnements sont identiques par défaut et contiennent des données sûres et récentes, les tests CI/CD et le débogage des applications redeviennent fiables.
Voir un clone de production apparaître en 45 secondes, c'est cool. Mais l'expérimenter avec votre propre code, c'est ce qui change vraiment la donne.
Lancez un essai gratuit, connectez votre dépôt Git et regardez chaque branche prendre vie sous la forme d'un environnement de production avec des données, des fichiers et des services inclus.
¹ Cisco Newsroom. « Les développeurs passent plus de temps à résoudre des problèmes qu'à innover. »
² Stack Overflow Developer Survey 2024. « Temps quotidien consacré à la recherche de réponses/solutions.»
³ AWS Well-Architected DevOps Guidance. « [AG.DEP.2] Évaluez en permanence les environnements pour gérer les dérives. »
Join our monthly newsletter
Compliant and validated

