yml what travis deploy cli archivo api continuous-integration api-key travis-ci

api - what - travis js



Usando claves secretas api en travis-ci (4)

Me gustaría usar travis-ci para uno de mis projects .

El proyecto es un contenedor de API, por lo que muchas de las pruebas se basan en el uso de claves API secretas. Para realizar pruebas localmente, solo las guardo como variables de entorno. ¿Cuál es una forma segura de usar esas llaves en Travis?


También puede definir variables secretas en la configuración del repositorio :

Las variables definidas en la configuración del repositorio son las mismas para todas las compilaciones, y cuando reinicias una compilación anterior, usa los últimos valores. Estas variables no están automáticamente disponibles para las horquillas.

Defina variables en la configuración del repositorio que:

  • difieren por repositorio.
  • contener datos confidenciales, como credenciales de terceros.

Para definir variables en la configuración del depósito, asegúrese de haber iniciado sesión, vaya al depósito en cuestión, seleccione "Configuración" en el menú del engranaje y haga clic en "Agregar nueva variable" en la sección "Variables del entorno".


Travis tiene una función para cifrar variables de entorno ( "Cifrar variables de entorno" ). Esto se puede usar para proteger tus claves API secretas. Lo he usado con éxito para mi clave de Heroku API.

Todo lo que tiene que hacer es instalar la gema travis, cifrar la cadena que desea y agregar la cadena cifrada en su .travis.yml . El cifrado solo es válido para un repositorio. El comando travis obtiene su clave pública para su repositorio y luego puede descifrar la cadena durante la compilación.

gem install --user travis travis encrypt MY_SECRET_ENV=super_secret -r my_username/my_repo

Esto le da el siguiente resultado:

Please add the following to your .travis.yml file: secure: "OrEeqU0z6GJdC6Sx/XI7AMiQ8NM9GwPpZkVDq6cBHcD6OlSppkSwm6JvopTR/newLDTdtbk/dxKurUzwTeRbplIEe9DiyVDCzEiJGfgfq7woh+GRo+q6+UIWLE/n3nowpI9AzXt7iBhoKhV9lJ1MROrnn4DnlKxAEUlHTDi4Wk8Ei/g="


Use un conjunto diferente de claves API y hágalo de la misma manera. Tu cuadro de travis se configura para tu ejecución de construcción y luego se derriba por completo una vez que ha finalizado tu construcción. Tienes acceso de root a tu caja durante la compilación, para que puedas hacer lo que quieras con ella.


de acuerdo con this en la documentación de travis ci, se dice que:

Si tiene instalados los clientes de la línea de comando Heroku y Travis CI, puede obtener su clave, encriptarla y agregarla a su .travis.yml ejecutando el siguiente comando desde su directorio de proyecto:

travis encrypt $(heroku auth:token) --add deploy.api_key

consulte el siguiente tutorial para instalar el cliente heroku de acuerdo con su sistema operativo