我正在尝试设置一个Jenkins管道来使用gradle在多个环境下触发构建。我的要求是,当我运行gradlew clean build时产生的 Artifact 应该产生名称指示运行该管道的环境的 Artifact 。示例my-application-dev.jar
触发构建时,用户将选择环境的值。
实现此目的的最佳方法是什么?构建是否允许通过命令行配置任何此类属性,还是我需要在build.gradle中定义一个任务并在该任务中定义属性,我将通过命令行从中传递值
最佳答案
基本上有两种方法。
第一个是将这些与命名相关的信息传递给gradlew流程,例如通过-D或-P属性。
然后,您需要Gradle构建来了解这些参数,并相应地设计其生成的 Artifact 名称。
第二个可以说是更好的,而且包含更多。您只需在gradlew命令完成后将其重命名为Jenkinsfile,即可对其进行重命名。如果管道决定如何处理这些 Artifact (例如发布到存储库),而不是使用gradle脚本(在这种情况下,您最好使用第一种方法)会更好。
关于gradle - 如何将Gradle产生的工件名称设置为Jenkins管道传递的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64556128/