2017-05-25 4 views
2

J'ai une application JS qui utilise l'API REST spécifiée dans la variable d'environnement API_HOST. L'application dispose de deux pipelines de déploiement configurés sur le code pour chaque branche (develop, master). Pour chaque branche, je souhaite fournir une URL de point de terminaison REST différente stockée au API_HOST. Actuellement, j'ai API_HOST variable définie sous l'onglet Environment mais cela ne fonctionne pas car il est défini globalement pour tous les pipelines de déploiement. L'exportation de la variable API_HOST au sein de Custom Script ne fonctionne pas non plus.Variable ENV différente pour chaque pipeline de déploiement sur Codeship

Je souhaite fournir une variable d'environnement API_HOST différente pour chaque pipeline de déploiement. Comment puis-je y parvenir?

+0

Souhaitez-vous que API_HOST soit disponible après le déploiement ou pendant les tests? –

+0

Pendant le test. Plus précisément avant de construire 'bundle.js'. –

Répondre

1

Résolu.

Codeship expose la variable d'environnement CI_BRANCH (entre autres, comme décrit ici Environment Variables On Codeship) donc j'ai été en mesure d'exporter la variable API_HOST manuellement en fonction nom de la branche dans Test -> Setup Commands comme ceci: if [ "$CI_BRANCH" = "develop" ]; then export API_HOST="..."; elif [ "$CI_BRANCH" = "master" ]; then export API_HOST="'...'"; else echo "Unrecognized branch name."; fi;

Merci Codeship équipe de soutien!

+0

Vous pouvez exporter les variables d'environnement dans votre script de déploiement et ensuite, vous pouvez exécuter les scripts de déploiement spécifiques à l'application. Par exemple, dans mon cas, après avoir exporté les valeurs, j'appelle la construction 'npm'. –