DarkMatter in Cyberspace
  • Home
  • Categories
  • Tags
  • Archives

Jenkins的版本控制


这里使用SCM Sync configuration plugin 实现Jenkins各项配置的版本控制。

在gitlab上创建了代码库:git@gitlab.com:leechau/newfairs-jenkins.git

安装这个插件后,在 [Manage Jenkins -> System Information -> System Properties -> user.name] 里查到Jenins系统的用户名,一般是jenkins,只有创建了这个用户的ssh key, 下面指定Git repo时才能连接成功,登录Jenkins服务器运行:

su - jenkins
ssh-keygen
git config --global user.name 'Li Chao'
git config --global user.email 'leechau@126.com'

将cat .ssh/id_rsa.pub的输出加入到Gitlab的 [Profile settings -> SSH Keys] 里(在右上角搜索框里直接搜索ssh keys);

删除$JENKINS_HOME/plugins下面所有git开头的插件,重启Jenkins服务; 安装Jenkins的Git插件。配置Jenkins的远端版本库: [Manage Jenkins -> Config System -> SCM Sync configuration -> Git -> Repo URL: git@gitlab.com:leechau/newfairs-jenkins.git]

要从版本库恢复Jenkins配置文件,使用 [Manage Jenkins -> Config System -> SCM Sync configuration -> Reload config from SCM: Reload] 这个插件在 $JENKINS_HOME/scm-sync-configuration/checkoutConfiguration 中 创建了git repo。

怎样将Jenkins的状态返回到之前的某个commit?

这个插件会在Jenkins Web页面的底部加上 SCM Sync status 提示, 但似乎不太准,比如现在它显示同步失败,但代码库提交历史显示配置能够正常保存并 被push到远端库。

其他:

Ubuntu 16.04居然没有预装Python:

apt install python
apt install python-pip
export LC_ALL=en_US.UTF-8
pip install requests

下午安装的Git插件时,由于本地还没有配置好git用户名和email, 安装过程中出现空指针异常,整个Jenkins服务整个无法启动, 到服务器上plugins文件夹下删除了git*后,重启服务才正常;



Published

May 11, 2016

Last Updated

May 11, 2016

Category

Tech

Tags

  • git 36
  • jenkins 26
  • version control 2

Contact

  • Powered by Pelican. Theme: Elegant by Talha Mansoor