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

相关文章

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

使用SpringBoot整合Sharding Sphere实现数据脱敏的示例

《使用SpringBoot整合ShardingSphere实现数据脱敏的示例》ApacheShardingSphere数据脱敏模块,通过SQL拦截与改写实现敏感信息加密存储,解决手动处理繁琐及系统改... 目录痛点一:痛点二:脱敏配置Quick Start——Spring 显示配置:1.引入依赖2.创建脱敏

SpringBoot整合Apache Flink的详细指南

《SpringBoot整合ApacheFlink的详细指南》这篇文章主要为大家详细介绍了SpringBoot整合ApacheFlink的详细过程,涵盖环境准备,依赖配置,代码实现及运行步骤,感兴趣的... 目录1. 背景与目标2. 环境准备2.1 开发工具2.2 技术版本3. 创建 Spring Boot

Spring Boot 整合 Apache Flink 的详细过程

《SpringBoot整合ApacheFlink的详细过程》ApacheFlink是一个高性能的分布式流处理框架,而SpringBoot提供了快速构建企业级应用的能力,下面给大家介绍Spri... 目录Spring Boot 整合 Apache Flink 教程一、背景与目标二、环境准备三、创建项目 & 添

SpringBoot整合Sa-Token实现RBAC权限模型的过程解析

《SpringBoot整合Sa-Token实现RBAC权限模型的过程解析》:本文主要介绍SpringBoot整合Sa-Token实现RBAC权限模型的过程解析,本文给大家介绍的非常详细,对大家的学... 目录前言一、基础概念1.1 RBAC模型核心概念1.2 Sa-Token核心功能1.3 环境准备二、表结

MQTT SpringBoot整合实战教程

《MQTTSpringBoot整合实战教程》:本文主要介绍MQTTSpringBoot整合实战教程,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录MQTT-SpringBoot创建简单 SpringBoot 项目导入必须依赖增加MQTT相关配置编写

GitLab文件的上传与下载方式

《GitLab文件的上传与下载方式》:本文主要介绍GitLab文件的上传与下载方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录GitLab 项目拉取到本地GitLab 项目上传方法方法 1:本地项目未初始化Git方法 2:本地项目已初始化GitGitLab 上

MybatisPlus3.3.1整合clickhouse的过程

《MybatisPlus3.3.1整合clickhouse的过程》:本文主要介绍MybatisPlus3.3.1整合clickhouse的过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定... 前言ClickHouse是俄罗斯Yandex发布的一款数据分析型数据库支持sql语法,详情可以访问官网,

Spring Boot 整合 Redis 实现数据缓存案例详解

《SpringBoot整合Redis实现数据缓存案例详解》Springboot缓存,默认使用的是ConcurrentMap的方式来实现的,然而我们在项目中并不会这么使用,本文介绍SpringB... 目录1.添加 Maven 依赖2.配置Redis属性3.创建 redisCacheManager4.使用Sp