【问题标题】:How do I download the artifacts from a jenkins build through python如何通过 python 从 jenkins 构建中下载工件
【发布时间】:2015-07-23 21:47:39
【问题描述】:

如何使用 Python 将工件从 Jenkins 构建下载到本地计算机?

【问题讨论】:

    标签: python-2.7 jenkins jenkins-plugins


    【解决方案1】:

    我假设你想通过 http 下载。

    例如,您可能想使用 GNU wget,但如果您真的想使用 Python,请查看 How do I download a file over HTTP using Python?。 Urllib2 提供了一种简单的方式来处理 http 请求。

    这意味着您无需执行任何其他操作即可获取文件(身份验证等)。

    【讨论】:

    • 我低于错误:Traceback (most recent call last): File "C:/Python27/url_doenlaod.py", line 3, in <module> raise HTTPError(req.get_full_url(), code, msg, hdrs, fp) HTTPError: HTTP Error 403: Forbidden
    • 转到 http:///user//configure 并添加“未绑定到域”的凭据。之后您可以使用 urllib2 密码管理器: passman = urllib2.HTTPPasswordMgrWithDefaultRealm() passman.add_password(None, url, username, password) urllib2.install_opener(urllib2.build_opener(urllib2.HTTPBasicAuthHandler(passman))) 没有测试过这个会自己工作,但值得一试。请参阅stackoverflow.com/questions/2407126/… 以获取参考
    • 实际上我在 jenkins url 中有一个文件夹,我需要通过 urllib2 下载它。但是当我下载它时,它是作为单个文件下载的,但我希望下载目录。我怎样才能做到这一点..
    • 以上注释为新要求
    • ${JENKINS_URL}/job/${JOB_NAME}/lastSuccessfulBuild/artifact/*zip*/archive.zip 将为构建返回压缩的工件。然后,您可以使用任何可以解压缩存档的 python 库。使用 ${BUILD_NUMBER} 我想要的不是 'lastSuccessfulBuild'
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-27
    • 1970-01-01
    相关资源
    最近更新 更多