1 - 插件管理

1.1 下载并安装插件

以reviewers插件为例。

在GerritForge(https://gerrit-ci.gerritforge.com/),找到对应gerrit 版本的reviewers插件



获得对应的jar下载地址

https://gerrit-ci.gerritforge.com/job/plugin-reviewers-bazel-master/lastSuccessfulBuild/artifact/bazel-bin/plugins/reviewers/reviewers.jar

下载插件(jar包)并放置在$GERRIT_SITE/plugins目录下,然后重启Gerrit服务($GERRIT_SITE/bin/gerrit.sh restart),会自动加载此目录下的插件。

[gerrit@mt101 ~]$ cd gerrit_testsite/plugins/
[gerrit@mt101 plugins]$ pwd
/home/gerrit/gerrit_testsite/plugins
[gerrit@mt101 plugins]$ wget https://gerrit-ci.gerritforge.com/job/plugin-reviewers-bazel-master/lastSuccessfulBuild/artifact/bazel-bin/plugins/reviewers/reviewers.jar
--2019-12-11 11:55:16-- https://gerrit-ci.gerritforge.com/job/plugin-reviewers-bazel-master/lastSuccessfulBuild/artifact/bazel-bin/plugins/reviewers/reviewers.jar
Resolving gerrit-ci.gerritforge.com (gerrit-ci.gerritforge.com)... 8.26.94.23
Connecting to gerrit-ci.gerritforge.com (gerrit-ci.gerritforge.com)|8.26.94.23|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 41911 (41K) [application/java-archive]
Saving to: ‘reviewers.jar’
100%[==========================================>] 41,911 118KB/s in 0.3s
2019-12-11 11:55:23 (118 KB/s) - ‘reviewers.jar’ saved [41911/41911]
[gerrit@mt101 plugins]$
[gerrit@mt101 plugins]$ chmod 755 reviewers.jar
[gerrit@mt101 plugins]$ ll
total 44
-rwxr-xr-x 1 gerrit gerrit 41911 Nov 16 02:03 reviewers.jar
[gerrit@mt101 plugins]$
[gerrit@mt101 plugins]$ cd
[gerrit@mt101 ~]$ sudo sh gerrit_testsite/bin/gerrit.sh restart
Stopping Gerrit Code Review: OK
Starting Gerrit Code Review: OK
[gerrit@mt101 ~]$

查看插件是否安装成功

1.2 通过SSH安装插件

实际是通过SSH连接到Gerrit,然后执行“gerrit plugin”命令来管理插件。

官网教程:https://review.gerrithub.io/Documentation/cmd-plugin-install.html

[gerrit@mt101 ~]$ ssh -p 29418 admin@192.168.16.101 gerrit plugin -h
gerrit plugin [COMMAND] [ARG ...] [--] [--help (-h)]
-- : end of options (default: false)
--help (-h) : display this help text (default: true)
Available commands of gerrit plugin are:
add Install/Add a plugin
enable Enable plugins
install Install/Add a plugin
ls List the installed plugins
reload Reload/Restart plugins
remove Disable plugins
rm Disable plugins
See 'COMMAND --help' for more information.
[gerrit@mt101 ~]$
[gerrit@mt101 ~]$ ssh -p 29418 admin@192.168.16.101 gerrit plugin ls
Name Version Status File
-------------------------------------------------------------------------------
codemirror-editor v3.1.0 ENABLED codemirror-editor.jar
commit-message-length-validator v3.1.0 ENABLED commit-message-length-validator.jar
delete-project v3.1.0 ENABLED delete-project.jar
download-commands v3.1.0 ENABLED download-commands.jar
gitiles v3.1.0 ENABLED gitiles.jar
hooks v3.1.0 ENABLED hooks.jar
plugin-manager v3.1.0 ENABLED plugin-manager.jar
replication v3.1.0 ENABLED replication.jar
reviewers c0b1572ad4 ENABLED reviewers.jar
reviewnotes v3.1.0 ENABLED reviewnotes.jar
singleusergroup v3.1.0 ENABLED singleusergroup.jar
webhooks v3.1.0 ENABLED webhooks.jar
[gerrit@mt101 ~]$

常用的安装方式

# Install a plugin from an absolute file path on the server’s host:
ssh -p 29418 localhost gerrit plugin install -n name.jar $(pwd)/my-plugin.jar
# Install a plugin from an HTTP site:
ssh -p 29418 localhost gerrit plugin install -n name.jar http://build-server/output/our-plugin

1.3 war文件中携带的插件

war文件中包含了一些插件,例如:gerrit-3.1.0.war文件

[gerrit@node202 ~]$ ll
total 67552
-rw-r--r-- 1 gerrit gerrit 69172528 Nov 30 22:39 gerrit-3.1.0.war
drwxrwxr-x 14 gerrit gerrit 150 Nov 30 22:41 gerrit_testsite
[gerrit@node202 ~]$
[gerrit@node202 ~]$ mkdir gerrit-tmp
[gerrit@node202 ~]$ unzip -oq gerrit-3.1.0.war -d gerrit-tmp/
[gerrit@node202 ~]$ ll
total 67552
-rw-r--r-- 1 gerrit gerrit 69172528 Nov 30 22:39 gerrit-3.1.0.war
drwxrwxr-x 14 gerrit gerrit 150 Nov 30 22:41 gerrit_testsite
drwxrwxr-x 7 gerrit gerrit 194 Dec 1 22:46 gerrit-tmp
[gerrit@node202 ~]$
[gerrit@node202 ~]$ ll gerrit-tmp/WEB-INF/plugins/
total 2456
-r-xr-xr-x 1 gerrit gerrit 376828 Jan 1 1980 codemirror-editor.jar
-r-xr-xr-x 1 gerrit gerrit 5331 Jan 1 1980 commit-message-length-validator.jar
-r-xr-xr-x 1 gerrit gerrit 229911 Jan 1 1980 delete-project.jar
-r-xr-xr-x 1 gerrit gerrit 28106 Jan 1 1980 download-commands.jar
-r-xr-xr-x 1 gerrit gerrit 1312259 Jan 1 1980 gitiles.jar
-r-xr-xr-x 1 gerrit gerrit 50470 Jan 1 1980 hooks.jar
-r-xr-xr-x 1 gerrit gerrit 58172 Jan 1 1980 plugin-manager.jar
-r-xr-xr-x 1 gerrit gerrit 339874 Jan 1 1980 replication.jar
-r-xr-xr-x 1 gerrit gerrit 25251 Jan 1 1980 reviewnotes.jar
-r-xr-xr-x 1 gerrit gerrit 7958 Jan 1 1980 singleusergroup.jar
-r-xr-xr-x 1 gerrit gerrit 58843 Jan 1 1980 webhooks.jar
[gerrit@node202 ~]$

2 - 创建用户

2.1 在启用HTTP认证情况下,需要使用htpasswd命令。

示例如下:

[gerrit@mt101 ~]$ chmod 755 /home/gerrit/
[gerrit@mt101 ~]$
[gerrit@mt101 ~]$ ll
total 67552
-rw-r--r-- 1 gerrit gerrit 69172528 Dec 10 13:04 gerrit-3.1.0.war
drwxr-xr-x 14 root root 150 Dec 10 14:44 gerrit_testsite
[gerrit@mt101 ~]$
[gerrit@mt101 ~]$ sudo htpasswd -c /home/gerrit/gerrit.password admin
New password:
Re-type new password:
Adding password for user admin
[gerrit@mt101 ~]$
[gerrit@mt101 ~]$ sudo htpasswd -m /home/gerrit/gerrit.password testdemo
New password:
Re-type new password:
Adding password for user testdemo
[gerrit@mt101 ~]$
[gerrit@mt101 ~]$ sudo chmod 755 gerrit.password
[gerrit@mt101 ~]$
[gerrit@mt101 ~]$ ll
total 67556
-rw-r--r-- 1 gerrit gerrit 69172528 Dec 10 13:04 gerrit-3.1.0.war
-rwxr-xr-x 1 root root 91 Dec 10 14:52 gerrit.password
drwxr-xr-x 14 root root 150 Dec 10 14:44 gerrit_testsite
[gerrit@mt101 ~]$
[gerrit@mt101 ~]$ cat gerrit.password
admin:$apr1$fQB7h4KA$uhYXP/fEeyfA8GDyA18781
testdemo:$apr1$ETlmCKcz$L5unhKCEx1HRnad7SmPSv.
[gerrit@mt101 ~]$
[gerrit@mt101 ~]$ sudo service nginx restart
Redirecting to /bin/systemctl restart nginx.service
[gerrit@mt101 ~]$

2.2 默认认证情况下,可以在web页面添加。

示例如下:



创建新用户

初次登录时,会提醒添加账号的name和email信息。

在User Settings中可以进行具体的设置

3 - 创建新Repository(Project)





4 - SSH连接

4.1 生成SSH公钥

[gerrit@mt101 ~]$ ll .ssh
ls: cannot access .ssh: No such file or directory
[gerrit@mt101 ~]$
[gerrit@mt101 ~]$ ssh-keygen -t rsa -C "sshtest"
Generating public/private rsa key pair.
Enter file in which to save the key (/home/gerrit/.ssh/id_rsa):
Created directory '/home/gerrit/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/gerrit/.ssh/id_rsa.
Your public key has been saved in /home/gerrit/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:9eQRv/j8pNN3N1/7R4KzEvttvg1teyzUbw7Wuyb3YE4 sshtest
The key's randomart image is:
+---[RSA 2048]----+
| . |
| o |
| . o . |
| . + o . |
| S +... |
| . ooooo|
| o +E=B|
| o .B+&/|
| o.oX@^|
+----[SHA256]-----+
[gerrit@mt101 ~]$
[gerrit@mt101 ~]$ ll .ssh
total 8
-rw------- 1 gerrit gerrit 1675 Dec 10 15:28 id_rsa
-rw-r--r-- 1 gerrit gerrit 389 Dec 10 15:28 id_rsa.pub
[gerrit@mt101 ~]$
[gerrit@mt101 ~]$ cat .ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDCE36kKv9cRTR/UU+7c620a6sYwptzVCRa8KBWBVijXNME+te4Nt2ZKp1uVvVOYKWv4akR/E5wMMTa9sYiE7EZJsC0cfg+FSuvc7WeoyT0hWYEWAabqp1cAApZUKSm7c06829dSTAPLj4MIEQOtEzID8iaq7+kGDf6RsGF6QRrAVx28k5ZJNvNFLpFqv4cjOaDbWOKaVXkrAgYYdLWWJ6xEeQTJ6yxCkk9KY7+rHEHd9zEoJYiA03J9UgxRRkyTX8vRW39RHVVM+GriOasAgwhvhFZXJsm6mJVXr2Y3AFcMNPo4YJNq68LGdU8bjqN78ysBbkxfIDq+r3ANc7+D+Az sshtest
[gerrit@mt101 ~]$

4.2 在用户设置中添加SSH公钥

这里是在admin账户中添加了SSH公钥



4.3 测试SSH连接

这里通过执行“ssh -p 29418 admin@192.168.16.101 gerrit -h”获取了gerrit的使用帮助信息。

“-p 29418”是指定使用29418端口,在gerrit配置文件中定义了SSH的端口。

[gerrit@mt101 ~]$ ssh -p 29418 admin@192.168.16.101 gerrit -h
The authenticity of host '[192.168.16.101]:29418 ([192.168.16.101]:29418)' can't be established.
ECDSA key fingerprint is SHA256:V0hOtzBCxfCmebW0ilpZWoQxucMVy+D4gf0nsBmq9R8.
ECDSA key fingerprint is MD5:d3:a4:8c:5e:d0:28:04:ac:6f:85:1e:03:7b:c7:41:15.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.16.101]:29418' (ECDSA) to the list of known hosts.
gerrit [COMMAND] [ARG ...] [--] [--help (-h)]
-- : end of options (default: false)
--help (-h) : display this help text (default: true)
Available commands of gerrit are:
apropos Search in Gerrit documentation
ban-commit Ban a commit from a project's repository
close-connection Close the specified SSH connection
create-account Create a new batch/role account
create-branch Create a new branch
create-group Create a new account group
create-project Create a new project and associated Git repository
flush-caches Flush some/all server caches from memory
gc Run Git garbage collection
index
logging
ls-groups List groups visible to the caller
ls-members List the members of a given group
ls-projects List projects visible to the caller
ls-user-refs List refs visible to a specific user
plugin
query Query the change database
receive-pack Standard Git server side command for client side git push
reload-config Reloads the Gerrit configuration
rename-group Rename an account group
review Apply reviews to one or more patch sets
set-account Change an account's settings
set-head Change HEAD reference for a project
set-members Modify members of specific group or number of groups
set-project Change a project's settings
set-project-parent Change the project permissions are inherited from
set-reviewers Add or remove reviewers on a change
show-caches Display current cache statistics
show-connections Display active client SSH connections
show-queue Display the background work queues
stream-events Monitor events occurring in real time
test-submit
version Display gerrit version
See 'gerrit COMMAND --help' for more information.
[gerrit@mt101 ~]$

