gerrit、gitlab以及jenkins整合(未完待续)

2024-06-04 05:38

本文主要是介绍gerrit、gitlab以及jenkins整合(未完待续),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在bitnami上下载一键安装的gitlab。是直接在vmware上运行的。以我这边为例,它启动后,地址为192.168.48.143,这个就如同github的地址。默认用户是root,密码是bitnami1.可以自己注册一个账号。我们可以用root用户创建一个group,里面可以添加用户,在group中创建一个工程,并给工程添加用户,注意不能用Guest角色。那样会导不出工程。

gitlab可以不使用ssh。而是使用http,因为这边环境老是出现拒绝连接的现象。不过要注意用http时,要先使用 git config --global http.sslVerify false才行,否则报unable to access 'https://': SSL certificate problem: self signed certificate...

--------------------------------------------

安装gerrit,比较繁琐。与gitlab不在一个服务器上,ip为12.168.48.131.需要git+apache+nginx+gerrit。centos7安装git、apache、nginx这里就不介绍了。前两者的安装参考http://blog.csdn.net/mqmmx/article/details/47058739。

之后就是安装gerrit,除了auth那一块使用http,其它可以一路默认,之后对在类似/home/gerrit/gerrit_site/etc中的gerrit.config进行修改,之后就是nginx配置文件的修改。附上我的nginx配置文件:

 server {
     listen     81;
     server_name localhost;
     allow   all;
     deny    all;
     auth_basic "Welcomme to Gerrit Code Review Site!";
     auth_basic_user_file /home/gerrit/gerrit.password;
     location / {
        proxy_pass  http://localhost:8080;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header Host $host;
     }
   }

其中8080是gerrit的服务端口。这部分我主要参考了http://blog.csdn.net/peterxiaoq/article/details/73330314

apache 主要就是用来操作 htpasswd -c /home/gerrit/gerrit.password admin,就是为gerrit创建一个用户,第二次使用htpasswd -m /home/gerrit/gerrit.password gerrit来创建用户,第一次登录gerrit的用户就是管理员,可以配置多个用户。连接gerritt就要使用ssh了。

可以用命令连接gerrit:

ssh-keygen -t rsa -C "管理员" -f ~/.ssh/admin 可以创建admin的秘钥,windows如果有git bash,那么也可以用这个命令。注意“管理员”是gerritweb页面中的fullname,可以在web中设置,非username。 windows的git bash可以用ssh -T -p 29418 gerrit@192.168.48.131测试能否连接

ssh -p 29418 -i ~/.ssh/admin 192.168.48.131 -l admin。就会去登录。如果觉得麻烦,可以在.ssh中创建一个文件config,写入:

Host ha
    HostName 192.168.1.101
    User admin            # 注意:这里的admin是gerrit注册的用户名
    Port 29418
    IdentityFile ~/.ssh/admin

下次用ssh ha就可以了。如果报Bad owner or permissions on /home/gerrit/.ssh/config。那么就用chmod 600 config(普通用户也能执行这个命令,非root)。

--------------------------------------------------------------------------------------------------------------------

从gitlab克隆一个项目,可以使用ssh,也可以使用http,我就是使用了http。git clone https://192.168.48.143/dev-group/mygitlab1.git就可以pull过来,但是需要gitlab的用户和密码的。如果报403,那么就是你填写的用户可能是guest,用developer就不会了。如果unable to access 'https://': SSL certificate problem: self signed certificate...,那么就要

使用git config --global http.sslVerify false了。拷贝下来之后,文件是在home/gerrit下的。

你可以修改,诸如:

$ git config --global user.name 'gerrit'
$ git config --global user.email 'gerrit@example.com'
$ touch testfile
$ git add testfile
$ git commit -m 'gerrit add testfile'
$ git push

但一般用户没有push的权限。这里参考了http://www.cnblogs.com/kevingrace/p/5651447.html(很有用)

-----------------------------------------------------------------------------------------------------------------------------------------------

