我需要从数据库中提取值并将参数显示为Jenkins参数化作业中的下拉列表。有没有可用的插件来实现这一目标?
帮助将不胜感激:)
我正在使用.war文件在我的服务器上运行jenkins.他们说使用
java -jar jenkins.war
Run Code Online (Sandbox Code Playgroud)
(来源:https://wiki.jenkins-ci.org/display/JENKINS/Starting+and+Accessing+Jenkins)启动服务器.这将启动服务器并显示登录屏幕并准备使用.
唯一的问题是当我"ctrl + c"它停止服务器.我希望它应该在后台启动,这样即使我从putty退出它应该运行.我知道如果使用本机包".deb"它将作为服务安装但我想只使用".war"文件而不是本机包".deb".它甚至可能吗?
我正在编写一个Java应用程序,我需要跟踪Jenkins构建的状态并对构建成功和失败执行一些操作.
我对詹金斯很新.是否有可用于跟踪构建状态的Java API?
是否可以在成功完成或构建失败期间触发java应用程序.
欢迎您的建议.
谢谢,Santhosh
我们正在使用 jenkins 进行 CI 并且有一些相互依赖的复杂作业。我只想以图形方式或以任何其他方式表示作业的依赖关系。我调查并安装了带有 graphviz 表示的依赖关系图,但它给出了过于复杂的数字。任何人都知道其他插件?
我的任务是对Jenkins的一些工作进行一些健康检查.我们的想法是通过Jenkins rest API获取作业的状态和相关的IP地址,这样我就可以使用该信息与另一个安静的API进行交互.我创建了一个groovy脚本,成功解析Jenkins作业并获取其状态(无论它们是否正在运行),但我还没有找到将这些作业与其IP地址相关联的方法.有没有办法通过其余的API获取Jenkins中的从站的IP地址,如果没有,是否有其他方法来获取所述IP地址?
这是我到目前为止的代码,它像魅力一样:
@Grab(group='org.codehaus.groovy.modules.http-builder', module='http-builder', version='0.7')
import groovyx.net.http.RESTClient
import groovy.json.JsonSlurper
def jenkinsClient = new RESTClient( 'myJenkinsURL' )
def monitorClient = new RESTClient( 'myOtherRestfulAPIURL' )
monitorClient.auth.basic "<username>", "<pass>"
jenkinsClient.setHeaders(Accept: 'application/json')
monitorClient.setHeaders(Accept: 'application/json')
def jobs = []
def jenkinsGetJobs = jenkinsClient.get( path: 'view/Events/api/json', contentType: 'text/plain' )
def jenkinsGetJobsSlurp = new JsonSlurper().parse(jenkinsGetJobs.data)
for (def j in jenkinsGetJobsSlurp.jobs ){
jobs.add(j.name)
}
//Can we get a list of IPS?
for(def job in jobs){
def jenkinsResp = jenkinsClient.get( path : 'view/Events/job/' + job + '/api/json', …Run Code Online (Sandbox Code Playgroud) 我正在使用 jenkins 定期构建我的 node.js 应用程序。每当我尝试构建我的应用程序时,我都会在控制台输出中得到这个
Started by user anonymous
Building in workspace /Users/Shared/Jenkins/Home/workspace
FATAL: Unable to produce a script file
java.io.IOException: Failed to create a temp file on /Users/Shared/Jenkins/Home/workspace
at hudson.FilePath.createTextTempFile(FilePath.java:1383)
at jenkins.plugins.nodejs.NodeJsCommandInterpreter.createScriptFile(NodeJsCommandInterpreter.java:108)
at jenkins.plugins.nodejs.NodeJsCommandInterpreter.perform(NodeJsCommandInterpreter.java:57)
at jenkins.plugins.nodejs.NodeJsCommandInterpreter.perform(NodeJsCommandInterpreter.java:42)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:785)
at hudson.model.Build$BuildExecution.build(Build.java:205)
at hudson.model.Build$BuildExecution.doRun(Build.java:162)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:537)
at hudson.model.Run.execute(Run.java:1741)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
at hudson.model.ResourceController.execute(ResourceController.java:98)
at hudson.model.Executor.run(Executor.java:410)
Caused by: java.io.IOException: Failed to create a temporary directory in /Users/Shared/Jenkins/tmp
at hudson.FilePath$17.invoke(FilePath.java:1369)
at hudson.FilePath$17.invoke(FilePath.java:1357)
at hudson.FilePath.act(FilePath.java:991)
at hudson.FilePath.act(FilePath.java:969)
at hudson.FilePath.createTextTempFile(FilePath.java:1357)
... 12 more
Caused …Run Code Online (Sandbox Code Playgroud)我不能在已经存在的节点(不是主节点)上编写脚本和更改执行程序的数量。最好使用 groovy,但如果有一个插件或 CLI 命令可以完成同样有趣的技巧。
我正在尝试做的事情的片段:
jenkins.model.Jenkins.instance.nodes.each { node ->
println node.getNumExecutors()
//How do I set the number of executors for a node?
}
Run Code Online (Sandbox Code Playgroud) 嗨,我正在使用CLI在两个jenkins服务器之间传输作业。
但是我无法使CLI正常工作。
当我跑步时:
java -jar jenkins-cli.jar -s <myhost> -auth <myid>:<mysecret> help
我得到一个空的响应,没有错误,没有异常,只是一个空的shell提示
i am trying to ssh into a remote host and then execute certain commands on the remote host's shell. Following is my pipeline code.
pipeline {
agent any
environment {
// comment added
APPLICATION = 'app'
ENVIRONMENT = 'dev'
MAINTAINER_NAME = 'jenkins'
MAINTAINER_EMAIL = 'jenkins@email.com'
}
stages {
stage('clone repository') {
steps {
// cloning repo
checkout scm
}
}
stage('Build Image') {
steps {
script {
sshagent(credentials : ['jenkins-pem']) {
sh "echo pwd"
sh 'ssh -t -t ubuntu@xx.xxx.xx.xx -o …Run Code Online (Sandbox Code Playgroud) 我正在 Jenkins 中编写一个管道脚本,以根据提交消息构建项目。从Jenkins的论坛,我注意到我们可以使用SCM跳过插件。我安装了该插件并按照论坛的建议添加了以下阶段:
scmSkip(deleteBuild: true, skipPattern:'.*\\[ci skip\\].*')
Run Code Online (Sandbox Code Playgroud)
当我使用以下提交消息提交更改时:
git commit -m "[ci skip] Updated Audit Test Data Files with scan status"
Run Code Online (Sandbox Code Playgroud)
不会跳过构建。它与其他阶段一起进展。
在控制台日志中,我看到消息
SCM 跳过:更改日志为空!
当发现包含“[ci Skip]”的提交消息时,如何构建 scmSkip 调用以跳过构建?是否有更容易实施的替代方案?
谢谢,卡蒂克·P。
jenkins jenkins-plugins jenkins-cli jenkins-groovy jenkins-pipeline