jenkins - 使用 hudson 的管道插件获取内联管道脚本中的当前时间戳

标签 jenkins groovy jenkins-pipeline

我想使用 hudson 的管道插件获取内联管道脚本中的当前时间戳。用于设置构建显示名称。

使用的内联 groovy 脚本:

def jobName = env.JOB_NAME + "_" + new Date()
currentBuild.displayName = "$jobName"
node {
   echo "job name $jobName"
}

控制台错误:
org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: 
  Scripts not permitted to use new java.util.Date

最佳答案

Jenkins 脚本在沙箱中运行,默认情况下 Groovy 脚本没有某些操作的权限。

当您在没有权限的情况下执行操作时 RejectAccessException被抛出。所以你必须执行你的脚本,然后在抛出异常时转到:

http://yourHost/jenkins/scriptApproval/

并批准必要的权限:

enter image description here

关于jenkins - 使用 hudson 的管道插件获取内联管道脚本中的当前时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40261710/

相关文章:

python-3.x - Jenkins 管道 : Run python script

java - 有条件地执行 JMeter Maven 插件

java - 在 Jenkins 中运行 cucumber-jvm

git - 无法使用 Groovy Jenkinsfile 读取 Git 环境变量 Jenkins

groovy - Jmeter中JedisPool的使用方法

jenkins - 声明式与脚本式处理失败

jenkins - 从 Jenkins 工作流(管道)插件获取登录 Jenkins 的用户名

java - 重载方法的 Groovy 单元测试

java - 可以使用其中包含双引号的 Groovy MarkupBuilder 生成 XML 吗?

jenkins - 从 SCM 运行声明性 JenkinsFile 时,"java.lang.NoSuchMethodError: No such DSL method ' 管道 ' found"