如何以编程方式获取Jenkins用户id?
我想将开始Jenkins作业的人的用户id传递给脚本。“env”的输出表示未设置任何环境变量,“ant-v”的输出表示未设置任何属性。如何访问开始作业的人员的用户id?(我知道触发器可以启动作业,但对于此作业,它将始终是一个人)。要获取作业执行器:如何以编程方式获取Jenkins用户id?,jenkins,Jenkins,我想将开始Jenkins作业的人的用户id传递给脚本。“env”的输出表示未设置任何环境变量,“ant-v”的输出表示未设置任何属性。如何访问开始作业的人员的用户id?(我知道触发器可以启动作业,但对于此作业,它将始终是一个人)。要获取作业执行器: curl -s "${BUILD_URL}/api/json" | \ python -c '\ import json; \ import sys; \ obj = json.loads(sys.stdin.read());
curl -s "${BUILD_URL}/api/json" | \
python -c '\
import json; \
import sys; \
obj = json.loads(sys.stdin.read()); \
print [ \
cause["userId"] \
for action in obj["actions"] \
if "causes" in action \
for cause in action["causes"] \
if "userId" in cause][0];'
另请参见其中解释了如何将其传递到脚本中。我必须传递--user username:password作为curl的附加参数。
BUILD_START_USER=`curl ${JOB_URL}'lastBuild/api/json' | python -c 'import json,sys;obj=json.loads(sys.stdin.read());print obj["'"actions"'"][1]["'"causes"'"][0]["'"userId"'"]'`