Travis CI-Uso de variables de entorno de repositorio en.travis.yml
travis-ci (1)
Estoy buscando declarar variables de entorno en mi configuración del repositorio de Travis CI y usarlas en mi archivo .travis.yml para implementar una aplicación y publicar una notificación de compilación en Slack.
He establecido las variables de entorno en mi configuración del repositorio de Travis CI de la siguiente manera:
Mi archivo .travis.yml aparece como lo siguiente:
language: node_js
node_js:
- ''0.12''
cache:
directories:
- node_modules
deploy:
edge: true
provider: cloudfoundry
api: $CF_API
username: $CF_USERNAME
password: $CF_PASSWORD
organization: $CF_ORGANIZATION
space: $CF_SPACE
notifications:
slack: $NOTIFICATIONS_SLACK
Cuando agrego los valores al archivo .travis.yml como están, todo funciona según lo planeado.
Sin embargo, cuando trato de referirme a las variables de entorno establecidas en el repositorio, no recibo ninguna notificación de Slack en un estado de compilación y la implementación falla.
¿Estoy siguiendo este proceso correctamente o hay algo que estoy supervisando?
Creo que es probablemente demasiado pronto en la secuencia de Travis CI para que puedan leerse las variables de su entorno.
Lo que sugeriría es más bien cifrarlos usando la herramienta de línea de comandos travis
.
P.ej
$ travis encrypt
Reading from stdin, press Ctrl+D when done
username
Please add the following to your .travis.yml file:
secure: "TD955qR6qvpVIz3fLkGeeUhV76deeVRaLVYjW9YjV6Ob7wd+vPtACZ..."
Pro Tip: You can add it automatically by running with --add.
Luego copiaría / secure: "TD955qR6qvpVIz3fLkGeeUhV76d..."
resultado secure: "TD955qR6qvpVIz3fLkGeeUhV76d..."
en el lugar apropiado en su archivo .travis.yml:
language: node_js
node_js:
- ''0.12''
cache:
directories:
- node_modules
deploy:
edge: true
provider: cloudfoundry
api:
secure: "bHU4+ZDFeZcHpuE/WRpgMBcxr8l..."
username:
secure: "TD955qR6qvpVIz3fLkGeeUhV76d..."
Puede tener más detalles sobre cómo cifrar datos confidenciales en Travis CI here .
Espero que esto ayude.