【问题标题】:Django and travis CI secret key error with travis encode environment variables使用 travis 编码环境变量的 Django 和 travis CI 密钥错误
【发布时间】:2018-11-22 14:16:29
【问题描述】:

我有一个 Django 项目,它通过设置我的环境变量然后使用 os.environ['SECRET_KEY'] 将 SECRET_KEY 排除在 settings.py 之外。我还使用 travis ci 安全加密环境变量,以便让我的 django 项目的 SECRET_KEY 可供 travisci 使用。 travisci 在我的 github 帐户上成功构建。但是,当尝试运行 python manage.py migrate/test 并出现此错误时,travisci 构建将在其他任何分叉代码的人上失败:

SECRET_KEY = os.environ['SECRET_KEY']
File "/home/travis/virtualenv/python3.6.3/lib/python3.6/os.py", line 669, in __getitem__
  raise KeyError(key) from None
KeyError: 'SECRET_KEY'

在 settings.py 我有这一行:

SECRET_KEY = os.environ['SECRET_KEY']

.travis.yml 文件如下所示:

language: python
python:
- 3.6
env:
  global:
  - secure: # encrypted string for SECRET_KEY
  - secure: # encrypted string for another settings KEY
  - secure: # encrypted string for another settings KEY
install:
- pip install -r requirements/requirements.txt
script:
- flake8 --count --quiet
- python manage.py migrate --run-syncdb
- python manage.py test

有谁知道创建加密的 travis ci env 变量并让其他人分叉代码来使用这些变量是否存在问题?我不知道为什么它对我有用,并且对于任何其他具有相同代码的分支的 github 帐户根本不起作用。

【问题讨论】:

    标签: django environment-variables travis-ci


    【解决方案1】:

    他们是否从 .bashrc 中导出了自己的密钥?如果他们使用环境变量派生一些东西,他们将需要生成自己的密钥并手动添加。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-09
      • 1970-01-01
      • 2014-11-19
      相关资源
      最近更新 更多