Comment définir des variables d'environnement dans travis-ci et y accéder à partir d'un script python ?
-
21-12-2019 - |
Question
Notre travis.yml
ressemble à ça:
language: python
python:
- "2.7"
env:
- "MONGO_URL=mongodb://localhost/"
services: mongodb
# command to install dependencies
install: "pip install -r requirements.txt"
# command to run tests
script: nosetests
Puis dans le script python avec les tests, la ligne
server.connect(os.environ['MONGO_URL'])
renvoie une erreur (raccourcie):
File "/home/travis/virtualenv/python2.7/lib/python2.7/UserDict.py", line 23, in __getitem__
raise KeyError(key)
Cette erreur se produit uniquement sur Travis.Si nous les exécutons localement, cela fonctionne sans problème.Nous supposons donc que nous définissons la variable d'environnement MONGO_URL
dans le mauvais sens.Nous avons déjà essayé d’omettre les guillemets, mais cela n’a pas aidé.
Des indices ?Nous utilisons le service cloud gratuit de travis ci.
La solution
Cela fonctionne parfaitement maintenant, l'erreur était que j'en avais accidentellement créé un autre travis.yml
il manque le .
devant lui - donc le effectivement exécuté .travis.yml
ne contenait pas les variables d'environnement.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow