标签:创建 als scm 技术 工具 设计 node 完成 its
简介
多分支的管道是在jenkins2.x中新增的功能 。
多分支管道允许你针对分布式的控制器的每个分支创建一个管道。 下图是对它的一个描述。使用jenkinsfile去创建多分支的管道,jenkinsfile可以存放在代码仓库中。 Jenkinsfile只是定义CI管道的一个脚本。
另外,多分支管道的设计初衷就是当Git仓库中的代码改变时,去自动触发构建。下图是对它的一个描述。
(1)在【全局工具配置】中Maven工具已经配置好。
(2)安装了【Pipeline Maven Integration Plugin】
(3)Java工具也需要安装好,由于我们构建是在jenkins master上执行,所以可以跳过此步(因为我们在安装Jenkins时,已经安装好Java)
(4)安装Gitlab插件,本实验使用gitlab做为代码管理
添加gitlab凭据到jenkins中
添加全局凭据
gitlab创建个人访问令牌(personal access token)
jenkins添加gitlab
添加后,test测试报错
点击高级模式,选择API-levle为v3
升级git版本
[root@node1 ~]# wget https://github.com/git/git/archive/v2.2.1.tar.gz
[root@node1 ~]# tar -xf v2.2.1.tar.gz
[root@node1 ~]# cd git-2.2.1/
[root@node1 git-2.2.1]# yum install perl-ExtUtils-MakeMaker
[root@node1 git-2.2.1]# yum install zlib-devel
[root@node1 git-2.2.1]# make configure
GIT_VERSION = 2.2.1
GEN configure
[root@node1 git-2.2.1]# ./configure --prefix=/usr/local/git --with-iconv=/usr/local/libiconv
[root@node1 git-2.2.1]# make
[root@node1 git-2.2.1]# make install
[root@node1 git-2.2.1]# ln -s /usr/local/git/bin/git /usr/bin/
[root@node1 git-2.2.1]# git --version
git version 2.2.1
问题依然出现,最后排查的过程中发现,复制的不是真正的token,这是坑爹的地方
安装成功
node (‘master‘) { checkout scm stage(‘Build‘) { withMaven(maven: ‘M3‘) { if (isUnix()) { sh ‘mvn -Dmaven.test.failure.ignore clean install package‘ } else { bat ‘mvn -Dmaven.test.failure.ignore clean install package‘ } } } stage(‘Results‘) { junit ‘**/target/surefire-reports/TEST-*.xml‘ archive ‘target/*.jar‘ } } installinstall
提交,开始创建多分枝流水线
出现错误:是因为 /usr/libexec/git-core/ 路径没在 PATH 环境变量中。
Started by user darren ning [Sat Oct 26 14:12:57 EDT 2019] Starting branch indexing... > git --version # timeout=10 using GIT_ASKPASS to set credentials > git ls-remote http://192.168.132.132/root/simple-maven-project-with-tests.git # timeout=10 ERROR: [Sat Oct 26 14:12:57 EDT 2019] Could not update folder level actions from source 9d2e73ea-7ee8-4128-a8b2-0d7f20e75599 hudson.plugins.git.GitException: Command "git ls-remote http://192.168.132.132/root/simple-maven-project-with-tests.git" returned status code 128: stdout: stderr: fatal: Unable to find remote helper for ‘http‘ at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:2042) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1761) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1666) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1657) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.getRemoteReferences(CliGitAPIImpl.java:2877) at jenkins.plugins.git.AbstractGitSCMSource.retrieveActions(AbstractGitSCMSource.java:1139) at jenkins.scm.api.SCMSource.fetchActions(SCMSource.java:848) at jenkins.branch.MultiBranchProject.computeChildren(MultiBranchProject.java:592) at com.cloudbees.hudson.plugins.folder.computed.ComputedFolder.updateChildren(ComputedFolder.java:277) at com.cloudbees.hudson.plugins.folder.computed.FolderComputation.run(FolderComputation.java:164) at jenkins.branch.MultiBranchProject$BranchIndexing.run(MultiBranchProject.java:1026) at hudson.model.ResourceController.execute(ResourceController.java:97) at hudson.model.Executor.run(Executor.java:429) [Sat Oct 26 14:12:57 EDT 2019] Finished branch indexing. Indexing took 19 ms FATAL: Failed to recompute children of simple-maven-project-with-tests hudson.plugins.git.GitException: Command "git ls-remote http://192.168.132.132/root/simple-maven-project-with-tests.git" returned status code 128: stdout: stderr: fatal: Unable to find remote helper for ‘http‘ at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:2042) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1761) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1666) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1657) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.getRemoteReferences(CliGitAPIImpl.java:2877) at jenkins.plugins.git.AbstractGitSCMSource.retrieveActions(AbstractGitSCMSource.java:1139) at jenkins.scm.api.SCMSource.fetchActions(SCMSource.java:848) at jenkins.branch.MultiBranchProject.computeChildren(MultiBranchProject.java:592) at com.cloudbees.hudson.plugins.folder.computed.ComputedFolder.updateChildren(ComputedFolder.java:277) at com.cloudbees.hudson.plugins.folder.computed.FolderComputation.run(FolderComputation.java:164) at jenkins.branch.MultiBranchProject$BranchIndexing.run(MultiBranchProject.java:1026) at hudson.model.ResourceController.execute(ResourceController.java:97) at hudson.model.Executor.run(Executor.java:429) Finished: FAILURE
添加xport PATH=/usr/libexec/git-core:$PATH到/etc/profile里
在此执行
Started by user darren ning [Sat Oct 26 14:30:07 EDT 2019] Starting branch indexing... > git --version # timeout=10 using GIT_ASKPASS to set credentials > git ls-remote http://192.168.132.132/root/simple-maven-project-with-tests.git # timeout=10 Creating git repository in /root/.jenkins/caches/git-308bd15be61318b6e1166e23433fdd72 > git init /root/.jenkins/caches/git-308bd15be61318b6e1166e23433fdd72 # timeout=10 Setting origin to http://192.168.132.132/root/simple-maven-project-with-tests.git > git config remote.origin.url http://192.168.132.132/root/simple-maven-project-with-tests.git # timeout=10 Fetching & pruning origin... Listing remote references... > git config --get remote.origin.url # timeout=10 > git --version # timeout=10 using GIT_ASKPASS to set credentials > git ls-remote -h http://192.168.132.132/root/simple-maven-project-with-tests.git # timeout=10 Fetching upstream changes from origin > git config --get remote.origin.url # timeout=10 using GIT_ASKPASS to set credentials > git fetch --tags --progress origin +refs/heads/*:refs/remotes/origin/* --prune Checking branches... Checking branch master ‘Jenkinsfile’ found Met criteria Scheduled build for branch: master Checking branch feature ‘Jenkinsfile’ found Met criteria Scheduled build for branch: feature Processed 2 branches [Sat Oct 26 14:30:08 EDT 2019] Finished branch indexing. Indexing took 1 sec Finished: SUCCESS
已经完成
标签:创建 als scm 技术 工具 设计 node 完成 its
原文地址:https://www.cnblogs.com/zyxnhr/p/11747648.html