我不希望新用户能够注册.所以在Jenkin的配置中,我使用Jenkin自己的用户数据库禁用了"允许用户注册".
但是我现在如何手动添加用户呢?另外,我应该注意一个默认的管理员用户吗?
我选择使用"Jenkins自己的用户数据库"安全领域进行用户登录,因为我无法在公司中使用LDAP.当您决定将主机名或端口号更改为其他内容时,Google的OpenID会出现问题.
我使用"基于项目的矩阵授权策略"架构来保护我的安全.
但我似乎无法创建自己的组,并将用户添加到组以管理权限.
我使用以下方法远程调用Jenkins作业:
wget http://<ServerIP>:8080/job/Test-Jenkins/build?token=DOIT
Run Code Online (Sandbox Code Playgroud)
这里Test-Jenkins调用了job,它DOIT是我使用过的安全令牌.
现在我需要将一些参数传递给此作业的build.xml文件,即Test-Jenkins.
我还没有弄清楚如何传递变量.
continuous-integration continuous-deployment jenkins continuous-delivery
我已经为Jenkins安装了Gradle插件.当我尝试构建项目时,我收到以下错误:
[workspace] $ gradle clean -b build/build.gradle
FATAL: command execution failed
java.io.IOException: Cannot run program "gradle" (in directory "/Users/Shared/Jenkins/Home/jobs/test/workspace"): error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:460)
at hudson.Proc$LocalProc.<init>(Proc.java:244)
at hudson.Proc$LocalProc.<init>(Proc.java:216)
at hudson.Launcher$LocalLauncher.launch(Launcher.java:707)
at hudson.Launcher$ProcStarter.start(Launcher.java:338)
at hudson.Launcher$ProcStarter.join(Launcher.java:345)
at hudson.plugins.gradle.Gradle.performTask(Gradle.java:201)
at hudson.plugins.gradle.Gradle.perform(Gradle.java:97)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:695)
at hudson.model.Build$RunnerImpl.build(Build.java:178)
at hudson.model.Build$RunnerImpl.doRun(Build.java:139)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:465)
at hudson.model.Run.run(Run.java:1404)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:238)
Caused by: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.forkAndExec(Native Method)
at java.lang.UNIXProcess.<init>(UNIXProcess.java:53)
at java.lang.ProcessImpl.start(ProcessImpl.java:91)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:453)
... 16 more …Run Code Online (Sandbox Code Playgroud) 我在Git中有一个大型存储库.如何在Jenkins中创建一个只从项目中检出一个子文件夹的作业?
我有一个托管在BitBucket上的git存储库,并在存储库和我的Jenkins服务器之间设置了SSH身份验证.我可以手动构建Jenkins,但无法在BitBucket上获取Jenkins服务来触发构建.
Jenkins configuration:
- Project Name: [my_jenkins_job]
- Build Triggers:
--Trigger Builds Remotely:
---Token: [token]
BitBucket configuration:
- Endpoint: http://[my_jenkins_address]/job/[my_jenkins_job]/build (I've also tried build?token=[token])
- Project Name: [my_jenkins_job]
- Module Name: [blank]
- Token: [token]
Run Code Online (Sandbox Code Playgroud)
访问http:// {my_jenkins_address}/ job/{my_jenkins_job}/ build?token ={token}正确启动构建.
为什么不将更改推送到BitBucket导致Jenkins启动构建?
我试图在Ubuntu 13.10上安装Jenkins,当我尝试运行以下命令时,我收到上述错误:
wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
Run Code Online (Sandbox Code Playgroud) 解决:感谢S.Richmond的回答.我需要取消设置所有存储的groovy.json.internal.LazyMap类型的映射,这意味着使变量envServers和object使用后无效.
附加:搜索此错误的人可能有兴趣使用Jenkins管道步骤readJSON- 在此处查找更多信息.
我正在尝试使用Jenkins Pipeline从用户那里获取输入,该输入作为json字符串传递给作业.然后Pipeline使用slurper解析它,我挑选出重要的信息.然后,它将使用该信息与不同的作业参数并行多次运行1个作业.
直到我添加下面的代码"## Error when below here is added"脚本运行正常.即使是该点下面的代码也会自行运行.但合并后,我得到以下错误.
我应该注意到被触发的作业被调用并且确实成功运行但是发生了以下错误并且失败了主要作业.因此,主要工作不会等待触发作业的返回.我可以尝试/捕捉周围build job:但我希望主要工作等待触发的工作完成.
谁能在这里协助?如果您需要更多信息,请告诉我们.
干杯
def slurpJSON() {
return new groovy.json.JsonSlurper().parseText(BUILD_CHOICES);
}
node {
stage 'Prepare';
echo 'Loading choices as build properties';
def object = slurpJSON();
def serverChoices = [];
def serverChoicesStr = '';
for (env in object) {
envName = env.name;
envServers = env.servers;
for (server in …Run Code Online (Sandbox Code Playgroud) 使用Jenkins 2 Pipeline插件,有一个有用的功能,可以快速浏览管道阶段和步骤状态,包括记录输出.
但是,如果您使用"Shell脚本"(sh)步骤,似乎没有办法用有用的名称标记该脚本,因此显示只显示一个长的"Shell脚本"列表(显示在图片如下).
如何指定有用的名称,或者如何使用其他步骤来实现相同的效果?
jenkins continuous-delivery jenkins-pipeline jenkins-blueocean
我正在尝试运行块,如果我的jenkins工作空间中存在一个目录,并且工作空间中的管道步骤"fileExists:验证文件存在"似乎无法正常工作.
我正在使用Jenkins v 1.642和Pipeline v 2.1.并试图有一个像这样的条件
if ( fileExists 'test1' ) {
//Some block
}
Run Code Online (Sandbox Code Playgroud)
我在管道中有哪些其他选择?