5 - 为admin账户开启访问数据库权限











6 - LDAP认证方式

Gerrit支持多种认证方式。

Gerrit可以和LDAP用户认证服务集成,用于用户的导入、同步和集中管理。

在LDAP认证模式下,用户的用户名和密码都是在LDAP端进行管理的。

LDAP认证方式的配置

  • Gerrit配置文件auth部分的type属性为LDAP,并增加ldap部分的配置
  • 修改nginx配置,将先前的“Basic Auth”相关内容注释,然后重启nginx

Gerrit - 初始配置的更多相关文章

  1. Git 笔记二-Git安装与初始配置

    git 笔记二-Git安装与初始配置 Git的安装 由于我日常生活和工作基本上都是在Windows上,因此此处只说windows上的安装.Windows上的安装和其他程序一样,只需要到http://g ...

  2. IDEA 初始配置教程

    IDEA 初始配置教程 如果你是第一次使用 IDEA,或者对 IDEA 常用配置仍然不熟悉,那么本文就特别适合你. 本文只是根据我自己的使用经验来进行配置,不一定适合所有的情况,但是对你肯定会有帮助. ...

  3. Git初始配置和基本使用

    初次运行Git前的配置 本文是在安裝完git以后首先应做到一些配置,安装教程可以参考廖雪峰git教程 用户信息 当安装完 Git 应该做的第一件事就是设置你的用户名称与邮件地址. 这样做很重要,因为每 ...

  4. paloalto防火墙执行初始配置

    1.默认情况下,防火墙的 IP 地址为 192.168.1.1,用户名/密码为 admin/admin. 为了安全起见,在继续执行其他防火墙配置任务之前,必须更改这些设置.必须从 MGT 接口(即使计 ...

  5. Centos6.5 安装MYSQL 5.5 -5.6.-5.7 一键yum快速安装 ,初始配置

    Centos6.5 安装MYSQL 5.5 ---5.6---5.7 一键yum快速安装 ,初始配置 第一步:安装mysql-5.5---- 5.6 ---- 5.7的yum源 [root@sv03 ...

  6. Testlink1.9.17使用方法( 第三章 初始配置[配置用户、产品] )

    第三章 初始配置(配置用户.产品) 一. 设置用户 QQ交流群:585499566 在TestLink系统中,每个用户都可以维护自己的私有信息.admin可以创建用户,但不能看到其它用户的密码.在用户 ...

  7. [原]Jenkins(三)---Jenkins初始配置和插件配置

    /** * lihaibo * 文章内容都是根据自己工作情况实践得出. *版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horizonli/p/5331 ...

  8. 关于思科C2950交换机清除密码,恢复初始配置的方法

    上个月河南做项目,因需要大批量的对服务器进行操作系统的安装,于是想到了PXE网络批量安装, 好不容易到机房的仓库找到网线及一台思科交换机,但到安装的时候,发现思科交换机里应该有配置了 通过配置线连接交 ...

  9. MySQL5.7初始配置

    MySQL5.7初始配置 Windows7 环境安装MySQL5.7配置命令 <<<<<<<<<<<<<<<& ...

随机推荐

  1. 学习:Lucas定理

    模板题 在数论中,Lucas定理用于计算二项式系数\({\tbinom {m}{n}}\)被质数\(p\)除的所得的余数. 描述 设\(p\)为素数,\(a,b\in N_+\),且 \[a=a_kp ...

  2. spark延迟调度与动态资源管理

    Spark中的延迟调度 Spark的Task的调度过程有五个本地性级别:PROCESS_NODE.NODE_LOCAL.NO_PREF.RACK_LOCAL.ANY.在理想的状态下,我们肯定是想所有的 ...

  3. Pycharm激活方法使用的是(license server)

    pycharm所有版本 http://www.jetbrains.com/pycharm/download/previous.html打开激活窗口 选择 Activate new license wi ...

  4. TCP拥塞避免

    目录 TCP拥塞避免 超时重传机制 拥塞控制 慢启动 拥塞避免 快重传 快恢复 与流量控制区别 参考 TCP拥塞避免 拥塞控制就是防止过多的数据注入网络中,这样可以使网络中的路由器或链路不致过载.拥塞 ...

  5. 68-Flutter中极光推送的使用

    1.申请极光账号和建立应用 极光推送的官方网址为:https://www.jiguang.cn/ 注册好后,进入'服务中心',然后再进入'开发者平台',点击创建应用. 这时候会出现新页面,让你填写“应 ...

  6. Common Substrings POJ - 3415 (后缀自动机)

    Common Substrings \[ Time Limit: 5000 ms\quad Memory Limit: 65536 kB \] 题意 给出两个字符串,要求两个字符串公共子串长度不小于 ...

  7. ASP.NET Core Docker Nginx分权,多网站部署

    https://www.cnblogs.com/esofar/p/10694319.html

  8. linux学习12 bash的常见特性及文本查看命令实战

    一.回顾 1.FHS,命令及bash命令历史 a.FHS: /bin,/sbin,/lib,/lib64,/etc /home,/root /boot /media,/mnt /proc,/sys / ...

  9. (尚031)Vue_案例_自定义事件(组件间通信第2种方式:vue自定义事件)

    自定义事件: 我们知道,父组件使用prop传递数据的子组件,但子组件怎么跟父组件通信呢? 这个时候Vue的自定义事件系统就派得上用场了. 自定义事件知道两件事: (1).绑定 (2).触发 注意:$o ...

  10. CLR Exception---E0434352

    什么是CLR Exception---E0434352 CLR异常是.NET应用程序生成的异常类型.异常被封装在从System.exception类派生的类中.它的异常代码是0xE0434352,代码 ...