【问题标题】:How to set the variables from .env file when using Django and Gitlab CI/CD?使用 Django 和 Gitlab CI/CD 时如何从 .env 文件中设置变量?
【发布时间】:2021-09-02 22:51:39
【问题描述】:
我正在尝试在 Gitlab CI/CD 中运行我的 Django 应用程序的测试。该过程每次都失败并出现错误:django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.。
我认为这是因为我的 .env 文件在存储库中不可用,并且该文件包含例如 SECRET_KEY -variable,然后在 settings.py 中使用,如下所示:SECRET_KEY = os.getenv('SECRET_KEY')。
那么设置这些变量以便我的测试通过的正确方法是什么?
【问题讨论】:
标签:
django
gitlab
environment-variables
gitlab-ci
【解决方案1】:
一个好方法是在 CI 变量中添加秘密。
然后将其导出到目标仓库中。
http://your/gilab/url/project/-/settings/ci_cd > 展开变量
添加一个名为 SECRET_KEY 的变量,带有值,选择类型变量。
然后在 .gitlab-ci.yml 中,在相关工作中添加以下内容。
before_script:
# to export variable to target environment
- export SECRET_KEY=$SECRET_KEY
# to check if OK
- env
设置变量时,如果您有很多环境,您可以选择在哪个环境(开发、登台、生产)。