Python 在Jenkins构建步骤中使用非托管文件

Python 在Jenkins构建步骤中使用非托管文件,python,git,build,jenkins,Python,Git,Build,Jenkins,我今天刚开始使用Jenkins,所以我完全有可能在文档中遗漏了什么 我目前已经设置了Jenkins从本地Git repo(通过插件)运行单元测试。我已经正确地设置了环境(至少在看似正常的情况下),但遇到了一个小问题 我有一个settings.py文件,我已经从我的git repo中排除了它(它包含我在应用程序中使用的几个键)。我不想将该文件包括在我的git回购中,因为我计划在我完成项目后操作该项目(任何使用该项目的人都需要自己的密钥)。我意识到这可能不是最好的方法,但这是已经完成的(这是一个小的

我今天刚开始使用Jenkins,所以我完全有可能在文档中遗漏了什么

我目前已经设置了Jenkins从本地Git repo(通过插件)运行单元测试。我已经正确地设置了环境(至少在看似正常的情况下),但遇到了一个小问题

我有一个settings.py文件,我已经从我的git repo中排除了它(它包含我在应用程序中使用的几个键)。我不想将该文件包括在我的git回购中,因为我计划在我完成项目后操作该项目(任何使用该项目的人都需要自己的密钥)。我意识到这可能不是最好的方法,但这是已经完成的(这是一个小的个人项目),所以我不关心它

问题是,因为它不在git管理之下,Jenkins不接受它

在运行测试之前,我希望能够将这个文件从源目录复制到Jenkins构建目录


有办法做到这一点吗?我尝试过使用
复制到从属
插件,但似乎我想要的任何文件都需要首先(手动)在
工作区/userContent
中复制或创建。我遗漏了什么吗?

我建议使用一些环境变量,比如MYPROJECT\u设置。因此,当Jenkins运行任务时,您可以覆盖默认路径,将Jenkins的设置文件放入其中

如果您不想手动将设置文件复制到每台生成计算机上,另一个选项是使用一些默认的伪密钥创建settings.py,您可以将其添加到您的repo中,以及使用真实密钥创建本地设置文件,该文件会覆盖一些选项,例如:

# settings.py file
SECRET_KEY = 'fake stuff'

try:
    from settings_local import *
except ImportError:
    pass

我建议使用一些环境变量,比如MYPROJECT\u设置。因此,当Jenkins运行任务时,您可以覆盖默认路径,将Jenkins的设置文件放入其中

如果您不想手动将设置文件复制到每台生成计算机上,另一个选项是使用一些默认的伪密钥创建settings.py,您可以将其添加到您的repo中,以及使用真实密钥创建本地设置文件,该文件会覆盖一些选项,例如:

# settings.py file
SECRET_KEY = 'fake stuff'

try:
    from settings_local import *
except ImportError:
    pass

我正在为此使用复制数据到工作区插件,复制到从属插件也应该工作,但我发现复制数据到工作区插件更容易用于此用例。

我正在为此使用复制数据到工作区插件,复制到从属插件也应该工作,但我发现在这个用例中,将数据复制到工作区插件更容易使用。

为什么不在jenkins中使用“echo my secret keys>settings.txt”并调整脚本以读取此文件,以便将其添加到报告中

为什么不在jenkins中使用“echo my secret keys>settings.txt”并调整脚本以读取此文件,以便将其添加到报告中