无法访问传递给jenkins构建脚本的自定义参数

无法访问传递给jenkins构建脚本的自定义参数,jenkins,Jenkins,我想将web钩子中的一些参数添加到Jenkins发送的邮件中。我尝试了StackOverflow和其他地方提供的解决方案。还没有成功 我已准备好以下各项: 选中这是一个参数化的构建 构建脚本看起来像http://JENKINS_URL/job/android02/buildWithParameters?token=&PARAM= 在邮件内容中,我尝试通过${PARAM},$PARAM访问自定义参数。 然而,在邮件中,我没有得到我设置的值。如果我为PARAM设置了默认值,它将正确显示在我收到的邮件

我想将web钩子中的一些参数添加到Jenkins发送的邮件中。我尝试了StackOverflow和其他地方提供的解决方案。还没有成功

我已准备好以下各项:

  • 选中
    这是一个参数化的构建
  • 构建脚本看起来像
    http://JENKINS_URL/job/android02/buildWithParameters?token=&PARAM=
  • 在邮件内容中,我尝试通过
    ${PARAM}
    $PARAM
    访问自定义参数。 然而,在邮件中,我没有得到我设置的值。如果我为
    PARAM
    设置了默认值,它将正确显示在我收到的邮件中。我试过
    http://JENKINS_URL/job/android02/build?token=&PARAM=
    URL以及以防万一。邮件将作为
    可编辑电子邮件通知
    config发送 基本上,除了无法通过
    远程触发构建
    选项访问已传递的自定义参数外,所有功能都正常工作

    编辑1: 如果我在收到的邮件中为参数
    PARAM
    保留默认值,例如,
    test
    ,我可以看到显示的
    test
    。但是我需要得到我在构建脚本中传递的值。

    从“工具提示”中,当您单击“”旁边的问号时得到:

    ${ENV,var=“VARIABLENAME”}

    从生成环境扩展为环境变量(此处指定为VARIABLENAME)。注意,这不包括构建脚本本身设置的任何变量,只包括Jenkins和其他插件设置的变量

    因此,使用
    ${ENV,var=“PARAM”}


    谢谢你的回答。但不幸的是,它没有起作用。我在邮件内容中添加了
    ${ENV,var=“PARAM”}
    ,但在我收到的邮件中,它仍然是空的。如果我为
    PARAM
    保留一些默认值,那么在邮件中我可以看到该值。我想得到我在脚本中设置的值。你引用的工具提示确实说,请注意,这不包括任何由构建脚本本身设置的变量,只包括由Jenkins和其他插件设置的变量,这是否意味着我不能这样做?真的很奇怪。为了让我正确理解,如果设置了默认值,默认值将在消息中可见。但当你用参数触发时,它是不可见的?您是否能够在生成步骤中访问该值,例如,参数值是否在Shell或批处理脚本步骤中可用?谢谢您的评论。问题是我对詹金斯的建筑还很陌生。我只想说说我在做什么。(1) 版本控制已经连接到一个python脚本,它向该脚本传递一组信息(如last commit msg、committer、revision等)。(2) 脚本从步骤1读取所需信息,并通过将其附加到
    PARAM
    queryparam(
    http://JENKINS_URL/job/android02/buildWithParameters?token=XXXXXX&PARAM=blahblah
    )我不知道您正在谈论的批处理脚本步骤。目前,我从django脚本创建了一个文件,它通过URL调用构建脚本,并将该文件附加到邮件中。好的,很好,您找到了一个临时解决方案。我提到的批处理脚本步骤是自由风格作业中的
    executeshell
    executewindows批处理脚本
    步骤。你的工作类型是什么?