portable not fatal does devcenter cli articles appear git heroku deployment gitlab continuous-deployment

not - Cómo desplegar a Heroku directamente desde mi repositorio Gitlab



heroku login (2)

En mi equipo, usamos Gitlab un repositorio remoto, por lo que estamos encontrando una solución para el despliegue automático de las aplicaciones a Heroku directamente. Encontramos Codeship para aplicaciones de despliegue automático en Heroku desde Github.

¿Algun consejo? ¿Trucos?


Si no está preparado para usar Ruby / dpl, puede implementarlo en Heroku de la siguiente manera:

Busque su clave API Heroku (configuración de cuenta -> clave API en la consola web de Heroku) y haga que esté disponible como una variable secreta de Gitlab, por ejemplo, HEROKU_API_KEY (tenga en cuenta que los valores no son los mismos que lo que heroku auth: token devuelve ...)

Luego agregue dos líneas de script en su archivo de configuración .gitlab-ci.yml en el trabajo relevante:

git remote add heroku https://heroku:[email protected]/<name of your heroku app>.git git push -f heroku master

Puede ver una explicación detallada en http://blog.thecodewhisperer.com/permalink/deploying-jekyll-to-heroku-using-gitlab-ci


Here está la solución que encontré, reiterando en caso de que el enlace esté roto:

Configurar proyecto

Este es el aspecto del archivo .gitlab-ci.yml para este proyecto:

test: script: # this configures Django application to use attached postgres database that is run on `postgres` host - export DATABASE_URL=postgres://postgres:@postgres:5432/python-test-app - apt-get update -qy - apt-get install -y python-dev python-pip - pip install -r requirements.txt - python manage.py test staging: type: deploy script: - apt-get update -qy - apt-get install -y ruby-dev - gem install dpl - dpl --provider=heroku --app=gitlab-ci-python-test-staging --api-key=$HEROKU_STAGING_API_KEY only: - master production: type: deploy script: - apt-get update -qy - apt-get install -y ruby-dev - gem install dpl - dpl --provider=heroku --app=gitlab-ci-python-test-prod --api-key=$HEROKU_PRODUCTION_API_KEY only: - tags

Este proyecto tiene tres trabajos:

prueba - usada para probar la aplicación Django,

almacenamiento: se utiliza para implementar automáticamente el entorno de almacenamiento en cada derivación a la rama maestra

producción: se utiliza para implementar automáticamente entornos de producción para cada etiqueta creada

Almacenar claves API

Tendrá que crear dos variables en Proyecto> Variables:

HEROKU_STAGING_API_KEY - Heroku API key used to deploy staging app, HEROKU_PRODUCTION_API_KEY - Heroku API key used to deploy production app.