Jenkins 结合 Gitlab
工作中的最佳实践!!!
前提准备
gitlab 服务器 与 jenkins 之前免密 ## (也可以自己生成一对密钥进行配对 更加安全)
做好hosts 域名解析
ssh-keygen
将密钥文件添加到gitlab服务器认证
## 测试
随便clone 一个仓库查看是否需要密码
拉去Git代码 分析
将 git中的代码拉去到工作目录
在进行相对应的shell操作
### 构建历史
Started by user admin
Running as SYSTEM
Building in workspace /var/lib/jenkins/workspace/dev/002-这是连接Gitlab的一个ltem
The recommended git tool is: NONE
No credentials specified
Cloning the remote Git repository
Cloning repository [email protected]:dev/web.git
> git init /var/lib/jenkins/workspace/dev/002-这是连接Gitlab的一个ltem # timeout=10
Fetching upstream changes from [email protected]:dev/web.git
> git --version # timeout=10
> git --version # 'git version 2.43.0'
> git fetch --tags --force --progress -- [email protected]:dev/web.git +refs/heads/*:refs/remotes/origin/* # timeout=10
> git config remote.origin.url [email protected]:dev/web.git # timeout=10
> git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10
Avoid second fetch
> git rev-parse refs/remotes/origin/master^{commit} # timeout=10
Checking out Revision cd32027ea154c49d033a37e26def081ee093a0b2 (refs/remotes/origin/master)
> git config core.sparsecheckout # timeout=10
> git checkout -f cd32027ea154c49d033a37e26def081ee093a0b2 # timeout=10
Commit message: "v1.0"
First time build. Skipping changelog.
[002-这是连接Gitlab的一个ltem] $ /bin/sh -xe /tmp/jenkins5993198680919793662.sh
+ echo aaa
+ ls -l
总计 8
-rw-r--r-- 1 root root 4 10月 18 23:01 1.md
-rw-r--r-- 1 root root 4 10月 18 23:01 1.txt
+ pwd
/var/lib/jenkins/workspace/dev/002-这是连接Gitlab的一个ltem
+ tar zcf a.tgz 1.md 1.txt
Finished: SUCCESS
利用Git仓库的tag号来精准拉取代码
## 安装插件
https://plugins.jenkins.io/git-parameter/