从python脚本中获取Jenkins构建环境变量

从python脚本中获取Jenkins构建环境变量,python,jenkins,Python,Jenkins,詹金斯版本:2.74 作为构建步骤的一部分,我正在运行一个python脚本,并希望访问Jenkins构建变量,如build\u ID、build\u NUMBER、build\u URL等 我在脚本中执行以下操作只是为了尝试,但没有看到上面列出的任何键: import os print os.environ 输出: { 'USERNAME': 'root', 'LANG': 'en_US.UTF-8', 'TERM': 'xterm-256color', 'S

詹金斯版本:2.74

作为构建步骤的一部分,我正在运行一个python脚本,并希望访问Jenkins构建变量,如build\u ID、build\u NUMBER、build\u URL等

我在脚本中执行以下操作只是为了尝试,但没有看到上面列出的任何键:

import os

print os.environ
输出:

{
    'USERNAME': 'root',
    'LANG': 'en_US.UTF-8',
    'TERM': 'xterm-256color',
    'SHELL': '/bin/bash',
    'XDG_RUNTIME_DIR': '/run/user/1000',
    'SUDO_COMMAND': '/bin/su myuser -c python jenkinstest.py',
    'SHLVL': '1',
    'HOME': '/usr/home1/myuser',
    'SUDO_UID': '117',
    'SUDO_GID': '125',
    'PWD': '/var/lib/jenkins/workspace/script-test',
    'LOGNAME': 'myuser',
    'USER': 'myuser',
    'PATH': '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games',
    'MAIL': '/var/mail/myuser',
    'SUDO_USER': 'jenkins',
    'XDG_SESSION_ID': '6',
    '_': '/usr/bin/python'
}
为什么会这样


如何从python脚本中访问上面提到的键(不使用Jenkins python/json API)?

使用
sudo
时,必须注意选项
--preserve env
,如果没有它,环境变量在切换用户上下文时会丢失。

当使用
sudo
时,您必须注意选项
--preserve env
,如果没有它,环境变量在切换用户上下文时会丢失。\注意\如果您将此作为答案,我会接受它。