我如何使用jenkins从私人github存储库安装python软件包?

时间:2019-02-21 07:11:01

标签: python git jenkins pip

我可以checkout scm与github插件一起使用jenkins私钥(其公钥在github存储库中)。我可以在本地系统(osx)上安装。但是我无法从Jenkins的私人github存储库中安装python软件包。

对此有什么想法吗?我猜想我需要将令牌放入环境变量中,例如github_repo_token=os.environ.get('GITHUB_TOKEN', 'NA'),使用该令牌将其插入到github网址中,例如"git+https://{}@github.com/owner/repo.git@master".format(github_repo_token),然后它将起作用。

如何将令牌放入环境变量或传递给setup.py脚本?

1 个答案:

答案 0 :(得分:0)

  1. 直接回答–使用export GITHUB_TOKEN=...在jenkins中进行预安装,您将在os.environ中找到它
  2. 话虽如此,我强烈建议您采取其他方式。拥有这样的setup.py使安装方式的可移植性降低,并且难以在开发环境中使用。我建议您使用詹金斯创建.netrc文件并将令牌放在此处。这样,您的jenkins将自动在GH上进行授权(假设您通过https进行拉取),并且开发环境可以交互地获得授权。

    .netrc的格式应类似于

    machine github.com login your_token