相关疑难解决方法(0)

如何使用Jenkinsfile(groovy)中的变量执行shell命令的输出?

我在Jenkinsfile(Groovy)上有这样的东西,我想在变量中记录stdout和退出代码,以便稍后使用这些信息.

sh "ls -l"
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做,特别是因为你似乎无法在里面运行任何类型的groovy代码Jenkinsfile

groovy jenkins-workflow jenkins-pipeline jenkinsfile

178
推荐指数
6
解决办法
24万
查看次数

Gradle插件项目版本号

我有一个使用project.version变量的gradle插件.

但是,当我更改build.gradle文件中的版本时,插件中的版本不会更新.

为了显示:

插入

// my-plugin
void apply(Project project) {
  project.tasks.create(name: 'printVersionFromPlugin') {
    println project.version
  }
}
Run Code Online (Sandbox Code Playgroud)

的build.gradle

version '1.0.1' // used to be 1.0.0

task printVersion {
  println project.version
}

apply plugin: 'my-plugin'
Run Code Online (Sandbox Code Playgroud)

结果

> gradle printVersion
1.0.1
> gradle printVersionFromPlugin
1.0.0
Run Code Online (Sandbox Code Playgroud)

plugins gradle

8
推荐指数
2
解决办法
1万
查看次数

如何读取 Jenkinsfile 中的 Gradle 元数据

在我的 Jenkinsfile 中,我想从 Gradle 构建脚本中读取一些元数据,例如groupbaseNameversion。有了 Maven,我可以做这样的事情:

def pom = readMavenPom file: 'pom.xml'
env.POM_VERSION         = pom.version
env.POM_ARTIFACT_ID     = pom.artifactId
env.POM_GROUP_ID        = pom.groupId
Run Code Online (Sandbox Code Playgroud)

问题是:我怎样才能用 Gradle 做同样的事情,因为我有一个build.gradle看起来像这样的:

ext {
    group = 'my.group.com'
    baseName = 'myapplication'
    version = '0.5.2-SNAPSHOT'
}
Run Code Online (Sandbox Code Playgroud)

也许有一个“技巧”可以读取 a 中的 Gradle 构建信息,Jenkinsfile因为两者都是 Groovy,但我是 Groovy 新手:)

groovy gradle maven jenkins jenkins-pipeline

6
推荐指数
0
解决办法
1879
查看次数