Je suis en train de mettre en place un nouvel environnement pour mon application, nous n'avons que l'environnement "prod", je veux créer un environnement de test, pour cela, j'ai configuré deux profils Spring, "test" et "prod", et créé une nouvelle branche appelée "test" où nous voulons avoir l'environnement de test et pousser cette branche vers master comme une sorte de "promotion" vers la production. Voici un extrait de notre application.yml
spring:
profiles: test
{some properties...}
---
spring:
profiles: prod
{some properties...}
Nous utilisons Heroku pour déployer notre application et nos dépôts depuis AzureDevOps, où nous avons également un pipeline qui s'exécute lorsque nous poussons des commits vers master, ce pipeline pousse la branche master d'AzureDevOps vers le dépôt Heroku. Dans Heroku nous avons une application créée sur "staging", nous n'avons pas encore ajouté une application "production" (pas sûr que ce soit pertinent mais je voulais clarifier cela).
C'est le pipeline :
git checkout $(Build.SourceBranchName)
git remote add heroku https://heroku:$(pat)@git.heroku.com/app-hto.git
git push heroku $(Build.SourceBranchName)
Pour spécifier le profil, j'utilise l'option Procfile
dans mon projet Java, où nous avons ceci :
web: java -Dspring.profiles.active=prod -Dserver.port=$PORT $JAVA_OPTS -jar target/api-0.0.1-SNAPSHOT.jar
Comme vous pouvez le constater, je ne suis pas un expert de Heroku et je ne sais pas comment procéder. Ma question est donc la suivante : comment puis-je spécifier le profil à utiliser pour chaque environnement ? Il y a un moyen d'accomplir cela en utilisant les pipelines AzureDevOps ?