Test and deploy a Python application with GitLab CI/CD

Test and deploy a Python application with GitLab CI/CD

本示例将指导您如何在 Python 应用程序中运行测试,以及如何将其自动部署为 Heroku 应用程序.

您也可以查看或生成完整的示例源 .

这是此项目的文件的外观:

  • test -用于测试 Django 应用程序.
  • staging -用于每次推送到master分支时自动部署登台环境.
  • production -用于为每个创建的标签自动部署生产环境.

您需要在 GitLab 项目的“设置”>” CI / CD”>”环境变量”中创建两个变量:

  • HEROKU_STAGING_API_KEY -Heroku API 密钥,用于部署登台应用程序.
  • HEROKU_PRODUCTION_API_KEY -Heroku API 密钥,用于部署生产应用程序.

在” 找到您的 Heroku API 密钥.

对于每个环境,您都需要创建一个新的 Heroku 应用程序. 您可以通过仪表板执行此操作.

要构建此项目,您还需要安装 . 您可以使用上的公共跑步者,也可以注册自己的跑步者:

  1. cat > /tmp/test-config.template.toml << EOF [[runners]]
  2. [[runners.docker.services]]
  3. name = "postgres:latest" EOF gitlab-runner register \
  4. --non-interactive \
  5. --url "https://gitlab.com/" \
  6. --description "python-3.5" \
  7. --executor "docker" \
  8. --docker-image python:3.5

使用上面的命令,您将创建一个使用python:3.5图像并使用数据库的运行器.

要访问 PostgreSQL 数据库,请以没有密码的用户postgres身份连接到 .