jenkins我是用windows搭建的,安装Gerrit Trigger插件和Git plugin插件,后者貌似自带的。

然后在系统管理中找到Gerrit Trigger,创建服务,名字自定义,

要填的如下:

Hostname 192.168.48.131

Frontend URL http://192.168.48.131:8080

SSH Port 29418(注意你的192.168.48.131服务器要开放这个端口)

Username gerrit

SSH Keyfile 就是windows下用git bash生成的gerrit文件(ssh-keygen -t rsa -C "gerrit" -f ~/.ssh/gerrit)。gerrit.pub中的内容拷贝到gerrit的ssh key中(通过192.168.48.131:81反向代理的web页面)(ssh-keygen -t rsa -C “admin@example.com”也可以生成ssh key)

SSH Keyfile Password 我们不用填。点击测试,如果成功,就保存。如果报错:

管理员(admin)登录gerrit服务器
Projects->List->All-Projects
Projects->Access
Global Capabilities->Stream Events 点击 Non-Interactive Users
添加 gerrit 用户到 ‘Non-Interactive Users’ 组试试。

-----------------------

save后,点击红色球会变蓝即可。


这篇关于gerrit、gitlab以及jenkins整合(未完待续)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1029213

相关文章

SpringSecurity整合redission序列化问题小结(最新整理)

《SpringSecurity整合redission序列化问题小结(最新整理)》文章详解SpringSecurity整合Redisson时的序列化问题,指出需排除官方Jackson依赖,通过自定义反序... 目录1. 前言2. Redission配置2.1 RedissonProperties2.2 Red

Spring boot整合dubbo+zookeeper的详细过程

《Springboot整合dubbo+zookeeper的详细过程》本文讲解SpringBoot整合Dubbo与Zookeeper实现API、Provider、Consumer模式,包含依赖配置、... 目录Spring boot整合dubbo+zookeeper1.创建父工程2.父工程引入依赖3.创建ap

SpringBoot3.X 整合 MinIO 存储原生方案

《SpringBoot3.X整合MinIO存储原生方案》本文详细介绍了SpringBoot3.X整合MinIO的原生方案,从环境搭建到核心功能实现,涵盖了文件上传、下载、删除等常用操作,并补充了... 目录SpringBoot3.X整合MinIO存储原生方案:从环境搭建到实战开发一、前言:为什么选择MinI

Jenkins分布式集群配置方式

《Jenkins分布式集群配置方式》:本文主要介绍Jenkins分布式集群配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装jenkins2.配置集群总结Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满

SpringBoot整合liteflow的详细过程

《SpringBoot整合liteflow的详细过程》:本文主要介绍SpringBoot整合liteflow的详细过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋...  liteflow 是什么? 能做什么?总之一句话:能帮你规范写代码逻辑 ,编排并解耦业务逻辑,代码

springboot整合TDengine全过程

《springboot整合TDengine全过程》:本文主要介绍springboot整合TDengine全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录环境准备JDBC-JNI方式准备依赖实体类Mapper配置类测试类RESTful方式实体类配置类测试类总结

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

springboot项目中整合高德地图的实践

《springboot项目中整合高德地图的实践》:本文主要介绍springboot项目中整合高德地图的实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一:高德开放平台的使用二:创建数据库(我是用的是mysql)三:Springboot所需的依赖(根据你的需求再

SpringBoot整合Flowable实现工作流的详细流程

《SpringBoot整合Flowable实现工作流的详细流程》Flowable是一个使用Java编写的轻量级业务流程引擎,Flowable流程引擎可用于部署BPMN2.0流程定义,创建这些流程定义的... 目录1、流程引擎介绍2、创建项目3、画流程图4、开发接口4.1 Java 类梳理4.2 查看流程图4

Springboot整合Redis主从实践

《Springboot整合Redis主从实践》:本文主要介绍Springboot整合Redis主从的实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言原配置现配置测试LettuceConnectionFactory.setShareNativeConnect